image of READY prompt

Wang2200.org

Listing of file='KFAM0107' on disk='vmedia/701-2427C.wvd.zip'

# Sector 281, program filename = 'KFAM0107'
0010 REM  KFAM0107, RELEASE 5-1, (11/07/79) - COPYRIGHT WANG LABS. INC.
0025 COM @V,@Q6$64,@Q6,@Q7,@Q8,@Q9,@Q8$20,@Q0$(16),@T5$10,@V$18,@T
   : COM @V4$(30)5,@Q,@Q$17,@Q9$17,@Q0$49,@T$(30)17
0040 DEFFN@PART"KFAM"
   : $PSTAT="KFAM0107"
   : @V=1
   : @T=0
   : @T$(),@V4$()=ALL(FF)
   : @Q=1
   : @V$=HEX(5001A002A002A0025004A001A002A002A001)
   : @T5$=HEX(A003A01EA001A008A002)
   : @Q8$=HEX(A0025002A00450015002)
   : STR(@Q8$,11)=STR(@Q8$,9)
   : $RELEASETERMINAL
   : $BREAK!
0579 $BREAK1
0580 IF @T=0THEN @T=S2
   : ELSE GOTO 579
   : RETURN
0590 @T=0
   : RETURN
0609 ADDC(V9$,V0$)
   : DATA LOAD DA T#T1,(V9$)T9$,T0$()
   : RETURN
0645 T7$=T1$
0648 V9$=T2$
   : FOR T3=T0TO 1STEP -1
   : GOSUB 609
   : T2$(T3)=T9$
   : MAT SEARCHSTR(T0$(),,V7),>STR(T7$,,T4)TO V9$STEP T5
   : T=VAL(V9$,2)-T5
   : IF T<1THEN T=V1
   : $UNPACK(F=V4$)T0$()<T>TO T1$,T4$
   : V9$=T4$
   : IF V>6THEN Q2=SGN(255-VAL(STR(T0$(),V1)))*(Q2+1)
   : BIN(STR(T$,T3))=T
   : NEXT T3
   : RETURN
0723 V=4
0726 IF T9>0AND T6=T9THEN 750
   : IF V0$(T6)=" "THEN 2908
   : GOSUB 858
   : T9=T6
   : $UNPACK(F=@Q8$)V0$(T9)TO V0$,V6,V4$,V0,T1,T2,T4,T5,V7,V1
   : $UNPACK(F=@T5$)T5$(T9)TO T4$,T7$,T8$,T$,T2$()
   : GOSUB 818
   : T9$=HEX(FF)
0750 $CLOSE#T1,#T2
   : IF MOD(V0,2)=0THEN 812
   : Q$=BIN(V6)
   : Q2$=BIN(S2)&Q$
   : MAT SEARCH@V4$(),=STR(Q2$)TO V9$STEP 5
   : T=VAL(V9$,2)
   : IF T>0THEN STR(@V4$(),T,5)=ALL(FF)
   : GOSUB 580
   : STR(@Q$,@Q)=STR(Q2$,,1)
   : STR(@Q9$,@Q)=Q$
   : STR(@Q0$,@Q*3-2)=STR(@T$(V6),4,3)
   : @Q=@Q+1
0784 MAT SEARCH@Q0$,=STR(@T$(V6),4,3)TO V7$STEP 3
   : IF VAL(STR(@Q$,(VAL(V7$,2)+2)/3))=S2THEN 794
   : @T=0
   : $BREAK5
   : GOSUB 580
   : GOTO 784
0794 @T=0
   : HEXUNPACKSTR(@T$(V6),10)TO V7$
   : T8$=STR(V7$,S2)
   : HEXPACKQ$FROMT8$
   : Q$=AND HEX(60)
   : IF Q$>HEX(20)THEN GOSUB 818
   : Q$=AND HEX(20)
   : IF Q$=HEX(20)THEN T6$=BIN(0)
0812 IF V>4AND VAL(T6$)<>T9THEN 873
   : RETURN
0818 $UNPACK(F=@V$)STR(@T$(V6),7)TO T0,T2$
   : RETURN
0824 GOSUB 580
0825 HEXUNPACKSTR(@T$(V6),10)TO V7$
   : STR(V7$,S2,1)=T8$
   : HEXPACKSTR(@T$(V6),10)FROMV7$
   : RETURN
0858 IF T9>0THEN $PACK(F=@T5$)T5$(T9)FROMT4$,T7$,T8$,T$,T2$()
   : RETURN
0873 DATA LOAD DA T#T1,(V0$)Q2,T$()
   : T6$=BIN(T9)
   : RETURN
0880 DATA SAVE DA T$#T1,(V0$)0,T$()
   : RETURN
0888 IF MOD(Q,2)=0THEN 901
   : Q2$=STR(@T$(V6),4,2)SUBCSTR(T4$,,2)
0890 MAT SEARCH@V4$(),=HEX(FFFF)TO V9$STEP 5
   : T=VAL(V9$,2)
   : IF T>0THEN 898
   : $BREAK1
   : GOTO 890
0898 IF STR(@V4$(),T,2)=HEX(FFFF)THEN STR(@V4$(),T,5)=BIN(S2)&BIN(V6)&STR(@T$(
     V6),6,1)&Q2$
   : ELSE GOTO 890
0901 GOSUB 824
0908 Q2$=BIN(S2)
   : T=POS(@Q$=Q2$)
   : STR(@Q0$,T*3-2)=STR(@Q0$,T*3+1)
   : STR(@Q$,T)=STR(@Q$,T+1)
   : STR(@Q9$,T)=STR(@Q9$,T+1)
   : @Q=@Q-1
   : GOTO 590
0927 Q$=" "
   : Q=VAL(STR(T4$,3))
   : T6=VAL(T4$,2)
   : DBACKSPACE #T2,BEG
   : IF T6>0THEN DSKIP #T2,T6S
   : RETURN
0954 IF MOD(V0,2)=0THEN RETURN
   : V9$=STR(@T$(V6),4,2)SUBCSTR(T4$,,2)
   : V7$=STR(@T$(V6),6,1)&V9$
   : MAT SEARCHSTR(@V4$(),3),=STR(V7$,,3)TO V9$STEP 5
   : IF V9$=HEX(0000)OR VAL(STR(@V4$(),VAL(V9$,2)))=S2THEN RETURN
   : Q$="B"
   : T8$="1"
   : RETURN CLEAR
0972 GOSUB 901
   : $BREAK5
   : RETURN
0984 DEFFN'232(T6,Q,T1$)
   : GOSUB 723
   : GOSUB 645
   : IF T1$<>T7$THEN 2947
   : IF T4$>HEX(FF)THEN 2947
   : GOSUB 954
   : GOTO 1116
1014 DEFFN'235(T6,Q)
   : GOSUB 723
   : INIT(00)T7$
   : GOTO 1059
1032 DEFFN'237(T6,Q)
   : V=1
   : GOSUB 726
   : IF T8$="0"THEN 1068
   : IF T8$>"7"THEN 2974
1059 GOSUB 648
   : GOTO 1083
1068 T=VAL(T$)
   : IF T2$(1)=T9$THEN 1083
   : V9$=T2$(1)
   : GOSUB 609
1083 T=T+T5
   : IF T>V1THEN 1131
   : $UNPACK(F=V4$)T0$()<T>TO T1$,T4$
   : IF T1$>HEX(FF)THEN 1131
1105 BIN(T$)=T
   : GOSUB 954
   : T7$=T1$
1116 T8$="0"
   : IF MOD(V0,2)=1THEN GOSUB 888
   : GOTO 927
1131 T3=1
1134 T3=T3+1
   : IF T3>T0THEN 2989
   : V9$=T2$(T3)
   : GOSUB 609
   : T=VAL(STR(T$,T3))
   : T=T+T5
   : IF T>V1THEN 1134
   : $UNPACK(F=V4$)T0$()<T>TO T1$,T4$
   : IF T1$>HEX(FF)THEN 1134
1167 BIN(STR(T$,T3))=T
   : IF T3=1THEN 1105
   : V9$=T4$
   : GOSUB 609
   : $UNPACK(F=V4$)T0$()TO T1$,T4$
   : T3=T3-1
   : T=1
   : T2$(T3)=T9$
   : GOTO 1167
1206 DEFFN'236(T6,Q)
   : GOSUB 723
   : T7$=HEX(FF)
   : GOSUB 648
   : IF T4$>HEX(FF)THEN 2953
   : GOTO 1105
1239 DEFFN'212(T6,Q)
   : V=2
   : GOSUB 726
   : IF T8$="0"THEN 1278
   : IF T8$>"7"THEN 2974
   : GOSUB 648
   : IF T7$>T1$THEN 1299
   : GOTO 1293
1278 T=VAL(T$)
   : IF T2$(1)=T9$THEN 1293
   : V9$=T2$(1)
   : GOSUB 609
1293 T=T-T5
1299 IF T<1THEN 1317
   : $UNPACK(F=V4$)T0$()<T>TO T1$,T4$
1305 IF T4$>HEX(FF)THEN 2989
   : GOTO 1105
1317 T3=1
1320 T3=T3+1
   : IF T3>T0THEN 2989
   : V9$=T2$(T3)
   : GOSUB 609
   : T=VAL(STR(T$,T3))
   : T=T-T5
   : IF T<1THEN 1320
1341 $UNPACK(F=V4$)T0$()<T>TO T1$,T4$
   : BIN(STR(T$,T3))=T
   : IF T3=1THEN 1305
   : V9$=T4$
   : GOSUB 609
   : T=INT((POS(-T0$()<FF)-1)/T5)*T5+1
   : T3=T3-1
   : T2$(T3)=T9$
   : GOTO 1341
1410 DEFFN'238(T6)
   : Q=0
   : GOSUB 723
   : Q$=" "
1431 ON V0GOTO 901,,901
   : RETURN
1443 IF T3=1THEN GOSUB 1524
   : IF T=V1THEN 1461
   : T6=V1-T
   : MAT COPY -T0$()<T,T6>TO -T0$()<T+T5,T6>
1461 $PACK(F=V4$)T0$()<T,T5>FROMT1$,T3$
   : RETURN
1473 $UNPACK(F=STR(@V$,5))T$(2)<4>TO Q2$,V2$,T8,V6$,V3$,Q3$,V8$
   : RETURN
1480 V9$=T9$ADDCV0$
   : DATA SAVE DA T$#T1,(V9$)T9$,T0$()
   : RETURN
1490 V9$=V2$ADDCV0$
   : T0$()=@Q0$()
   : DATA SAVE DA T$#T1,(V9$,V9$)V2$,T0$()
   : @Q0$()=HEX(A0FDFDFD)
   : DATA SAVE BA T$#T1,(V9$)@Q0$()
   : STR(@Q0$(),2,2)=V2$ADDCHEX(03)
   : V9$=V3$ADDCV0$ADDCHEX(02)
   : DATA SAVE BA T$#T1,(V9$)@Q0$()
   : RETURN
1524 IF V=7THEN 1602
   : ADDC(T3$,01)
   : IF STR(T3$,3)<=V8$THEN 1596
   : Q2$=ADDCV6$
   : T3$=STR(Q2$)&HEX(01)
1596 STR(T$(3),3*S2-2,3)=T3$
1602 T4$=T3$
   : RETURN
1626 DEFFN'234(T6,Q,T1$,V)
   : V=7
   : GOSUB 726
   : GOSUB 1473
   : IF STR(T4$,1,2)>Q3$THEN 2974
   : IF STR(T4$,3,1)>V8$THEN 2974
   : T3$=T4$
   : GOTO 1686
1662 DEFFN'233(T6,Q,T1$,V)
   : V=8
   : GOSUB 726
   : GOSUB 1473
   : T4$,T3$=STR(T$(3),3*S2-2)
   : IF STR(T3$,3)<V8$THEN 1686
   : IF Q2$<Q3$THEN 1688
   : IF VAL(Q2$)<255THEN 2923
   : GOTO 1688
1686 GOSUB 954
1688 IF V0<3THEN 2974
   : IF VAL(T1$)=255THEN 2974
   : Q2=1
   : GOSUB 645
   : IF T1$=T7$THEN 2935
   : T1$=T7$
   : T=T+T5
   : T8$="1"
   : IF Q2=0THEN 1905
   : IF Q2>8THEN 2923
   : V9$=V2$ADDCBIN(Q2)
   : IF V3$<V9$THEN 2923
   : GOSUB 580
1761 ADDC(V2$,01)
   : INIT(FF)@Q0$()
   : Q2,T6=INT(V8*V7/T5+.6)*T5
   : IF T<V7-Q2+T5THEN 1791
   : Q2=Q2-T5
1791 Q3=V7-Q2+1
   : STR(@Q0$(),,Q2)=STR(T0$(),Q3)
   : STR(T0$(),Q3)=ALL(FF)
   : IF Q2=T6THEN 1845
   : T=T-(V7-Q2)
   : IF T=Q2+1THEN 1830
   : MAT COPY -@Q0$()<T,Q2+1-T>TO -@Q0$()<T+T5,Q2+1-T>
1830 IF T3=1THEN GOSUB 1524
   : $PACK(F=V4$)@Q0$()<T,T5>FROMT1$,T3$
   : GOTO 1851
1845 GOSUB 1443
1851 T1$=STR(@Q0$(),,T4)
   : T3$=V2$
   : GOSUB 1480
   : GOSUB 1490
   : T3=T3+1
   : IF T3>T0THEN 1944
   : V9$=T2$(T3)
   : GOSUB 609
   : T=VAL(STR(T$,T3))+T5
   : IF STR(T0$(),V1)<HEX(FF)THEN 1761
   : @T=0
1905 GOSUB 1443
   : GOSUB 1480
1912 T8=T8+1
1916 $PACK(F=@V$)T$(2)FROMT0,T2$,Q2$,V2$,T8
   : GOSUB 880
   : IF V0>3THEN 927
   : STR(@T$(V6),10)=OR ALL(22)
   : GOSUB 888
   : GOTO 927
1944 ADDC(V2$,01)
   : @Q0$()=ALL(FF)
   : STR(@Q0$(),,T5)=ALL(00)
   : STR(@Q0$(),T4+1,2)=T2$
   : $PACK(F=V4$)STR(@Q0$(),T5+1,T5)FROMT1$,T3$
   : GOSUB 1490
   : T0=T3
   : T2$=V2$
   : IF V6=0THEN 1974
   : $PACK(F=@V$)STR(@T$(V6),7,3)FROMT0,T2$
   : STR(@T$(V6),10)=OR ALL(44)
1974 T8$="5"
   : @T=0
   : GOTO 1912
1986 DEFFN'231(T6,Q,T1$)
   : V=6
   : GOSUB 726
   : IF V0<3THEN 2974
   : IF VAL(T1$)=255THEN 2974
   : GOSUB 645
   : IF T1$<>T7$THEN 2953
   : IF T4$>HEX(FF)THEN 2974
   : GOSUB 954
2013 IF T<V1THEN STR(T0$(),T)=STR(T0$(),T+T5)
   : STR(T0$(),V1)=ALL(FF)
2028 GOSUB 1480
   : IF T=1THEN 2052
   : GOSUB 1473
   : T8=T8-1
   : T8$="1"
   : GOTO 1916
2052 T1$=T0$(1)
   : T3=T3+1
   : V9$=T2$(T3)
   : GOSUB 609
   : T=VAL(STR(T$,T3))
   : IF VAL(T1$)=255THEN 2013
   : $PACK(F=V4$)T0$()<T,T4>FROMT1$
   : GOTO 2028
2091 DEFFN'230(T6,Q,Q2,Q3,V7$,V,T1$,V4$,T3$)
   : IF INT((S2-1)/16)<>0THEN 2911
   : IF V0$(T6)<>" "THEN 2911
   : GOSUB 858
   : T9=0
   : IF V<1OR V>4THEN 2911
   : IF VAL(STR(T0$,Q+1))+VAL(STR(T0$,Q2+1))>64THEN 2911
   : IF Q=Q2THEN 2911
   : V7$(T6),T$=V7$
   : STR(T$,5,1)="K"
   : CONVERT Q3TO STR(T$,6,1),(#)
   : T1=Q
   : T2=Q2
   : V0=V
   : T4$=V4$
2174 IF POS("3BD"=T4$)*POS("123567"=STR(T4$,2))*POS("012345"=STR(T4$,3))=0THEN
      2911
   : SELECT #Q<T4$>
   : $GIO#Q,(70A04000870B,V7$)
   : ERRORGOTO 2911
2184 IF STR(V7$,11,1)<>HEX(D0)AND STR(T4$,3)>"0"THEN 2911
   : IF Q=Q2THEN 2194
   : Q=Q2
   : T4$=T3$
   : GOTO 2174
2194 LIMITS T#T1,T$,V,T3,T,Q
   : $CLOSE#T1
   : IF Q<>2THEN 2911
   : V0$=BIN(V,2)
   : Q2=INT(Q3/10)
   : GOSUB '217(V7$(T6),T2,S2,Q2,V0,T1$,V9$,0)
   : IF Q$>" "THEN RETURN
   : GOSUB 873
   : STR(T$(2),13,2)=BIN(T3-V-2,2)
   : T=VAL(STR(T$(2),12))
   : STR(T$(2),15,2)=BIN((INT(Q/T)-1)*T,2)
   : IF V4$<"8"THEN STR(V4$,3)="1"
   : HEXPACKT8$FROMSTR(V4$,2,2)
   : IF T3$<"8"THEN STR(T3$,3)="1"
2230 HEXPACKQ$FROMSTR(T3$,2)
   : V7$=STR(V0$)&T8$&STR(V9$)&Q$&ALL(FF)
   : T4=VAL(STR(T$(2),22))
   : T5=T4+3
   : V4$=HEX(A000A003)
   : BIN(STR(V4$,2))=T4
   : V7=INT(240/T5)*T5
   : V1=V7-T5+1
   : T8$="E"
   : GOSUB 580
   : T3=1
2252 MAT SEARCH@T$(),=STR(V7$,T3,3)TO V9$STEP 17
   : T=VAL(V9$,2)
   : IF T>0THEN 2274
   : T3=T3+6
   : IF T3<8THEN 2252
   : @T=0
   : GOSUB '219(V7$(T6),T2,S2," ",0)
   : Q$="S"
   : RETURN
2274 V6=(T+16)/17
   : IF T3=1THEN 2278
   : STR(@T$(V6),1,9)=STR(V7$,,6)&STR(T$(2),,3)
   : GOSUB 880
2278 $UNPACK(F=@V$)T$(2)TO T0,T2$
   : GOSUB 825
   : @T=0
   : Q$=" "
   : V8=.5
   : T9=T6
   : STR(T0$,T1+1,1),STR(T0$,T2+1,1)="X"
2298 $PACK(F=@Q8$)V0$(T9)FROMV0$,V6,V4$,V0,T1,T2,T4,T5,V7,V1
   : RETURN
2346 DEFFN'213(T6,T3,T1$)
   : Q=0
   : V=5
   : GOSUB 726
   : IF T3<1OR T3>4THEN 2974
   : GOSUB '217(V7$(T9),T2,S2,-1,T3,T1$,V9$,0)
   : IF Q$<>" "THEN 2890
   : T=V0
   : V0=T3
   : GOSUB 2298
   : T8$="E"
   : IF MOD(T,2)=1THEN 901
   : GOSUB 824
   : GOTO 590
2384 DEFFN'239(T6)
   : Q=0
   : V=5
   : IF T6>0THEN T3$="P"
   : ELSE T3$="S"
   : T6=ABS(T6)
   : GOSUB 726
   : T8$="F"
   : GOSUB 880
   : STR(T0$,T1+1,1),STR(T0$,T2+1,1)=" "
   : IF V0<3THEN 2415
2409 IF T3$="P"THEN GOSUB 2445
2415 Q$=" "
   : GOSUB '219(V7$(T9),T2,S2," ",0)
   : V0$(T9)=" "
   : T9=0
   : GOSUB 824
   : IF POS(V7$<>"F")=0THEN @T$(V6)=ALL(FF)
   : IF MOD(V0,2)=1THEN 908
   : GOTO 590
2445 T6=MOD(VAL(STR(T$(2),4),2)+VAL(STR(T$(2),12)),65536)
   : DATA LOAD DC OPEN T#T2,V7$(T9)
   : IF T6>0THEN DSKIP #T2,T6S
   : GOSUB '218(V7$(T9),T2,V9$,0)
   : LIMITS T#T2,V7$(T9),Q2,T,T3
   : T=T-1
   : T9$=HEX(FF)
   : T0$()=HEX(A0FD)&T$()
   : DATA SAVE BA T$#T2,(T)T0$()
   : DATA LOAD DC OPEN T#T2,V7$(T9)
   : RETURN
2488 DEFFN'214(T6)
   : Q=0
   : V=5
   : GOSUB 726
   : Q$=" "
   : GOSUB 2445
   : GOTO 1431
2504 DEFFN'217(V7$,Q3,S2,Q2,T,T1$,V9$,T8)
   : GOSUB 2724
   : LIMITS T#Q3,V7$,@Q6,@Q7,@Q8,@Q9
   : Q=@Q7-@Q6-1
   : V9$=BIN(@Q7,2)
   : Q$="D"
   : IF ABS(@Q9)=1THEN 2626
2522 IF Q2<=0THEN 2556
   : IF @Q9=2THEN 2626
   : Q$="S"
   : T=4
   : IF @Q9=0THEN 2548
   : IF @Q7-@Q6+1<Q2THEN 2626
   : DATA SAVE DC OPEN T#Q3,V7$,V7$
   : GOTO 2560
2548 DATA SAVE DC OPEN T#Q3,Q2,V7$
   : ERRORGOTO 2626
2550 LIMITS T#Q3,@Q6,@Q7,@Q8
   : GOTO 2560
2556 IF @Q9<2THEN 2626
2560 GOSUB 2632
   : Q$="M"
   : IF STR(@Q0$(),4,4)<>HEX(FD4D5558)AND Q2=-2THEN 2626
   : STR(@Q0$(1),9)=V7$
   : IF STR(@Q0$(),4,4)=HEX(FD4D5558)THEN 2576
   : STR(@Q0$(),4,4)=HEX(FD4D5558)
   : STR(@Q0$(),17)=T1$
2576 Q$="P"
   : IF T1$<>@Q0$(2)THEN 2626
   : Q$="A"
   : @Q6$=STR(@Q0$(),33,48)
   : IF STR(@Q6$,S2,1)=" "XOR Q2<>-1THEN 2626
   : STR(@Q6$,S2,1)=" "
   : ON T-1GOTO 2596,2600,2604
   : T1$=" 1 2 3"
   : GOTO 2602
2596 T1$=" 1 2"
   : GOTO 2602
2600 T1$=" 1 3"
2602 $TRAN(@Q6$,T1$)R
2604 IF @Q6$<>" "THEN 2626
   : CONVERT TTO STR(@Q0$(),32+S2,1),(#)
   : GOSUB 2638
   : DATA LOAD DC OPEN T#Q3,V7$
   : Q$=" "
2626 IF T8=0THEN $CLOSE#Q3
   : @T=0
   : RETURN
2632 DATA LOAD BA T#Q3,(@Q7)@Q0$()
   : RETURN
2638 DATA SAVE BA T#Q3,(@Q7)@Q0$()
   : RETURN
2646 DEFFN'218(V7$,Q3,V9$,T8)
   : GOSUB 2724
   : LIMITS T#Q3,@Q6,@Q7,@Q8
   : Q$="F"
   : IF @Q7<=@Q8THEN 2626
   : Q$=" "
   : IF @Q8=@Q7-1THEN Q$="S"
   : @Q6=@Q8-@Q6+2
   : @Q0$()=HEX(A0)
   : DATA SAVE BA T#Q3,(@Q8)@Q0$()
   : GOSUB 2632
   : STR(@Q0$(),2,2)=BIN(@Q6,2)
   : GOSUB 2638
   : DATA LOAD DC OPEN T#Q3,V7$
   : DSKIP #Q3,END
   : GOTO 2626
2690 DEFFN'219(V7$,Q3,S2,V9$,T8)
   : GOSUB 2724
   : LIMITS T#Q3,V7$,@Q6,@Q7,@Q8
   : GOSUB 2632
   : Q$,STR(@Q0$(),32+S2,1)=" "
   : GOSUB 2638
   : DATA SAVE DC CLOSE#Q3
   : GOTO 2626
2724 $OPEN #Q3
   : IF @T=0THEN @T=S2
   : ELSE GOTO 2730
   : RETURN
2730 $CLOSE#Q3
   : $BREAK1
   : GOTO 2724
2890 T8$="8"
   : GOTO 1431
2908 RETURN CLEAR
2911 Q$="X"
   : RETURN
2923 Q$="S"
   : GOTO 2890
2935 Q$="D"
   : GOTO 2890
2947 T8$="1"
   : Q$="N"
   : GOTO 1431
2953 Q$="N"
   : GOTO 2890
2974 Q$="X"
   : GOTO 2890
2989 IF V=4THEN 2953
   : Q$="E"
   : GOTO 2890