Google
 

Trailing-Edge - PDP-10 Archives - bb-bt99e-bb - srtprm.c05
There are 2 other files named srtprm.c05 in the archive. Click here to see a list.
 REP 2/1	;05C1
	SUBTTL	D.M.NIXON/DMN/DPL/DZN/BRF/DLC/CLRH	5-Jun-81
 WIT
	SUBTTL	D.M.NIXON/DMN/DPL/DZN/BRF/DLC/CLRH/GCS/PY		1-Nov-82
 REP 6/1	;05C2
	;COPYRIGHT (C) 1975, 1981 BY
 WIT
	;COPYRIGHT (C) 1975, 1982 BY
 REP 29/1	;05C3
	DECEVR==467		;DEC EDIT VERSION
 WIT
	DECEVR==512		;DEC EDIT VERSION
 DEL 1/4	;05C4
	SUBTTL	REVISION HISTORY


	;VERSION 1
	;1	FIRST FIELD TEST RELEASE
	;2	SECOND FIELD TEST RELEASE
	;3	FIX QA FOUND BUGS
	;4	FIX BUG IF RUN OF MORE THAN 400000 RECORDS
	;5	FIX RANDOM BIT 35'S IN ASCII OUTPUT FILE
	;6	TEST FOR DEVICE NUL:
	;7	DON'T ADD EXTRA BUFFERS IF IN USE BIT IS ON FOR ALL BUFFERS IN RING
	;10	ADD EXTRA BUFFERS IN CORRECT SEQUENCE
	;11	STRIP LEADING NULLS AND TERMINATORS CORRECTLY AND EFFICIENTLY
	;12	WAIT FOR ALL CHANNELS NOT JUST CHAN 0
	;13	DON'T READ ONE CHAR TOO MANY AT GETAVR
	;14	RECORD COUNT WRITTEN ONE TOO HIGH ON SIXBIT MTA FILES
	;15	CALCULATE ELAPSED TIME CORRECTLY OVER MIDNIGHT
	;16	DON'T RETURN CORE IF SOMEONE ELSE INCREASED IT AFTER SORT
	;17	CORRECTLY HANDLE VARIABLE LENGTH ASCII RECORDS LESS THAN 6 CHAR LONG
	;20	GET TO STOPR. CORRECTLY ON FATAL ERROR


	;VERSION 2
	;100	IMPLEMENT VERSION 2 FEATURES (EBCDIC, COMP-3, VARIABLE LENGTH, ETC)
	;101	FIX BUG INTRODUCED IN PUTSXR & GETSXR
	;102	FIX BUGS IN EBCDIC AND COMP-3 CODE
	;103	IMPROVE TENEX CODE
	;104	FIX VARIABLE ASCII WITH NUMERIC KEYS

	;SORT version 2(104) Released on TOPS-10.
	;105	FORCE SIXBIT FILES TO BE VARIABLE
	;106	SETUP PPN OR SFD CORRECTLY FOR NEXT INPUT FILE
	;107	IGNORE NULL INPUT FILES
	;110	SIMPLIFY HANDLING OF SEQUENCE NUMBERS
	;111	MORE TOPS-20 IMPROVEMENTS
	;112	DO ROUNDING CORRECTLY ON FLOATING POINT OUTPUT
	;113	RENAME SINGLE TEMP FILE CORRECTLY IF FILE ALREADY EXISTS

	;SORT version 2(113) Released on TOPS-20.
	;114	ACCEPT R SORT (COMMAND LINE) I.E. DO A RESCAN
	;115	FIX VARIOUS PROBLEMS WITH DEFAULT PATHS
	;116	MAKE MULTI-REEL FILES WORK CORRECTLY
	;117	FIX SRTSCN SO THAT BLOCKED SIXBIT FILES THAT TAKE ONLY 1 RUN COME OUT BLOCKED
	;120	FIX KL-10 BIS WRITE OF FIXED LENGTH ASCII AND EBCDIC RECORDS
	;121	ADD ERJMP AFTER MTOPR ON TOPS-20
	;122	FIX LAST RECORD OF FIXED LENGTH EBCDIC FILE
	;123	DON'T ZERO TOO MANY WORDS WHEN CLEARING OUTPUT BUFFER
	;124	CORRECT OUTPUT EBCDIC BYTE POINTER FOR DUMMY OUTPUT
	;125	DELETE TEMP FILE IF USER ROUTINE EXITS BEFORE END-OF-FILE
	;126	CORRECT BIS COMPARE WHEN BYTE POINTER IS 36 BITS (EBCDIC OR SIXBIT)
	;127	CORRECT KL10 INPUT FOR VARIABLE LEN ASCII
	;130	FIX VAR LNGTH RECS WITH XTRCTED KEYS
	;131	FIX JUNK WRITTEN AT END OF LAST BLOCK ON OUTPUT FILE.
	;132	FIX NEGATION OF DOUBLE PRECISION SIGNED NUMERICS ON KA.
	;133	FIX CODE GEN OF DOUBLE PRECISION COMPARE ON KA.
	;134	TYPE ERROR MESSAGES FOR ALL CROSS-CPU POSSIBILITIES.
	;135	REMOVE USE OF MTOPR'S UNTIL SORT IS COMPLETELY JSYS-IZED FOR TOPS20
	;136	DON'T SHARE BUFFER RING WHEN OUTPUT CHAN IS CLOSED IN COBOL SORT
	;137	CLEAR ^O ON TOPS20 INSTEAD OF SETTING IT ON FATAL MESSAGES.
	;140	CHANGE CHANNEL ALLOCATION SO MORE FILES CAN BE OPENED BY COBOL USER
	;141	HANDLE MULTIPLE CORE EXPANSIONS PROPERLY SO SHRINK IN COBOL WORKS
	;142	CAUSE SIXBIT RUNNING ON KL-10 TO SORT PROPERLY IN ALL CASES.
	;143	HANDLE /FIX, /VAR MORE CONSISTENTLY, AND ISSUE BETTER ERROR MESSAGE
	;144	MAKE NUMERIC UNSIGNED EBCDIC USE EBCDIC ROUTINES INSTEAD OF SIXBIT ONES.
	;145	CAUSE EBCDIC ALPHANUMERIC RUNNING ON KL-10 TO SORT PROPERLY IN ALL CASES.
	;146	USE WORD OFFSET IN CNVGEN SO SORTS WITH MORE THAN 1 CONVERTED KEY WORK.
	;147	FIX AND CLEAN UP HANDLING OF EXTRACTED WORD COUNT IN ASCII I/O ROUTINES.
	;150	FIX AND CLEAN UP HANDLING OF EXTRACTED WORD COUNT IN EBCDIC I/O ROUTINES.
	;151	MAKE SRTSNA AND SRTROS FATAL ERRORS RATHER THAN WARNINGS.
	;152	MAKE SURE R (AND RSAV) NEVER GETS -1 IN LH, DUE TO @RSAV.
	;153	FIX ASCII ALPHANUMERIC COMPARISONS ON KL (BIS).
	;154	FIX MORE ASCII AND EBCDIC I/O WHEN FTKL10==1.


	;VERSION 3
	;200	Implement stand-alone merge.
	;	Implement COBOL merge.
	;	Implement FORTRAN interface.
	;	Start to implement collating sequence.

	;SORT version 3(200) Released.
	;201	Separate MODE into MODE for keys and IOMODE for I/O to avoid confusion.
	;202	Fix Ill UUO and defaulting of /FIX, /VAR, /SEQ, /RAN, /BIN, /COMP and /FORMAT.
	;203	Fix FORTRAN binary data files of all flavors.
	;204	Change SIXBIT input to ignore zero words.
	;205	Fix handling of tapes in sort case.
	;206	Turn on FTOPS20 conditional for TOPS-20 SORT.
	;207	Write .TMP files variable length in COBOL SORT.
	;210	Check forgotten case in edit 131 so files are not padded with zeros.
	;211	Make sure the last I/O channel is freed before returning in FORTRAN SORT.
	;212	Fix random errors on second command to SORT when using /TEMP.
	;213	Fix major incompatibilities in FORTRAN SORT's command scanner.
	;214	Skip .TMP structures if OPEN or ENTER fails.
	;215	Fix tape label checking in stand-alone SORT.
	;216	Fix handling of line-sequenced ASCII files in KL case.
	;217	Fix edit 207 so data record gets copied after the keys.
	;220	Fix illegal instruction when handling tapes in FORTRAN SORT.
	;221	Stop FORTRAN SORT from expanding more and more on TOPS-20.
	;222	Fix DECODE errors when using /FORMAT.
	;223	See that R gets initialized in SCAN in SRTFOR for ? I/O to unassigned channel.
	;224	Fix SRTTFC and I/O to unassigned channel errors in SRTCBL on early ENDS. calls.


	;VERSION 4
	;300	JSYSize SORT.
	;301	Allow input and output to have different blocking factors (QAR 20-00136).
	;302	Fix bugs found from second field test tape.

	;SORT/MERGE version 4(302) Released
	;303	Fix compares of two character EBCDIC alphanumeric keys in the middle of a word.
	;304	Fix ?SRTRIE errors on EBCDIC fixed-length files.
	;305	On TOPS-20, fix blocking factor problems.
	;306	On TOPS-10 binary sort, MAXKEY not set up caused divide by 0.
	;307	Double precision unsigned comparison routine fixes.
	;310	Var. length file with random line terminators fix.
	;311	Fix SIXBIT alphanumeric compares of 6 chars starting on a word boundary.
	;312	Fix performance bug when sorting blocked files.
	;313	Fix SRTRBP errors during merge phase of a sort.
	;314	Re-insert line that got lost out of edit 305.
	;315	Fix definition of RETSKP to fix undefined RSKP labels.
	;316	Fix various bad output files and ill mem refs in FORTRAN binary files.
	;317	Clear junk in buffer header word of OPEN block
	;320	Clean up FUNCT. after SORT (FSLOC.)
	;321	Fix further blocking factor problems on TOPS-20, when blocks are huge.
	;322    SIXBIT, word boundary, six char. length sign compare fix
	;323	Fix loop when SORT has exactly enough memory but thinks it doesn't.
	;324    SIXBIT blocked file  (generates only one temp file)   IO error
	;325	TOPS-20,  ASCII MERGE loop  and SIXBIT nulls  fix
	;326	TOPS-20  Allow multiple input files in SORT
	;327	Fix merges when one or more input files are null, or more than MAXTMP files.
	;330	FORTRAN SORT BINARY /COMP and non COMP fix
	;331	Edit 327 broke sorts. Make RETRN. still return if not a merge.
	;332	EDIT 322 broke SORT for SIXBIT alphanumeric files SORTED on .GT. 1 KEY.
	;333	Default /LABELS: to STANDARD as documented on TOPS-20.

	;SORT version 4A(333) with edit 337 released with COBOL-74 version 12.
	;334	Fix expanding memory too much when LOGIN/CORE:n is used (e.g., BATCH).
	;335	Use new form of JSYS names, NAME%, to solve global symbol conflicts.
	;336	Clean up TOPS-20 command scanner - remove noise words from switches and /RMS.
	;337	Really fix sorts back after edits 327 and 331.
	;340	Fix /COLLATE loop on KA and KI
	;341	ASCII records .EQ. /RECORD error message
	;342	SIXBIT unblocked files which create only one .TMP  fix
	;343	S/A SORT problem with GETTAB return of 0
	;344	TOPS-20 SIXBIT blocked file can lose records
	;345	MERGE problems closing out file too soon- E327 331 337
	;346	S/A SORT problems with multiple command lines. Restore .JBFF
	;347	Fix FORTRAN command scanner to process /SWITCH:^N correctly
	;350	Fix FORTRAN command scanner to process DEV:/TEMP correctly
	;351	Fix errors with /SUPRES, /FATAL, /ERROR, /LEAVES, /FORMAT
	;352	Fix FORTRANs problems with SFDs and PPNs
	;353	Fix TOPS-10 labeled tapes, /REWIND, and I/O error messages.
	;354	Fix COBOL merge when called from non-resident COBOL overlay.
	;355	On TOPS-10 scan /COLLATE:FILE:file-spec correctly (allow SFDs, etc.).
	;356	In COBOL SORT, clear low segment data in case second call.
	;357	On TOPS-20 print more information on certain fatal errors.
	;360	On TOPS-20 convert DATE UUO to ODCNV% JSYS
	;361	Allocate KEY extraction and compare space in high segment.
	;362	Make SRTRNI message fatal.
	;363	Make /SUPPRESS:INFORMATION suppress final messages from S/A SORT.
	;364	Fix more FORTRAN SORT ill mem ref problems
	;365	Merge last development work for SORT %4A into maintenance sources.
	;366	On TOPS-20, write last word if it is the first word in a buffer.
	;367	EBCDIC variable length fix for SRTRTI
	;370	Fix truncated records if extracted keys and temp files are necessary.
	;371	Make sure output buffers are cleared before output starts
	;372	On TOPS-20, fix /BLOCKED:n to default properly.
	;373	Add debugging facility for the structure macros, and fix bugs it finds.
	;374	On TOPS-10, improve error messages SRTIRE and SRTOWE for temporary files.
	;375	On TOPS-20, fix looping with multiple /KEY:s, broken by 372.
	;376	On TOPS-20, properly reinitialize on a new line to prevent PDL overflows, etc.
	;377	On TOPS-20, fix ?SRTOPN errors on multiple commands after edit 376.
	;400	On TOPS-20, fix truncation of SIXBIT files after edit 366.
	;401	On TOPS-20, fix SRTCCN errors when using magtapes.
	;402	Skip non-existent records in FORTRAN RANDOM files instead of issuing ?SRTFCI.
	;403	Fix EBCDIC alphanumeric comparisons similar to /KEY:8:2 and /KEY:8:4.
	;404	Fix TOPS-10 SRTMUF errors when ASSIGN ALL DSK,etc. is used
	;405	Fix TOPS-20 '?SRTNEC' for large files bug
	;406	Fix ILL MEM REF or inability to generate tape labels caused by clobbering X.DVCH in STOPB
	;407	Bad sorts for unblocked tape files- 10. Wrong recsize.
	;410	Wrong record size from Fortran binary sorts with /NUMERIC
	;411	Fix LOOKUP error msg loop when CCL and entry fails
	;412	Non specified commands default to ASCII. Message when found otherwise.
	;413	FORTRAN-10 problem with multiple key SORTs - SRTCGC msg
	;414	Fix further problems after edit 353 with end-of-tape processing.
	;415	COBOL SORT Address check when one .TMP file is created 
	;416	/LEAVES causes no. of records to be reported, not no. leaves in tree
	;417	Rec. trunc. message wrong. It reports characters not records.
	;420	SORT-20 gives ?SRTAWP when outputting fix SIXBIT to tape
	;421	SORT-20 allowed /ALI/BIN. Fix.
	;422	SORT-20 now allows /DENSITY:6250
	;423	SIXBIT SORTs that create only one .TMP file have output truncated
	;424	TOPS-10 will not allow a unit to be temp device (DSKN0:)
	;425	Edit 411 neglected to delete the TMPCOR file. Call SCAN and del it.
	;426	Give error on SORT-20 allowing more than one /SUPPRESS
	;427	Not all data was zeroed at new command (e.g. /LEAVES) on -20.
	;430	A typo in edit 400 causes an ILL MEM REF to occur. Edit 366 is also needed.
	;431	SORT calculates incorrect info for FOROTS DECODE arg block on /FORMAT
	;432	SORT-10 does not allow a lowercase arg for /FORMAT-?SRTFSA occurs
	;433	COBOL SORT's comparison rout. write locks  hi-seg pg on TOPS-20.
		;Make TOPS-10 code compatable.
	;434	Fix multi-reel tape problem with EOT on TOPS-10.
	;435	Fix a -20 SIXBIT blk bug; rewrite some code efficiently.
		; cleanup- spelling, table contents for v4B
	;***	Add METERing code.

	;SORT/MERGE version 4B(435) released.
	;436	Point to output file on rename of single temp file.
	;437	Fix -20 bug with SIXBIT unblocked files SRTJFO,SRTCCF.
	;440	Fix Fixed EBCDIC with odd number of bytes in file.
	;441	Fix reformatted buffer pool memory allocation.
	;442	Fix problem with EBCDIC record descriptor word corruption.
	;443	Eliminate sequence number overflow warning (%SRTSNO) and associated
	;	      instability.
	;444	Fix a TOPS-20 bug in which SOUT garbages output containing nulls.
	;445	Fix a TOPS-10 bug by clearing .RBALC in ENTER block.
	;446	Fix a 10/20 EBCDIC bug in SRTCMP which garbaged COMP-3 Key extraction.
	;447	Fix the /NOCREATE bit in GENSTR routine.
	;450	Allow explicit ALPHANUMERIC keys with EBCDIC.
	;451	Not required in SORT 4C (part of edit C18).
	;452	Not required in SORT 4C.
	;453	Make TOPS-20 HELP command look in HLP: instead of SYS:.
	;454	On TOPS-20 don't clear MRGSW (in CLRANS) after setting it.
	;455	Save T4 in ERRRTI (see also C28).
	;456	Not required in SORT 4C.
	;457	Allow TOPS-20 SORT to CONTINUE after "?QUOTA EXCEEDED OR DISK FULL" message.
	;460	Build the collating table (COLBUF) correctly for SIXBIT files when the
	;	 user specifies his own collating sequence.
	;461	Correct the calculation of MINKEY when there are extracted keys.
	;462	First character of a collating sequence specified in a file is lost.
	;463	On TOPS-20 close the TAKE and LOG files when SORT exits if a TAKE file was being processed.
	;464	On TOPS-20 fix edit 457 to put out "$" before the error message for batch.
	;	Also fix the continue after PMAP failure so that pages are not lost.
	;465	On TOPS-20 fix the calculation of the number of bytes written to the output file.
	;466	Not required in SORT 4C.
	;467	Allow the space character to be specified using the quote facility
	;	in an alternate collating sequence file.

	;C01	Implement MTA switches on TOPS-20.
	;C02	Fix MTA double buffering on TOPS-20.
	;C03	Fix MTA last record in file processing.
	;C04	Fix lower case labels.
	;C05	Fix default buffer space allocations on TOPS-20.
	;C06	Fix MTA blocking.
	;C07	Fix MTA EOT processing.
	;C08	Fix MTA labeling.
	;C09	Implement defaulting of /BLOCKED:1 and /INDUSTRY for EBCDIC MTAs.
	;C10	Change default TAKE log file to NUL: on TOPS-20.
	;C11	Implement /POSITION:
	;C12	Support automatic MTA labeling on TOPS-20.
	;C13	Remove FOROTS hack and correct memory management.
	;C14	Remove hacks for MACRO-10 negative relocation deficiency.
	;C15	Renamed to EDIT 447.
	;C16	Renamed to EDIT 450.
	;C16	Allow explicit ALPHANUMERIC keys with EBCDIC.
	;C17	Fix BLOCKING HACK on TOPS-20.
	;C18	Use BIG disk buffers on TOPS-10.
	;C19	Change as many UUO's to FILOP. UUO's as possible for new features.
	;C20	Clean up code to allow SORT-10/20 to run in a non-zero memory SECTION.
	;C21	Fix memory reallocation bug in SORT-10.
	;C22	Fix problem with unlabeled magnetic tapes through MOUNTR in SORT-20.
	;C23	Fix problem with determining high segment size in SORT-10.
	;C24	Fix problem with PHYSICAL LIMIT 0 in SORT-10.
	;C25	Support for new PULSAR label types in SORT-10.
	;C26	Fix bug concerning .TMP files and no UFD's in SORT-10.
	;C27	Renamed to EDIT 444.
	;C28	Fix record truncation on input destroying ACs (see also EDIT 455).
	;C29	Fix default memory for SORT-10 on KI's and KL's.

	;N01	Some minor code bumming.
	;N02	Give error message if not enought input files for MERGE.
	;N03	Change .LINK pseudo-op number to avoid conflict with COBOL-74 /R
	;N04	Fix COBOL SORT on KA-10 to assemble correctly again.
	;N05	Give file not found message as early as possible to avoid unnecessary memory expansion.
	;N06	Reset CORSTK if an error occurs in SCAN (TOPS-10 only).
	;N07	Fix edit C29 to work for COBOL SORT (TOPS-10 only).
	;N08	More fixes to DEFCOR to account for VMDDT and V/M limits (TOPS-10 only).
	;N09	Fix calculation of number of temp files on TOPS-10.
	;N10	Delete FTCOL feature test switch, the code is always generated.
	;N11	Add switches NOCRLF, AFTER-ADVANCING, and BEFORE-ADVANCING.
	;N12	If TOPS-10 7-series monitor use FILOP.s for all I/O operations.
	;N13	On TOPS-20 don't turn on page creation interupt if RMS turned it off.
	;N14	On TOPS-10 bypass protection check if job is [1,2] or JACCT.
	;N15	Fix read from NUL: device on TOPS-20.
	;N16	Fix bug with very large keys using more than FTEXSX space.
	;N17	Use extended channels if TOPS-10 7.01.
	;N18	Fix bad sort for SIXBIT key /K:n:3 where n is a multiple of 6.
	;N19	Return /ERROR-CODE in 3 ASCII chars. rather than 6 SIXBIT ones.
	;N20	On TOPS-10 increase number of temp files to 26 if extended channels available.
	;N21	On TOPS-10 put segmentation back the way it was, put new code under FTVM conditional.
	;N22	On TOPS-10 fix default core allocation "off by one" bug causing not enough core error.
	;N23	Make SORT with double precision COMP keys work again.
	;N24	Make FILOP. DELETE work in both 7.01 and 7.02 (problem with FO.UOC bit).
	;N25	Allow either " or ' to delimit quoted characters in COLLATING sequence.
	;N26	On TOPS-20 fix bug with multiple input files on magtape.
	;N27	Fix memory allocation in SORT for very large FORTRAN programs.

	;SORT/MERGE version 4C(???) released.
 INS 50/6	;05C5
	;**;[511] @IXMODE + 23 lines, Insert 1 line.	DMN	27-Oct-82
	XX	(FPU,A)			;[511] UNSIGNED FLOATING POINT ASCII
 REP 57/11	;05C6
					;[C13] KY.FMT+2 = SCALING FACTOR
					;[C13]            1B0=1 INDICATES DOUBLE PRECISION
 WIT
	;**;[511] @KY.FMT: + 3 lines,  Replace 2 lines with 5.	DMN	27-Oct-82
					;[C13] KY.FMT+2 = FLAGS,,SCALING FACTOR
		KY%FDP==1B0		;[511] DOUBLE PRECISION
		KY%FUN==1B1		;[511] UNSIGNED
		KY%FBN==1B2		;[511] BLANK=NULL
		KY%FBZ==1B3		;[511] BLANK=ZERO
 SUM 32866