image of READY prompt

Wang2200.org

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

# Sector 763, program filename = 'KFAM717U'
0010 REM  KFAM717U, RELEASE 5-1, (11/07/79) - COPYRIGHT WANG LABS. INC.
0040 DIM N$1,Q$1,C$1,W$1,T$(3)48,T3$3,V7$,V9$2,X$(2)30
   : DIM Z,Z0$3,Z2$2
0120 %THIS MUST BE LINE 120
0190 IF H=4THEN LOAD T"KFAM000S"10,0BEG 200
0200 S1$="ISS.254SISS.217S"
   : LOAD T<LEN(S1$)/8>S1$10,0BEG 220
0220 IF H=3THEN SELECT @PART"KFAMCOM"
   : ELSE IF H<>4THEN SELECT @PART"KFAM"
   : IF F9$=" "THEN 310
0250 PRINT AT(1,0,S0);"MOUNT PLATTERS"
   : GOSUB '254
   : IF M$<>"INDIRECT"THEN 310
   : LIMITS T#3,Z8$,X,X,X,X
   : ERRORGOTO 250
0290 IF X<>2THEN 250
0310 N$=BIN(N)
0330 IF @T=S2OR @T=NOR @T=0OR N=0THEN @T=0
   : ELSE GOTO 510
   : IF M$="ALL"THEN 610
0360 GOSUB '91
   : IF F1$=HEX(0000000000000000)THEN 630
   : IF F1$="KFAMWORK"THEN 470
   : GOSUB '45(1,K0$)
   : IF Z>0THEN 360
   : LIMITS T#1,K1$,A1,E1,X,X
   : IF X<>2THEN 560
   : IF H=1OR H=3THEN GOSUB 1050
   : ELSE GOSUB 1300
   : GOTO 360
0470 F0$=S$
   : GOSUB 1350
   : GOTO 360
0510 CONVERT @TTO T3$,(##)
   : Q6$="PROGRAM IS HOGGED BY STATION "&T3$
   : GOSUB '92(Q6$)
   : GOTO 330
0560 Q6$="FILE"&K1$&" IS NOT AN ACTIVE DATA FILE AT ADDRESS "&K0$
   : GOSUB '92(Q6$)
   : GOTO 360
0610 GOSUB 750
0630 DEFFN'31
   : SELECT PRINT 005
   : PRINT HEX(03)
   : IF Z8$<>" "THEN GOSUB '219(Z8$,3,S2," ",0)
   : COM CLEAR Z9$
0680 LOAD T"KFAM007M"
   : ERRORGOTO 690
0690 PRINT HEX(010A);"MOUNT ISS DISK AT ADDRESS ";S$
   : GOSUB '254
   : GOTO 680
0750 F1$="KFAMWORK"
   : F0$=S$
   : GOSUB 1350
   : IF N>0THEN GOSUB 1800
   : X=INT((POS(-@T$()<FF)-1)/17)+1
   : IF X=0THEN 990
   : FOR T=XTO 1STEP -1
   : IF N=0THEN 870
   : HEXUNPACKSTR(@T$(T),10)TO V7$
   : IF STR(V7$,N,1)="F"THEN 910
0870 GOSUB 1490
   : IF Z>0THEN 910
   : IF N>0THEN GOSUB 1670
   : GOSUB 2240
0910 NEXT T
   : IF N>0THEN RETURN
0940 @Q$,@Q9$,@Q0$=ALL(20)
   : @T$(),@V4$()=ALL(FF)
   : @Q=1
   : RETURN
0990 GOSUB '92("NO ENTRIES IN THE TABLE OF OPEN FILES")
   : GOTO 940
1050 T3$=BIN(A1,2)
   : IF K0$<"8"THEN STR(K0$,3)="1"
   : HEXPACKW$FROMSTR(K0$,2)
   : STR(T3$,3)=W$
   : MAT SEARCH@T$(),=STR(T3$)TO V9$STEP 17
   : V6=VAL(V9$,2)
   : IF V6=0THEN 1240
   : T=(V6+16)/17
   : W$=BIN(T)
   : GOSUB 1490
   : IF N=0THEN STR(@T$(),V6,17)=ALL(FF)
   : ELSE GOSUB 1670
   : GOSUB 1800
   : IF Z=0THEN GOSUB 2240
   : RETURN
1240 Q6$=K1$&" IS NOT REFERENCED IN THE TABLE OF OPEN FILES AT ADDRESS "&K0$
   : GOTO 3340
1300 DATA LOAD DA T#1,(A1)X,T$()
   : IF N=0THEN T$(1)=ALL(5A)
   : ELSE STR(T$(),N,1)=HEX(5A)
   : IF N=0THEN STR(T$(1),17)=ALL(FF)
   : ELSE STR(T$(),16+N,1)=HEX(FF)
   : DATA SAVE DA T$#1,(A1)0,T$()
1350 GOSUB '45(2,F0$)
   : IF Z>0THEN RETURN
   : Q6$="FILE "&F1$&" IS NOT AN ACTIVE DATA FILE AT ADDRESS "&F0$
   : LIMITS T#2,F1$,A2,E2,X,X
   : IF X<>2THEN 3340
   : V9$=BIN(E2,2)
   : GOSUB 2240
   : RETURN
1490 HEXUNPACKSTR(@T$(T),6,1)TO V9$
   : F0$="D"
   : IF STR(V9$,2)="0"THEN F0$="B"
   : IF STR(V9$,2)<>"1"THEN 1550
   : F0$="3"
   : STR(V9$,2)="0"
1550 STR(F0$,2)=V9$
   : V9$=STR(@T$(T),4)
   : GOSUB '45(2,F0$)
   : IF Z=0OR STR(F0$,1)="D"THEN RETURN
   : IF STR(F0$,1)="3"THEN STR(F0$,3)="1"
   : STR(F0$,,1)="D"
   : GOSUB '45(2,F0$)
   : RETURN
1670 GOSUB 2490
   : HEXUNPACKSTR(@T$(T),10)TO V7$
   : STR(V7$,N,1)="F"
   : HEXPACKSTR(@T$(T),10)FROMV7$
   : IF POS(V7$<>"F")=0THEN @T$(T)=ALL(FF)
   : @T=0
   : RETURN
1800 IF @Q<2THEN 1890
   : GOSUB 2490
   : C$="Q"
   : X1=@Q-1
   : X$(1)=@Q$
   : X$(2)=@Q9$
   : GOSUB 2000
   : @T=0
1890 C$="S"
   : X1=INT((POS(-@V4$()<FF)-1)/4)+1
   : IF X1=0THEN RETURN
   : FOR X=1TO X1
   : STR(X$(1),X,1)=@V4$(X)
   : STR(X$(2),X,1)=STR(@V4$(X),2)
   : NEXT X
   : GOSUB 2000
   : RETURN
2000 FOR X=X1TO 1STEP -1
   : IF M$="ALL"THEN 2040
   : IF STR(X$(2),X,1)=W$THEN 2060
   : GOTO 2080
2040 IF STR(X$(1),X,1)=N$THEN 2070
   : GOTO 2080
2060 IF N>0THEN 2040
2070 GOSUB 2110
2080 NEXT X
   : RETURN
2110 IF C$="S"THEN 2180
   : STR(@Q9$,X)=STR(@Q9$,X+1)
   : STR(@Q$,X)=STR(@Q$,X+1)
   : STR(@Q0$,X*3-2)=STR(@Q0$,X*3+1)
   : @Q=@Q-1
   : RETURN
2180 STR(@V4$(),5*(X-1)+1,5)=ALL(FF)
   : RETURN
2240 $OPEN #2
   : DATA LOAD BA T#2,(V9$)R9$()
   : IF STR(R9$(),4,4)<>HEX(FD4D5558)THEN 2380
   : IF @T=0THEN @T=S2
   : ELSE GOTO 2430
   : IF N=0THEN STR(R9$(),33,48)=" "
   : ELSE STR(R9$(),32+N,1)=" "
   : DATA SAVE BA T$#2,(V9$)R9$()
   : @T=0
2340 $CLOSE#2
   : RETURN
2380 Q6$="MUX SECTOR NOT FOUND AT ADDRESS "&F0$
   : GOSUB '92(Q6$)
   : GOTO 2340
2430 $CLOSE#2
   : $BREAK1
   : GOTO 2240
2490 IF @T=0THEN @T=S2
   : ELSE GOTO 2510
   : RETURN
2510 $BREAK1
   : GOTO 2490
2570 DEFFN'45(Z,Z0$)
   : IF Z0$=" "THEN 2730
   : IF Z0$=S$THEN 2630
   : MAT SEARCHSTR(S$(),4),=Z0$TO Z2$STEP 3
   : IF Z2$=HEX(0000)THEN 2740
2630 SELECT #Z<Z0$>
   : DATA LOAD BA T#Z,(0)R9$()
   : ERRORGOTO 2700
2660 Z=0
   : RETURN
2700 Q6$="UNABLE TO READ THE DISK AT ADDRESS "&Z0$
   : GOTO 2750
2730 Z0$="' '"
2740 Q6$="ADDRESS "&Z0$&" HAS NOT BEEN INCLUDED IN ISS STARTUP"
2750 Z=1
   : GOTO 3340
2800 DEFFN'91
   : IF Z9$="INDIRECT"THEN 2930
   : Z8=Z8+1
   : IF Z8>Z9THEN 2900
   : GOSUB 3170
   : RETURN
2900 F1$=ALL(HEX(00))
   : RETURN
2930 MAT REDIM Z1$(14)8,Z2$(14)8,Z3$(14)1
   : IF Z9=0THEN Z8=0
2960 IF Z9=0THEN GOSUB '217(Z8$,3,S2,-2,2,"ISS 4.0 REF"," ",0)
   : IF Q$<>" "THEN 3120
   : IF Z9=0THEN Z9=1
3000 IF Z8=0THEN DATA LOAD DC #3,STR(Z1$(),1),STR(Z2$(),1),STR(Z3$(),1)
   : IF END THEN 3080
   : Z8=Z8+1
   : GOSUB 3170
   : IF Z8=14THEN Z8=0
   : IF F1$=" "THEN 3000
   : RETURN
3080 F1$=ALL(HEX(00))
   : GOSUB '219(Z8$,3,S2," ",0)
   : RETURN
3120 PRINT AT(1,0);"ERROR IN REFERENCE FILE OPEN = ";Q$
   : GOSUB '254
   : GOTO 2960
3170 F1$,K1$=Z1$(Z8)
   : IF F1$=" "OR F1$="KFAMWORK"THEN RETURN
   : K0$=STR(Z2$(Z8),1,3)
   : F0$=STR(Z2$(Z8),5,3)
   : X=VAL(Z3$(Z8))-1
   : IF X<1THEN 3270
   : CONVERT XTO STR(K1$,6,1),(#)
   : ERRORGOTO 3270
3240 STR(K1$,5,1)="K"
   : RETURN
3270 Q6$="INVALID KEY FILE NUMBER FOR FILE "&F1$
   : GOSUB '92(Q6$)
   : F1$=" "
   : RETURN
3340 GOSUB '92(Q6$)
   : RETURN
3390 DEFFN'92(Q6$)
   : IF S$(1)=" "THEN 3540
   : GOSUB '94
   : SELECT PRINT <S$(1)>
   : IF E=0THEN GOSUB 3490
   : PRINT Q6$
   : SELECT PRINT 005
   : RETURN
3490 PRINT HEX(0C0E);"RESET ACCESS TABLES ERRORS";HEX(0A0A0D);" "
   : E=1
   : RETURN
3540 PRINT AT(1,0);Q6$;TAB(80)
   : GOSUB '254
   : RETURN
3600 DEFFN'94
   : SELECT #4<S$(1)>
3630 $GIO#4(010A02001212400040004000,A$)
   : IF STR(A$,8,1)=HEX(00)THEN RETURN
   : PRINT AT(1,0,S0);"SELECT PRINTER"
   : GOSUB '254
   : GOTO 3630