Listing of file='SORT490A' on disk='vmedia/701-2425A.wvd.zip'
# Sector 154, program filename = 'SORT490A' 0010 REM SORT490A,08/24/77,COPYRIGHT WANG LABS.1976 0050 IF O9$(2)=" "THEN 400 : O9$(2)=" " : LOAD DC T#F(5),"SORT400C"15,100 0400 DIM D$(4)64,J$(1)2,Q$1 0530 IF E<>99THEN 730 : S8=VAL(P6$)*65536+VAL(STR(P6$,2))*256+VAL(STR(P6$,3)) : IF P$=P6$THEN 610 : E=36 : Z=VAL(P$)*65536+VAL(STR(P$,2))*256+VAL(STR(P$,3)) : GOTO 730 0610 LIMITS T#F(4),N$(4),X,Y,H : DATA LOAD DC OPEN T#F(4),N$(4) : DSKIP #F(4),X2-XS : IF V$(F(4)+1)=HEX(06)THEN 690 : DATA SAVE DC $#F(4),END : GOTO 730 0690 GOSUB '218(N$(4),F(4),F$(4),0) : IF Q$=" "THEN 730 : E=35 0730 IF F<>4THEN 870 : IF V0=0THEN 870 : GOSUB '215(F$(2),1) : DATA LOAD BA T#F(2),(V0$,V9$)D$() : J$(1)="Z" : MAT COPY J$()TO D$()<47+2*V0,1> : J$(1)=" " : MAT COPY J$()TO D$()<56+V0,1> : DATA SAVE BA T$#F(2),(V0$,V9$)D$() : GOSUB '215(F$(2),0) 0870 IF E<>99THEN 1030 : IF P8$="T"THEN 920 : GOSUB '93(1) 0920 IF C$="W"THEN 980 : GOSUB '93(3) : GOSUB '93(4) : GOTO 1570 0980 IF O9$(3)=" "THEN 1570 : GOSUB '217(N$(3),F(3),S2,-1,2,P4$,F$(3),0) : IF Q$=" "THEN 1570 : E=35 1030 FOR X=1TO 4 : GOSUB '93(X) : NEXT X : GOTO 1570 1220 DEFFN'93(X) : IF O9$(X)=" "THEN 1270 : GOSUB '219(N$(X),F(X),S2,F$(X),0) : IF Q$=" "THEN 1270 : E=35 1270 O9$(X)=" " : RETURN 1570 PRINT HEX(010A0A) : IF M$=" "THEN 1660 : COM CLEAR M$ : ON S9GOTO 1610,1630 : COM CLEAR S8 : GOTO 1620 1610 COM CLEAR S9 1620 IF E<>99THEN 1690 1630 S9=E : LOAD DC T#F(6),M$ 1660 IF E<>99THEN 1690 : PRINT "RECORD COUNT ";S8 : STOP "END OF SORT " 1690 ON EGOSUB 2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,201 3,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2 028,2029,2030,2031,2032,2033,2034,2035 : ON E-35GOSUB 2036,2037,2038,2039,2040 : STOP "ERROR ENDING " 2001 PRINT "INVALID END OF FILE" : RETURN 2002 PRINT "INVALID FORMAT" : RETURN 2003 PRINT "INPUT FILE OPEN ERROR" : RETURN 2004 PRINT "INVALID RECORDS PER BLOCK" : RETURN 2005 PRINT "INVALID STARTING BLOCK" : RETURN 2006 PRINT "INVALID NUMBER OF BLOCKS" : RETURN 2007 PRINT "STARTING BLOCK TOO HIGH" : RETURN 2008 PRINT "INPUT BLOCKING INVALID" : RETURN 2009 PRINT "DEVICE CONFLICT" : RETURN 2010 PRINT "INVALID DEVICE ADDRESS" : RETURN 2011 PRINT "NO RECORDS TO SORT" : RETURN 2012 PRINT "WRONG INPUT FILE" : RETURN 2013 PRINT "INVALID RECORD FORMAT" : RETURN 2014 PRINT "TOO MANY FIELDS" : RETURN 2015 PRINT "ERROR OPENING WORK FILE" : RETURN 2016 PRINT "WORK FILE TOO SMALL" : RETURN 2017 PRINT "ERROR OPENING OUTPUT FILE" : RETURN 2018 PRINT "SEQUENCE ERROR" : RETURN 2019 PRINT "OUTPUT FILE TOO SMALL" : RETURN 2020 PRINT "DEFERRED MOUNTING INVALID" : RETURN 2021 PRINT "INVALID SORT KEY SPECIFICATIONS" : RETURN 2022 PRINT "RECORD DEFINITION INCONSISTENT" : RETURN 2023 PRINT "INVALID RECORD DEFINITION" : RETURN 2024 PRINT "INVALID RECORD TYPE (F$)" : RETURN 2025 PRINT "BLOCK SIZE TOO SMALL" : RETURN 2026 PRINT "INVALID NUMBER OF KEY FIELDS" : RETURN 2027 PRINT "SORT KEY TOO LONG" : RETURN 2028 PRINT "OPERATOR INTERRUPT" : RETURN 2029 PRINT "NO CPU NUMBER" : RETURN 2030 PRINT "INVALID OUTPUT TYPE" : RETURN 2031 PRINT "INVALID SORT TYPE" : RETURN 2032 PRINT "FULL RECORD SORT NOT POSSIBLE" : RETURN 2033 PRINT "MEMORY SPACE TOO SMALL" : RETURN 2034 PRINT "PROGRAM ERROR" : RETURN 2035 PRINT "ERROR CLOSING FILES" : RETURN 2036 PRINT "RECORD COUNT INPUT =";Z;", OUTPUT =";S8;", ERROR" : RETURN 2037 PRINT "PACKED ARRAY MUST BE BLOCKED" : RETURN 2038 PRINT "PACKED RECORD MUST BE ARRAY" : RETURN 2039 PRINT "INPUT FILE BUSY" : RETURN 2040 PRINT "WORK FILE BUSY" : RETURN 7018 DEFFN'31 : E=28 : GOTO 530