} READ8_MEMBER( xtom3d_state::get_slave_ack ) { if (offset==2) { // IRQ = 2 logerror("pic8259_slave_ACK!\n"); return pic8259_acknowledge(m_pic8259_2); } return 0x00; } static const struct pic8259_interface xtom3d_pic8259_1_config = { DEVCB_LINE(xtom3d_pic8259_1_set_int_line), DEVCB_LINE_VCC, DEVCB_MEMBER(xtom3d_state,get_slave_ack) }; static const struct pic8259_interface xtom3d_pic8259_2_config = { DEVCB_DEVICE_LINE("pic8259_1", pic8259_ir2_w), DEVCB_LINE_GND, DEVCB_NULL }; static void set_gate_a20(running_machine &machine, int a20) { xtom3d_state *state = machine.driver_data<xtom3d_state>(); device_set_input_line(state->m_maincpu, INPUT_LINE_A20, a20); }
} READ8_MEMBER( savquest_state::get_slave_ack ) { if (offset==2) { // IRQ = 2 logerror("pic8259_slave_ACK!\n"); return pic8259_acknowledge(m_pic8259_2); } return 0x00; } static const struct pic8259_interface savquest_pic8259_1_config = { DEVCB_DRIVER_LINE_MEMBER(savquest_state,savquest_pic8259_1_set_int_line), DEVCB_LINE_VCC, DEVCB_MEMBER(savquest_state,get_slave_ack) }; static const struct pic8259_interface savquest_pic8259_2_config = { DEVCB_DEVICE_LINE("pic8259_1", pic8259_ir2_w), DEVCB_LINE_GND, DEVCB_NULL }; static void set_gate_a20(running_machine &machine, int a20) { savquest_state *state = machine.driver_data<savquest_state>(); state->m_maincpu->set_input_line(INPUT_LINE_A20, a20); }
} READ8_MEMBER( funkball_state::get_slave_ack ) { if (offset==2) { // IRQ = 2 logerror("pic8259_slave_ACK!\n"); return pic8259_acknowledge(m_pic8259_2); } return 0x00; } static const struct pic8259_interface funkball_pic8259_1_config = { DEVCB_DRIVER_LINE_MEMBER(funkball_state,funkball_pic8259_1_set_int_line), DEVCB_LINE_VCC, DEVCB_MEMBER(funkball_state,get_slave_ack) }; static const struct pic8259_interface funkball_pic8259_2_config = { DEVCB_DEVICE_LINE("pic8259_1", pic8259_ir2_w), DEVCB_LINE_GND, DEVCB_NULL }; static void set_gate_a20(running_machine &machine, int a20) { funkball_state *state = machine.driver_data<funkball_state>(); device_set_input_line(state->m_maincpu, INPUT_LINE_A20, a20); }
} READ8_MEMBER( queen_state::get_slave_ack ) { if (offset==2) { // IRQ = 2 logerror("pic8259_slave_ACK!\n"); return pic8259_acknowledge(m_pic8259_2); } return 0x00; } static const struct pic8259_interface queen_pic8259_1_config = { DEVCB_LINE(queen_pic8259_1_set_int_line), DEVCB_LINE_VCC, DEVCB_MEMBER(queen_state,get_slave_ack) }; static const struct pic8259_interface queen_pic8259_2_config = { DEVCB_DEVICE_LINE("pic8259_1", pic8259_ir2_w), DEVCB_LINE_GND, DEVCB_NULL }; static void set_gate_a20(running_machine &machine, int a20) { queen_state *state = machine.driver_data<queen_state>(); device_set_input_line(state->m_maincpu, INPUT_LINE_A20, a20); }