From: "Michael Schuster" Organization: LS f. Elektr. Energieversorgung To: Josh Turpen , djgpp AT delorie DOT com Date: Thu, 19 Dec 1996 08:20:37 MEZ Subject: hardware interrupts again Message-Id: Hi out there, hi Josh! Thanks again. > Better? :) There is one thing though that I forgot to mention: > You need to acknowledge the interrupt to the interrupt controller by > doing an "movb $0x20,al; out $0x20,%al" . The interrupt controller > won't generate an other interrupt if you don't do that. Remember: I told *now * my interrupts work fine, so I did of course confirm the interrupts -I made this in C with a outportb (0x20,0x20). Also if you program a Slave IR (IR8..IR15) you have to outportb (0xA0,0x20) additionally. Still my question to all of you: > > But I still donot understand why the Interrupt works, the programm > > is running, but when releasing the interrupt or shutting down the > > program, why the program crashes. > > Also non array, global variables, are still in use in my > > interrupthandler, and they don't harm anything (till now). Is this ok, then? > Try this program, as an example: (it uses go32, but thats ok, its easy) If you want to do a hardware interrupt, you also have to program the controller. I did this, and it works perfectly. The only thing, which won't work with my hardwareinterrupts, is a array defined as array_type data [const x][const y] but when array_type **data everthing works. Michi ********************************************** Michael Schuster E-mail: Schuster AT eev DOT e-technik DOT uni-erlangen DOT de Universitaet Erlangen/Nuernberg Lehrstuhl fuer Elektrische Energieversorgung Cauerstrasse 4 91058 Erlangen http://www.eev.e-technik.uni-erlangen.de/ **********************************************