Page 1 of 1

Interrupt 9h and BIOS

Posted: Wed Jan 21, 2009 9:37 am
by renovatio
When I turn on my computer and after the bios boots my system, is the interrupt 9h (in the IVT) pointing to a code that is useful to interrupt 16h (bios), or int 16h uses polling to read the port?

Thanks.

Re: Interrupt 9h and BIOS

Posted: Wed Jan 21, 2009 5:37 pm
by renovatio
I don't want to be impacient, but can anyone help me?

Thanks again ;)

Re: Interrupt 9h and BIOS

Posted: Wed Jan 21, 2009 5:45 pm
by JohnnyTheDon
I would guess that it depends on your BIOS. It is probably a good idea not to mess with the lower parts of the real mode IVT unless you no longer want to use the BIOS.

Re: Interrupt 9h and BIOS

Posted: Wed Jan 21, 2009 6:12 pm
by Love4Boobies
Interrupt 9 is an IRQ. On every keystroke (assuming the IF flag in EFLAGS is set), IRQ 9 fires up. In real-address mode, the BIOS interrupt 16H is used (by software) for keyboard services (e.g. stuff like waiting for a keystroke). You could, if you like, write your own handler for IRQ 9 and handle keystrokes at any given time; however, you do need to read on the keyboard controller so you know how to handle the data.

Regards,
Bogdan

Re: Interrupt 9h and BIOS

Posted: Wed Jan 21, 2009 7:05 pm
by bewing
BIOSes are not multitasking, and they almost never have embedded drivers. So they almost never use IRQs. They almost always use polling. I suspect that if you look hard, though, that you will find exceptions.

And as JohnnyTheDon says, it's smartest just to leave the IVT alone until you are completely in PMode, and you can guarantee that you will never return to Real mode ever again. Then you don't need to worry yourself about how the IVT works.

Posted: Wed Jan 21, 2009 8:43 pm
by 1234
[post deleted]

Re: Interrupt 9h and BIOS

Posted: Thu Jan 22, 2009 9:12 am
by renovatio
thanks for your replies...

Re: Interrupt 9h and BIOS

Posted: Fri Jan 23, 2009 5:41 am
by jal
Love4Boobies wrote:Interrupt 9 is an IRQ. On every keystroke (assuming the IF flag in EFLAGS is set), IRQ 9 fires up
Well, not quite, it's that IRQ 1 (the keyboard) triggers INT 9 (there's an offset of 8 for IRQs).


JAL

Re: Interrupt 9h and BIOS

Posted: Fri Jan 23, 2009 11:34 am
by Love4Boobies
jal wrote:
Love4Boobies wrote:Interrupt 9 is an IRQ. On every keystroke (assuming the IF flag in EFLAGS is set), IRQ 9 fires up
Well, not quite, it's that IRQ 1 (the keyboard) triggers INT 9 (there's an offset of 8 for IRQs).


JAL
You're right, I don't know why I said that... :oops: IRQ 1 was the IRQ...