flat assembler
Message board for the users of flat assembler.

Index > DOS > How to make a simple TSR program?

Author
Thread Post new topic Reply to topic
OzzY



Joined: 19 Sep 2003
Posts: 1029
Location: Everywhere
OzzY 12 Apr 2004, 20:54
Will a TSR DOS program work ok under windows? How to make a simple TSR program?
Thanks.
Post 12 Apr 2004, 20:54
View user's profile Send private message Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3175
Location: Denmark
f0dder 12 Apr 2004, 22:15
Generally, they should work just fine, just that they will only be resident for one command shell. On 9x, some TSRs can be loaded before windows start and will thus be resident for all dos boxes opened, but there's a bunch of restrictions. Some TSRs will cause 9x to run certain things in compatibility mode, which means BIOS access instead of native 32bit drivers - this is _slow_. NT doesn't have any dos code, so this doesn't apply here.

An example of a TSR that works okay would be http://www.autofish.net/zzt/files/rat.zip , a resident ascii table - I used this a lot in the dos days. It's a bit funny actually - if you launch cmd.exe from 2k or XP, it will be pretty fast even in windowed mode. But if you run RAT, it seems it causes the console to run in compatibility mode, like if you launch edit.com, and the console will be painfully slow when windowed. Fullscreen should still work pretty okay, though.

I don't have any TSR code at hand, sorry - I stopped messing around with dos a lot of years ago Smile, but this has been done quite a lot, so I guess a google search for "dos assembly/asm tsr" or the like should turn up some results - probably not anything/a lot in fasm, though.
Post 12 Apr 2004, 22:15
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 13 Apr 2004, 18:52
also don't forget that windoze timer is extremelly inaccurate for DOS programs (if you tried to play DOS game under windoze you know it Smile ). That means all time-critical code (including sound output) will act wrong, so better forget about hooking ints 08 or 1C.

You also can't setup hardware (PIC, PIT, VGA ...).
Post 13 Apr 2004, 18:52
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.