Listing of file='SORT400B' on disk='vmedia/701-2425A.wvd.zip'
# Sector 277, program filename = 'SORT400B' 0200 REM SORT400B,08/09/77,COPYRIGHT WANG LABS.1976 0240 DIM V9$2,T9$2,T0$(4)60,T1$30,T7$30,T4$3,Q2$2,Q3$2,V5$(4)1,V8$1,V1$8,V2$2, V3$2,V6$1,T2$2,T8$(4)1,Q0$4,V4$(4)2,V2$(4)2,T$(3)48 0545 ADDC(V9$,V0$) : DATA LOAD DA T#F(2),(V9$,V9$)T9$,T0$() : RETURN 0655 V9$=T2$ : FOR T3=T0TO 1STEP -1 : GOSUB 545 : T2$(T3)=T9$ : MAT SEARCHT0$()<1,V7>,>STR(T1$,1,T4)TO J$()STEP T5 : T=VAL(STR(J$(1),2))-T5 : IF T>0THEN 720 : T=V1 0720 $UNPACK(F=V4$)T0$()<T>TO T7$,T4$ : V9$=T4$ : BIN(STR(T$,T3))=T : NEXT T3 : RETURN 0830 T4=VAL(STR(V1$,5)) : T5=T4+3 : V6=VAL(STR(V1$,6)) : V7=T5*V6 : V1=V7-T5+1 : V4$=HEX(A000A003) : BIN(STR(V4$,2))=T4 : RETURN 1275 T=T+T5 : IF T>V1THEN 1365 : $UNPACK(F=V4$)T0$()<T>TO T7$,T4$ : IF T7$>HEX(FF)THEN 1365 : BIN(T$)=T 1295 GOSUB 2540 : GOTO 4285 1365 T3=1 1370 T3=T3+1 : IF T3>T0THEN 2480 : V9$=T2$(T3) : GOSUB 545 : T=VAL(STR(T$,T3)) : T=T+T5 : IF T>V1THEN 1370 : $UNPACK(F=V4$)T0$()<T>TO T7$,T4$ : IF T7$>HEX(FF)THEN 1370 1420 BIN(STR(T$,T3))=T : IF T3=1THEN 1295 : V9$=T4$ : GOSUB 545 : $UNPACK(F=V4$)T0$()TO T7$,T4$ : T3=T3-1 : T=1 : T2$(T3)=T9$ : GOTO 1420 2020 STR(Z$,5,1)="K" : CONVERT JTO STR(Z$,6,1),(#) : N$(2)=Z$ : IF O9$(2)=" "THEN 2060 : GOSUB '229(F(2),Z$) : E=3 : IF R<>2THEN 7020 2060 LIMITS T#F(2),Z$,T,V,T3 : GOSUB '43(T) : V0$=X1$ : ON F-2GOTO 2230,2160 : DATA LOAD DA T#F(2),(V0$,V9$)T,T$() : T1$=HEX(5001A002A002A0020004A001A002A002A001) : $UNPACK(F=T1$)T$(2)TO T0,T2$,Q2$,V2$,V6$,V3$,Q3$,V8$ : V1$=STR(T$(2),18) : GOTO 2340 2160 GOSUB '215(F$(2),1) : DATA LOAD DA T#F(2),(V0$,V9$)Q2$,Q3$,V5$(),V8$,V1$,V2$,V3$,V6$,T2$,T0,T8$ (),Q0$,V4$(),V2$() : IF POS(Q0$=41)+POS(Q0$=58)>0THEN 2500 : V0=POS(Q0$=20) : IF V0=0THEN 2500 : STR(Q0$,V0,1)="R" : INIT(FF)V4$(V0) : GOTO 2340 2230 DATA LOAD DA T#F(2),(V0$,V9$)Q2$,Q3$,V5$(1),V8$,X1$,V1$,V2$,V3$,V6$,T2$,T 0 : V0=1 2340 GOSUB 830 : T1$=A$ : GOSUB 655 : IF T1$<>T7$THEN 1275 : IF T4$<HEX(FF)THEN 1295 : GOTO 1275 2480 GOSUB 2540 : E=11 : GOTO 7020 2500 GOSUB 2540 : E=39 : GOTO 7020 2540 IF F<>4THEN 2570 : DATA SAVE DA T$#F(2),(V0$,V9$)Q2$,Q3$,V5$(),V8$,V1$,V2$,V3$,V6$,T2$,T0,T8 $(),Q0$,V4$(),V2$() : GOSUB '215(F$(2),0) 2570 RETURN 4285 PRINT "STARTING KEY TO BE SORTED "; : GOSUB '36(A$) : PRINT "ENDING KEY (NOT SORTED) "; : GOSUB '36(E$) : X=VAL(T4$)*256+VAL(STR(T4$,2)) : I(4)=I(1)+X : I(3)=VAL(Q2$)*256+VAL(STR(Q2$,2))+VAL(V6$) : E=4 : IF B<>VAL(V8$)THEN 7020 : GOTO 5710 4510 DEFFN'36(T1$) : IF POS(T1$<20)+POS(T1$>7A)>0THEN 4530 : PRINT T1$ : RETURN 4530 PRINT "HEX "; : X=T4 : IF T4<13THEN 4550 : X=12 4550 HEXPRINT STR(T1$,1,X) : RETURN