Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

And now: int 0x21 in hw interrupt handler? (Developers)

posted by tom Homepage, Germany (West), 19.12.2012, 15:54

> > The InDOS flag is one of a few different checks you need to make to test
> > whether DOS is already doing something or not. The problem is, what do
> you
> > do if it's not safe? Your only option is to wait until it is safe, and
> > that can never happen until you exit the IRQ handler. So, you need to
> have
> > another process to download the data anyway, so you might as well just
> do
> > it that way from the beginning.
>
> If I write the app in a way that it never calls int 0x21 while my IRQ
> handler
> is active, am I safe?
no.
> Are there other interrupts I must also not call?
> BIOS, something else?
dont't call anything.
DOS, BIOS, and basically everything else is NOT reentrant.
doing more then setting a flag at interrupt time is a certain recipe for interesting things to happen ;)
calling XMS to copy some memory (as Japheth suggested) is one of the few exceptions.


> At the moment, I'm not sure I'll do any kind of visual feedback, but I can
> do that by writing directly to the video memory.
actually THIS IS one of the few things safe to do

 

Complete thread:

Back to the forum
Board view  Mix view
22762 Postings in 2122 Threads, 402 registered users (1 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum