mirror of
https://github.com/mamedev/mame.git
synced 2024-11-16 07:48:32 +01:00
apple2gs: allow slot IRQs to be dispatched [R. Belmont, Peter Ferrie]
This commit is contained in:
parent
85f85b8607
commit
73c3c08cfc
1 changed files with 12 additions and 1 deletions
|
@ -544,6 +544,8 @@ private:
|
||||||
|
|
||||||
int m_inh_bank;
|
int m_inh_bank;
|
||||||
|
|
||||||
|
bool m_slot_irq;
|
||||||
|
|
||||||
double m_x_calibration, m_y_calibration;
|
double m_x_calibration, m_y_calibration;
|
||||||
|
|
||||||
device_a2bus_card_interface *m_slotdevice[8];
|
device_a2bus_card_interface *m_slotdevice[8];
|
||||||
|
@ -641,6 +643,7 @@ WRITE_LINE_MEMBER(apple2gs_state::a2bus_irq_w)
|
||||||
if (state == ASSERT_LINE)
|
if (state == ASSERT_LINE)
|
||||||
{
|
{
|
||||||
raise_irq(IRQS_SLOT);
|
raise_irq(IRQS_SLOT);
|
||||||
|
m_slot_irq = true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1350,6 +1353,8 @@ void apple2gs_state::machine_reset()
|
||||||
m_mouse_dx = 0x00;
|
m_mouse_dx = 0x00;
|
||||||
m_mouse_dy = 0x00;
|
m_mouse_dy = 0x00;
|
||||||
|
|
||||||
|
m_slot_irq = false;
|
||||||
|
|
||||||
#if !RUN_ADB_MICRO
|
#if !RUN_ADB_MICRO
|
||||||
m_adb_state = ADBSTATE_IDLE;
|
m_adb_state = ADBSTATE_IDLE;
|
||||||
m_adb_kmstatus = 0x00;
|
m_adb_kmstatus = 0x00;
|
||||||
|
@ -2206,9 +2211,15 @@ READ8_MEMBER(apple2gs_state::c000_r)
|
||||||
return adb_read_datareg();
|
return adb_read_datareg();
|
||||||
|
|
||||||
case 0x27: // KMSTATUS
|
case 0x27: // KMSTATUS
|
||||||
// hack to let one-second IRQs get through in Nucleus
|
// hack to let one-second IRQs get through in Nucleus
|
||||||
if (m_vgcint & VGCINT_SECOND)
|
if (m_vgcint & VGCINT_SECOND)
|
||||||
return 0;
|
return 0;
|
||||||
|
// secondary hack for slot IRQs
|
||||||
|
if (m_slot_irq)
|
||||||
|
{
|
||||||
|
m_slot_irq = false;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return adb_read_kmstatus();
|
return adb_read_kmstatus();
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue