diff options
Diffstat (limited to 'src/devices/machine/e05a30.h')
-rw-r--r-- | src/devices/machine/e05a30.h | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/devices/machine/e05a30.h b/src/devices/machine/e05a30.h index 6b5b5e7cf96..943502a808f 100644 --- a/src/devices/machine/e05a30.h +++ b/src/devices/machine/e05a30.h @@ -25,23 +25,24 @@ public: auto centronics_fault() { return m_write_centronics_fault.bind(); } auto centronics_select() { return m_write_centronics_select.bind(); } auto cpu_reset() { return m_write_cpu_reset.bind(); } + auto ready_led() { return m_write_ready_led.bind(); } void write(offs_t offset, uint8_t data); uint8_t read(offs_t offset); /* Centronics stuff */ - DECLARE_WRITE_LINE_MEMBER( centronics_input_init ); - DECLARE_WRITE_LINE_MEMBER( centronics_input_strobe ); - DECLARE_WRITE_LINE_MEMBER( centronics_input_data0 ) { if (state) m_centronics_data |= 0x01; else m_centronics_data &= ~0x01; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data1 ) { if (state) m_centronics_data |= 0x02; else m_centronics_data &= ~0x02; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data2 ) { if (state) m_centronics_data |= 0x04; else m_centronics_data &= ~0x04; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data3 ) { if (state) m_centronics_data |= 0x08; else m_centronics_data &= ~0x08; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data4 ) { if (state) m_centronics_data |= 0x10; else m_centronics_data &= ~0x10; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data5 ) { if (state) m_centronics_data |= 0x20; else m_centronics_data &= ~0x20; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data6 ) { if (state) m_centronics_data |= 0x40; else m_centronics_data &= ~0x40; } - DECLARE_WRITE_LINE_MEMBER( centronics_input_data7 ) { if (state) m_centronics_data |= 0x80; else m_centronics_data &= ~0x80; } + void centronics_input_init(int state); + void centronics_input_strobe(int state); + void centronics_input_data0(int state) { if (state) m_centronics_data |= 0x01; else m_centronics_data &= ~0x01; } + void centronics_input_data1(int state) { if (state) m_centronics_data |= 0x02; else m_centronics_data &= ~0x02; } + void centronics_input_data2(int state) { if (state) m_centronics_data |= 0x04; else m_centronics_data &= ~0x04; } + void centronics_input_data3(int state) { if (state) m_centronics_data |= 0x08; else m_centronics_data &= ~0x08; } + void centronics_input_data4(int state) { if (state) m_centronics_data |= 0x10; else m_centronics_data &= ~0x10; } + void centronics_input_data5(int state) { if (state) m_centronics_data |= 0x20; else m_centronics_data &= ~0x20; } + void centronics_input_data6(int state) { if (state) m_centronics_data |= 0x40; else m_centronics_data &= ~0x40; } + void centronics_input_data7(int state) { if (state) m_centronics_data |= 0x80; else m_centronics_data &= ~0x80; } - int ready_led() { return !m_centronics_busy; } + int get_ready_led() { return !m_centronics_busy; } protected: // device-level overrides @@ -60,6 +61,7 @@ private: devcb_write_line m_write_centronics_fault; devcb_write_line m_write_centronics_select; devcb_write_line m_write_cpu_reset; + devcb_write_line m_write_ready_led; void update_printhead(int pos, uint8_t data); void update_pf_stepper(uint8_t data); |