PDA

View Full Version : Memory-Resident programs and Sys files



Powerfull Army
07-24-2002, 02:59 PM
Ho do you make valid .Sys files?I mean,what are they, compiled assembler?And how do you get them to do things that only Sys files can?Also,how do you make memory resident programs?

master5001
07-29-2002, 02:41 AM
Well I io.sys has an MZ header. I also know that config.sys is a text file, and logow.sys is a bitmap. So to make a valid sys file why not take some file and change its extension to .sys? Okay, I know that doesn't help but as far as I know there isn't a certain format for a sys file.


I mean,what are they, compiled assembler?

That is what all programs are. Higher level languages such as C, C++, and PASCAL have compilers that generate the assembler code for you. On to your last question, you use your compiler. As far as I know there is a protocol for memory resident programs but other than whatever API or library they use they are nothing special.

Powerfull Army
07-29-2002, 05:25 AM
thanks master,but isnt logow and config.sys just exceptions to the rule that the system looks for?

VBprogrammer
07-29-2002, 10:31 AM
Naw..Master5001 is right there is not specific format for a .sys file they are all exeptions to the rule (as you put it) some code has to read the file and do what it wants with it.

master5001
07-30-2002, 01:18 AM
What are you trying to so with a sys file. Maybe we can work backwards through your problem. Are you trying to make something that generates sys files or are you trying to make a sys file to accomplish some task?

VBprogrammer
07-30-2002, 09:23 AM
Going by the title "Memory-Resident programs..." I guess he wants to make a TSR program. This is usually acomplished by editing an interupt vector so that you are effectivily stealling time from that interupt. What you do is redirect the interupt vector storing the old interupt vector then at the end of your code you send the processor back to the actually Interupt service routine.

Shadow8
09-15-2002, 09:13 PM
Dos sys is a pure binary program (com extension, not MZ) only instead of running at the normal location it runs at another. I forgot the exact location for sys, Its 0100 for a com. Sys I forgot, have the info somwhere around here. If u ever used debug to write assembly programs u would know what im talking about. I may be wrong but I remember reading this a long while ago in a assembly doc. Im sure about the location that a com starts up.