/RX8B (DSD-210) FORMATTER PROGRAM / LAST EDIT: 19-JUL-1982 11:00:00 CJL /RX8B EQUATES: DEVCOD= 75^10+6000 /SKELETON IOT CODE OF DISK LCD= DEVCOD+1 /LOAD COMMAND REGISTER XDR= DEVCOD+2 /TRANSFER DATA REGISTER STR= DEVCOD+3 /SKIP ON, CLEAR TRANSFER FLAG SER= DEVCOD+4 /SKIP ON, CLEAR ERROR FLAG SDN= DEVCOD+5 /SKIP ON, CLEAR DONE FLAG INTR= DEVCOD+6 /INTERRUPT ENABLE/DISABLE PER AC[11] INIT= DEVCOD+7 /INITIALIZE CONTROLLER, RECALIBRATE DRIVES /MISCELLANEOUS EQUATES: SBOOT= 7600 /MONITOR RESTART ADDRESS /MANUAL (RE)START IS HERE. START, CLA CLL /CLEAN UP INIT /INITIALIZE THE CONTROLLER DCA TRACK /START FROM TRACK ZERO TAD (-115) /SETUP THE DCA TRKCNT /TRACK COUNTER SDN /WAIT FOR DONE JMP .-1 /TO HAPPEN TRKLUP, TAD (0104) /8-BIT MODE!WRITE SECTOR LCD /LOAD COMMAND TAD (152) /GET MAGIC VALUE JMS TRANSFER /SEND THIS SECTOR TAD TRACK /GET LATEST TRACK JMS TRANSFER /SEND IT TAD (-32) /SETUP THE DCA COUNT /SECTOR COUNT LOOP, TAD COUNT /GET CURRENT COUNT TAD (32+1) /MAKE INTO ORIGIN ONE SECTOR NUMBER JMS TRANSFER /SEND IT ISZ COUNT /DONE ALL YET? JMP LOOP /NO, GO BACK TAD TRACK /GET TRACK MQL /DISPLAY IT CLA /JUST IN CASE NO EAE ISZ TRACK /BUMP TO NEXT TRACK SDN /WAIT FOR IT JMP .-1 /TO FINISH ISZ TRKCNT /DONE ALL TRACKS? JMP TRKLUP /NO, GO DO NEXT INIT /CLEAN UP THE CONTROLLER JMP I (SBOOT) /YES, RETURN TO MONITOR COUNT, .-. /SECTOR COUNTER TRACK, .-. /LATEST TRACK TRKCNT, .-. /TRACK COUNTER TRANSFE,.-. /TRANSFER AND CLEAR ROUTINE STR /DONE YET? JMP .-1 /NO, WAIT FOR IT XDR /YES, SEND IT CLA /CLEAN UP JMP I TRANSFER /RETURN