[Solved] IRQ Firing Bug
Posted: Tue Jul 26, 2016 8:51 am
Hello World. I decided to start fresh and recode my entire OS, since the previous version was really bad.
Now, I got GDT IDT set up and ready, they all work just fine. I made some proper IRQ/ISR handlers inside assembly and I know they work because I created a simple BSOD that displays isr exception number and error info, they all work fine (tested with division by zero). My ISR and IRQ are all set and installed.
Now here is one really annoying bug. I tried to code a simple keyboard driver, I always get a message saying that my keyboard handler is getting installed. That is all fine, I can install IRQ handlers. But I never get an expected message from my irq handler saying that some specific interrupt occurred. Now the thing is when I enable my timer or I use while(1) I get like 34907534098 messages saying that interrupt occurred, and while seeing that messages if I press any key I also see that my keyboard interrupt happened but I can see that only once, while timer interrupt keep occurring.
Now, I got GDT IDT set up and ready, they all work just fine. I made some proper IRQ/ISR handlers inside assembly and I know they work because I created a simple BSOD that displays isr exception number and error info, they all work fine (tested with division by zero). My ISR and IRQ are all set and installed.
Now here is one really annoying bug. I tried to code a simple keyboard driver, I always get a message saying that my keyboard handler is getting installed. That is all fine, I can install IRQ handlers. But I never get an expected message from my irq handler saying that some specific interrupt occurred. Now the thing is when I enable my timer or I use while(1) I get like 34907534098 messages saying that interrupt occurred, and while seeing that messages if I press any key I also see that my keyboard interrupt happened but I can see that only once, while timer interrupt keep occurring.