 .ABSOLUTE
 .=600
; RECEIVER - INITIALISE THE RING
 MOV #66,@#164042
 BIS #1,@#1764056
 MOV #256,R3  ;NO OF TRACKS
 MOV #174400,R4  ;DL STATUS REG
 MOV #0,R2  ;DISC ADDRESS
;WAIT FOR BLOCK FROM RING
LOOP: MOV #5120.,R0
 MOV #1000,R1
;WAIT FOR REC READY
L1: TST @#164056
 BPL L1
 MOV @#164040,(R1)+
 BIS #1,@#164056  ;SET RECEIVE BIT
 DEC R0  ;ANY MORE TO COME
 BGT L1  ;YES
 MOV #1000,@#174402  ;WRITE OT THE DISC
 MOV R2,@#174404  ;DISC ADDRESS
 MOV #-5120.,@#174406  ;WORD COUNT
 MOV #12,(R4)  ;WRITE!!
L2: TSTB (R4)  ;WAIT FOR CONTROLLER
 BPL L2
 TST (R4)  ;ANY ERRORS?
 BGE L3
 HALT
L3: DEC R3  ;SEE IF DISC FINISHED
 BEQ L6
 ADD #20,R2  ;SEEK TO NEXT CYL
 MOV #204,@#174404
 MOV #6,(R4)
L4: TSTB (R4)  ;WAIT FOR CONTROLLER
 BPL L4
L5: BIT #1,(R4)  ;WAIT FOR DRIVE
 BEQ L5
 MOVB #7,@#177566  ;RING THE BELL
 BR LOOP
L6: HALT
