diff options
Diffstat (limited to 'src/zexall/zexall.cpp')
-rw-r--r-- | src/zexall/zexall.cpp | 47 |
1 files changed, 24 insertions, 23 deletions
diff --git a/src/zexall/zexall.cpp b/src/zexall/zexall.cpp index f9fff9b2526..2459c96de14 100644 --- a/src/zexall/zexall.cpp +++ b/src/zexall/zexall.cpp @@ -4,7 +4,7 @@ This is a simplified version of the zexall driver, merely as an example for a standalone emulator build. Video terminal and user interface is removed. For full notes and proper - emulation driver, see src/drivers/zexall.cpp. + emulation driver, see src/mame/homebrew/zexall.cpp. ******************************************************************************/ @@ -16,21 +16,23 @@ class zexall_state : public driver_device { public: - zexall_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), + zexall_state(const machine_config &mconfig, device_type type, const char *tag) : + driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), m_main_ram(*this, "main_ram") { } - DECLARE_READ8_MEMBER( output_ack_r ); - DECLARE_READ8_MEMBER( output_req_r ); - DECLARE_READ8_MEMBER( output_data_r ); - DECLARE_WRITE8_MEMBER( output_ack_w ); - DECLARE_WRITE8_MEMBER( output_req_w ); - DECLARE_WRITE8_MEMBER( output_data_w ); + uint8_t output_ack_r(); + uint8_t output_req_r(); + uint8_t output_data_r(); + void output_ack_w(uint8_t data); + void output_req_w(uint8_t data); + void output_data_w(uint8_t data); + + void z80_mem(address_map &map) ATTR_COLD; + void zexall(machine_config &config); - void z80_mem(address_map &map); private: required_device<cpu_device> m_maincpu; required_shared_ptr<uint8_t> m_main_ram; @@ -40,8 +42,7 @@ private: uint8_t m_out_ack; // byte written to 0xFFFC std::string terminate_string; - virtual void machine_reset() override; - void zexall(machine_config &config); + virtual void machine_reset() override ATTR_COLD; }; @@ -69,7 +70,7 @@ void zexall_state::machine_reset() I/O Handlers ******************************************************************************/ -READ8_MEMBER( zexall_state::output_ack_r ) +uint8_t zexall_state::output_ack_r() { // spit out the byte in out_byte if out_req is not equal to out_req_last if (m_out_req != m_out_req_last) @@ -89,28 +90,28 @@ READ8_MEMBER( zexall_state::output_ack_r ) return m_out_ack; } -WRITE8_MEMBER( zexall_state::output_ack_w ) +void zexall_state::output_ack_w(uint8_t data) { m_out_ack = data; } -READ8_MEMBER( zexall_state::output_req_r ) +uint8_t zexall_state::output_req_r() { return m_out_req; } -WRITE8_MEMBER( zexall_state::output_req_w ) +void zexall_state::output_req_w(uint8_t data) { m_out_req_last = m_out_req; m_out_req = data; } -READ8_MEMBER( zexall_state::output_data_r ) +uint8_t zexall_state::output_data_r() { return m_out_data; } -WRITE8_MEMBER( zexall_state::output_data_w ) +void zexall_state::output_data_w(uint8_t data) { m_out_data = data; } @@ -123,9 +124,9 @@ WRITE8_MEMBER( zexall_state::output_data_w ) void zexall_state::z80_mem(address_map &map) { map(0x0000, 0xffff).ram().share("main_ram"); - map(0xfffd, 0xfffd).rw(this, FUNC(zexall_state::output_ack_r), FUNC(zexall_state::output_ack_w)); - map(0xfffe, 0xfffe).rw(this, FUNC(zexall_state::output_req_r), FUNC(zexall_state::output_req_w)); - map(0xffff, 0xffff).rw(this, FUNC(zexall_state::output_data_r), FUNC(zexall_state::output_data_w)); + map(0xfffd, 0xfffd).rw(FUNC(zexall_state::output_ack_r), FUNC(zexall_state::output_ack_w)); + map(0xfffe, 0xfffe).rw(FUNC(zexall_state::output_req_r), FUNC(zexall_state::output_req_w)); + map(0xffff, 0xffff).rw(FUNC(zexall_state::output_data_r), FUNC(zexall_state::output_data_w)); } @@ -162,5 +163,5 @@ ROM_END Drivers ******************************************************************************/ -/* YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS */ -COMP( 2009, zexall, 0, 0, zexall, zexall, zexall_state, 0, "Frank Cringle / Kevin Horton", "Zexall (FPGA Z80 test interface)", MACHINE_NO_SOUND_HW ) +/* YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS */ +COMP( 2009, zexall, 0, 0, zexall, zexall, zexall_state, empty_init, "Frank Cringle / Kevin Horton", "Zexall (FPGA Z80 test interface)", MACHINE_NO_SOUND_HW ) |