.NLIST .INCLUDE /ASCII.MAC/ ; .INCLUDE /HWDF.MAC/ ; .INCLUDE /DSMAC.MAC/ ; .INCLUDE /MYMAC.MAC/ .LIST .TITLE TET2 .IDENT /01/ .MCALL .PRINT, .TTINR, .TTYIN, .TTYOUT .ASECT .=^O<0> .RAD50 | | ;VIR in Radix-50 if the Linker /V option was used. .WORD 0 ;Virtual high limit if Linker /V option was used .WORD 0 ;Job definition word ($JSX) bits .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .BYTE 0, 0 ;Overlay Flags ;Overlay Edit Level .WORD 0 .WORD 0 .WORD START ;Initial PC .WORD 1000 ;InitialSP K00044: .WORD 0 ;JSW .WORD 0 ;USR Swap Address .WORD 4756 ;Program High Limit .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 ;Address Of Overlay Handler Table .WORD 0 ;Address Of Start Of WDBs .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 370 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 ;SAV file bitmap .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 START: .PRINT #A04747 ;START: ; MOV #A04747, R0 ; Address ; EMT 351 .PRINT #A04574 ; MOV #A04574, R0 ; Address ; EMT 351 BIS #10100, @#K00044 BR M01052 M01024: .PRINT #A04540 ;M01024: ; MOV #A04540, R0 ; Address ; EMT 351 M01032: EMT 340 BCS M01032 CMPB R0, #12 BNE M01032 .PRINT #A04561 ; MOV #A04561, R0 ; Address ; EMT 351 M01052: CLR K03306 CLR K03312 MOV #3332, R1 MOV #27, R0 M01072: CLR (R1)+ SOB R0, M01072 M01076: .PRINT #A04425 ;M01076: ; MOV #A04425, R0 ; Address ; EMT 351 .PRINT #A04521 ; MOV #A04521, R0 ; Address ; EMT 351 .TTYOUT K03300 ; MOVB K03300, R0 ;M01116: ; EMT 341 ; BCS M01116 .PRINT #A04526 ; MOV #A04526, R0 ; Address ; EMT 351 MOV K03306, K04366 CALL M04216 .PRINT #A04412 ; MOV #A04412, R0 ; Address ; EMT 351 MOV K03312, K04366 CALL M04216 MOVB #40, A04727 MOVB #40, A04735 MOV #30, R1 M01202: .PRINT #A04725 ;M01202: ; MOV #A04725, R0 ; Address ; EMT 351 INCB A04727 INCB A04735 SOB R1, M01202 .PRINT #A04742 ; MOV #A04742, R0 ; Address ; EMT 351 MOV #40, R1 M01234: .TTYOUT #75 ;M01234: ; MOVB #75, R0 ;M01240: ; EMT 341 ; BCS M01240 SOB R1, M01234 CALL M01756 M01252: MOV #3332, R4 ADD #3, K04212 MOV K04212, R3 BIC #177760, R3 ASL R3 ASL R3 MOV R3, R0 ASL R3 ADD R0, R3 ASL R3 ADD #3412, R3 MOV R3, K03304 INC K04212 MOV K04212, R0 BIC #177774, R0 ASL R0 MOV R0, R1 ASL R0 ADD R1, R0 MOV #14, R0 MOV #4760, R2 M01354: MOV (R3)+, (R2)+ SOB R0, M01354 MOV #4760, R3 ADD R0, R3 CLR K03314 CLR K03316 CLR K03320 CALL M02224 CALL M02332 M01412: ADD #3, K04212 MOV K04212, R2 SUB K04214, R2 CMP R2, K03302 BLOS M01526 MOV K04212, K04214 CALL M03050 BCC M01526 M01452: ADD K03310, K03312 .PRINT #A04533 ; MOV #A04533, R0 ; Address ; EMT 351 MOV K03312, K04366 CALL M04216 TST K03332 BEQ M01512 JMP M01024 M01512: CALL M01660 M01516: .TTINR ;M01516: ; EMT 340 BCC M01516 JMP M01252 M01526: .PRINT #A04415 ;M01526: ; MOV #A04415, R0 ; Address ; EMT 351 .TTINR ; EMT 340 BCS M01412 CMPB R0, #60 BNE M01556 CALL M04276 JMP M01076 M01556: CMPB R0, #64 BNE M01572 CALL M03206 BR M01526 M01572: CMPB R0, #40 BEQ M01606 CMPB R0, #65 BNE M01614 M01606: CALL M02774 BR M01452 M01614: CMPB R0, #67 BNE M01630 CALL M02602 BR M01412 M01630: CMPB R0, #71 BNE M01644 CALL M02442 BR M01412 M01644: CMPB R0, #70 BNE M01412 CALL M02730 BR M01412 M01660: MOV #3406, R4 MOV R4, R3 M01666: CMP (R3), #177777 BNE M01704 INC K03306 TST -(R3) BR M01666 M01704: CALL M02310 MOV (R3), R2 MOV (R4), R1 MOV R2, (R4) CALL M02026 TST -(R4) TST -(R3) CMP R4, #3332 BNE M01666 MOV K03306, K04366 .PRINT #A04526 ; MOV #A04526, R0 ; Address ; EMT 351 CALL M04216 RETURN M01756: MOV #3332, R3 MOVB #40, A04422 M01770: MOV #177777, R1 CLR R2 CALL M02026 CLR R1 MOV (R3)+, R2 CALL M02026 INCB A04422 CMP R3, #3410 BNE M01770 RETURN M02026: CMP R1, R2 BEQ M02146 MOV #20, M02142 MOVB #67, K04423 M02046: ROL R1 BCC M02070 MOV #4412, M02124 BIS #400, M02112 BR M02110 M02070: MOV #4402, M02124 INC K03310 BIC #400, M02112 M02110: ROL R2 M02112: BCC M02130 .PRINT #A04420 ; MOV #A04420, R0 ; Address ; EMT 351 M02124 =: .+2 .PRINT #0 ;!!!;M02124 =: .+2 ; MOV #0, R0 ; Address ;!!!;M02124: ; EMT 351 M02130: INCB K04423 INCB K04423 M02142 =: .+2 DEC #2142 ;!!!!!;M02142: BNE M02046 M02146: RETURN M02150: CALL M02310 MOV K03314, R1 CLR R2 CALL M02026 INCB A04422 MOV K03316, R1 CLR R2 CALL M02026 INCB A04422 MOV K03320, R1 CLR R2 CALL M02026 RETURN M02224: CLR K03310 CALL M02310 MOV K03314, R1 MOV (R3), R2 CALL M02026 INCB A04422 MOV K03316, R1 MOV 2(R3), R2 CALL M02026 INCB A04422 MOV K03320, R1 MOV 4(R3), R2 CALL M02026 RETURN M02310: MOV R4, R2 SUB #3332, R2 ASR R2 ADD #40, R2 MOVB R2, A04422 RETURN M02332: MOV (R3), K03314 MOV 2(R3), K03316 MOV 4(R3), K03320 RETURN M02354: BIS (R3)+, (R4)+ BIS (R3)+, (R4)+ BIS (R3)+, (R4)+ RETURN M02364: BIT (R3), (R4) BNE M02414 BIT 2(R3), 2(R4) BNE M02414 BIT 4(R3), 4(R4) BNE M02414 CLC RETURN M02414: SEC RETURN M02420: MOV K03314, (R3) MOV K03316, 2(R3) MOV K03320, 4(R3) RETURN M02442: MOV R3, R0 CALL M02526 BCS M02464 CALL M02364 BCC M02466 CALL M02420 M02464: RETURN M02466: MOV #4760, R0 MOV #4, R1 M02476: CMP R0, R3 BEQ M02506 CALL M02526 M02506: ADD #6, R0 SOB R1, M02476 CALL M02224 CALL M02332 RETURN M02526: CLC BIT #1, (R0) BNE M02572 BIT #1, 2(R0) BNE M02572 BIT #1, 4(R0) BNE M02572 ROR (R0) ROR 2(R0) ROR 4(R0) RETURN M02572: SEC RETURN .WORD 6063 .WORD 4 M02602: MOV R3, R0 CALL M02666 BCS M02624 CALL M02364 BCC M02626 CALL M02420 M02624: RETURN M02626: MOV #4760, R0 MOV #4, R1 M02636: CMP R0, R3 BEQ M02646 CALL M02666 M02646: ADD #6, R0 SOB R1, M02636 CALL M02224 CALL M02332 RETURN M02666: CLC TST (R0) BMI M02724 TST 2(R0) BMI M02724 TST 4(R0) BMI M02724 ROL (R0) ROL 2(R0) ROL 4(R0) RETURN M02724: SEC RETURN M02730: MOV R3, R0 ADD #6, R3 CMP R3, #5010 BLT M02750 MOV #4760, R3 M02750: CALL M02364 BCS M02770 CALL M02224 CALL M02332 RETURN M02770: MOV R0, R3 RETURN M02774: CALL M02150 M03000: TST (R4)+ CMP R4, #3412 BNE M03012 RETURN M03012: CALL M02364 BCC M03000 TST -(R4) CLR K03314 CLR K03316 CLR K03320 CALL M02224 CALL M02354 RETURN M03050: TST (R4)+ CMP R4, #3412 BEQ M03074 CALL M02364 BCC M03100 TST -(R4) CALL M02354 M03074: SEC RETURN M03100: CLR K03310 TST -(R4) CALL M02310 MOV K03314, R1 CLR R2 CALL M02026 INCB A04422 MOV K03316, R1 MOV (R3), R2 CALL M02026 INCB A04422 MOV K03320, R1 MOV 2(R3), R2 CALL M02026 INCB A04422 CLR R1 MOV 4(R3), R2 CALL M02026 TST (R4)+ CLC RETURN M03206: .PRINT #A04521 ;M03206: ; MOV #A04521, R0 ; Address ; EMT 351 M03214: .TTYIN K03300 ;M03214: ; EMT 340 ; BCS M03214 ; MOVB R0, K03300 CMPB R0, #60 BLT M03214 CMPB R0, #71 BGT M03214 M03240: .TTYOUT ;M03240: ; EMT 341 ; BCS M03240 BIC #177760, R0 ASL R0 ASL R0 ASL R0 ASL R0 ASL R0 ASL R0 BNE M03272 MOV #20, R0 M03272: MOV R0, K03302 RETURN K03300: .WORD 71 K03302: .WORD 1100 K03304: .WORD 0 K03306: .WORD 0 K03310: .WORD 0 K03312: .WORD 0 K03314: .WORD 0 K03316: .WORD 0 K03320: .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 K03332: .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 177777 .WORD 200 .WORD 700 .WORD 200 .WORD 200 .WORD 200 .WORD 200 .WORD 200 .WORD 700 .WORD 200 .WORD 0 .WORD 700 .WORD 0 .WORD 300 .WORD 200 .WORD 200 .WORD 400 .WORD 700 .WORD 0 .WORD 200 .WORD 200 .WORD 600 .WORD 0 .WORD 700 .WORD 100 .WORD 0 .WORD 700 .WORD 0 .WORD 200 .WORD 200 .WORD 200 .WORD 0 .WORD 700 .WORD 0 .WORD 200 .WORD 200 .WORD 200 .WORD 0 .WORD 200 .WORD 0 .WORD 200 .WORD 200 .WORD 200 .WORD 0 .WORD 200 .WORD 0 .WORD 0 .WORD 700 .WORD 0 .WORD 200 .WORD 700 .WORD 100 .WORD 300 .WORD 600 .WORD 200 .WORD 400 .WORD 700 .WORD 200 .WORD 200 .WORD 300 .WORD 600 .WORD 300 .WORD 200 .WORD 600 .WORD 400 .WORD 700 .WORD 100 .WORD 300 .WORD 200 .WORD 600 .WORD 400 .WORD 700 .WORD 100 .WORD 600 .WORD 200 .WORD 300 .WORD 100 .WORD 700 .WORD 400 .WORD 600 .WORD 200 .WORD 300 .WORD 100 .WORD 700 .WORD 400 .WORD 400 .WORD 600 .WORD 300 .WORD 100 .WORD 300 .WORD 600 .WORD 600 .WORD 300 .WORD 100 .WORD 300 .WORD 600 .WORD 400 .WORD 0 .WORD 600 .WORD 200 .WORD 0 .WORD 600 .WORD 400 .WORD 0 .WORD 400 .WORD 600 .WORD 0 .WORD 200 .WORD 600 .WORD 200 .WORD 700 .WORD 0 .WORD 200 .WORD 600 .WORD 200 .WORD 0 .WORD 700 .WORD 200 .WORD 200 .WORD 300 .WORD 200 .WORD 200 .WORD 700 .WORD 400 .WORD 200 .WORD 600 .WORD 300 .WORD 100 .WORD 700 .WORD 200 .WORD 600 .WORD 300 .WORD 200 .WORD 0 .WORD 300 .WORD 300 .WORD 0 .WORD 300 .WORD 300 .WORD 0 .WORD 300 .WORD 300 .WORD 0 .WORD 300 .WORD 300 .WORD 600 .WORD 200 .WORD 200 .WORD 0 .WORD 700 .WORD 400 .WORD 200 .WORD 200 .WORD 300 .WORD 100 .WORD 700 .WORD 0 .WORD 200 .WORD 0 .WORD 0 .WORD 300 .WORD 0 .WORD 0 .WORD 200 .WORD 0 .WORD 0 .WORD 200 .WORD 200 .WORD 0 .WORD 0 .WORD 0 .WORD 200 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 200 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 0 .WORD 500 .WORD 0 .WORD 0 .WORD 440 .WORD 0 .WORD 0 .WORD 1040 .WORD 0 .WORD 0 .WORD 440 K04212: .WORD 0 K04214: .WORD 0 M04216: BIC #20, M04260 MOV #4370, R1 M04230: CLR R0 M04232: CMP (R1), K04366 BHI M04256 SUB (R1), K04366 INC R0 BIS #20, M04260 BR M04232 M04256: M04260 =: .+2 BIS #40, R0 ;!!!!;M04260: M04262: .TTYOUT ;M04262: ; EMT 341 ; BCS M04262 CMP (R1)+, #1 BNE M04230 RETURN M04276: .PRINT #A04753 ;M04276: ; MOV #A04753, R0 ; Address ; EMT 351 MOV #1000, R3 M04310: MOV #12, R4 M04314: MOV (R3)+, K04366 CALL M04216 .TTYOUT #40 ; MOVB #40, R0 ;M04330: ; EMT 341 ; BCS M04330 SOB R4, M04314 .PRINT #A04573 ; MOV #A04573, R0 ; Address ; EMT 351 .TTINR ; EMT 340 BCS M04310 CMPB R0, #60 BNE M04310 .PRINT #A04753 ; MOV #A04753, R0 ; Address ; EMT 351 RETURN K04366: .WORD 0 .WORD 23420 .WORD 1750 .WORD 144 .WORD 12 .WORD 1 .WORD 77577 .WORD 15600 .WORD 15503 .WORD 100103 A04412: .ASCII | .|<200> A04415: .ASCII |H|<200> A04420: .ASCII |Y| A04422: .BYTE 0 K04423: .BYTE 67 .BYTE 200 A04425: .ASCII |Y! ||urowenx : ||Y# stroki : ||Y% o~ki : |<200> A04521: .ASCII |Y!-|<200> A04526: .ASCII |Y#)|<200> A04533: .ASCII |Y%)|<200> A04540: .ASCII |Y4 || e}e raz?|<200> A04561: .ASCII | | .ASCII <200> ;!!!!!; A04573: .BYTE 0 ;!!!!!; A04574: .ASCII |Y [||7-wlewo, 9-wprawo||Y"[8-powernutx||Y$[5,probel - sbrositx||Y&[4-urowenx(0-9)| .ASCII |Y([0-....|<200> A04725: .ASCII |Y| A04727: .ASCII | 5(!||Y| A04735: .ASCII | W!)|<200> A04742: .ASCII |Y77|<200> A04747: .ASCII |S| .ASCII |U| A04753: .ASCII |H| ;!!!!!; .ASCII |J|<200> ;!!!!!; .END START