summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/bw12.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/bw12.h')
-rw-r--r--src/mame/includes/bw12.h103
1 files changed, 54 insertions, 49 deletions
diff --git a/src/mame/includes/bw12.h b/src/mame/includes/bw12.h
index 6a10d8db569..d8e9d9e525e 100644
--- a/src/mame/includes/bw12.h
+++ b/src/mame/includes/bw12.h
@@ -38,26 +38,61 @@ class bw12_state : public driver_device
{
public:
bw12_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_maincpu(*this, Z80_TAG),
- m_pia(*this, PIA6821_TAG),
- m_sio(*this, Z80SIO_TAG),
- m_fdc(*this, UPD765_TAG),
- m_kbc(*this, AY3600PRO002_TAG),
- m_crtc(*this, MC6845_TAG),
- m_pit(*this, PIT8253_TAG),
- m_palette(*this, "palette"),
- m_centronics(*this, CENTRONICS_TAG),
- m_ram(*this, RAM_TAG),
- m_floppy0(*this, UPD765_TAG ":1:525dd"),
- m_floppy1(*this, UPD765_TAG ":2:525dd"),
- m_floppy_timer(*this, FLOPPY_TIMER_TAG),
- m_rom(*this, Z80_TAG),
- m_char_rom(*this, "chargen"),
- m_video_ram(*this, "video_ram"),
- m_modifiers(*this, "MODIFIERS")
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, Z80_TAG)
+ , m_pia(*this, PIA6821_TAG)
+ , m_sio(*this, Z80SIO_TAG)
+ , m_fdc(*this, UPD765_TAG)
+ , m_kbc(*this, AY3600PRO002_TAG)
+ , m_crtc(*this, MC6845_TAG)
+ , m_pit(*this, PIT8253_TAG)
+ , m_palette(*this, "palette")
+ , m_centronics(*this, CENTRONICS_TAG)
+ , m_ram(*this, RAM_TAG)
+ , m_floppy0(*this, UPD765_TAG ":1:525dd")
+ , m_floppy1(*this, UPD765_TAG ":2:525dd")
+ , m_floppy_timer(*this, FLOPPY_TIMER_TAG)
+ , m_rom(*this, Z80_TAG)
+ , m_char_rom(*this, "chargen")
+ , m_video_ram(*this, "video_ram")
+ , m_modifiers(*this, "MODIFIERS")
+ , m_led(*this, "led0")
{ }
+ void bankswitch();
+ void floppy_motor_off();
+ void set_floppy_motor_off_timer();
+ void ls259_w(int address, int data);
+
+ DECLARE_READ8_MEMBER( ls259_r );
+ DECLARE_WRITE8_MEMBER( ls259_w );
+ DECLARE_READ8_MEMBER( pia_pa_r );
+ DECLARE_WRITE_LINE_MEMBER( pia_cb2_w );
+ DECLARE_WRITE_LINE_MEMBER( pit_out2_w );
+ DECLARE_READ_LINE_MEMBER( ay3600_shift_r );
+ DECLARE_READ_LINE_MEMBER( ay3600_control_r );
+ DECLARE_WRITE_LINE_MEMBER( ay3600_data_ready_w );
+ MC6845_UPDATE_ROW( crtc_update_row );
+
+ TIMER_DEVICE_CALLBACK_MEMBER(floppy_motor_off_tick);
+ DECLARE_WRITE_LINE_MEMBER(pit_out0_w);
+ DECLARE_FLOPPY_FORMATS( bw12_floppy_formats );
+ DECLARE_FLOPPY_FORMATS( bw14_floppy_formats );
+
+ DECLARE_WRITE_LINE_MEMBER(write_centronics_busy);
+ DECLARE_WRITE_LINE_MEMBER(write_centronics_fault);
+ DECLARE_WRITE_LINE_MEMBER(write_centronics_perror);
+
+ void common(machine_config &config);
+ void bw14(machine_config &config);
+ void bw12(machine_config &config);
+ void bw12_io(address_map &map);
+ void bw12_mem(address_map &map);
+
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
required_device<cpu_device> m_maincpu;
required_device<pia6821_device> m_pia;
required_device<z80sio0_device> m_sio;
@@ -75,24 +110,7 @@ public:
required_memory_region m_char_rom;
required_shared_ptr<uint8_t> m_video_ram;
required_ioport m_modifiers;
-
- virtual void machine_start() override;
- virtual void machine_reset() override;
-
- void bankswitch();
- void floppy_motor_off();
- void set_floppy_motor_off_timer();
- void ls259_w(int address, int data);
-
- DECLARE_READ8_MEMBER( ls259_r );
- DECLARE_WRITE8_MEMBER( ls259_w );
- DECLARE_READ8_MEMBER( pia_pa_r );
- DECLARE_WRITE_LINE_MEMBER( pia_cb2_w );
- DECLARE_WRITE_LINE_MEMBER( pit_out2_w );
- DECLARE_READ_LINE_MEMBER( ay3600_shift_r );
- DECLARE_READ_LINE_MEMBER( ay3600_control_r );
- DECLARE_WRITE_LINE_MEMBER( ay3600_data_ready_w );
- MC6845_UPDATE_ROW( crtc_update_row );
+ output_finder<> m_led;
/* memory state */
int m_bank;
@@ -110,23 +128,10 @@ public:
int m_motor_on;
int m_motor0;
int m_motor1;
- TIMER_DEVICE_CALLBACK_MEMBER(floppy_motor_off_tick);
- DECLARE_WRITE_LINE_MEMBER(pit_out0_w);
- DECLARE_FLOPPY_FORMATS( bw12_floppy_formats );
- DECLARE_FLOPPY_FORMATS( bw14_floppy_formats );
- DECLARE_WRITE_LINE_MEMBER(write_centronics_busy);
- DECLARE_WRITE_LINE_MEMBER(write_centronics_fault);
- DECLARE_WRITE_LINE_MEMBER(write_centronics_perror);
int m_centronics_busy;
int m_centronics_fault;
int m_centronics_perror;
-
- void common(machine_config &config);
- void bw14(machine_config &config);
- void bw12(machine_config &config);
- void bw12_io(address_map &map);
- void bw12_mem(address_map &map);
};
#endif