; BOOTSTRAP FOR TU58, TO LOAD ONTO BLOCK 0 OF A TU58:- ; BINTUY BOTTUY ; AND REPLY 'N' TO 'REPORT?' ; .=0 MOV #137000,R0 CLR R1 MOV #200,R2 LOOP: MOV (R1)+,(R0)+ DEC R2 BNE LOOP JMP BEGIN+137000 BEGIN: MOV #137000,SP MOV #176500,R0; 776160 ON DEC MACH, 176500 ON 11 BISB #1,4(R0); ENABLE TX CLR R1 JSR PC,TX JSR PC,TX TU01:TSTB 4(R0); WAIT FOR READY BEQ TU01 BIC #1,4(R0) MOV #4,R1 JSR PC,TX JSR PC,TX TU02: JSR PC,RX; GET CONTINUE CMPB R2,#20 BNE TU02 ; ; SEND READ COMMAND ; JSR PC,RX; READ 'JUNK' CONTINUE ??? MOV #REED+137000,R3; START OF BUFFER MOV #14.,R5 TU03: MOVB (R3)+, R1 JSR PC,TX DEC R5 BNE TU03 ; ; READ DATA ; CLR R4; CORE POUINTER TU05:JSR PC,RX; READ FLAG CMP R2,#1; DATA PACKET/ BNE TU06;NO-MUSR BE END JSR PC,RX; READ BYTE COUNT MOV #128.,R3 CMP R2,R3 BEQ TU04; SHOULD BE FULL HALT TU04: JSR PC,RX; DATA CHAR MOVB R2,(R4)+; STORE IT DEC R3 BNE TU04; GET NEXT JSR PC,RX; IGNORE 2 CRC CHARS JSR PC,RX BR TU05; GET NEXT BLOCK ; ; END PACKEDT ; TU06: MOV #BUF+137000,R3 MOVB R2,(R3)+ TU08: JSR PC,RX MOVB R2,(R3)+ CMP R3,#BUF+137000+14. BNE TU08 TSTB BUF+3+137000; SUCCESS/FAIL BYTE BNE TU09; FAILED JMP @#400; END DEIMOS TU09: HALT ; ; TX ROUTINE ; TX: TSTB 4(R0); WAIT FOR READY BGE TX MOVB R1,6(R0) RTS PC ; ; RX ROUTINE RX: TSTB (R0); WAIT FOR READY BGE RX MOVB 2(R0),R2 BIC #177400,R2 RTS PC ; BUF: 0, 0, 0, 0, 0, 0, 0 REED: 5002, 2, 0, 0, 100000, 10, 105014 .=.+10 STACK: 0 .END