image of READY prompt

Wang2200.org

Listing of file='TTT*010B' on disk='vmedia/731-0110A.wvd.zip'

# Sector 321, program filename = 'TTT*010B'
0010 REM TTT*010B, (03/29/83), 2741 TERMINAL, COPYRIGHT WANG LABS INC.,1978
0100 GOTO 9900
   : ON AGOTO 150,4500,5000,5154
0150 COM M1$(1)1,C$(7)1,A1$(5)2,A2$(5)2,P2,I$(255)1,O$(4)64,J,I,P,A3$(10)1,M$(
     3)53,I$1
0180 M=5
   : $GIO#6(4408,Z$)
   : RETURN
0200 $IF ON /001,100
   : $GIO#6(4403C620,Z$)C$()
   : IF C$(1)=HEX(01)THEN 180
   : $GIO#6(4409C620,A3$())I$()<I>
   : IF A3$(10)=HEX(00)THEN 100
   : ON MGOTO 212,225,100
   : RETURN
0212 M=2
   : IF I$(1)<>"9"THEN 225
   : MAT COPY I$()<2,254>TO I$()<1,254>
   : J=VAL(A3$(10))-1
   : IF J=0THEN 100
   : GOTO 235
0225 J=VAL(A3$(10))
   : IF I$(I+J-1)<>HEX(09)THEN 235
   : J=J-1
0235 IF P+J>LTHEN 360
0240 $GIO#4(A000,Z$)I$()<I,J>
   : IF I$(I+J)=HEX(09)THEN 500
   : IF I$(I+J-1)<>HEX(0D)THEN 315
   : PRINT HEX(0A);
0255 ON P2GOTO 297,275
0265 I,P=1
   : INIT(20)I$()
   : GOTO 200
0275 IF I+J-2<1THEN 265
   : INIT(00)A1$()
   : BIN(STR(A1$(5),2))=I+J-2
   : GOSUB 3000
   : GOTO 265
0297 IF I+J-2<1THEN 311
   : $TRAN(I$()<1,I+J-2>,G1$)R
   : $GIO#5(A000400D,Z$)I$()<1,I+J-2>
   : GOTO 265
0311 $GIO#5(400D,Z$)
   : GOTO 265
0315 P=P+J
   : I=I+J
   : IF I$(I-1)=HEX(08)THEN 435
   : IF I$(I-1)<>HEX(04)THEN 200
   : $GIO#6(440A4002440C,Z$)
   : M=3
   : GOTO 255
0360 IF I$(I+L-P)<HEX(0E)THEN 240
   : IF I$(I+L-P+1)<HEX(0E)THEN 240
   : $GIO#4(A000400A,Z$)I$()<I,L-P+1>
   : I=I+L-P+1
   : J=J-L+P-1
   : P=1
   : IF J=0THEN 200
   : GOTO 235
0435 P=P-1
   : IF P>0THEN 100
   : P=L
   : $GIO#4(400C,Z$)
   : RETURN
0500 B$="T"
   : I=I+J
   : P=P+J
   : IF I>159THEN 100
   : MAT SEARCHM$()<I,160-I>,=B$TO A1$()
   : IF A1$(1)=HEX(0000)THEN 100
   : I=I+VAL(STR(A1$(1),2))
   : IF P<>1THEN 560
   : P=P-1
0560 P=P+VAL(STR(A1$(1),2))
0570 IF P<=LTHEN 600
   : PRINT HEX(0D0A);
   : P=P-L
   : GOTO 570
0600 INIT(09)O$()
   : $GIO#4(400DA000,Z$)O$()<1,P-1>
   : INIT(20)O$()
   : RETURN
3000 RETURN
4000 RETURN
4100 RETURN
4500 DEFFN'80
   : RETURN
5000 IF I$="1"THEN 5010
   : DATA LOAD DC OPEN T#0,"TTT*010H"
   : DATA LOAD DC #0,M$()
   : DATA SAVE DC CLOSE
   : I$="1"
5010 SELECT PRINT 005,#4005,#5215
   : P,I,P1=1
   : $GIO#6(4408,Z$)
5016 DEFFN'0
   : GOSUB 5454
5024 KEYIN B$,5038,5140
   : GOSUB 200
   : IF M<5THEN 5024
   : M=1
   : GOTO 5024
5028 IF P2<>1THEN 100
   : $GIO#5(A000,Z$)I$()<1,I-1>
   : RETURN
5038 IF M<3THEN 5024
   : IF I=1THEN 5054
   : GOSUB 5028
   : I=1
5054 ON VAL(B$)-7GOTO 5104,5024,5024,5024,5024,5120
   : $TRAN(B$,G3$)R
   : IF B$>HEX(7F)THEN 5024
   : $GIO#4(A000,Z$)B$
   : P=P+1
   : P1=P1+1
   : IF P<L+1THEN 5088
   : PRINT HEX(0D0A);
   : P=1
5088 $GIO#6(440AA000440C,Z$)B$
5092 IF P2<>1THEN 5024
   : $GIO#5(A000,Z$)B$
   : GOTO 5024
5104 IF P=1THEN 5024
   : P=P-1
   : P1=P1-1
   : PRINT HEX(08);
   : GOTO 5088
5120 PRINT HEX(0D0A);
   : P,P1,M=1
   : $GIO#6(440B400D4003440C,Z$)
   : GOTO 5092
5140 IF I=1THEN 5150
   : GOSUB 5028
   : I=1
5150 IF B$=HEX(06)THEN 5672
   : ON VAL(B$)+1GOSUB 5454,5442,5348,5230,5292,5502,100,100,100,100,100,100,5
     630,5582,5594,5606
5154 GOTO 5024
5230 ON P2GOTO 5268,5280
   : INIT(00)A$
5236 $GIO#5(010002011212A000,Z$)A$<1,4>
   : IF STR(Z$,8,1)=HEX(00)THEN 5256
   : PRINT HEX(0A0D);"PRINTER NOT READY"
   : P2=0
   : RETURN
5256 PRINT HEX(0D0A);"PRINTER ON";HEX(0D0A);
   : P2=1
   : RETURN
5268 PRINT HEX(0A0D);"PRINTER OFF"
   : P2=0
   : RETURN
5280 PRINT HEX(0D0A);"STORAGE OFF";HEX(0A0D);
   : P2=0
   : GOTO 5236
5292 IF P(3)=0THEN 100
   : ON P2GOTO 5328,5336
5296 PRINT HEX(0A0D);
   : GOSUB '80
   : IF B$(3)="0"THEN 5316
   : P2=0
   : RETURN
5316 PRINT HEX(0A0D);"STORAGE ON"
   : P2=2
   : RETURN
5328 PRINT HEX(0A0D);"PRINTER OFF";
   : GOTO 5296
5336 PRINT HEX(0A0D);"STORAGE OFF"
   : P2=0
   : RETURN
5348 IF M<3THEN 100
   : IF P(2)=0THEN 100
   : PRINT HEX(03);TAB(18);"S T O R A G E    S E N D"
   : PRINT "'0=ABORT"
   : P2=0
   : INIT(00)E$,A2$()
   : GOSUB 4100
   : IF E$>HEX(00)THEN 5454
   : P=1
5368 IF E$>HEX(00)THEN 5439
   : INIT(00)A2$()
   : GOSUB 4000
   : $GIO#6(440BA000400D4003440C,Z$)O$()<1,A2$(2)>
   : A=VAL(STR(A2$(2),2))
   : B=1
5392 IF A<=LTHEN 5412
   : $GIO#4(A000400D400A,Z$)O$()<1+B,L>
   : B=L+B
   : A=A-L
   : GOTO 5392
5412 $GIO#4(A000400D400A,Z$)O$()<B,A>
   : I,P,M=1
5420 GOSUB 200
   : ON MGOTO 5434,5434,5368
   : M=1
   : RETURN
5434 KEYIN B$,5434,5436
   : GOTO 5420
5436 IF B$<>HEX(00)THEN 5420
   : PRINT
   : PRINT "TRANSMISSION ABORTED"
   : RETURN
5439 PRINT
   : PRINT "TRANSMISSION COMPLETED"
   : RETURN
5442 IF P(3)=0THEN 100
   : PRINT HEX(03);TAB(21);"A T T E N T I O N"
   : GOSUB '83
   : P2=0
5454 PRINT HEX(03)
   : PRINT " '0 = MENU for 2741 Terminal"
   : IF P(3)=0THEN 5458
   : PRINT " '1 = ATTENTION"
5458 IF P(2)=0THEN 5460
   : PRINT " '2 = STORAGE SEND"
5460 PRINT " '3 = PRINTER ON/OFF KEY"
   : IF P(3)=0THEN 5470
   : PRINT " '4 = STORAGE RECEIVE ON/OFF KEY"
   : PRINT " '5 = CLOSE STORAGE RECEIVE FILE"
5470 PRINT " '6 = DISPLAY/SET TAB STOPS"
   : PRINT "'12 = TAB KEY"
   : PRINT "'13 = UPSHIFT KEY"
   : PRINT "'14 = DOWNSHIFT KEY"
   : PRINT "'15 = BREAK KEY"
   : ON P2GOTO 5236,5316
   : PRINT HEX(0A0D);"ONLY CRT ACTIVE ON RECEIVE"
   : IF M<>4THEN 100
   : $GIO#6(440A4002440C,Z$)
   : M=3
   : RETURN
5502 IF P(3)=0THEN 100
   : INIT(00)A1$()
   : PRINT
   : STR(A1$(1),1,1)=HEX(01)
   : IF B$(3)="1"THEN 5536
   : IF B$(3)<>"0"THEN 5536
   : GOSUB 3000
   : PRINT "FILE CLOSED -- ONLY CRT ACTIVE ON RECEIVE"
   : P2=0
   : RETURN
5536 PRINT "RECEIVE FILE NOT OPENED"
   : RETURN
5582 B$=HEX(0E)
   : GOTO 5595
5594 B$=HEX(0F)
5595 IF M<3THEN 100
   : $GIO#6(440AA000440C,Z$)B$
   : RETURN
5606 IF M<3THEN 5622
   : $GIO#6(440B4003440C,Z$)
   : M=1
   : RETURN
5622 $GIO#6(4407,Z$)
   : RETURN
5630 IF M<3THEN 100
   : $GIO#6(440A4009440C,Z$)
   : B$="T"
   : MAT SEARCHM$()<P1+1,159-P1>,=B$TO A1$()
   : IF A1$(1)=HEX(0000)THEN 100
   : INIT(09)A$
   : P=VAL(STR(A1$(1),2))+P
   : P1=VAL(STR(A1$(1),2))+P1
   : IF P<=64THEN 5664
5654 P=P-64
   : IF P>64THEN 5654
   : PRINT HEX(0D0A);
5664 $GIO#4(400DA000,Z$)A$<1,P-1>
   : RETURN
5672 IF M<3THEN 5024
   : PRINT HEX(03);"DISPLAY/SET TAB STOPS";HEX(0A0D);"T=TAB         LINE ERASE
     =DELETE TAB        RETURN=END";HEX(0A0D0A);
   : FOR A=1TO 3
   : PRINT M$(A)
   : NEXT A
   : PRINT HEX(0C0C0C);
   : A=1
5692 KEYIN B$,5698,5692
   : GOTO 5692
5698 IF B$=HEX(0D)THEN 5724
   : IF B$=HEX(08)THEN 5748
   : IF B$=HEX(20)THEN 5778
   : IF B$=HEX(E5)THEN 5810
   : IF B$<>"T"THEN 5692
   : A1$(1)=B$
   : MAT COPY A1$()<1,1>TO M$()<P,1>
   : $GIO#4(42104008,A1$())
   : GOTO 5692
5724 PRINT HEX(010A0A0A0A0A0A0A);
   : PRINT TAB(63);HEX(0D);
   : INPUT "SAVE ABOVE TAB SETTINGS AS SYSTEM DEFAULT (Y/N)",B$
   : IF B$="Y"THEN 5738
   : IF B$="N"THEN 5000
   : PRINT "RE-ENTER"
   : GOTO 5724
5738 DATA LOAD DC OPEN T#0,"TTT*010H"
   : DATA SAVE DC #0,M$()
   : DATA SAVE DC #0,END
   : GOTO 5000
5748 IF (P-1)/53<>INT((P-1)/53)THEN 5770
   : IF P=1THEN 5692
   : INIT(09)A$
   : $GIO#4(400D400CA000,Z$)A$<1,52>
   : P=P-1
   : GOTO 5692
5770 P=P-1
   : PRINT HEX(08);
   : GOTO 5692
5778 IF P/53<>INT(P/53)THEN 5798
   : IF P=159THEN 5692
   : PRINT HEX(0A0D);
   : P=P+1
   : GOTO 5692
5798 P=P+1
   : $GIO#4(4009,Z$)
   : GOTO 5692
5810 MAT COPY M$()<P,1>TO M1$()
   : IF M1$(1)<>"T"THEN 5692
   : A=P/10
   : IF A=INT(P/10)THEN 5890
   : A=16
5890 Z$="123456789012345."
   : STR(A1$(1),1,1),M1$(1)=STR(Z$,A,1)
   : MAT COPY M1$()<1,1>TO M$()<P,1>
   : $GIO#4(42104008,A1$())
   : GOTO 5692