From 0c6c4c791699d8242baa85cfcf1fc78f9cee4099 Mon Sep 17 00:00:00 2001 From: Mark Emmer Date: Sun, 2 Mar 2014 22:27:45 -0600 Subject: [PATCH] SDS: Fixed head disk addressing corrected when start new sector rad_adjda was setting sba=0 at a sector boundary, which did not reflect that the first 12-bits of the sector have already be read or written. Must set sba=1 for proper addressing. Removed superfluous end-of-line spaces from file. --- SDS/sds_rad.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/SDS/sds_rad.c b/SDS/sds_rad.c index 4194c755..d1475230 100644 --- a/SDS/sds_rad.c +++ b/SDS/sds_rad.c @@ -116,7 +116,7 @@ DEVICE rad_dev = { }; /* Fixed head disk routine - + conn - inst = EOM0, dat = NULL eom1 - inst = EOM1, dat = NULL sks - inst = SKS, dat = ptr to result @@ -157,7 +157,7 @@ switch (fnc) { /* case function */ if (new_ch != rad_dib.chan) /* wrong chan? */ return SCPE_IERR; if ((inst & 00600) == 00200) /* alert for sec */ - alert = POT_RADS; + alert = POT_RADS; else if ((inst & 06600) == 0) { /* alert for addr */ if (sim_is_active (&rad_unit)) /* busy? */ rad_err = 1; @@ -287,7 +287,7 @@ if (rad_sba >= (RAD_NUMWD * 2)) { /* next sector? */ ((rad_da + 1) & RAD_SCMASK); else rad_da = (rad_da & ~RAD_TRSCMASK) + /* cross band */ ((rad_da + 1) & RAD_TRSCMASK); - sba = 0; /* start new sec */ + sba = 1; /* start new sec */ } return sba; }