Special Mask Mode for i8259 PIC (Sebastian Reichelt).
authorbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 19 Jul 2008 09:18:48 +0000 (09:18 +0000)
committerbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 19 Jul 2008 09:18:48 +0000 (09:18 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4894 c046a42c-6fe2-441c-8c8c-71466251a162

hw/i8259.c

index add6345..750a76c 100644 (file)
@@ -123,6 +123,8 @@ static int pic_get_irq(PicState *s)
        master, the IRQ coming from the slave is not taken into account
        for the priority computation. */
     mask = s->isr;
+    if (s->special_mask)
+        mask &= ~s->imr;
     if (s->special_fully_nested_mode && s == &s->pics_state->pics[0])
         mask &= ~(1 << 2);
     cur_priority = get_priority(s, mask);