Mail Archives: djgpp/1996/12/19/02:35:11
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/
**********************************************
- Raw text -