image of READY prompt

Wang2200.org

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

# Sector 580, program filename = 'KFAM3507'
0010 REM  KFAM3507, RELEASE 5-1, (11/07/79) - COPYRIGHT WANG LABS. INC.
0022 SELECT @PART"KFAM"
   : ERRORLOAD T"KFAM230S"10,0BEG 24
0024 %THIS MUST BE LINE 24
0040 COM N1$8,P1$3,N2,N2$8,P2$3,N3$8,P3$3,O3$1,C3,O2,O4,E
   : COM O6$1,N4,N4$8,P4$3,O4$1,C4,N5$8,P5$3,V1$8,H,H1$18,E1,D1,D2
   : COM M6,M1$2,F1,F2,F3,M3$2,F4,O5$1,B0$2,F3$2,F4$2,O7$1,O8$1
   : COM B,B0,B3,B5,B7$1,B1$2,B2$1,B3$2,B6$2,C9,C$40,N,I,V5,E1$2
0130 GOTO 4000
0205 COM T0$16,V7$16,V8,T8,V3$2,V2$2,Q3$2,Q2$2,V8$1,V6$1,V$1
   : COM V7$(1)8,V0$(1)21,T5$(1)58
   : COM Q2,Q3,Q$1,T6$1,T0,T2$2,T8$1,T$(3)48,T3$3,T7$30,V,T2
   : COM V7,Q,V1,V4$4,S2,V6,T1,V0$2,T$8,T2$(8)2,T9,T1$30,T9$2
   : COM V0,T6,T4$3,T0$(4)60,T4,T3,T5,V9$2,T
4000 DIM Z$8,Z1$8,Y$1,X1$2,X$64,D$(4)64
   : H=@V
   : H1$=HEX(5001A002A002A0025004A001A002A002A001)
   : N1$,P1$,P2$,N3$,P3$,O6$,O7$,O8$,P4$,N4$,N5$,P5$,P$,P9$=" "
   : N2,N4=1
   : D1=3
   : D2=4
   : O3$,O4$="C"
   : C3,C4,O2,O4=0
   : M6=3
4830 IF S2<1THEN 4850
   : IF S2<=16THEN 4910
4850 GOSUB 7540
   : PRINT "INVALID STATION NUMBER"
   : GOTO 8030
4910 GOSUB 7540
   : PRINT "REORGANIZE -- SET UP   ( STATION ";S2;")"
   : GOSUB '102(N1$)
   : LIMITS T#1,N1$,A,C1,E1,R
   : IF R=2THEN 4990
   : GOSUB '99(N1$,P1$)
4990 B1$=BIN(A,2)
   : F1,F3=C1+1-A
   : M1$=BIN(C1-1,2)
   : GOSUB '103(N1$,N2)
   : N2$=Z$
   : LIMITS T#2,N2$,A,C,X,R
   : IF R<>2THEN GOSUB '99(N2$,P2$)
   : F2=C+1-A
   : IF O6$="B"THEN 6230
   : IF P3$<>P1$THEN 5240
   : IF N3$<>N1$THEN 5240
   : GOSUB '101("INPUT AND OUTPUT USER FILE MAY NOT BE THE SAME FILE")
5240 IF O6$<>"C"THEN GOSUB '102(N3$)
   : LIMITS T#3,N3$,X,X,X,R
   : IF R=2THEN 5510
   : IF ABS(R)=1THEN 5330
   : IF O3$="N"THEN 5350
   : IF O3$="C"THEN 5350
5330 GOSUB '99(N3$,P3$)
5350 GOSUB '40(3)
   : F3=C3
   : IF F3=0THEN F3=F1
   : IF F3<10THEN F3=10
   : IF F3<=ATHEN 5480
   : GOSUB 7540
   : PRINTUSING 5450,N3$,P3$
5450 %INSUFFICIENT SPACE FOR FILE ######## ON DEVICE ########
5460 GOTO 8030
5480 A=F3
   : GOTO 5600
5510 A=0
   : IF O3$="Y"THEN 5600
   : IF O3$="C"THEN 5600
   : GOSUB 7540
   : PRINTUSING 5570,N3$,P3$
5570 %FILE ######## ALREADY CATALOGUED ON DEVICE ########
5580 GOTO 8030
5600 GOSUB '217(N3$,3,S2,A,4,P9$,P3$,0)
   : IF Q$=" "THEN 5660
   : IF Q$="P"THEN 5640
   : GOSUB '101("OUTPUT FILE NOT AVAILABLE")
5640 GOSUB '101("INVALID PASSWORD, OUTPUT")
5660 O4=1
   : LIMITS T#3,N3$,A,C,X
   : B6$,B3$=BIN(A,2)
   : F3=C+1-A
   : M3$=BIN(C-1,2)
   : IF N4$<>" "THEN 5870
   : Z$=N3$
   : IF O6$="C"THEN Z$=N1$
   : GOSUB '103(Z$,N4)
   : N4$=Z$
5870 LIMITS T#4,N4$,X,C,A,R
   : IF R=2THEN 6140
   : IF ABS(R)=1THEN 5930
   : IF O4$="N"THEN 5950
   : IF O4$="C"THEN 5950
5930 GOSUB '99(N4$,P4$)
5950 IF R=0THEN GOSUB '40(4)
   : ELSE A=C-X+1
   : F4=C4
   : IF C4>0THEN 6030
   : IF O6$="C"THEN F4=F2
   : ELSE F4=INT((F3/F1)*(F2-5))+5
6030 IF F4<=ATHEN 6072
   : GOSUB 7540
   : PRINTUSING 5450,N4$,P4$
   : GOTO 8030
6072 IF R=0THEN 6090
   : DATA SAVE DC OPEN T$#4,(N4$)N4$
   : F4=A
   : GOTO 6100
6090 DATA SAVE DC OPEN T$#4,(F4)N4$
6100 DSKIP #4,F4-2S
   : DATA SAVE DC $#4,END
   : GOTO 6210
6140 IF O4$="Y"THEN 6210
   : IF O4$="C"THEN 6210
   : GOSUB 7540
   : PRINTUSING 5570,N4$,P4$
   : GOTO 8030
6210 LIMITS T#4,N4$,A,C,X
6230 F4=C+1-A
   : B0$=BIN(A,2)
   : F4$=BIN(F4-3,2)
   : O5$=" "
   : IF N5$=" "THEN 6350
   : LIMITS T#5,N5$,X,X,X,R
   : IF R<>1THEN 6350
   : O5$="X"
6350 GOSUB '230(1,2,1,N2,N1$,4,P$,P2$,P1$)
   : IF Q$=" "THEN 6410
   : IF Q$="P"THEN 6390
   : GOSUB '101("INPUT FILE NOT AVAILABLE")
6390 GOSUB '101("INVALID PASSWORD, INPUT")
6410 O2=2
   : $UNPACK(F=H1$)T$(2)TO T0,T2$,Q2$,V2$,T8,V6$,V3$,Q3$,V8$
   : V1$=STR(T$(2),18)
   : B2$=V1$
   : B=VAL(STR(V1$,2))
   : B7$=STR(V1$,3)
   : B3=VAL(STR(V1$,4))+1
   : B5=VAL(STR(V1$,5))
   : B0=VAL(V8$)
   : C9=VAL(V6$)
   : Y=C9*(INT((F3-2)/C9)-1)
   : F3$=BIN(Y,2)
   : IF O6$<>"B"THEN 6520
   : IF E1-2<=0THEN 6587
   : Y=C9*(INT((E1-2)/C9)-1)
   : E1$=BIN(Y,2)
6520 IF B2$="A"THEN 6620
   : IF B2$="B"THEN M6=1
   : I=B
6580 IF O6$<>"B"THEN LOAD T"KFAM3607"
6582 D1=1
   : D2=2
   : N4$=N2$
   : LOAD T"KFAM3807"
6587 Q$="N"
   : GOTO 6582
6620 X1$=B1$
   : IF O6$="B"THEN 6660
   : GOSUB '235(1,0)
   : IF Q$="N"THEN 6580
   : X1$=T4$ADDCB1$
6660 DATA LOAD BA T#1,(X1$)D$()
   : IF STR(D$(1),1,2)=HEX(8101)THEN 6690
6680 GOSUB '101("INVALID RECORD FORMAT")
6690 N=0
   : P=3
   : C=0
6730 Y$=STR(D$(),P)
   : IF Y$=HEX(FD)THEN 6940
   : IF Y$=HEX(08)THEN 6810
   : IF Y$<HEX(81)THEN 6680
   : IF Y$>HEX(FC)THEN 6680
6810 IF C=0THEN 6840
   : IF Y$=STR(C$,N,1)THEN 6870
6830 GOSUB '101("NOT BLOCKED AS SPECIFIED")
6840 N=N+1
   : IF N>38THEN 6680
   : STR(C$,N,1)=Y$
6870 C=C+1
   : AND (Y$,7F)
   : P=P+1+VAL(Y$)
   : IF C<B0THEN 6730
   : C=0
   : GOTO 6730
6940 IF C>0THEN 6830
   : X=(P-3)/B0
   : IF X=BTHEN 6990
   : GOSUB '101("RECORD LENGTH NOT SPECIFIED CORRECTLY")
6990 IF N=0THEN 6680
   : P=3
   : N1=0
7050 N1=N1+1
   : IF N1>NTHEN 7160
   : Y$=STR(C$,N1,1)
   : AND (Y$,7F)
   : Y=VAL(Y$)+1
   : IF P+Y>=B3THEN 7150
   : P=P+Y
   : GOTO 7050
7150 IF B3+B5<=P+YTHEN 7170
7160 GOSUB '101("KEY FIELD OUT OF BOUNDS")
7170 IF STR(C$,N1,1)>HEX(80)THEN 7200
   : GOSUB '101("NUMERIC KEY INVALID")
7200 I=Y
   : B3=(P-3)*B0+3+B3-P
   : GOTO 6580
7260 DEFFN'40(Z)
   : DATA LOAD BA T#Z,(0,X)D$()
   : $GIO#Z,(70A04000870B,X$)
   : X1$=STR(D$(1),3,2)
   : GOSUB '41
   : Y=X
   : X1$=STR(D$(1),5,2)
   : GOSUB '41
   : A=X-Y
   : RETURN
7380 DEFFN'41
   : IF STR(X$,11,1)<>HEX(D0)THEN AND (STR(X1$,1,1),7F)
   : X=VAL(X1$,2)
   : RETURN
7540 PRINT AT(0,0,320);
   : RETURN
7620 DEFFN'99(Z$,Z1$)
   : RETURN CLEAR
7640 GOSUB 7540
   : PRINTUSING 7660,Z$,Z1$
7660 %FILE ######## NOT FOUND ON DEVICE ########
7670 GOTO 8030
7700 DEFFN'101(X$)
   : GOSUB 7540
   : PRINT X$
   : RETURN CLEAR
7740 GOTO 8030
7770 DEFFN'102(Z$)
   : IF STR(Z$,5,1)<>"F"THEN 7820
   : IF STR(Z$,6,1)<"0"THEN 7820
   : IF STR(Z$,6,1)>"9"THEN 7820
   : RETURN
7820 GOSUB 7540
   : PRINT Z$;" NOT KFAM FILE NAME"
   : RETURN CLEAR
7850 GOTO 8030
7900 DEFFN'103(Z$,Z)
   : IF Z<1THEN 7970
   : IF Z>9THEN 7970
   : IF Z<>INT(Z)THEN 7970
   : STR(Z$,5,1)="K"
   : CONVERT ZTO STR(Z$,6,1),(#)
   : RETURN
7970 GOSUB 7540
   : PRINT "INVALID KEY FILE NUMBER ";Z
   : RETURN CLEAR
8000 GOTO 8030
8030 E=1
8050 DEFFN'31
   : LOAD DC T"KFAM3907"