diff options
Diffstat (limited to 'src/mame/includes/xerox820.h')
-rw-r--r-- | src/mame/includes/xerox820.h | 59 |
1 files changed, 31 insertions, 28 deletions
diff --git a/src/mame/includes/xerox820.h b/src/mame/includes/xerox820.h index 2969f58712c..b3f3fbdd8bf 100644 --- a/src/mame/includes/xerox820.h +++ b/src/mame/includes/xerox820.h @@ -66,36 +66,39 @@ public: m_400_460(0) { } + uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); + + DECLARE_READ8_MEMBER( fdc_r ); + DECLARE_WRITE8_MEMBER( fdc_w ); + DECLARE_WRITE8_MEMBER( scroll_w ); + //DECLARE_WRITE8_MEMBER( x120_system_w ); + DECLARE_READ8_MEMBER( kbpio_pa_r ); + DECLARE_WRITE8_MEMBER( kbpio_pa_w ); + DECLARE_READ8_MEMBER( kbpio_pb_r ); + DECLARE_WRITE_LINE_MEMBER( fr_w ); + DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w ); + DECLARE_WRITE_LINE_MEMBER( fdc_drq_w ); + + TIMER_DEVICE_CALLBACK_MEMBER(ctc_tick); + +protected: virtual void machine_start() override; virtual void machine_reset() override; - uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - required_device<cpu_device> m_maincpu; required_device<z80pio_device> m_kbpio; required_device<z80ctc_device> m_ctc; required_device<z80sio0_device> m_sio; - required_device<wd_fdc_t> m_fdc; + required_device<wd_fdc_device_base> m_fdc; required_device<ram_device> m_ram; required_device<palette_device> m_palette; required_device<floppy_connector> m_floppy0; required_device<floppy_connector> m_floppy1; - required_device<xerox_820_keyboard_t> m_kb; + required_device<xerox_820_keyboard_device> m_kb; required_memory_region m_rom; required_memory_region m_char_rom; required_shared_ptr<uint8_t> m_video_ram; - DECLARE_READ8_MEMBER( fdc_r ); - DECLARE_WRITE8_MEMBER( fdc_w ); - DECLARE_WRITE8_MEMBER( scroll_w ); - //DECLARE_WRITE8_MEMBER( x120_system_w ); - DECLARE_READ8_MEMBER( kbpio_pa_r ); - DECLARE_WRITE8_MEMBER( kbpio_pa_w ); - DECLARE_READ8_MEMBER( kbpio_pb_r ); - DECLARE_WRITE_LINE_MEMBER( fr_w ); - DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w ); - DECLARE_WRITE_LINE_MEMBER( fdc_drq_w ); - virtual void bankswitch(int bank); void update_nmi(); @@ -112,27 +115,26 @@ public: bool m_fdc_drq; /* data request */ int m_8n5; /* 5.25" / 8" drive select */ int m_400_460; /* double sided disk detect */ - - TIMER_DEVICE_CALLBACK_MEMBER(ctc_tick); }; class bigboard_state : public xerox820_state { public: bigboard_state(const machine_config &mconfig, device_type type, const char *tag) - : xerox820_state(mconfig, type, tag), - m_beeper(*this, "beeper") + : xerox820_state(mconfig, type, tag) + , m_beeper(*this, "beeper") { } - required_device<beep_device> m_beeper; + DECLARE_WRITE8_MEMBER( kbpio_pa_w ); +protected: virtual void machine_reset() override; - DECLARE_WRITE8_MEMBER( kbpio_pa_w ); + TIMER_CALLBACK_MEMBER(bigboard_beepoff); - bool m_bit5; + required_device<beep_device> m_beeper; - TIMER_CALLBACK_MEMBER(bigboard_beepoff); + bool m_bit5; }; class xerox820ii_state : public xerox820_state @@ -145,11 +147,6 @@ public: { } - required_device<speaker_sound_device> m_speaker; - required_device<SCSI_PORT_DEVICE> m_sasibus; - - virtual void machine_reset() override; - DECLARE_WRITE8_MEMBER( bell_w ); DECLARE_WRITE8_MEMBER( slden_w ); DECLARE_WRITE8_MEMBER( chrom_w ); @@ -159,7 +156,13 @@ public: DECLARE_WRITE8_MEMBER( rdpio_pb_w ); DECLARE_WRITE_LINE_MEMBER( rdpio_pardy_w ); +protected: + virtual void machine_reset() override; + void bankswitch(int bank) override; + + required_device<speaker_sound_device> m_speaker; + required_device<scsi_port_device> m_sasibus; }; #endif // MAME_INCLUDES_XEROX820_H |