summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/xerox820.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/xerox820.h')
-rw-r--r--src/mame/includes/xerox820.h59
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