			DESCRIPTION OF PASS2.FTN

	PRINT A SORTED LIST OF ALL UIC'S AND THEIR PASSWORDS.


			ASSOCIATED FILES:

PASS2.FTN	FORTRAN MAIN PROGRAM
INREAD.MAC	MACRO SUBROUTINE FOR OPENING AND READING A FILE
PASS2F.CMD	COMMAND FILE TO COMPILE PASS2.FTN
INREAD.CMD	COMMAND FILE TO ASSEMBLE INREAD.MAC
PASS2T.CMD	COMMAND FILE TO TASK-BUILD THE ABOVE, ASSUMING THE USE
		OF THE SYSTEM STANDARD LIBRARY ROUTINES.

	THESE FILES WILL WORK PROPERLY WITH EITHER "FOR" OR "F4P" AS
THE STANDARD SYSTEM FORTRAN.


	THIS PROGRAM WAS ORIGINALLY WRITTEN AS AN EXERCISE TO PROVE
TO MYSELF AND SEVERAL SCEPTICS THAT IT WAS POSSIBLE TO WRITE A FORTRAN
PROGRAM THAT WOULD LIST THE UIC'S (EASY) AND THEIR ASSOCIATED
PASSWORDS (HARD) ON A "STOCK" RSX-11D SYSTEM.   THIS GOAL WAS ATTAINED
AND A CONSIDERABLE KNOWLEDGE WAS GAINED ABOUT FILES-11 IN THE PROCESS.

	THE PROGRAM IS EXTENSIVELY COMMENTED AND IT SHOULD BE VERY
EASY TO FOLLOW.   AS A SUMMARY, THE FOLLOWING IS PROVIDED:

FIRST,	[0,0]000000.DIR IS READ TO GET A LIST OF UIC'S. (SEE BELOW
	FOR COMMENTS ON ONE SLIGHT PROBLEM)

SECOND,	THIS LIST IS SORTED BY UIC NUMBER.

THIRD,	THE FILE HEADER BLOCK FOR EACH ".DIR" FILE IS READ FROM THE
	FILE [0,0]INDEXF.SYS AND THE PASSWORD IS EXTRACTED FROM
	WORDS 21, 22, & 23 (IN ASCII).

FOURTH,	THE UIC AND PASSWORD IS PRINTED WITH CHECKS FOR TOP-OF-FORM
	AND SO FORTH.   IF THERE IS NO PASSWORD, ONLY THE UIC IS LISTED
	TO CONSERVE ON PRINTING TIME ON SLOW TERMINALS.   A HEADING IS
	ALSO PROVIDED GIVING THE DATE AND TIME OF THE LISTING.


	THE STARTUP PART OF THE PROGRAM ALLOWS YOU TO SPECIFY THE
DEVICE AND FILENAME THE LISTING IS TO GO TO.   THIS ALLOWS YOU TO
DIRECT IT TO TI:, LP:, OR ANY FILE.   IT ALSO ALLOWS YOU TO SPECIFY
THE FORM SIZE IT WILL BE PRINTED ON TO ALLOW FOR PAGE EJECTS (DONE WITH
MULTIPLE CR-LF'S).   IF YOU WISH TO SUPPRESS PAGE EJECTS, SIMPLY
SPECIFY A PAGE LENGTH OF 999 INCHES.


	ONE FEATURE OF THIS PROGRAM IS THAT IT DOESN'T MATTER WHAT KIND
OF PROTECTION THE USER HAS PUT ON HIS UIC -- WE SIMPLY BYPASS IT BY
GOING DIRECTLY TO INDEXF.SYS, WHERE THE INFORMATION IS.

	PLEASE NOTE, HOWEVER, THAT THIS PROGRAM WILL ONLY WORK WITH
SYSTEMS THAT KEEP THE PASSWORD IN THE FILE HEADER BLOCK FOR THE USER'S
DIRECTORY.   IT IS KNOWN THAT THIS IS NOT DONE IN IAS OR RSX-11M
VERSION 3.   IT IS ALSO NOT DONE IN VARIOUS ACCOUNTING PACKAGES, SUCH
AS MIKE MURPHY'S.   FOR PEOPLE WITH THOSE SYSTEMS, YOU ALREADY SHOULD
HAVE UTILITIES FOR DOING THIS.


	YOU WILL NOTE THAT THE PROGRAM IS NOT WRITTEN ENTIRELY IN
FORTRAN, AS PROMISED.   THIS IS BECAUSE [0,0]INDEXF.SYS IS NOT CREATED
BY FILES-11, AND AS SUCH, DOES NOT HAVE AN END-OF-FILE POINTER WORD
SET.   AS A RESULT, WHEN YOU FIRST TRY TO READ THE FILE, YOU APPEAR TO
BE PAST THE END OF FILE AND GET AN ERROR CONDITION.   THIS WAS CURED
BY HAVING A MACRO ROUTINE OPEN THE FILE AND REQUESTING THE FILE
STATISTICS BLOCK.   THE LAST-BLOCK ENTRY IS THEN MOVED TO THE PROPER
PLACE IN THE DCB AND EVERYTHING WORKS NORMALLY.   SINCE FORTRAN HAS
NO PROVISION FOR DOING THIS, I HAD TO BREAK THE RULES JUST A BIT.


	ONE PROBLEM THAT TURNED UP RECENTLY WAS THAT THERE WAS NO WAY
TO DETERMINE THE END-OF-FILE FOR [0,0]000000.DIR.   THE USUAL WAY OF
DETECTING E-O-F IS BY AN ALL ZEROS RECORD.   THIS WORKS UNLESS THE
LAST ENTRY FALLS ON A BLOCK BOUNDARY.   THEN, WHEN WE TRY TO READ THE
NEXT ONE, WE GET AN ERROR CONDITION.   THE PROGRAM WILL NOW SIMPLY
REPORT THE ERROR AND ASSUME THAT THE END-OF-FILE WAS REACHED.   TO
AVOID THIS ERROR MESSAGE, SIMPLY ADD ANOTHER UIC WHICH WILL CAUSE AN
ALL ZEROS RECORD TO BE WRITTEN AFTER THE LAST VALID ENTRY.


	EVERYTHING POSSIBLE WAS DONE TO MAKE THIS COMPATABLE WITH
BOTH THE "FOR" AND "F4P" COMPILERS.   DUE TO A BUG IN THE "FOR"
COMPILER'S ENCODE/DECODE STATEMENTS, THE "EQUIVALENCE" STATEMENT WAS
REQUIRED. ("FOR" WOULD NOT ALLOW ME TO ENCODE/DECODE FROM AN ARRAY
ELEMENT -- ONLY THE ENTIRE ARRAY)   SHARP-EYED OBSERVERS WILL NOTE
OTHERS.


	SUGGESTED IMPROVEMENTS WOULD INCLUDE USING A QIO INSTEAD OF A
READ TO GET THE PASSWORD FROM THE USER CONSOLE.   BY DOING A READ
WITHOUT ECHO QIO YOU COULD HIDE THE PASSWORD FROM PRYING EYES.


	SINCE THIS WAS DONE AS AN EXERCISE IN SYSTEM HACKING, I WOULD
APPRECIATE HEARING ANY COMMENTS YOU MIGHT HAVE ON THIS PROGRAM.
PLEASE ADDRESS THEM TO THE AUTHOR:

	ALAN E. FRISBIE		(213)796-7872
	3786 E. MOUNTAIN VIEW AVE.
	PASADENA, CA 91107

OR

	ALAN E. FRISBIE		(213) 346-0549
	C/O INTERACTIVE GRAPHIC SYSTEMS
	5806 LARAMIE AVE.
	WOODLAND HILLS, CA 91367
