TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: mark lewis
from: David Noon
date: 1996-12-20 22:53:00
subject: Magic code for DosSleep

On Tuesday, 96/12/17, mark lewis wrote to David Noon about "Magic code
for DosSleep" as follows:

ml> ISR in this case being a "shim" list TAME...

Hi Mark,

I'm not sure what you mean by "shim" here.

To me a "shim", in a software sense, is a piece of code that purports
to require privileged operation simply to bypass the writing of more
security conscious code. I.e. it "slides" into a privileged position.

An ISR doesn't do this at all. It simply executes a given piece of
code when the interrupt is tripped. In real (V86) mode there is no
concept of privilege.

ml>  DN> The selection should be made when the AUTOEXEC.BAT is prepared. The
ml>  DN> line in AUTOEXEC.BAT to install the ISR should remain unchanged for
ml>  DN> the life of the particular operating system. If the "native"
ml>  DN> version of the DPMI interrupt works then this is trivial -- you
ml>  DN> don't bother installing your own ISR.
ml> 
ml>  DN> There should be no 'case' logic required at run time.
ml> 
ml> gotcha... i think the above will do it... only do it at 
ml> program startup and then just use the call...

This still leaves your program bloated with redundant code.

There should be only one piece of code in a VDM that executes the HLT
sequence to release the timeslice. That should be function 1680H of INT
2FH. If IBM's (Microsoft's, Quarterdeck's) ISR doesn't work, override
it with your own. If an override is necessary it is installed during
AUTOEXEC processing.

This keeps the memory footprint down in the VDM and keeps your program
simple. Your program doesn't need to know which release of which
operating system is running it.

Regards

Dave


 * KWQ/2 1.2i * Program call to load Windows NT- "Here_piggy_piggy_piggy"

--- Maximus/2 3.01
* Origin: DoNoR/2,Woking UK (44-1483-725167) (2:440/4)
SEEN-BY: 270/101 711/401 409 410 413 430 808 809 934 955 712/407 515 624 628
SEEN-BY: 713/317
@PATH: 440/4 141/209 270/101 712/515 711/808 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.