X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: "Matt Flyer" Newsgroups: comp.os.msdos.djgpp References: <003e01c46b01$84546800$0d01a8c0 AT josepmariaxp> <3pCLc.170124$tH1 DOT 6880991 AT twister DOT southeast DOT rr DOT com> <41012fe1$0$172$cc7c7865 AT news DOT luth DOT se> Subject: Re: PM hardware interrupts Lines: 53 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: Date: Sat, 24 Jul 2004 00:01:56 GMT NNTP-Posting-Host: 66.56.173.148 X-Complaints-To: abuse AT rr DOT com X-Trace: twister.southeast.rr.com 1090627316 66.56.173.148 (Fri, 23 Jul 2004 20:01:56 EDT) NNTP-Posting-Date: Fri, 23 Jul 2004 20:01:56 EDT Organization: RoadRunner - Triad To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Martin, That would seem to make sense. I also noticed that what ever routine is getting called in the chain is masking out the irq10 ?HUH?? so I have had better results claiming the interrupt myself. The picture actually gets more murkey. It turns out that I now have the interrupt occuring multiple times. For some reason it only happens about 10 - 12 times though then stops. The pic controllers indicate that the interrupts are enabled and sometimes I get that they're in service. At the moment, I think my suspicion that there is some difference in the way the compiled code that handles the interrupt as I get different results. I haven't been able to work on it much recently though as I have been putting out other "fires" at work. "Martin Str|mberg" wrote in message news:41012fe1$0$172$cc7c7865 AT news DOT luth DOT se... > Matt Flyer wrote: > : So far I have been able to straighten things out a little bit. I can > : re-direct the interrupts either by chaining or allocating an iret wrapper > : and claiming the interrupt with a "_go32_set_protected" command. For some > : reason though, the interrupt only executes one time. From my research, I > : would say this means that the interrupt is not being acknowledged - but I > : believe this I addressed this. If I am not mistaken, when I chain the > : interrupt using the "_go32_chain_protected ..." command, I acknowledge the > : interrupt with an outportb(0xA0, 0x20); outportb(0x20,0x20); (slave first) > : for a non specific EOI and when I simply capture the interupt the wrapper > : handles this for me. My above assumptions are partially based on > : experimental results as if I don't structure the code this way I get crash > : errors of some form. > > I would expect the chain variant to acknowledge the interrupt (as I > would expect it to be chained to the previous handler), but not > the iret version. > > But note that I haven't done any hardware interrupt hooking myself, so > I don't know much about that. > > > Right, > > MartinS