mirror of
https://github.com/livingcomputermuseum/cpus-pdp8.git
synced 2026-01-12 00:12:44 +00:00
Fixed issue with track # translation to RK8E disk address for one of the two swap paths; this was causing
the bizarre behavior when TSS/8 ran out of core. Some minor cleanup.
This commit is contained in:
parent
ea7b705dc0
commit
90c4ec6687
@ -4029,7 +4029,7 @@ TRAC, 0
|
||||
IFZERO RF08-40< CLL RTL;RTL;RTL >/TRACK # IN POSITION 0X00 FOR DF32
|
||||
>
|
||||
IFNZRO RKSYS <
|
||||
CLL RTL; RAL /TRACK # IN POSITION 000|XXX|XX0|000
|
||||
CLL RTL; RTL /TRACK # IN POSITION 000|XXX|XX0|000
|
||||
/FOR RK8E (HEAD + 4 BITS OF CYL)
|
||||
>
|
||||
JMP I TRAC /RETURN
|
||||
@ -7000,14 +7000,11 @@ RKGO0, 0
|
||||
DCA I DSPARF
|
||||
CDF 10
|
||||
TAD RKOFF
|
||||
CLL RAR / TODO: GOTTA BE A BETTER WAY
|
||||
CLL RAR
|
||||
CLL RAR
|
||||
CLL RAR
|
||||
CLL RAR
|
||||
CLL RAR
|
||||
CLL RAR
|
||||
CLL RAR / DIVIDE BY 256, YIELDING SECTOR # TO START THE
|
||||
AND K7400 / MASK TOP 4 BITS SO WE DON'T TOGGLE THE LINK
|
||||
CLL RTR
|
||||
RTR
|
||||
RTR
|
||||
RTR / DIVIDE BY 256, YIELDING SECTOR # TO START THE
|
||||
/ TRANSFER
|
||||
TAD RKDSKA
|
||||
DCA RKDSKA / ADD TO DISK ADDRESS
|
||||
@ -7063,8 +7060,7 @@ RKRET, 0
|
||||
|
||||
/ BLT: CALCULATE THE NUMBER OF WORDS TO TRANSFER; THIS IS AT MOST
|
||||
/ 256 WORDS (ONE RK05 SECTOR), AT MINIMUM 1 WORD.
|
||||
DSRET0, CLL CLA
|
||||
TAD RKOFF
|
||||
DSRET0, TAD RKOFF
|
||||
CMA IAC
|
||||
TAD K0400 / SUBTRACT SECTOR OFFSET FROM 256 TO DETERMINE
|
||||
DCA RKXWC / MAX TRANSFER COUNT.
|
||||
@ -7080,7 +7076,6 @@ DSRET0, CLL CLA
|
||||
DSRET1, CLL CLA
|
||||
TAD RKWD / FEWER THAN MAX WORDS, COPY THE REMAINDER
|
||||
DSRET2, DCA RKXWC
|
||||
|
||||
TAD RKEMA / USER FIELD
|
||||
DCA UDF1+1
|
||||
CMA CLA
|
||||
@ -7090,14 +7085,12 @@ DSRET2, DCA RKXWC
|
||||
TAD RKOFF
|
||||
TAD RKBLKA / DATFLD POINTER - 1
|
||||
DCA A17
|
||||
|
||||
TAD RKWRI / IS THIS A WRITE?
|
||||
SNA
|
||||
JMP DSRET3 / NO
|
||||
STL CLA / YES: SET LINK (FROM USER TO DATFLD FOR BLTF1)
|
||||
JMP DSBL
|
||||
DSRET3, CLL CLA
|
||||
|
||||
DSRET3, CLL CLA / NO: CLEAR LINK (FROM DATFLD TO USER)
|
||||
DSBL, TAD RKXWC / -WC TO AC
|
||||
/ DO THE TRANSFER
|
||||
JMS BLTF1
|
||||
@ -7117,6 +7110,8 @@ DSBL, TAD RKXWC / -WC TO AC
|
||||
JMP DSNDON / DONE FOR NOW.
|
||||
|
||||
DSRNXT, / PROCESS NEXT SECTOR IF NECESSARY
|
||||
/ TODO: THIS NEEDS TO BE REFACTORED TO ALLOW RETRYING OPERATIONS
|
||||
/ AFTER DISC ERRORS.
|
||||
CLA
|
||||
TAD RKXWC
|
||||
CMA IAC
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user