Listing of file='KFAM3703' on disk='vmedia/701-2049C.wvd.zip'
# Sector 567, program filename = 'KFAM3703' 4000 REM KFAM3703,VER.11/16/76 4330 DIM X$64,E0$(4)64,R4$2,R$2,R9$2 4380 LOAD DA T#3,(R6$,R6$)4400,4459 4400 DIM A0$(4)64,I0$(4)64 4460 GOSUB 6850 : PRINT "REORGANIZE -- PART 1" 4530 R$=R3$ : R1=1 : C1=0 : INIT(FF)R4$ : GOSUB '235(1) : IF Q$=" "THEN 4690 : IF Q$="N"THEN 4600 : GOSUB '70("FINDFIRST ERROR") 4600 GOSUB '70("NULL FILE") 4640 GOSUB '237(1) : IF Q$=" "THEN 4690 : IF Q$="E"THEN 5160 : GOSUB '70("FINDNEXT ERROR") 4690 R9$=T4$ : C1=C1+1 : IF R2$<"M"THEN 4820 : ADDC(R9$,R1$) : FOR X=1TO S9 : IF R$>=M3$THEN 6650 : DATA LOAD BA T#1,(R9$,R9$)A0$() : DATA SAVE BA T$#3,(R$,R$)A0$() : NEXT X : GOTO 4640 4820 IF R9$=R4$THEN 4870 : ADDC(R9$,R1$) 4860 DATA LOAD BA T#1,(R9$,R9$)A0$() 4870 IF R2$="A"THEN 4980 : X=M6+(Q-1)*R : Y=M6+(R1-1)*R : MAT COPY A0$()<X,R>TO I0$()<Y,R> : GOTO 5000 4980 X=0 5000 R4$=T4$ : R1=R1+1 : IF R1<=R0THEN 4640 : GOSUB 5070 : GOTO 4640 5070 IF R$>=M3$THEN 6650 5100 DATA SAVE BA T$#3,(R$,R$)I0$() 5120 R1=1 : RETURN 5160 IF R1=1THEN 5190 : GOSUB 5070 5190 GOSUB 6850 : PRINT "REORGANIZE -- PART 2" : IF O6$="C"THEN 5220 : Q3$=U3$ 5220 INIT(00)Q2$,V5$,R$ : V2$,T2$=HEX(0001) : V3$=U4$ : V0$=R0$ : T1=4 : T2=3 : T0=1 : V8=.5 : T8$="X" : INIT(FF)T0$() : INIT(00)STR(T0$(1),1,R5),T7$ : T9$,T2$(1)=T2$ : GOSUB 5410 : T(1)=1 : C2=0 : GOTO 5510 5410 V9$=T9$ : ADDC(V9$,V0$) : DATA SAVE DA T$#T1,(V9$,V9$)T9$,T0$() : RETURN 5470 ADD(V5$,01) : IF V5$<=V8$THEN 5570 : ADDC(Q2$,V6$) 5510 R9$=R3$ : ADDC(R9$,Q2$) : ADDC(R9$,R7$) : DATA LOAD BA T#3,(R9$,R9$)E0$() : V5$=HEX(01) 5570 X=R3+(VAL(V5$)-1)*I : MAT COPY E0$()<X,R5>TO T3$() : T1$=T3$(1) : IF T1$>T7$THEN 5630 : GOSUB '70("SEQUENCE ERROR, HEX KEY =") 5630 T6$,T7$=T1$ : IF T6$=HEX(FF)THEN 6620 : T3$=Q2$ : STR(T3$,3)=V5$ : T4$=T3$ : T3=1 : IF T9$=T2$(1)THEN 5760 : V9$=T2$(1) : GOSUB 545 5760 T=T(T3)+T5 : IF T<193THEN 6090 : INIT(FF)T0$() : STR(T0$(1),1,T4)=T1$ : STR(T0$(1),T4+1,3)=T3$ : ADDC(V2$,01) : IF V2$>V3$THEN 6630 : T9$,T2$(T3),T3$=V2$ : T(T3)=1 : GOSUB 5410 : T3=T3+1 : IF T3>T0THEN 5960 : V9$=T2$(T3) : GOSUB 545 : GOTO 5760 5960 T0=T0+1 : IF T0>8THEN 6640 : INIT(FF)T0$() : INIT(00)STR(T0$(1),1,T5) : STR(T0$(1),T4+1,2)=STR(T2$,1,2) : ADDC(V2$,01) : IF V2$>V3$THEN 6630 : T9$,T2$,T2$(T3)=V2$ : T(T3)=1 : GOTO 5760 6090 T3$(1)=T1$ : STR(T3$(1),T4+1,3)=T3$ : T(T3)=T : MAT COPY T3$()<1,T5>TO T0$()<T,T5> : GOSUB 5410 6220 C2=C2+1 : IF C2<C1THEN 5470 : GOSUB 1015 : V9=0 : T0$(1)=HEX(A0FD) : STR(T0$(1),3)=Q2$ : STR(T0$(1),5)=V5$ : STR(T0$(1),6)=V8$ : STR(T0$(1),7)=V1$ : STR(T0$(1),15)=V6$ : DATA SAVE BA T$#3,(M3$,V9$)T0$() : IF O6$<>"C"THEN 6510 : GOSUB 6850 6360 PRINT "REORGANIZE -- PART 3" : R$=R1$ : V9$,R9$=R3$ : ADDC(V9$,Q2$) : ADDC(V9$,V6$) 6410 DATA LOAD BA T#3,(R9$,R9$)E0$() : DATA SAVE BA T$#1,(R$,R$)E0$() : IF R9$<V9$THEN 6410 : DATA LOAD BA T#3,(M3$,R9$)E0$() : DATA LOAD DC OPEN T#1,N1$ : DSKIP #1,U1-2S : DATA SAVE DC $#1,END : DATA SAVE BA T$#1,(M1$,R9$)E0$() 6510 COM CLEAR N1$ : IF N5$=" "THEN 6610 : IF O5$="X"THEN 6590 : GOSUB 6850 : PRINTUSING 6560,N5$,P5$ 6560 %MOUNT DISK CONTAINING PROGRAM ######## ON DEVICE ######## 6570 PRINT "KEY RETURN(EXEC) TO RESUME" : INPUT T6$ 6590 PRINT HEX(03) : LOAD DC T#5,N5$ 6610 GOSUB '70("END OF PROGRAM") 6620 GOSUB '71("INVALID KEY, HEX VALUE =") 6630 GOSUB '70("OUTPUT KEY FILE SPACE EXCEEDED") 6640 GOSUB '70("8 LEVELS OF INDEX EXCEEDED") 6650 GOSUB '70("OUTPUT USER FILE SPACE EXCEEDED") 6710 DEFFN'70(X$) : GOSUB 6850 : PRINT X$ : STOP 6760 DEFFN'71(X$) : GOSUB 6850 : PRINT X$ : HEXPRINT STR(T1$,1,T4) : PRINT "KEY RETURN(EXEC) TO SKIP RECORD" : INPUT T6$ : GOSUB 6850 : GOTO 6220 6850 PRINT HEX(01) : FOR X=1TO 4 : PRINT TAB(64) : NEXT X : PRINT HEX(01) : RETURN