PIT not triggering an IRQ on VMWare.

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
User avatar
mduft
Member
Member
Posts: 46
Joined: Thu Jun 05, 2008 9:23 am
Location: Austria

Post by mduft »

pcmattman wrote:You should also note that it's not the same for exceptions. At least, not if I remember correctly. They are affected by the IF.

This though is where it gets a bit hazy, and I've got way too much schoolwork tonight to be able to test it right now.
hehe, no problem.

i tended to think the same, but i did a quick test by triggerind a div/0 exception (not with "int 0" but with faulty code of course :)) just _before_ enabling interupts, and it triggered my just set-up exception handler, so it seems that those are unaffected by the IF too...(To be sure i did a "cli" just before that too)?. maybe only the fault/abort exceptions? of course manually doing "int 0" is the same as doing "int 32" and delivers an interupt as expected.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Post by Combuster »

IF only has effect on external interrupts (i.e. those from devices).

Consider this: if you have interrupts disabled and the kernel crashes, you still want to be able to produce an error message via the interrupt handler. Same for INT xx instructions, you can call the bios even with interrupts disabled. If interrupts wouldn't happen when IF is cleared, then why would the bios documentation say "Interrrupts are enabled when necessary"
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Post by pcmattman »

Thanks for the clarification, Combuster. I had a feeling I was wrong :D.
Post Reply