diff options
Diffstat (limited to 'src/mame/includes/fmtowns.h')
-rw-r--r-- | src/mame/includes/fmtowns.h | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/src/mame/includes/fmtowns.h b/src/mame/includes/fmtowns.h index 5cabaf1a40e..1371416720d 100644 --- a/src/mame/includes/fmtowns.h +++ b/src/mame/includes/fmtowns.h @@ -134,6 +134,27 @@ class towns_state : public driver_device , m_serial(*this,"serial") { } + void towns_base(machine_config &config); + void towns(machine_config &config); + void townsftv(machine_config &config); + void townshr(machine_config &config); + void townssj(machine_config &config); + + INTERRUPT_GEN_MEMBER(towns_vsync_irq); + +protected: + uint16_t m_towns_machine_id; // default is 0x0101 + + void marty_mem(address_map &map); + void pcm_mem(address_map &map); + void towns16_io(address_map &map); + void towns_io(address_map &map); + void towns_mem(address_map &map); + void ux_mem(address_map &map); + + virtual void driver_start() override; + +private: /* devices */ required_device<cpu_device> m_maincpu; required_device<speaker_sound_device> m_speaker; @@ -187,7 +208,6 @@ class towns_state : public driver_device uint8_t m_towns_rtc_select; uint8_t m_towns_rtc_data; uint8_t m_towns_timer_mask; - uint16_t m_towns_machine_id; // default is 0x0101 uint8_t m_towns_kb_status; uint8_t m_towns_kb_irq1_enable; uint8_t m_towns_kb_output; // key output @@ -242,7 +262,6 @@ class towns_state : public driver_device optional_shared_ptr<uint32_t> m_nvram; optional_shared_ptr<uint16_t> m_nvram16; - virtual void driver_start() override; virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -353,18 +372,6 @@ class towns_state : public driver_device required_memory_region m_user; optional_memory_region m_serial; - void towns_base(machine_config &config); - void towns(machine_config &config); - void townsftv(machine_config &config); - void townshr(machine_config &config); - void townssj(machine_config &config); - void marty_mem(address_map &map); - void pcm_mem(address_map &map); - void towns16_io(address_map &map); - void towns_io(address_map &map); - void towns_mem(address_map &map); - void ux_mem(address_map &map); -private: static const device_timer_id TIMER_FREERUN = 1; static const device_timer_id TIMER_INTERVAL2 = 2; static const device_timer_id TIMER_KEYBOARD = 3; @@ -388,8 +395,7 @@ private: bool m_rtc_busy; u8 m_vram_mask[4]; u8 m_vram_mask_addr; -public: - INTERRUPT_GEN_MEMBER(towns_vsync_irq); + TIMER_CALLBACK_MEMBER(towns_cdrom_read_byte); TIMER_CALLBACK_MEMBER(towns_sprite_done); TIMER_CALLBACK_MEMBER(towns_vblank_end); |