Listing of file='PKREGEN' on disk='vmedia/701-2720C.wvd.zip'
# Sector 343, program filename = 'PKREGEN' 0010 REM % C O M M O N V A R I A B L E S 0020 COM G3$(G3)G6,L3$(L3)L6,L3,L5,L6,G3,G5,G6,H7$7,G4$(G3)5,L3$(L3)L6,F7,F1$( F7)2 : COM M3 : GOTO 3001 0050 DEFFNS(Q)=VAL(STR(F1$(Q),1,1)) 0060 DEFFNL(Q)=VAL(STR(F1$(Q),2,1)) 3000 REM % P K R E G E N - M A I N P R O C E D U R E 3001 DIM F0$G6,F1$5,S$40,S4$3,S9$1 : X=X : IF G5=0THEN 7010 : FOR I=1TO G5 : IF STR(G3$(I),FNS(8),FNL(8))="NO"THEN 3110 : STR(G3$(I),FNS(6),FNL(6))=BIN(255) 3110 NEXT I : IF G5<=1THEN 3172 : FOR I=1TO G5 : FOR J=1TO G5-1 : IF STR(G3$(J),FNS(6),FNL(6)+FNL(7))<STR(G3$(J+1),FNS(6),FNL(6)+FNL(7))THE N 3170 : F0$=G3$(J) : F1$=G4$(J) : G3$(J)=G3$(J+1) : G4$(J)=G4$(J+1) : G3$(J+1)=F0$ : G4$(J+1)=F1$ 3170 NEXT J : NEXT I 3172 O=99 : M3=0 : FOR I=1TO G5 : IF VAL(STR(G3$(I),FNS(6),FNL(6)))=255THEN 3350 : IF VAL(STR(G3$(I),FNS(6),FNL(6)))=OTHEN 3290 : M3=M3+1 : O=VAL(STR(G3$(I),FNS(6),FNL(6))) : P=0 3290 STR(G3$(I),FNS(6),FNL(6))=BIN(M3) : P=P+1 : STR(G3$(I),FNS(7),FNL(7))=BIN(P) : NEXT I : GOTO 7010 3350 P=129 3351 R1=0 : FOR J=ITO G5 : IF STR(G3$(J),FNS(1),FNL(1))=" "THEN 3600 : A$=STR(G3$(J),FNS(8),FNL(8)) : IF A$="Tot"OR A$="Max"OR A$="Min"OR A$="Avg"OR A$="Cnt"OR A$="???"OR A$=" Ent"OR A$="Glo"THEN 3500 : L1=0 : X1=0 : FOR K=1TO G5 3359 IF STR(G3$(J),FNS(10),FNL(10))<>STR(G3$(K),FNS(1),FNL(1))AND STR(G3$(J),F NS(12),FNL(12))<>STR(G3$(K),FNS(1),FNL(1))THEN 3440 : IF STR(G3$(J),FNS(10),FNL(10))=STR(G3$(K),FNS(1),FNL(1))AND STR(G3$(J),FN S(12),FNL(12))=STR(G3$(K),FNS(1),FNL(1))THEN X1=X1+1 3412 IF STR(G3$(J),FNS(9),FNL(9))="C"OR STR(G3$(J),FNS(11),FNL(11))="C"THEN X1 =X1+1 : X1=X1+1 : L2=VAL(STR(G3$(K),FNS(6),FNL(6))) : IF L2<255THEN 3420 : R1=1 : GOTO 3600 3420 IF L1>=L2THEN 3440 : L1=L2 3440 NEXT K : IF X1=2THEN 3450 : G3$(J)=ALL(" ") : STR(G3$(J),FNS(6),FNL(6))=BIN(255) : GOTO 3600 3450 STR(G3$(J),FNS(6),FNL(6))=BIN(L1) : P=P+1 : STR(G3$(J),FNS(7),FNL(7))=BIN(P) : GOTO 3600 3500 IF STR(G3$(J),FNS(8),FNL(8))="???"THEN 3595 : IF STR(G3$(J),FNS(8),FNL(8))<>"Ent"AND STR(G3$(J),FNS(8),FNL(8))<>"Glo"TH EN 3504 : STR(G3$(J),FNS(6),FNL(6))=BIN(M3) : STR(G3$(J),FNS(7),FNL(7))=BIN(P) : P=P+1 : GOTO 3600 3504 FOR K=1TO G5 : IF STR(G3$(J),FNS(10),FNL(10))=STR(G3$(K),FNS(1),FNL(1))THEN 3540 : NEXT K : GOTO 3590 3540 L2=VAL(STR(G3$(K),FNS(6),FNL(6))) : IF L2<255THEN 3550 : R1=1 : GOTO 3600 3550 IF L2<=0THEN 3590 : L2=L2-1 : STR(G3$(J),FNS(6),FNL(6))=BIN(L2) : P=P+1 : STR(G3$(J),FNS(7),FNL(7))=BIN(P) : GOTO 3600 3590 IF STR(G3$(J),FNS(8),FNL(8))="???"THEN 3595 : STR(G3$(J),FNS(1),FNL(1))=ALL(" ") : STR(G3$(J),FNS(6),FNL(6))=BIN(255) : GOTO 3600 3595 STR(G3$(J),FNS(6),FNL(6))=BIN(0) : STR(G3$(J),FNS(2),FNL(2))="S" : STR(G3$(J),FNS(3),FNL(3))=BIN(1,2) : STR(G3$(J),FNS(4),FNL(4))=BIN(12,2) 3600 NEXT J : IF R1=1THEN 3351 : IF G5<=1THEN 3682 : FOR I=1TO G5 : FOR J=1TO G5-1 : IF STR(G3$(J),FNS(6),FNL(6)+FNL(7))<STR(G3$(J+1),FNS(6),FNL(6)+FNL(7))THE N 3680 : F0$=G3$(J) : F1$=G4$(J) : G3$(J)=G3$(J+1) : G4$(J)=G4$(J+1) : G3$(J+1)=F0$ : G4$(J+1)=F1$ 3680 NEXT J : NEXT I 3682 O=99 : P=0 : FOR I=1TO G5 : IF VAL(STR(G3$(I),FNS(6),FNL(6)))=255THEN 3850 : IF VAL(STR(G3$(I),FNS(6),FNL(6)))=OTHEN 3800 : O=VAL(STR(G3$(I),FNS(6),FNL(6))) : P=0 3800 P=P+1 : STR(G3$(I),FNS(7),FNL(7))=BIN(P) : NEXT I : GOTO 7010 3850 FOR I=G5TO 1STEP -1 : IF VAL(STR(G3$(I),FNS(6),FNL(6)))<255THEN 7010 : G5=I-1 : NEXT I 7010 LOAD T"PKGENSCR"3000,9999 9701 DEFFNS(Q)=VAL(STR(F1$(Q),1,1)) 9702 DEFFNL(Q)=VAL(STR(F1$(Q),2,1)) 9900 DEFFN'0"PRINT HEX(03);:LISTSD 3172 ,9699";HEX(0D) 9999 % SCRATCH T "PKREGEN":SAVE T ()"PKREGEN"