Listing of file='SORT425A' on disk='vmedia/701-2425A.wvd.zip'
# Sector 199, program filename = 'SORT425A' 0010 REM SORT425A,08/09/77,COPYRIGHT WANG LABS.1976 0400 DIM P7$(36)2,P8$(36)3,P5$(36)2,P6$(36)3 : DIM O7$2,O6$2,P2$(255)2 : DIM P0$2,P3$3,O9$3 0500 IF D$<>"D"THEN 550 : PRINT HEX(01) : X1$=" " : PRINT "REMOVE INPUT VOLUME AND MOUNT OUTPUT VOLUME" : PRINT "ENTER 'GO' TO RESUME" : INPUT X1$ : PRINT HEX(01) : FOR X=1TO 4 : PRINT TAB(252) : NEXT X : IF X1$<>"GO"THEN 500 : IF C$="Y"THEN 534 : DATA SAVE DC OPEN T$#F(4),P7,N$(4) : DATA SAVE DC CLOSE#F(4) 0534 LIMITS T#F(4),N$(4),X2,X,Z : X3=X3+X 0550 PRINT HEX(010A0A0A0A) : PRINT "PASS 2 -- MERGE";TAB(252) : LOAD DA T#F(3),(N7$,N7$)500,599 0570 DIM P4$(02)2,P3$(03)1,O$(008)62 : DIM M1$(02,005)20,O1$(005)20 : DIM P0$(02)2,P1$(02)3,P9$(05)2 0600 GOTO 4900 0610 K$=O1$(O) : IF K$<L$THEN 2680 : L$=K$ 0760 ADDC(O9$,01) : IF O9$>=P6$THEN 2700 : O=O+1 : IF O<=ZTHEN 610 : GOTO 1180 0900 Q=Q+I : IF Q>BTHEN 920 : RETURN 0920 IF X2>X3THEN 2640 1000 MAT MERGEM1$()TO P3$(),P4$(),P2$() : IF P2$(1)=HEX(0000)THEN 5400 : G=1 1068 Z=P2 1100 IF L=1THEN 610 : O=O+Z : IF O<=P2THEN 1200 : X2$=P9$(1) : P0$=P9$(2) : MAT COPY P9$()<3,2*P6+4>TO P9$() : H=H-1 1175 DATA SAVE DA T#F(3),(X2$,X1$)O$() 1180 O=1 1200 G=G+Z : IF G>255THEN 1250 : IF P2$(G)>HEX(0000)THEN 1068 1250 IF P3$(P6+1)=HEX(00)THEN 1000 : GOSUB '40(VAL(P3$(P6+1))) : GOTO 1000 2000 DEFFN'40(X) : P3$=P1$(X) : P0$=P0$(X) : IF P3$=HEX(000000)THEN 2140 : IF L=1THEN 2052 : P9$(H)=P0$ : IF H>P6+2THEN 2052 : H=H+1 2052 DATA LOAD DA T#F(3),(P0$,X1$)O$() : P0$(X)=O$(1) 2090 P3$(X)=HEX(01) : ADDC(P3$,P1$) : IF P3$<P1$(X)THEN 2130 : INIT(00)P3$ 2130 P1$(X)=P3$ 2140 RETURN 2640 E=19 : GOTO 7020 2680 E=18 : GOTO 7020 2700 X=0 2770 E=99 : GOTO 7020 4900 L=0 : N=9E9 : INIT(00)L$ : P9$(1)=M2$ : H=2 4980 IF N9>P6THEN 5020 : GOSUB 6400 : C=N9 : GOTO 5080 5020 C=P6 : X=INT((N9-1)/(P6-1)) : X=N9-1-(P6-1)*X : IF X=0THEN 5080 : C=X+1 5080 INIT(FF)P3$() : INIT(00)O9$ : FOR Y=1TO C 5130 N=N+1 : IF N>N9THEN 6000 5150 M5=M5+1 : IF M5>ATHEN 5700 : P0$(Y)=P5$(M5) : P1$(Y)=P6$(M5) : ADDC(O9$,P6$(M5)) : IF P6$(M5)=HEX(000000)THEN 5230 : GOSUB '40(Y) 5230 NEXT Y : P6$=O9$ : P5$=P9$(1) : O=1 : INIT(00)O9$ : GOTO 1000 5400 M6=M6+1 : P0=P0+1 : IF P0<=36THEN 5460 : GOSUB 5900 : P0=1 5460 IF L=1THEN 2700 : IF N9+M6-N>P6THEN 5470 : GOSUB 6400 5470 P8$(P0)=P6$ : P7$(P0)=P5$ : C=P6 : GOTO 5080 5700 GOSUB 5800 : P5=P5-36 : A=36 : IF P5>=0THEN 5150 : A=P5+36 : GOTO 5150 5800 DATA LOAD DA T#F(3),(O6$,O6$)P5$(),P6$() : M5=0 : RETURN 5900 DATA SAVE DA T#F(3),(O7$,O7$)P7$(),P8$() : P0=0 : RETURN 6000 IF N>9E9THEN 6300 : IF M6>36THEN 6070 : MAT COPY P7$()TO P5$() : MAT COPY P8$()TO P6$() : GOTO 6110 6070 GOSUB 5900 : O6$,O7$=M1$ : GOSUB 5800 6110 N9=M6 6120 M6=0 : P5=N9-36 : P0=0 : M5=0 : N=0 : A=36 : IF P5>=0THEN 5130 : A=P5+36 : GOTO 5130 6300 O6$,O7$=M1$ : GOSUB 5800 : P6$(1)=P6$ : P5$(1)=P5$ : GOTO 6120 6400 Q=1 6410 L=1 : RETURN 7018 DEFFN'31 : E=28 7020 LOAD DC T#F(5),"SORT490A"