image of READY prompt

Wang2200.org

Listing of file='T09A030A' on disk='vmedia/cs386_host_1.2.wvd.zip'

# Sector 94, program filename = 'T09A030A'
2000 REM    T09A030A-01      10/04/78
2010 DIM B2$(16)20,B2$20,E1$1,E$(255)1,D0$1,B3$(2)1,B4$20,A$(69)60,C1$(69)60,B
     9$(16)1,B0$1,B1$1,Z1$2,Z2$1,D$64,Z$64,Z9$16,V$20
   : C9=69
2020 GOSUB '104
   : IF A9$="N"THEN 2020
   : GOTO 400
2030 DEFFN'104
   : INIT(09)Z$
   : Z1$=HEX(0001)
   : Z2$=" "
   : INIT(0A)Z9$
   : STR(Z9$,1,1)=HEX(01)
   : GOTO 2730
2040 DEFFN0(I)=INT(2042*(1+SIN(1.2*I)))+12
2050 DEFFN1(I)=256*VAL(STR(B$,9))+VAL(STR(B$,10))
2060 DEFFN'25
   : GOSUB '202("WGAP")
   : Z9=INT(25*RND(-1))
   : FOR I=1TO Z9
   : $GIO#1(J5$,B$)
   : A$=HEX(0D)
   : GOSUB '201
   : NEXT I
   : RETURN
2070 IF G$="N"THEN 2080
   : STOP "ERROR"
2080 I1=I1+1
   : X=FN0(E)
   : $PACKC1$()FROMX
   : BIN(C1$(1))=E
   : V=VAL(STR(D$,I1))-64
   : IF V*(13-V)<1THEN 2190
   : INIT(00)B$,B3$(),E1$
   : ON VGOSUB 2280,2310,2330,2380,2410,2430,2270,2270,2440,2450,2460,2270
   : IF B4$=B2$THEN 2110
2090 FOR I=2TO 10
   : IF STR(B4$,2*I-1,2)=HEX(0000)THEN 2100
   : PRINT STR(Z9$,1,I-3);STR(Z$,1,2);
   : HEXPRINT STR(B4$,2*I-1,2);
   : PRINT " ";B2$(I)
2100 NEXT I
2101 IF A7$="N" THEN 2110
   : IF V$=B4$THEN 2110
2102 GOSUB '255(" ")
   : SELECT PRINT 215
   : FOR I=2TO 10
   : IF STR(B4$,2*I-1,2)=HEX(0000)THEN 2103
   : IF STR(B4$,2*I-1,2)=STR(V$,2*I-1,2)THEN 2103
   : HEXPRINT STR(B4$,2*I-1,2);
   : PRINT " ";B2$(I)
2103 NEXT I
   : V$=B4$
   : SELECT PRINT 005(64)
2110 E=E1
   : D0$=STR(D$,I1)
   : IF E1$<>"E"THEN 2120
   : B$=" "
   : IF G$="Y"THEN 2070
2120 GOTO 2080
2130 N=FN1(E)
   : IF X=NTHEN 2140
   : I=9
   : GOSUB 2180
2140 J=1
   : I=10
   : IF N<=60*C9THEN 2150
   : N=60*C9
2150 IF N<60THEN 2160
   : IF A$(J)<>C1$(J)THEN 2180
   : J=J+1
   : N=N-60
   : GOTO 2150
2160 IF N>0THEN 2170
   : RETURN
2170 IF STR(A$(J),1,N)<>STR(C1$(J),1,N)THEN 2180
   : RETURN
2180 ADDC(STR(B4$,2*I-1,2),Z1$)
   : PRINT STR(Z9$,1,I-3);">"
   : E1$="E"
   : RETURN
2190 IF (V+16)*(V+7)>0THEN 2220
   : IF D0<>0THEN 2480
   : D0=V+16
   : D2=0
2200 I1=I1+1
   : V=VAL(STR(D$,I1))-48
   : IF V*(9-V)<0THEN 2210
   : D0=10*D0+V
   : GOTO 2200
2210 IF V<>-8THEN 2480
   : IF POS(STR(D$,I1+1)=")")=0THEN 2480
   : D1=I1
   : GOTO 2080
2220 IF V<>-23THEN 2230
   : IF D0<=0THEN 2480
   : D0=D0-1
   : IF D0=0THEN 2080
   : I1=D1
   : GOTO 2080
2230 IF V<>-18THEN 2240
   : RETURN
2240 IF V<>-32THEN 2250
   : READ D$
   : PRINT HEX(010A0A);STR(D$,1)
   : D0=0
   : I1=1
   : IF STR(D$,1,1)="-"THEN 2080
   : STOP "ILLEGAL CONTINUE"
2250 IF V<>-4THEN 2260
   : IF D0=0THEN 2480
   : IF D2<>0THEN 2480
   : D2=D0
   : D3=I1
   : GOTO 2080
2260 IF V<>-2THEN 2270
   : IF D2<=0THEN 2480
   : D2=D2-1
   : IF D2=0THEN 2080
   : I1=D3
   : GOTO 2080
2270 STOP "ILLEGAL ATOM"
2280 GOSUB '202("BSR")
   : E1=E-1
   : IF E1>0THEN 2290
   : E1=1
   : GOSUB 2500
2290 IF E$(E1)="R"THEN 2300
   : GOSUB 2490
2300 $GIO#1(J3$,B$)
   : A$=HEX(1B)
   : GOSUB '201
   : GOTO 2530
2310 GOSUB '202("FSR")
   : IF E$(E)=" "THEN 2480
   : E1=E+1
   : IF E$(E)="R"THEN 2320
   : GOSUB 2490
2320 $GIO#1(J4$,B$)
   : A$=HEX(0F)
   : GOSUB '201
   : GOTO 2530
2330 GOSUB '202("BSF")
   : E1=1
   : IF E=1THEN 2350
   : FOR I=1TO E-1
   : IF E$(I)<>"F"THEN 2340
   : E1=I+1
2340 NEXT I
2350 IF E1>1THEN 2360
   : GOSUB 2500
   : GOTO 2370
2360 GOSUB 2490
2370 $GIO#1(J7$,B$)
   : A$=HEX(1B)
   : GOSUB '201
   : B0$=STR(B$,7,1)
   : AND (B0$,20)
   : IF B0$=" "THEN 2530
   : $GIO#1(J4$,B$)
   : GOTO 2530
2380 GOSUB '202("FSF")
   : I=E
2390 IF E$(I)="F"THEN 2400
   : I=I+1
   : IF I<256THEN 2390
   : GOTO 2480
2400 E1=I+1
   : GOSUB 2490
   : $GIO#1(J8$,B$)
   : A$=HEX(0F)
   : GOSUB '201
   : GOTO 2530
2410 GOSUB '202("REWIND")
   : E1=1
   : IF E>1THEN 2420
   : GOSUB 2500
2420 $GIO#1(J2$,B$)
   : A$=HEX(19)
   : GOSUB '201
   : B3$(1)="B"
   : GOTO 2530
2430 GOSUB '202("WGAP")
   : GOSUB 2510
   : $GIO#1(J5$,B$)
   : A$=HEX(0D)
   : GOSUB '201
   : GOTO 2530
2440 GOSUB '202("WEOF")
   : GOSUB 2510
   : E$(E)="F"
   : E1=E+1
   : $GIO#1(J6$,B$)
   : A$=HEX(0F)
   : GOSUB '201
   : B3$(2)="E"
   : GOTO 2530
2450 GOSUB '202("WRITE")
   : GOSUB 2510
   : E1=E+1
   : E$(E)="R"
   : $GIO#1(J$,B$)C1$()<1,X>
   : A$=HEX(EF)
   : Z=X
   : GOSUB '201
   : GOTO 2530
2460 GOSUB '202("READ")
   : E1=E+1
   : IF E$(E)=" "THEN 2480
   : IF E$(E)="R"THEN 2470
   : GOSUB 2490
2470 $GIO#1(J1$,B$)A$()
   : A$=HEX(6F)
   : GOSUB '201
   : GOTO 2530
2480 STOP "IMPROPER SEQUENCE"
2490 B3$(2)="E"
   : RETURN
2500 B3$(1)="E"
   : RETURN
2510 $TRAN(E$()<E1>,Z2$)00
   : IF V=12THEN 2520
2520 RETURN
2530 B0$=STR(B$,7)
   : INIT(00)B9$()
   : FOR I=1TO 8
   : B1$=B0$
   : AND (B1$,01)
   : ROTATE(B0$,7)
   : B9$(I)=B1$
   : NEXT I
   : B0$=STR(B$,8)
   : FOR I=9TO 16
   : B1$=B0$
   : AND (B1$,01)
   : ROTATE(B0$,7)
   : B9$(I)=B1$
   : NEXT I
   : B0$=STR(B$,7)
   : AND (B0$,09)
   : IF B0$=HEX(00)THEN 2550
2540 I=1
   : GOSUB 2180
   : GOTO 2780
2550 B1$,B0$=STR(B$,8)
   : AND (B0$,F9)
   : IF B0$>HEX(00)THEN 2540
   : B1$=B0$
   : AND (B1$,04)
   : IF B1$=HEX(00)THEN 2560
   : PRINT "ECHO VERIFY ERROR"
   : GOSUB '255("ECHO VERIFY ERROR")
   : IF STR(B$,7,2)=HEX(0004)THEN 2780
   : GOTO 2540
2560 IF B9$(10)=HEX(00)THEN 2570
   : I=2
   : GOSUB 2180
2570 IF B9$(2)<>HEX(00)THEN 2580
   : IF B9$(5)=HEX(00)THEN 2590
2580 STOP "TAPE PROTECTED OR NOT READY"
2590 IF B9$(7)=HEX(00)THEN 2600
   : I=3
   : GOSUB 2180
2600 IF B9$(8)=HEX(00)THEN 2610
   : I=4
   : GOSUB 2180
2610 IF B9$(6)=HEX(00)THEN 2620
   : IF B3$(1)>HEX(00)THEN 2630
   : I=5
   : GOSUB 2180
2620 IF B3$(1)=HEX(00)THEN 2630
   : I=6
   : GOSUB 2180
2630 IF B9$(3)=HEX(00)THEN 2640
   : IF B3$(2)>HEX(00)THEN 2650
   : I=7
   : GOSUB 2180
2640 IF B3$(2)=HEX(00)THEN 2650
   : I=8
   : GOSUB 2180
2650 IF B9$(3)=HEX(00)THEN 2660
   : RETURN
2660 IF STR(D$,I1,1)="H"THEN 2130
   : IF STR(D$,I1,1)="K"THEN 2130
   : RETURN
2670 X0=1
   : INIT(00)B4$,V$
2680 I=X1-17*INT(X1/17)
   : IF I=16THEN 2690
   : BIN(C1$(1))=I+I*16
   : BIN(STR(C1$(1),2))=255-I-I*16
   : STR(C1$(1),3)=STR(C1$(1),1)
   : FOR I=2TO C9
   : C1$(I)=C1$(1)
   : NEXT I
   : GOTO 2700
2690 INIT(00)C1$()
2700 IF X0*(D9-X0+1)>0THEN 2710
   : STOP "ILLEGAL VALUE"
2710 RESTORE X0+1
   : READ I
   : RESTORE I+D9+1
   : READ D$
   : E1,E=1
   : D0,I1=0
   : INIT(" ")E$(),D0$
   : GOSUB '200("MIXED COMMANDS")
   : GOSUB '202("REWIND")
   : $GIO#1(J2$,B$)
   : A$=HEX(19)
   : GOSUB '201
   : GOSUB '25
   : GOSUB 2080
   : X1=X1+1
   : X0=X0+1
   : IF X0<=D9THEN 2680
   : RETURN
2720 RETURN
2730 B2$(1)="UNCORRECTABLE"
   : B2$(4)="DATA ERROR"
   : B2$(5)="BOT"
   : B2$(6)="MISSING BOT"
   : B2$(7)="FILE MARK"
   : B2$(8)="MISSING FILE MARK"
2740 B2$(9)="COUNT ERROR"
   : B2$(10)="DATA NOT EQUAL"
   : INIT(00)B4$,B2$
   : RESTORE
   : READ D9
   : GOTO 2670
2750 DATA 12
   : DATA 1,2,3,4,5,6,7,8,9,10,11,12
   : DATA "I2(<JFFJFJI><AC>DACKKKBAIJJFJI)."
   : DATA "I2(<JFFFFFFJFFJFFJI><AC>KKKKKAI)."
   : DATA "I3(<JJJFFFJI>)2(<ACACAC><KKKBB>)."
2760 DATA "I2(<JFFFFJFFJFJI><AAAAKKKC>BBBDA)."
   : DATA "I2(<JFJFJFFJI><AC><KKKKB>AI)."
   : DATA "I2(<JJFFFJI><AAAA><BBKK><AC>DA)."
   : DATA "50(J)IAC50(K)."
   : DATA "3(<JFFJJ>IF)3(AC)2(D<KKK>)."
2770 DATA "2(<JJFIAJAAAKKKA>A<JFJJFJFIACKKKKKA>)."
   : DATA "2(<JJ>IFAC<KK>A)."
   : DATA "I10(JJJJJI)10(AC)50(K)."
   : DATA "I2(JJI)2(AC)KKKKKK."
2780 STOP "UNRECOVERABLE ERROR"
9000 PRINT HEX(03);"2200 HARDWARE DIAGNOSTICS - 2227 -------------------------
     -------"
   : PRINT HEX(0A0A0A0A0A0A0A0A0A0A0A0A0A0A);"DIAGNOSTIC MENU ; KEY 'RESET' AN
     D SF'31";HEX(01)
   : RETURN
9010 DEFFN'31
   : SELECT PRINT 005(64)
   : LOAD DC T"START"