From f1313cef0b0217c4e7e2659758e84015a2614653 Mon Sep 17 00:00:00 2001 From: Michael Zapf Date: Sun, 1 Apr 2018 01:24:44 +0200 Subject: ti99: Added drive select line to hexbus drive --- src/devices/bus/hexbus/hx5102.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/devices/bus/hexbus/hx5102.cpp b/src/devices/bus/hexbus/hx5102.cpp index 03d00497741..c806b2a2afb 100644 --- a/src/devices/bus/hexbus/hx5102.cpp +++ b/src/devices/bus/hexbus/hx5102.cpp @@ -476,6 +476,7 @@ WRITE8_MEMBER(hx5102_device::cruwrite) switch (offset) { case 0: + // unused right now LOGMASKED(LOG_CRU, "Set precompensation = %d\n", data); break; case 1: @@ -522,17 +523,22 @@ WRITE8_MEMBER(hx5102_device::cruwrite) break; case 8: LOGMASKED(LOG_CRU, "Set drive select 0 to %d\n", data); + m_floppy_ctrl->set_floppy((data==1)? m_floppy : nullptr); break; case 9: + // External drive; not implemented LOGMASKED(LOG_CRU, "Set drive select 1 to %d\n", data); break; case 10: + // External drive; not implemented LOGMASKED(LOG_CRU, "Set drive select 2 to %d\n", data); break; case 11: + // External drive; not implemented LOGMASKED(LOG_CRU, "Set drive select 3 to %d\n", data); break; case 12: + // External drive; not implemented LOGMASKED(LOG_CRU, "Set auxiliary motor line to %d\n", data); break; case 13: @@ -567,9 +573,6 @@ void hx5102_device::device_reset() { board_reset(ASSERT_LINE); board_ready(ASSERT_LINE); - // set_floppy must be here, because upd765_family_device::device_start - // resets the device links to null - m_floppy_ctrl->set_floppy(m_floppy); } /* @@ -598,6 +601,7 @@ WRITE_LINE_MEMBER( hx5102_device::fdc_drq_w ) /* Define the floppy formats. + TODO: Define another DSDD format with 16 sectors. */ FLOPPY_FORMATS_MEMBER(hx5102_device::floppy_formats) FLOPPY_TI99_SDF_FORMAT, -- cgit v1.2.3