Google
 

Trailing-Edge - PDP-10 Archives - BB-4160E-BM - sort-doc/srt4a.rnd
There are no other files named srt4a.rnd in the archive.
.VARIABLE TWENTY 2 1
\\
.LM0;.RM70;.F;.J;.FLAG CAP;.SP1;.TS5
<SRT4A.DOC -- ^CHANGES FROM <SORT <V4(302) TO <V4A(334).
.BR
^NOVEMBER 1978
.FG30
^^COPYRIGHT (C) 1978 BY
.BR
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
.B2
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
.B1
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
.B1
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL\\.
.AUTOPARAGRAPH			!PARAGRAPHS START WITH A LEADING SPACE
.T <SRT4A.DOC
.PARAGRAPH 0, 1, 1		!SET NORMAL PARAGRAPHING
.AUTOPARAGRAPH			!PARAGRAPHS START WITH A SPACE
.TAB STOPS 9, 17, 25, 33, 41, 49, 57, 63, 69  !USUAL TTY TABBING
.PG.LM0.RM70.SP1.F.J
<SRT4A.DOC -- ^CHANGES FROM <SORT <V4(302) TO <V4A(334).
.B3.LM0.RM70
1.0##<SUMMARY
.BLANK
1.1##^FUNCTIONS
 <SORT IS THE HIGH PERFORMANCE SORT/MERGE PACKAGE FOR THE
<DEC
.NOSPACE
.IF TWENTY
<SYSTEM-20
.ELSE TWENTY
SYSTEM-10
.ENDIF TWENTY
.NOSPACE
\. <SORT MAY BE RUN AS A STAND-ALONE
SORT/MERGE, OR EMBEDDED IN A <COBOL OR <FORTRAN PROGRAM.
 ^THIS RELEASE, <SORT V4^A(334), CONTAINS ALL PUBLISHED EDITS UP TO AND INCLUDING EDIT 334.
.B2
1.2##^MONITOR
 <SORT RUNS UNDER ALL SUPPORTED MONITORS, AND HAS BEEN TESTED UNDER
.IF TWENTY
RELEASE 3^A
.ELSE TWENTY
6.03^A AND THE 7.01 PROTOTYPE. ^IT HAS NOT BEEN TESTED ON A <KA-10 CPU
.ENDIF TWENTY
.NOSPACE
\.
 ^SEE SECTION 4 FOR DETAILS OF HOW TO REBUILD <SORT.
.B2
1.3##^SOFTWARE ^DEPENDENCIES
 ^THE STAND-ALONE SORT, <SORT.EXE,
REQUIRES THAT THE <FORTRAN
OBJECT TIME SYSTEM, <FOROTS.EXE, BE ON <SYS:, IF
FLOATING POINT <ASCII KEYS ARE TO BE USED.
 ^THE INTERNAL <COBOL-68 <SORT REQUIRES VERSION 12 OF THE <COBOL-68
OBJECT TIME SYSTEM, <LIBOL.REL
.IF TWENTY
AND <LIBO12.EXE
.ENDIF TWENTY
, TO RESIDE ON <SYS:.
 ^THE INTERNAL <COBOL-74 <SORT REQUIRES VERSION 12 OF THE <COBOL-74
OBJECT TIME SYSTEM, <C74LIB.REL
.IF TWENTY
AND <C74O12.EXE
.ENDIF TWENTY
, TO RESIDE ON <SYS:.
 ^THE INTERNAL <FORTRAN <SORT REQUIRES THE <FORTRAN
LIBRARY, <FORLIB.REL, AND THE OBJECT TIME SYSTEM, <FOROTS.EXE,
TO RESIDE ON <SYS:.
.B2
1.4##^RELEVANT ^DOCUMENTATION
 <SORT IS DOCUMENTED IN THE FOLLOWING MANUALS:
.IF TWENTY
.B;<DECSYSTEM-20 ^USER'S ^GUIDE, <AA-4179B-TM
.BR;<DECSYSTEM-20 <SORT/MERGE ^USER'S ^GUIDE, <AA-4186C-TM
.BR;<COBOL-68 ^LANGUAGE ^REFERENCE ^MANUAL, <AA-5057A-TK
.BR;<COBOL-74 ^LANGUAGE ^MANUAL, <AA-5059A-TK
.BR;<FORTRAN ^REFERENCE ^MANUAL, <AA-4158B-TM
.ELSE TWENTY
.B;<DEC<SYSTEM-10 <SORT/MERGE ^USER'S ^GUIDE, <AA-0997D-TB
.BR;<COBOL-68 ^LANGUAGE ^REFERENCE ^MANUAL, <AA-5057A-TK
.BR;<COBOL-74 ^LANGUAGE ^MANUAL, <AA-5059A-TK
.BR;<DEC<SYSTEM-10 <FORTRAN ^PROGRAMMER'S ^REFERENCE ^MANUAL, <AA-0944E-TB
 ^THESE MAY BE FOUND IN ^SOFTWARE ^NOTEBOOKS 7, 8, AND 9.
.ENDIF TWENTY
.PG.B3
2.0##<EXTERNAL <CHANGES
.B2
^NONE.
.B 3
3.0##<KNOWN <BUGS <AND <DEFICIENCIES
 ^AS OF 29-^SEP-78, THE FOLLOWING DEFICIENCIES ARE KNOWN:
.LM+9.P-4,1
 1.##^STAND-ALONE <SORT MAY NOT REINITIALIZE ITSELF AFTER
A SORT, SO THAT RESTARTING IT BY _^^C, AND RUNNING IT AGAIN MAY
BE NECESSARY.
 2.##^IF MORE THAN 262,143 (2**18-1) RECORDS IN THE INPUT FILE ALL HAVE IDENTICAL
KEYS (WHICH IS UNLIKELY), ^^SORT\\'S INTERNAL SEQUENCE NUMBER OVERFLOWS.
^THIS CAUSES THE SORT TO BECOME UNSTABLE; I.E., THE OUTPUT DATA IS
SORTED CORRECTLY BUT THE RECORDS WITH IDENTICAL KEYS WILL NOT BE IN THE SAME
ORDER AS THEY WERE IN THE INPUT FILE.  ^IN PREVIOUS VERSIONS OF <SORT
THIS SIMPLY HAPPENED WITHOUT ANY WARNING.  ^VERSION 4 NOW PRINTS A
WARNING MESSAGE IF THIS OCCURS AND CONTINUES SORTING.
.IFN TWENTY
 3.##<SORT MAY GIVE THE MESSAGE:
.LM+5.B;<%SRTNCS ^NOT ENOUGH CORE SPECIFIED
.B.LM-5;WHEN NO </CORE SWITCH OR <MEMORY <SIZE CLAUSE
WAS GIVEN. ^THE SORT SHOULD PROCEED NORMALLY, HOWEVER.
 4.##^THOUGH <FORTRAN <SORT'<S CALLING SEQUENCE IS SIMILAR TO
STAND-ALONE <SORT'<S, THE FOLLOWING DIFFERENCES ARE KNOWN:
.LM+9
 1.##^CONTINUATION LINES (IN INDIRECT FILES) ARE NOT ALLOWED.
 2.##^INDIRECT FILES MUST BE ON <DSK_:
IN THE USER'S DEFAULT PATH.
 3.##^FILE EXTENSIONS MUST BE TYPED EXPLICITLY.
 4.##^SWITCHES MUST ALWAYS FOLLOW FILE SPECIFICATIONS TO WHICH THEY
APPLY.
.LM-9
 5.##^ON ^V^M SYSTEMS, <COBOL <SORT DESTROYS PAGES LEFT
AROUND BY <MCS, <VMDDT, AND THE PAGE FAULT HANDLER WHEN IT
REDUCES CORE AFTER A SORT. ^THE PAGE FAULT HANDLER IS NOT
AFFECTED TOO MUCH, HOWEVER, SINCE IT WILL BE BROUGHT IN AGAIN IF
TOTALLY WIPED OUT.
 6.##<SORT AND <COBOL OVERLAYS DO NOT ALWAYS WORK TOGETHER CORRECTLY.
.ENDIF TWENTY
.LM-9
.PG
4.0##<INSTALLATION <INSTRUCTIONS
.B2
4.1##^INSTRUCTIONS FOR ^LOADING AND ^INSTALLING <SORT
.P
.IF TWENTY
^MOUNT THE <COBOL-74 TAPE ON LOGICAL <MTA0_: AND TYPE THE FOLLOWING COMMANDS:
.B;^^DUMPER
.BR;TAPE MTA0:
.BR;REWIND
.BR;DENSITY 1600-BPI
.BR;SKIP 1
.BR;RESTORE _<*>SORT.EXE (TO) _<SUBSYS>*.*.-1,
.BR;_<*>SORT.HLP (TO) _<SUBSYS>*.*.-1
.BR;REWIND\\
.ELSE TWENTY
^THE INSTALLATION OF STAND ALONE <SORT IS SIMPLE. ^JUST PUT <SORT.EXE ON
<SYS: (OR <NEW:) AND <SORT.HLP ON <HLP:.
.ENDIF TWENTY
.B2
4.2##^INSTRUCTIONS FOR ^BUILDING <SORT
 ^FULL BUILDING INSTRUCTIONS FOR <SORT CAN BE FOUND
IN <SORT.CTL.
 ^TO GENERATE STAND-ALONE <SORT, LOAD ALL OF THE <SORT SOURCES FROM
THE <SORT TAPE INTO YOUR DIRECTORY AREA, AND TYPE:
.B.LM+5;^^SUBMIT SORT/TIME:0:30:00\\
.LM-5.B
.IF TWENTY
^IF <LIBOL.REL, <LIBSHR.REL AND <FTDEFS.UNV ARE IN YOUR DIRECTORY,
.ELSE TWENTY
^IF <LIBOL.REL AND <FTDEFS.UNV ARE IN YOUR DIRECTORY,
.ENDIF TWENTY
A <COBOL-68 <SORT WILL BE BUILT AND INSERTED INTO 
.IF TWENTY
<LIBO12.EXE AND 
.ENDIF TWENTY
<LIBOL.REL.
.B 1
.IF TWENTY
^IF <C74LIB.REL, <LIBSHR.REL AND <FTDEFS.UNV ARE IN YOUR DIRECTORY,
.ELSE TWENTY
^IF <C74LIB.REL AND <FTDEFS.UNV ARE IN YOUR DIRECTORY,
.ENDIF TWENTY
A <COBOL-74 <SORT WILL BE BUILT AND INSERTED INTO 
.IF TWENTY
<C74O12.EXE AND 
.ENDIF TWENTY
<C74LIB.REL.
.IF TWENTY
.B 1
^NOTE, THAT THE A <COBOL-68 AND A <COBOL-74 <SORT CANNOT BOTH BE BUILT AT THE SAME TIME. ^THIS IS BECAUSE THEY BOTH USE <LIBSHR.REL WHICH CONTAINS <COBOL-68/COBOL-74 DEPENDENCIES.
.ENDIF TWENTY
.B 1
^IF <FORLIB.REL IS IN YOUR DIRECTORY, A <FORTRAN <SORT WILL BE BUILT AND INSERTED INTO <FORLIB.REL.
 ^TO BUILD ONLY A <COBOL-68 <SORT TYPE:
.B.LM+5;^^SUBMIT SORT/TIME:0:20:00/TAG:COBOL\\
.B.LM-5
 ^TO BUILD ONLY A <COBOL-74 <SORT TYPE:
.B.LM+5;^^SUBMIT SORT/TIME:0:20:00/TAG:CBL74\\
.B.LM-5
 ^TO BUILD ONLY A <FORTRAN <SORT TYPE:
.B.LM+5;^^SUBMIT SORT/TIME:0:20:00/TAG:FORTRA\\
.LM-5
 ^THE FOLLOWING TABLE CONTAINS THE ASSEMBLY SWITCHES, THEIR DEFAULT
VALUE, LOCATION AND INTENDED USE.
.LM+2.B.TS13,22,33
^^ASSEMBLY	DEFAULT	DEFINED	USE WHEN SWITCH HAS\\
.BR;^^SWITCH	VALUE	IN MODULE	A NONZERO VALUE\\
.BR;------------------------------------------------------------------
.BR;<FTOPS20	
.NOSPACE
.IF TWENTY
1
.ELSE TWENTY
0
.ENDIF TWENTY
.NOSPACE
\	<SRTPRM	^BUILD <SORT FOR A <DEC<SYSTEM-20
.BR;<FTKL10	
.NOSPACE
.IF TWENTY
1
.ELSE TWENTY
0
.ENDIF TWENTY
.NOSPACE
\	<SRTPRM	^USE ^K^L INSTRUCTIONS (<BIS ETC.)
.BR;<FTKI10	
.NOSPACE
.IF TWENTY
1
.ELSE TWENTY
0
.ENDIF TWENTY
.NOSPACE
\	<SRTPRM	^USE ^K^I INSTRUCTIONS (<DMOVE ETC.)
.BR;<FTCOL	1	<SRTPRM	^ALLOW ALTERNATE COLLATING SEQUENCE
.BR;<FTDEBUG	0	<SRTPRM	^DEBUGGING AIDS AND ADDITIONAL INFO
.BR;<FTCOBOL	1	<SRTCBL	^BUILD <SORT FOR <COBOL
.IFN TWENTY
.BR;<FTFORTRAN	0	<SRTCBL	^BUILDING <COBOL, SO TURN OFF <FORTRAN
.BR;<FTFORTRAN	1	<SRTFOR	^BUILD <SORT FOR <FORTRAN
.BR;<FTCOBOL	0	<SRTFOR	^BUILDING <FORTRAN, SO TURN OFF <COBOL
.ENDIF TWENTY
.B3.LM0
.PG
5.0##<INTERNAL <CHANGES
.B 1
^THE SOURCES OF <SORT CONSIST OF:
.B 1
<SRTPRM.MAC##^THE COMMON PARAMETER DEFINITIONS
.BR
<SRTSTA.MAC##^THE COMMON STAND-ALONE CODE
.BR
.IF TWENTY
<SRTCMD.MAC##^THE <DECSYSTEM-20 COMMAND SCANNER
.BR
<SRTJSS.MAC##<DECSYSTEM-20 SPECIFIC CODE
.BR
<SRTCER.MAC##^STANDARD ERROR MESSAGE ROUTINES
.ELSE TWENTY
.BR
<SRTSCN.MAC##^THE INTERFACE TO <SCAN
.BR
<SRTUUO.MAC##<DEC<SYSTEM-10 SPECIFIC CODE
.ENDIF TWENTY
.BR
<SRTCMP.MAC##^THE COMPARISON GENERATOR
.BR
<SORT.MAC####^THE COMMON ALGORITHMS
.B 1
^IN ADDITION THE <COBOL <SORT HAS:
.BR
<SRTCBL.MAC##^THE INTERFACE FOR <COBOL
.B 1
AND THE <FORTRAN <SORT HAS:
.BR
.IF TWENTY
<FORSRT.MAC##^THE <FORTRAN INTERFACE TO THE STAND-ALONE <SORT.
.ELSE TWENTY
<SRTFOR.MAC##^THE <FORTRAN INTERFACE.
.BR
<SRTCER.MAC##^STANDARD ERROR MESSAGE ROUTINES
.ENDIF TWENTY
.B 2
 ^THE FOLLOWING EDITS WERE MADE TO <SORT AS A RESULT OF BUGS FOUND:
.LM+5.TS5
.B.I-5;300	^DEVELOPMENT OF VERSION 4.
.B;.I-5;301	^Allow input and output to have different blocking factors.
.B;.I-5;302	^Fix bugs found from second field test tape.
.B 1;.I -5;303	^Fix compares of two character <EBCDIC alphanumeric keys in the middle of a word.
.B 1;.I -5;304	^Fix <?SRTRIE errors on <EBCDIC fixed-length files.
.B 1;.I -5;305	^ON <TOPS-20 FIX BLOCKING FACTOR PROBLEMS
.B 1;.I -5;306	^On <TOPS-10 <binary sort, <MAXKEY not BEING set up caused divide by 0.
.B 1;.I -5;307	^Double precision unsigned comparison routine fixes.
.B 1;.I -5;310	^Var. length file with random line terminators fix.
.B 1;.I -5;311	^Fix <SIXBIT <alphanumeric compares of 6 chars starting on a word boundary.
.B 1;.I -5;312	^Fix performance bug when sorting blocked files.
.B 1;.I -5;313	^Fix <?SRTRBP errors during merge phase of a sort.
.B 1;.I -5;314	^Re-insert line that got lost out of edit 305.
.B 1;.I -5;315	^Fix definition of <RETSKP to fix undefined <RSKP labels.
.B 1;.I -5;316	^Fix various bad output files and ^ill. ^mem. ^refs. in ^FORTRAN ^binary files.
.B 1;.I -5;317	^Clear junk in buffer header word of OPEN block
.B 1;.I -5;320	^Clean up <FUNCT. after <SORT (<FSLOC.)
.B 1;.I -5;321	^Fix further blocking factor problems on <TOPS-20, when blocks are huge.
.B 1;.I -5;322	<SIXBIT, word boundary, six char. length sign compare fix
.B 1;.I -5;323	^Fix loop when <SORT has exactly enough memory but thinks it doesn't.
.B 1;.I -5;324	<SIXBIT blocked file  (generates only one temp file)  <I/O error
.B 1;.I -5;325	<TOPS-20, <ASCII MERGE loop  and <SIXBIT nulls  fix
.B 1;.I -5;326	<TOPS-20  Allow multiple input files in <SORT
.B 1;.I -5;327	^Fix <merge<s when one or more input files are null, or more than MAXTMP files.
.B 1;.I -5;330	<FORTRAN <SORT <BINARY </COMP and non-^^COMP\\ fix
.B 1;.I -5;331	^Edit 327 broke <sorts., Make <RETRN. still return if not a <merge.
.B 1;.I -5;332	^EDIT 322 broke <SORT for <SIXBIT <alphanumeric files SORTED on MORE THAN 1 <KEY.
.B 1;.I -5;333	^NOT USED.
.B 1;.I -5;334	^Fix expanding memory too much when <LOGIN/CORE:<n is used (e.g., <batch).
.B 1;.LM-5
^NOTE, EDIT _#337 IS ACTUALLY IN THIS RELEASE. ^THE PROBLEM WAS FOUND AND FIXED IN TIME FOR THE FINAL BUILD, BUT BEFORE THE OFFICIAL PATCH AND EDIT NUMBER COULD BE GENERATED.
^HOWEVER EDITS _#335 AND _#336 ARE NOT IN THIS RELEASE.
.IF TWENTY
.B 2
 ^THE FOLLOWING EDIT WAS MADE TO <FORSRT AS A RESULT OF BUGS FOUND:
.B 1;.LM +5;.I -5;##1	^MAKE SURE DATA PAGES CONTAIN ZERO BEFORE CALLING <SORT.
.LM-5;.B1
.ENDIF TWENTY
.B 3
6.0##<SUGGESTIONS
 ^NONE.
.B 3
[^END OF <SRT4A.DOC]