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