[net.micro.pc] For DOS hacks with strong stomachs

hagens@uwvax.ARPA (Rob Hagens) (09/20/84)

I have a large piece of code that wish to remain resident in memory.
I plan to do this via the dos hex 31 function (terminate, but remain
resident).

I have other programs which need to run, and occasionally let
this resident piece of code run. My mechanism for this would be:

	The user program does an int xxx (where xxx is some unused interrupt).

	The handler for int xxx puts a fake interrupt frame on the stack such
	that when the handler does a return from interrupt, control returns
	to the resident piece of code.

	The resident piece of code does its thing for a while, and then
	takes the other interrupt frame (the one created by the original
	int xxx) and does a return from interrupt, thus returning to the
	user program.

Now, none of this has been coded yet. What I am asking is:
1. Has anyone tried this before?
2. Does anyone know of any restrictions that dos has on resident code?
   (It doesn't look like it, from the documentation).
3. Any comments on this idea?

I realize that registers need to be saved/restored in the correct order.

Thanks in advance for trying to understand what I just said,
-- 
Rob Hagens @ wisconsin
...!{allegra,heurikon,ihnp4,seismo,sfwin,ucbvax,uwm-evax}!uwvax!hagens
hagens@wisc-rsch.arpa