hooked up ide irq straight to the 8259 (nw)

This commit is contained in:
smf- 2012-10-31 21:10:21 +00:00
parent 29e3f296d3
commit 28885d0061
11 changed files with 11 additions and 79 deletions

View File

@ -171,7 +171,6 @@ public:
DECLARE_WRITE16_MEMBER(calchase_dac_l_w);
DECLARE_WRITE16_MEMBER(calchase_dac_r_w);
DECLARE_WRITE_LINE_MEMBER(calchase_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_DRIVER_INIT(calchase);
virtual void machine_start();
@ -896,11 +895,6 @@ static void keyboard_interrupt(running_machine &machine, int state)
pic8259_ir1_w(drvstate->m_pic8259_1, state);
}
WRITE_LINE_MEMBER( calchase_state::ide_interrupt )
{
pic8259_ir6_w(m_pic8259_2, state);
}
static int calchase_get_out2(running_machine &machine)
{
calchase_state *state = machine.driver_data<calchase_state>();
@ -930,7 +924,7 @@ static MACHINE_CONFIG_START( calchase, calchase_state )
MCFG_PIC8259_ADD( "pic8259_1", calchase_pic8259_1_config )
MCFG_PIC8259_ADD( "pic8259_2", calchase_pic8259_2_config )
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, calchase_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
MCFG_MC146818_ADD( "rtc", MC146818_STANDARD )
MCFG_PCI_BUS_LEGACY_ADD("pcibus", 0)

View File

@ -418,7 +418,6 @@ public:
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_WRITE_LINE_MEMBER(chihiro_pit8254_out0_changed);
DECLARE_WRITE_LINE_MEMBER(chihiro_pit8254_out2_changed);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
};
/*
@ -1472,11 +1471,6 @@ WRITE32_MEMBER( chihiro_state::ide_w )
ide_controller_w(chihiro_devs.ide, offset+0x01f0, size, data);
}
WRITE_LINE_MEMBER(chihiro_state::ide_interrupt)
{
pic8259_ir6_w(chihiro_devs.pic8259_2, state); // IRQ 14
}
// ======================> ide_baseboard_device
class ide_baseboard_device : public ide_hdd_device
@ -1845,7 +1839,7 @@ static MACHINE_CONFIG_START( chihiro_base, chihiro_state )
MCFG_PIC8259_ADD( "pic8259_2", chihiro_pic8259_2_config )
MCFG_PIT8254_ADD( "pit8254", chihiro_pit8254_config )
MCFG_IDE_CONTROLLER_ADD( "ide", ide_baseboard, NULL, "bb", true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, chihiro_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
MCFG_IDE_CONTROLLER_BUS_MASTER("maincpu", AS_PROGRAM)
/* video hardware */

View File

@ -162,7 +162,6 @@ public:
DECLARE_READ8_MEMBER(io20_r);
DECLARE_WRITE8_MEMBER(io20_w);
DECLARE_WRITE_LINE_MEMBER(funkball_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
virtual void machine_start();
virtual void machine_reset();
UINT32 screen_update_funkball(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
@ -1101,14 +1100,8 @@ static IRQ_CALLBACK(irq_callback)
return pic8259_acknowledge( state->m_pic8259_1);
}
WRITE_LINE_MEMBER(funkball_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
void funkball_state::machine_start()
{
m_bios_ram = auto_alloc_array(machine(), UINT8, 0x20000);
init_pc_common(machine(), PCCOMMON_KEYBOARD_AT, funkball_set_keyb_int);
@ -1171,7 +1164,7 @@ static MACHINE_CONFIG_START( funkball, funkball_state )
MCFG_PCI_BUS_LEGACY_DEVICE(18, NULL, cx5510_pci_r, cx5510_pci_w)
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, funkball_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
/* video hardware */
MCFG_3DFX_VOODOO_1_ADD("voodoo_0", STD_VOODOO_1_CLOCK, voodoo_intf)

View File

@ -114,7 +114,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(gamecstl_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_DRIVER_INIT(gamecstl);
virtual void machine_start();
@ -708,7 +707,7 @@ static MACHINE_CONFIG_START( gamecstl, gamecstl_state )
MCFG_PIC8259_ADD( "pic8259_2", gamecstl_pic8259_2_config )
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, gamecstl_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
MCFG_MC146818_ADD( "rtc", MC146818_STANDARD )
@ -737,11 +736,6 @@ static void keyboard_interrupt(running_machine &machine, int state)
pic8259_ir1_w(drvstate->m_pic8259_1, state);
}
WRITE_LINE_MEMBER(gamecstl_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
static int gamecstl_get_out2(running_machine &machine)
{
gamecstl_state *state = machine.driver_data<gamecstl_state>();

View File

@ -180,7 +180,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(mediagx_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_DRIVER_INIT(a51site4);
virtual void machine_start();
@ -1185,7 +1184,7 @@ static MACHINE_CONFIG_START( mediagx, mediagx_state )
MCFG_PIC8259_ADD( "pic8259_slave", mediagx_pic8259_2_config )
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, mediagx_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_slave", pic8259_device, ir6_w))
MCFG_TIMER_DRIVER_ADD("sound_timer", mediagx_state, sound_timer_callback)
@ -1226,11 +1225,6 @@ static void keyboard_interrupt(running_machine &machine, int _state)
pic8259_ir1_w(state->m_pic8259_1, _state);
}
WRITE_LINE_MEMBER( mediagx_state::ide_interrupt )
{
pic8259_ir6_w(m_pic8259_2, state);
}
static int mediagx_get_out2(running_machine &machine)
{
mediagx_state *state = machine.driver_data<mediagx_state>();

View File

@ -96,7 +96,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(midqslvr_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
virtual void machine_start();
virtual void machine_reset();
};
@ -650,11 +649,6 @@ static IRQ_CALLBACK(irq_callback)
return pic8259_acknowledge( state->m_pic8259_1);
}
WRITE_LINE_MEMBER(midqslvr_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
void midqslvr_state::machine_start()
{
@ -704,7 +698,7 @@ static MACHINE_CONFIG_START( midqslvr, midqslvr_state )
MCFG_PCI_BUS_LEGACY_DEVICE(31, NULL, intel82371ab_pci_r, intel82371ab_pci_w)
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, midqslvr_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
/* video hardware */
MCFG_FRAGMENT_ADD( pcvideo_vga )

View File

@ -107,7 +107,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(queen_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
virtual void machine_start();
virtual void machine_reset();
};
@ -633,14 +632,8 @@ static IRQ_CALLBACK(irq_callback)
return pic8259_acknowledge( state->m_pic8259_1);
}
WRITE_LINE_MEMBER( queen_state::ide_interrupt )
{
pic8259_ir6_w(m_pic8259_2, state);
}
void queen_state::machine_start()
{
m_bios_ram = auto_alloc_array(machine(), UINT32, 0x10000/4);
m_bios_ext1_ram = auto_alloc_array(machine(), UINT32, 0x4000/4);
m_bios_ext2_ram = auto_alloc_array(machine(), UINT32, 0x4000/4);
@ -689,7 +682,7 @@ static MACHINE_CONFIG_START( queen, queen_state )
MCFG_PCI_BUS_LEGACY_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w)
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, queen_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
/* video hardware */
MCFG_FRAGMENT_ADD( pcvideo_vga )

View File

@ -92,7 +92,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(savquest_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
virtual void machine_start();
virtual void machine_reset();
};
@ -514,11 +513,6 @@ static IRQ_CALLBACK(irq_callback)
return pic8259_acknowledge( state->m_pic8259_1);
}
WRITE_LINE_MEMBER(savquest_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
void savquest_state::machine_start()
{
m_bios_ram = auto_alloc_array(machine(), UINT32, 0x20000/4);
@ -555,7 +549,7 @@ static MACHINE_CONFIG_START( savquest, savquest_state )
MCFG_PCI_BUS_LEGACY_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w)
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, savquest_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
/* video hardware */
MCFG_FRAGMENT_ADD( pcvideo_vga )

View File

@ -77,7 +77,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(taitowlf_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_DRIVER_INIT(taitowlf);
virtual void machine_start();
@ -645,7 +644,7 @@ static MACHINE_CONFIG_START( taitowlf, taitowlf_state )
MCFG_PIC8259_ADD( "pic8259_1", taitowlf_pic8259_1_config )
MCFG_PIC8259_ADD( "pic8259_2", taitowlf_pic8259_2_config )
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, taitowlf_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
MCFG_MC146818_ADD( "rtc", MC146818_STANDARD )
/* video hardware */
@ -674,11 +673,6 @@ static void keyboard_interrupt(running_machine &machine, int state)
pic8259_ir1_w(drvstate->m_pic8259_1, state);
}
WRITE_LINE_MEMBER(taitowlf_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
static int taitowlf_get_out2(running_machine &machine)
{
taitowlf_state *state = machine.driver_data<taitowlf_state>();

View File

@ -65,7 +65,6 @@ public:
DECLARE_READ32_MEMBER(fdc_r);
DECLARE_WRITE32_MEMBER(fdc_w);
DECLARE_WRITE_LINE_MEMBER(voyager_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
DECLARE_READ8_MEMBER(get_slave_ack);
DECLARE_DRIVER_INIT(voyager);
virtual void machine_start();
@ -740,11 +739,6 @@ static void keyboard_interrupt(running_machine &machine, int state)
pic8259_ir1_w(drvstate->m_pic8259_1, state);
}
WRITE_LINE_MEMBER(voyager_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
static int voyager_get_out2(running_machine &machine)
{
voyager_state *state = machine.driver_data<voyager_state>();
@ -774,7 +768,7 @@ static MACHINE_CONFIG_START( voyager, voyager_state )
MCFG_PIC8259_ADD( "pic8259_1", voyager_pic8259_1_config )
MCFG_PIC8259_ADD( "pic8259_2", voyager_pic8259_2_config )
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, voyager_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
MCFG_MC146818_ADD( "rtc", MC146818_STANDARD )
MCFG_PCI_BUS_LEGACY_ADD("pcibus", 0)

View File

@ -113,7 +113,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(pc_dack2_w);
DECLARE_WRITE_LINE_MEMBER(pc_dack3_w);
DECLARE_WRITE_LINE_MEMBER(xtom3d_pic8259_1_set_int_line);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
virtual void machine_start();
virtual void machine_reset();
};
@ -642,11 +641,6 @@ static IRQ_CALLBACK(irq_callback)
return pic8259_acknowledge( state->m_pic8259_1);
}
WRITE_LINE_MEMBER(xtom3d_state::ide_interrupt)
{
pic8259_ir6_w(m_pic8259_2, state);
}
void xtom3d_state::machine_start()
{
@ -696,7 +690,7 @@ static MACHINE_CONFIG_START( xtom3d, xtom3d_state )
MCFG_PCI_BUS_LEGACY_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w)
MCFG_IDE_CONTROLLER_ADD("ide", ide_devices, "hdd", NULL, true)
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE(DEVICE_SELF, xtom3d_state, ide_interrupt))
MCFG_IDE_CONTROLLER_IRQ_HANDLER(DEVWRITELINE("pic8259_2", pic8259_device, ir6_w))
/* video hardware */
MCFG_FRAGMENT_ADD( pcvideo_vga )