|
|
| version 1.13, 2004/01/29 09:41:50 | version 1.16, 2004/03/10 23:01:08 |
|---|---|
| Line 15 static const _PICITEM def_slave = { | Line 15 static const _PICITEM def_slave = { |
| 0, {0, 0, 0, 0, 0, 0, 0, 0}, | 0, {0, 0, 0, 0, 0, 0, 0, 0}, |
| {7, 6, 5, 4, 3, 2, 1, 0}, | {7, 6, 5, 4, 3, 2, 1, 0}, |
| {0, 0x10, 0x07, 0}, | {0, 0x10, 0x07, 0}, |
| 0x70, 0, 0, 0, | 0x71, 0, 0, 0, |
| 0, 0, 0, 0}; | 0, 0, 0, 0}; |
| Line 120 void pic_irq(void) { | Line 120 void pic_irq(void) { |
| nevent_reset(NEVENT_PICMASK); | nevent_reset(NEVENT_PICMASK); |
| } | } |
| // TRACEOUT(("hardware-int %.2x", (p->pi[0].icw[1] & 0xf8) | irq)); | // TRACEOUT(("hardware-int %.2x", (p->pi[0].icw[1] & 0xf8) | irq)); |
| CPU_INTERRUPT((REG8)((p->pi[0].icw[1] & 0xf8) | irq)); | CPU_INTERRUPT((REG8)((p->pi[0].icw[1] & 0xf8) | irq), 0); |
| return; | return; |
| } | } |
| if ((!p->pi[0].levels) || | if ((!p->pi[0].levels) || |
| Line 159 void pic_irq(void) { | Line 159 void pic_irq(void) { |
| p->pi[0].level[p->pi[0].levels++] = sirq; | p->pi[0].level[p->pi[0].levels++] = sirq; |
| } | } |
| // TRACEOUT(("hardware-int %.2x", (p->pi[1].icw[1] & 0xf8) | irq)); | // TRACEOUT(("hardware-int %.2x", (p->pi[1].icw[1] & 0xf8) | irq)); |
| CPU_INTERRUPT((REG8)((p->pi[1].icw[1] & 0xf8) | irq)); | CPU_INTERRUPT((REG8)((p->pi[1].icw[1] & 0xf8) | irq), 0); |
| } | } |
| } | } |
| } | } |
| Line 275 static void IOOUTCALL pic_o00(UINT port, | Line 275 static void IOOUTCALL pic_o00(UINT port, |
| } | } |
| } | } |
| #if defined(TRACE) | |
| extern int piccnt; | |
| #endif | |
| static void IOOUTCALL pic_o02(UINT port, REG8 dat) { | static void IOOUTCALL pic_o02(UINT port, REG8 dat) { |
| PICITEM picp; | PICITEM picp; |
| TRACEOUT(("pic %x %x", port, dat)); | // TRACEOUT(("pic %x %x", port, dat)); |
| picp = &pic.pi[(port >> 3) & 1]; | picp = &pic.pi[(port >> 3) & 1]; |
| if (!picp->writeicw) { | if (!picp->writeicw) { |
| #if 1 | #if 1 |
| Line 296 static void IOOUTCALL pic_o02(UINT port, | Line 292 static void IOOUTCALL pic_o02(UINT port, |
| } | } |
| #endif | #endif |
| picp->imr = dat; | picp->imr = dat; |
| #if defined(TRACE) | |
| piccnt++; | |
| #endif | |
| } | } |
| else { | else { |
| picp->icw[picp->writeicw] = dat; | picp->icw[picp->writeicw] = dat; |