diff options
Diffstat (limited to 'src/mame/drivers/slicer.cpp')
-rw-r--r-- | src/mame/drivers/slicer.cpp | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/src/mame/drivers/slicer.cpp b/src/mame/drivers/slicer.cpp index ce294cfcea4..62a9fbaed7e 100644 --- a/src/mame/drivers/slicer.cpp +++ b/src/mame/drivers/slicer.cpp @@ -17,16 +17,18 @@ class slicer_state : public driver_device { public: slicer_state(const machine_config &mconfig, device_type type, const char *tag) : - driver_device(mconfig, type, tag), - m_fdc(*this, "fdc"), - m_sasi(*this, "sasi") - {} - - required_device<fd1797_t> m_fdc; - required_device<SCSI_PORT_DEVICE> m_sasi; + driver_device(mconfig, type, tag), + m_fdc(*this, "fdc"), + m_sasi(*this, "sasi") + { + } DECLARE_WRITE8_MEMBER(sio_out_w); DECLARE_WRITE8_MEMBER(drive_sel_w); + +protected: + required_device<fd1797_device> m_fdc; + required_device<scsi_port_device> m_sasi; }; WRITE8_MEMBER(slicer_state::sio_out_w) @@ -49,17 +51,17 @@ WRITE8_MEMBER(slicer_state::drive_sel_w) data &= 1; switch(offset) { - case 0: - m_sasi->write_sel(data); - break; - case 1: - m_sasi->write_rst(data); - break; - case 7: - m_fdc->dden_w(data); - break; - - default: + case 0: + m_sasi->write_sel(data); + break; + case 1: + m_sasi->write_rst(data); + break; + case 7: + m_fdc->dden_w(data); + break; + + default: { floppy_image_device *floppy; char devname[8]; @@ -82,7 +84,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( slicer_io, AS_IO, 16, slicer_state ) ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x0000, 0x007f) AM_DEVREADWRITE8("fdc", fd1797_t, read, write, 0x00ff) //PCS0 + AM_RANGE(0x0000, 0x007f) AM_DEVREADWRITE8("fdc", fd1797_device, read, write, 0x00ff) //PCS0 AM_RANGE(0x0080, 0x00ff) AM_DEVREADWRITE8("sc2681", mc68681_device, read, write, 0x00ff) //PCS1 AM_RANGE(0x0100, 0x017f) AM_WRITE8(drive_sel_w, 0x00ff) //PCS2 // TODO: 0x180 sets ack @@ -97,7 +99,7 @@ static SLOT_INTERFACE_START( slicer_floppies ) SLOT_INTERFACE("8dsdd", FLOPPY_8_DSDD) SLOT_INTERFACE_END -static MACHINE_CONFIG_START( slicer, slicer_state ) +static MACHINE_CONFIG_START( slicer ) MCFG_CPU_ADD("maincpu", I80186, XTAL_16MHz / 2) MCFG_CPU_PROGRAM_MAP(slicer_map) MCFG_CPU_IO_MAP(slicer_io) @@ -140,4 +142,4 @@ ROM_START( slicer ) ROM_LOAD("epbios.bin", 0x0000, 0x8001, CRC(96fe9dd4) SHA1(5fc43454fe7d51f2ae97aef822155dcd28eb7f23)) ROM_END -COMP( 1983, slicer, 0, 0, slicer, 0, driver_device, 0, "Slicer Computers", "Slicer", MACHINE_NO_SOUND) +COMP( 1983, slicer, 0, 0, slicer, 0, slicer_state, 0, "Slicer Computers", "Slicer", MACHINE_NO_SOUND ) |