where the serial interrupt ties in? A long time ago I wrote a protected mode operating system on '286. It was very simple and I was using it only to run a 55 AA memory test on expanded and extended memory. There were alot of memory failures in those days. Anyway I did write a keyBd handler for it and if I remember correctly it appeared at the same vector in the new IDT as the old real mode interrupt vector table. If this is the case than the two serial port interrupts being software interrupts 0C and 0B would share the IDT vectors with Segment not present and Stack segment fault. I did some research and found two sources that said there was only one serial interrupt at 14h in the IDT. If this is the case than how are they being redirected? Is it through the interrupt redirection bitmap. Can I still hook the two through vectors 0B and 0C? cornfused:(
AFAIK
COM1/COM3 use IRQ4 redirected to int 24h in SOL OS via IDT table
COM2/COM4 should use IRQ3
And you are not expected to hook any INT vectors directly in Windows OS
COM1/COM3 use IRQ4 redirected to int 24h in SOL OS via IDT table
COM2/COM4 should use IRQ3
And you are not expected to hook any INT vectors directly in Windows OS
Those are hardware IRQ's in the APIC. I know I'm not expected to, but surprize....lol.
No it's not hard to hook them. Just like DOS. SIDT gives address. In fact it directly follows GDT. You see the real problem I'm having is when I read a serial port I always get "ff". Well they could be doing any number of things like changing the DLAB in the USART to masking it with the APIC. I want to catch the interrupt since I know it will be properly setup or initialized.
No it's not hard to hook them. Just like DOS. SIDT gives address. In fact it directly follows GDT. You see the real problem I'm having is when I read a serial port I always get "ff". Well they could be doing any number of things like changing the DLAB in the USART to masking it with the APIC. I want to catch the interrupt since I know it will be properly setup or initialized.