		This file is [307,23] README.4TH.

System utilites // FORTRAN callable routines // etc.


GTMCL.MAC,MCRCLR.MAC,OTI.MAC
	These routines replace the Fortran-callable executive routine
	(CALL GETMCR) in a very useful way:
		OTI.MAC - is a replacement for the FORTRAN V2.4 OTS
			  initialization module.  It was disassembled
			  from the system library and modified to call
			  a routine at startup that reads any outstanding
			  MCR command line into a buffer.  This means that
			  FORTRAN programs started up from the catch-all
			  task get their command lines out of executive
			  pool immediately!  This turns out to be very
			  useful for avoiding pool fragmentation.  I can
			  disassemble the F4P startup module in the same
			  way if someone sends me a current copy of the
			  extracted object module.
		MCRCLR.MAC - reads the MCR line into a buffer.
		GTMCR.MAC  - substitutes for GETMCR.  FORTRAN tasks need
			  only be re-built to make use of this routine.

	To incorporate these modules into your system, simply assemble
	them and use LBR to replace them into your SYSLIB.OLB  (or FORLIB,
	or FORRES, or whatever).




CBTAR2.MAC
	A useful MACRO-11 macro to define R2 for calls to the System
	Library routine $CBTA.  Read it for more info.


COOKIE.MAC
	(from David Roode)
	This task outputs to the invoking terminal a little bit of wisdom
	from a message collection contained within the code.  There is
	a new cookie every second so if you want a full list RUN it with
	/RSI=1S synchronized on the second and CO: device will get all of
	them.  If the BYE enhancement is installed, "COOKIE" will be
	spawned to the MCR when a user logs out....COOKIE may either be
	installed on the system, or found via ...CA.
	

GCML.MAC
	This is a disassembled and modified SYSLIB module.  If assembled
	an replaced into SYSLIB.OLB, it causes all tasks subsequently
	linked with the Get Command Line routines (GCML$  -- I/O Operations
	Chapter 6) to do terminal input using IO.RPR.  ***DO NOT use this
	module if you don't have IO.RPR (Read after Prompt) support 'gen'ed
	into your operating system***


REI.MAC
	(from Howard Palmer)
	This task recovers lost or deleted files from a possibly 
	corrupted disk.	 The command to invoke it is: REI filespec
	where filespec contains a device name and a filename.  If
	a file header with the specified filename is found the user
	is prompted for a filespec of where to put the recovered
	file.  No guarantees on what it recovers especially if some
	of the files blocks have already been reused but something
	is better than nothing they always say.

WHO.MAC
	(from Greg Thompson)
	The new command WHO is used to display who is logged into the
	system.  The command displays the terminal number, the login
	UIC, last and first names, and the time that user logged in 
	(into ANY! terminal) for each terminal device that has someone
	logged in on.  All task names which are active for the user
	are displayed on the following line.

	

TIMER.CMD,TIMER.CMN,TIMER.FTN,TIMERTEST.FTN
TIMER.TXT
	FORTRAN (IV or 4-Plus) callable routines to get an exeuction
	profile of a running task without significantly modifying or
	degrading the task.  See TIMER.TXT for more info.





MFLIB.CMD,MFLIB.DOC,EXAMPLE.FTB,EXAMPLE.FTN
CSI.MAC,CSISV.MAC,CSISW.MAC,GETCMD.MAC
MACFOR.MAC,MACF4P.MAC,MFARG.MAC,MFPRE.MAC
GETCMD.TXT
	FORTRAN (IV or 4-Plus) callable routines to link to the
	Get Command Line//Command String Interpreter routines
	documented in I/O Operations Chapter 6.  These routines
	are extremely powerful for RSX-like command parsing, and
	are not too hard to learn to use.  GETCMD.TXT has an
	overview, and MFLIB.DOC has all the comments extracted
	from the sources.
	EXAMPLE.FTN is a heavily documented example on how to
	use most of the features to implement (with surprisingly
	little real code) a full blown Fortran command string
	interpreter, complete with switches and switch values.
	MFLIB.CMD compiles the sources and creates MFLIB.OLB
	automatically.


NEWSYS.CMD,PAR009.VMR,INS009.VMR,SET009.VMR,STARTUP.CMD
	NEWSYS.CMD is the command file i run to create a new system
	image for me.  Rather than VMR an old, running system, or
	make changes dynamically and SAVe them, i generally create
	a new system image and boot/save it once every time i want
	to incorporate a new change.  I label my system task images
	RSX000.TSK, RSX100.TSK, RSX200.TSK, etc. and i have various
	configurations labeled in the 2nd two digits (e.g. RSX009.SYS,
	RSX203.SYS, RSX413.SYS, etc.).  Three VMR command files do
	the full system configuration.  I have included these files
	as an example of a reasonably simple way to maintain and
	upgrade your operating system image, without saving unnecessary
	pool fragmentation.

