please dont rip this site
Interrupt 28h   (not documented by Microsoft) 

* DOS Idle Interrupt

Int 28h has been provided by DOS since release 2.0. The int 28h process is

similar to the "Timer Tick" process provided by BIOS via Int\1C in that it is

an "outbound" (from DOS) call which an application can "hook onto" to get

service at a particular entry point. DOS normally only issues int 28h when it

recieves a function call Int\21 from a foreground application with an

argument in the range of 0 thru 12 (0Ch) in the AH register, or when it is

idling waiting for keyboard input. In effect, when DOS issues int 28h, it is

saying to the background task "I'm not doing anything hot right now, if you can

use the time, go ahead." This means that a foreground application which doesn't

do many low-number DOS functions can preempt CPU time easily.

It is possible, if you are careful, to enhance the background priority by

providing more int 28h calls than DOS normally would issue.

When int 28h is being issued it is usually safe to do DOS calls. You won't get

int 28hs if a program is running that doesn't do its keyboard input through

DOS. You should rely on the timer interrupt for these.

It is used primarily by the PRINT.COM routines, but any number of other

routines can be chained to it by saving the original vector and calling it with

a FAR call (or just JMPing to it) at the end of the new routine.

Used by many TSR programs. (see Int\21f\31)

Int 28h is not called at all when any non-trivial foreground task is running.

As soon as a foreground program has a file open, int 28h no longer gets called.

Could make a good driver for for a background program that works as long as

there is nothing else going on in the machine.

DOS uses 3 separate internal stacks: one for calls 01h through 0Ch; another

for calls 0Dh and above; and a third for calls 01h through 0Ch when a Critical

Error is in progress. When int 28h is called, any calls above 0Ch can be

executed without destroying the internal stack used by DOS at the time.

The byte which is pushed on the stack before an int 28h just indicates which

stack area is being used by the current Int\21 call. In DOS 3.1, the code

sequence that calls int 28h looks like this:

PUSH SS:[0304]

INT 28

POP SS:[0304]

The low-order byte of the word pushed contains 1 if the Int\21 call currently

in progress is for services 1 through 0Ch, and 0 for service 0 and for 0Dh and

up. Assuming that the last DOS call was not a reentrant one, this tells you

which set of DOS services should be safe to call.

If the InDOS flag is zero on int 28h, then it was called by someone other than

DOS, and the word on the stack should NOT be examined.

entry no parameters availible

return none

note 1) The int 28h handler may invoke any Int\21 function except functions

00h through 0Ch (and 50h/51h under DOS 2.x unless DOS CritErr flag is

set).

2) Apparently int 28h is also called during screen writes

3) Until some program installs its own routine, this interrupt vector

simply points to an IRET opcode.

4) Supported in OS/2 1.0's DOS Compatibility Box




file: /Techref/int/28.htm, 3KB, , updated: 1999/2/20 10:27, local time: 2024/11/16 16:17,
TOP NEW HELP FIND: 
3.148.112.17:LOG IN

 ©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://massmind.ecomorder.com/techref/int/28.htm"> int 28</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here: 
if you want a response, please enter your email address: 
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

 

Welcome to ecomorder.com!

 
Quick, Easy and CHEAP! RCL-1 RS232 Level Converter in a DB9 backshell
Ashley Roll has put together a really nice little unit here. Leave off the MAX232 and keep these handy for the few times you need true RS232!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  .