diff options
Diffstat (limited to 'src/mame/machine/ioc2.h')
-rw-r--r-- | src/mame/machine/ioc2.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/mame/machine/ioc2.h b/src/mame/machine/ioc2.h index 7a5db0ec1fb..0d61bda84b7 100644 --- a/src/mame/machine/ioc2.h +++ b/src/mame/machine/ioc2.h @@ -11,7 +11,15 @@ #pragma once +#define IOC2_NEW_KBDC (0) + +#if IOC2_NEW_KBDC +#include "machine/at_keybc.h" +#else #include "machine/8042kbdc.h" +#endif +#include "bus/pc_kbd/pc_kbdc.h" +#include "bus/pc_kbd/keyboards.h" #include "machine/pc_lpt.h" #include "machine/pckeybrd.h" #include "machine/pit8253.h" @@ -64,6 +72,7 @@ public: void set_local_int_mask(int channel, const uint32_t mask); void set_map_int_mask(int channel, const uint32_t mask); void set_timer_int_clear(const uint32_t data); + void set_mappable_int(uint8_t mask, bool state); uint8_t get_pit_reg(uint32_t offset) { return m_pit->read(offset); } void set_pit_reg(uint32_t offset, uint8_t data) { return m_pit->write(offset, data); } @@ -82,7 +91,6 @@ protected: DECLARE_WRITE_LINE_MEMBER(kbdc_int_w); DECLARE_WRITE_LINE_MEMBER(duart_int_w); - void set_mappable_int(uint8_t mask, bool state); void check_mappable_interrupt(int channel); enum @@ -158,8 +166,12 @@ protected: required_device<cpu_device> m_maincpu; required_device<scc85230_device> m_scc; required_device<pc_lpt_device> m_pi1; // we assume standard parallel port (SPP) mode - // TODO: SGI parallel port (SGIPP), HP BOISE high speed parallel port (HPBPP), and Ricoh scanner modes + // TODO: SGI parallel port (SGIPP), HP BOISE high speed parallel port (HPBPP), and Ricoh scanner mode +#if IOC2_NEW_KBDC + required_device<ps2_keyboard_controller_device> m_kbdc; +#else required_device<kbdc8042_device> m_kbdc; +#endif required_device<pit8254_device> m_pit; virtual void handle_reset_reg_write(uint8_t data); |