summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Robbbert <Robbbert@users.noreply.github.com>2018-07-26 21:08:35 +1000
committer Robbbert <Robbbert@users.noreply.github.com>2018-07-26 21:08:35 +1000
commit796bb295d192b9a5ca7137a2614b191b348a550d (patch)
tree7202b4f7aaea133a4207cb35d7681c750b9df513
parent45f81762666ed5e13dde3d27a1ef1033aae3c18b (diff)
slicer : fixed regression from last November.
-rw-r--r--src/mame/drivers/slicer.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mame/drivers/slicer.cpp b/src/mame/drivers/slicer.cpp
index 1aba773c3c2..1094b65dcc9 100644
--- a/src/mame/drivers/slicer.cpp
+++ b/src/mame/drivers/slicer.cpp
@@ -28,6 +28,7 @@ public:
private:
DECLARE_WRITE8_MEMBER(sio_out_w);
+ DECLARE_WRITE_LINE_MEMBER(drive_size_w);
template<unsigned int drive> DECLARE_WRITE_LINE_MEMBER(drive_sel_w);
void slicer_io(address_map &map);
@@ -66,6 +67,11 @@ WRITE_LINE_MEMBER(slicer_state::drive_sel_w)
m_fdc->set_floppy(floppy);
}
+WRITE_LINE_MEMBER(slicer_state::drive_size_w)
+{
+ m_fdc->set_unscaled_clock (state ? 1'000'000 : 2'000'000);
+}
+
void slicer_state::slicer_map(address_map &map)
{
map(0x00000, 0x3ffff).ram(); // fixed 256k for now
@@ -77,7 +83,7 @@ void slicer_state::slicer_io(address_map &map)
map.unmap_value_high();
map(0x0000, 0x007f).rw(m_fdc, FUNC(fd1797_device::read), FUNC(fd1797_device::write)).umask16(0x00ff); //PCS0
map(0x0080, 0x00ff).rw("duart", FUNC(scn2681_device::read), FUNC(scn2681_device::write)).umask16(0x00ff); //PCS1
- map(0x0100, 0x0107).mirror(0x0078).w("drivelatch", FUNC(ls259_device::write_d0)).umask16(0x00ff); //PCS2
+ map(0x0100, 0x010f).mirror(0x0070).w("drivelatch", FUNC(ls259_device::write_d0)).umask16(0x00ff); //PCS2
// TODO: 0x180 sets ack
map(0x0180, 0x0180).r("sasi_data_in", FUNC(input_buffer_device::bus_r)).w("sasi_data_out", FUNC(output_latch_device::bus_w)).umask16(0x00ff); //PCS3
map(0x0181, 0x0181).r("sasi_ctrl_in", FUNC(input_buffer_device::bus_r));
@@ -122,6 +128,7 @@ MACHINE_CONFIG_START(slicer_state::slicer)
MCFG_ADDRESSABLE_LATCH_Q3_OUT_CB(WRITELINE(*this, slicer_state, drive_sel_w<2>))
MCFG_ADDRESSABLE_LATCH_Q4_OUT_CB(WRITELINE(*this, slicer_state, drive_sel_w<1>))
MCFG_ADDRESSABLE_LATCH_Q5_OUT_CB(WRITELINE(*this, slicer_state, drive_sel_w<0>))
+ MCFG_ADDRESSABLE_LATCH_Q6_OUT_CB(WRITELINE(*this, slicer_state, drive_size_w))
MCFG_ADDRESSABLE_LATCH_Q7_OUT_CB(WRITELINE("fdc", fd1797_device, dden_w))
MCFG_DEVICE_ADD("sasi", SCSI_PORT, 0)