Xref: news2.mv.net comp.os.msdos.djgpp:6750 From: snarfy AT goodnet DOT com Newsgroups: comp.os.msdos.djgpp Subject: writing hw interrupt handlers. Date: 3 Aug 1996 01:39:19 GMT Organization: GoodNet Lines: 33 Message-ID: <4tuak7$h7m@news.goodnet.com> NNTP-Posting-Host: goodnet.com To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp After reading the DPMI 0.9 spec and after looking through FAQ, I'm a bit perplexed. The FAQ says that using _go32_dpmi_allocate_iret_wrapper shouldn't be used in production quality code, since you can't really lock the wrapper. I'm not sure what a DPMI compliant interrupt handler should do though, and I know very little about protected mode. Lets say I was hooking IRQ0 and I didn't want to allocate the iret_wrapper. What would the interrupt code have to look like? Sample code: _protected_mode_IRQ0_handler: cli ....do some stuff movb $0x20,%al outb %al, $0x20 sti iret Now, what else would have to be added to that code to make it work without calling _go32_dpmi_allocate_iret_wrapper() on it? Maybe a pusha, popa, stack switch, ... ? On a side note, can I access my pmode variables in a real mode interrupt? Are there any special considerations I have to take into account (like making sure the variables are in DOS mem)? Thanks. Josh snarfy AT goodnet DOT com