Google
 

Trailing-Edge - PDP-10 Archives - decuslib10-07 - 43,50460/xglob.lpt
There are no other files named xglob.lpt in the archive.
XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 1
XGLOB	MAC	19-MAR-76 13:24		B. SCHREIBER

     1						TITLE	XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1
     2						SUBTTL	B. SCHREIBER
     3						SEARCH	JOBDAT,UUOSYM,MACTEN,SCNMAC
     4						.DIREC	.XTABM
     5						SALL
     6
     7			000000			AC=	0	;TMP
     8			000001			T1=	1	;ALSO
     9			000002			T2=	2	;
    10			000003			T3=	3
    11			000004			T4=	4
    12			000005			P1=	5
    13			000006			P2=	6
    14			000007			P3=	<N=7>	;NAME SCANNED
    15			000010			P4=	<C=10>	;LAST CHARACTER
    16			000011			F=	11	;FLAGS
    17			000012			B=	12	;CURRENT TITLE BLOCK POINTER
    18			000017			P=	17	;PUSHDOWN AC
    19
    20						;FLAGS IN LH OF F
    21
    22			400000			FL.NAM==(1B0)		;ON WHEN BLOCK TYPE 6 (NAME) SEEN
    23			200000			FL.SKP==(1B1)		;ON WHEN SKIPING A MULT DEFINED BLOCK
    24			100000			FL.TTO==(1B2)		;ON IF TTY IS OUTPUT DEVICE
    25			040000			FL.PP==	(1B3)		;ON FOR PRETTY PRINT (FFEED EVERY 60 LINES)
    26			020000			FL.FSA==(1B4)		;ON IF FILE SPACE ALLOCATED
    27					;	FL.NAR==(1B5)		;ON IF /NARROW (SET BY SCAN)
    28			004000			FL.HSE==(1B6)		;ON IF BLOCK 3 (HISEG) SEEN
    29
    30		260740	000000			OPDEF	CALL	[PUSHJ	P,]
    31		263740	000000			OPDEF	RETURN	[POPJ	P,]
    32
    33			400000			SW.LIB==1B18		;THIS IS A LIBRARY
    34		010000	000000			SW.NAR==1B5		;THIS OUTPUT IS IN NARROW FORMAT
    35		010000	000000			FL.NAR==SW.NAR		;THE VALUE IN THE FLAG WORD
    36			000032			.FXLIB==.FXLEN		;-1 IF A LIBRARY FILE
    37						ND	FTDDT,1		;1 FOR DEBUG FEATURES (SLIM)
    38						ND	FTCPU,0		;1 TO PRINT CPU PGM WILL RUN ON
    39						ND	FT2SEG,0	;1 FOR TWOSEGMENT VERSION
    40						ND	PDSIZ,^D50	;PUSHDOWN LIST LENGTH
    41						ND	FBLKSZ,.FXLEN+1	;LENGTH OF SCAN FILE BLOCK
    42									;LAST WORD IS FLAGS
    43						ND	NIBUF,6		;INPUT BUFFER COUNT
    44						ND	NOBUF,2		;OUTPUT BUFFER COUNT
    45
    46						EXT	<.ISCAN,.TSCAN,.TSTRG,.TCHAR,.STOPN,.LKWLD,.MNRET,.TCRLF,^_
    47							.SAVE1,.SAVE2,.SAVE3,.SAVE4,.TSPAC,^_
    48							.POPJ,.POPJ1,.TSIXN,.TTABC,.TOLEB,.TOCTW,.TYOCH,.TTIME,^_
    49							.TTIMN,.TDATE,.TDATN,.FMSG,.FMSGN,.FMSGD,.FMSGO,.FMSGF,^_
    50							E.DFL,F.NAM,.TDECW>
    51
    52			000001			ICH==	1	;INPUT CHANNEL
    53			000002			OCH==	2	;OUTPUT CHANNEL
    54			000003			TTY==	3	;CHANNEL FOR BUFFERED TTY OUTPUT
    55

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 1-1
XGLOB	MAC	19-MAR-76 13:24		B. SCHREIBER

    56						;VERSION INFORMATION
    57
    58			000000			XGBWHO==0		;LOCAL UPDATE
    59			000002			XGBVER==2		;MAJOR VERSION
    60			000000			XGBMIN==0		;MINOR VERSION
    61			000004			XGBEDT==4		;EDIT LEVEL
    62
    63					COMMENT	\	REVISION HISTORY
    64					1	CREATION
    65					2	FIX UP F40 SO IT HANDLES MAIN PGMS OK
    66					3	FIX LISTING--GRQ'S MISSING CALL TO INIEGO
    67					2(4)	ADD CODE TO SUPPORT COMMON INFORMATION
    68						\
    69
    70					IFN FT2SEG,<
    71						TWOSEG
    72						RELOC	400000
    73					>
    74					IFE FT2SEG,<
    75	000000'					RELOC	0
    76					>
    77
    78	000137					LOC	.JBVER
    79	000137	0 002 00 000004 		VRSN.	XGB
    80	000000'					RELOC
    81
    82					DEFINE	SAVE ($X)<
    83					XLIST
    84					IRP $X,<PUSH P,$X>
    85					LIST
    86					>
    87
    88					DEFINE	RESTOR ($X)<
    89					XLIST
    90					IRP $X,<POP P,$X>
    91					LIST
    92					>

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 2
XGLOB	MAC	19-MAR-76 13:24		DEFINE THE DATA STRUCTURE

    93						SUBTTL	DEFINE THE DATA STRUCTURE
    94
    95					COMMENT	\THERE ARE TWO TYPES OF DATA STRUCTURES: 1) THE TITLE BLOCK,
    96						WHICH CONTAINS LINKS TO THE GLOBAL REQUEST LIST AND THE ENTRY
    97						LIST, AS WELL AS THE FILE SPECIFICATION FOR THE SOURCE OF THIS
    98						MODULE. 2) ENTRY, GLOBAL REQUEST, LOCAL SYMBOL BLOCK. THESE BLOCKS ARE IN A
    99						LIST OFF OF THE TITLE BLOCK. EACH LINK CONTAINS NAME, FLAGS, AND
   100						A FEW POINTERS.
   101
   102					\
   103
   104					;DEFINE THE TITLE BLOCK
   105
   106	000000				PHASE	0
   107
   108	000000				TL$BAK:!			;LH LINK BACKWARDS
   109	000000				TL$NXT:!BLOCK	1		;RH LINK FORWARDS
   110	000001				TL$FLG:!BLOCK	1		;LH COMPILER TYPE AND PROCESSOR CODE
   111									;RH FLAGS
   112	000002				TL$NAM:!BLOCK	1		;SIXBIT TITLE NAME
   113	000003				TL$ENT:!BLOCK	1		;LH 0, R PTR TO ENTRY LIST
   114	000004				TL$GRQ:!BLOCK	1		;LH 0, RH PTR TO GLBL REQ LIST
   115	000005				TL$SIZ:!BLOCK	1		;LH=HISEG SIZE,RH=LOWSEG SIZE
   116	000006				TL$COM:!BLOCK	1		;LH TOTAL COMMON SIZE, RH PTR TO LIST
   117	000007				TL$DEV:!BLOCK	1		;SIXBIT DEVICE
   118	000010				TL$PPN:!BLOCK	1		;PPN
   119	000011				TL$FIL:!BLOCK	1		;SIXBIT FILENAME
   120	000012				TL$EXT:!			;SIXBIT EXTENSION
   121	000012				TL$END:!
   122			000013		TTLSIZ==TL$END+1		;SIZE OF A TITLE BLOCK
   123	000012'					DEPHASE
   124
   125					;NOW DEFINE THE ENTRY, GLOBAL REQUEST, AND COMMON LISTS
   126
   127	000000				PHASE	0
   128
   129	000000				EG$BAK:!			;LH LINK BACKWARDS
   130	000000				EG$NXT:!BLOCK	1		;RH LINK FORWARDS
   131	000001				EG$FLG:!BLOCK	1		;FLAGS
   132	000002				EG$NAM:!BLOCK	1		;SIXBIT NAME
   133	000003				EG$TTL:!			;RH LINK TO TITLE BLOCK
   134	000003				EG$ORD:!EG$END:!		;LH LINK TO NEXT ENTRY OR GRQ IN ALPHA ORDER
   135			000004		EGLSIZ==EG$END+1		;SIZE OF AN EGR BLOCK
   136	000015'					DEPHASE
   137
   138					;DEFINE THE FLAGS USED IN THESE BLOCKS
   139
   140			400000		FT$LIB==1B18			;ON IF THIS IS FROM A LIBRARY 
   141			200000		FT$REF==1B19			;ON IF THIS LIB MODULE HAS BEEN REFERENCED
   142			100000		FT$SCN==1B20			;THIS LIBRARY MODULE HAS BEEN SCANED

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 3
XGLOB	MAC	19-MAR-76 13:24		MAIN PROGRAM

   143						SUBTTL	MAIN PROGRAM
   144
   145	000015'	634 01 0 00 000001 	XGLOB:	TDZA	T1,T1		;NORML ENTRY
   146	000016'	201 01 0 00 000001 		MOVEI	T1,1		;CCL ENTRY
   147	000017'	047 00 0 00 000000 		RESET			;STOP THE WORLD
   148	000020'	202 01 0 00 002013'		MOVEM	T1,OFFSET	;SAVE START OFFSET FOR SCAN
   149	000021'	202 00 0 00 001724'		MOVEM	.SGNAM,SGNAM	;SAVE INITIAL SPECS
   150	000022'	202 07 0 00 001725'		MOVEM	.SGPPN,SGPPN
   151	000023'	202 11 0 00 001726'		MOVEM	.SGDEV,SGDEV
   152	000024'	202 17 0 00 001727'		MOVEM	.SGLOW,SGLOW
   153	000025'	201 01 0 00 000047'		MOVEI	T1,XGLOB2	;RESET START ADDR
   154	000026'	542 01 0 00 000120 		HRRM	T1,.JBSA	;SO ^C START WILL WORK
   155	000027'	200 17 0 00 004143'	XGLOB1:	MOVE	P,[IOWD PDSIZ,PDLIST] ;INIT PUSHDOWN LIST
   156	000030'	402 00 0 00 002014'		STORE	T1,F.ZER,L.ZER,0 ;CLEAR CORE
   157	000031'	200 01 0 00 004144'
   158	000032'	251 01 0 00 004142'
   159
   160	000033'	041 03 0 00 000000 		INIT	TTY,.IOASC	;GET THE TTY FOR OUTPUT
   161	000034'	64 64 71 00 00 00 		SIXBIT	/TTY/
   162	000035'	004140'	000000			XWD	TOBHR,0
   163	000036'	254 04 0 00 000000 		HALT			;CAN'T HAPPEN!!
   164	000037'	065 03 0 00 000002 		OUTBUF	TTY,2		;SETUP BUFFERS NOW
   165	000040'	067 03 0 00 000000 		OUTPUT	TTY,		;DUMMY OUTPUT
   166						MOVE	T1,[3,,[0	;ARGBLOCK FOR SCAN -- NO RESCAN
   167							XWD OFFSET,'XGB';STARTING OFFSET, CCL NAME
   168							XWD 0,TOCHAR	;DEFAULT INPUT, BUFFERED OUTPUT ROUTINE
   169							]
   170	000041'	200 01 0 00 004150'			]
   171	000042'	260 17 0 00 000000*		CALL	.ISCAN		;INITIALIZE THE SCANNER
   172	000043'	200 01 0 00 000121 		MOVE	T1,.JBFF	;SAVE INITIAL CORE END
   173	000044'	504 01 0 00 000044 		HRL	T1,.JBREL	;AND END OF CORE
   174	000045'	202 01 0 00 002012'		MOVEM	T1,SAVJFF	;...
   175	000046'	254 00 0 00 000051'		JRST	GBXSCN
   176
   177	000047'	047 00 0 00 000000 	XGLOB2:	RESET			;HERE ON ^C START
   178	000050'	254 00 0 00 000027'		JRST	XGLOB1

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 4
XGLOB	MAC	19-MAR-76 13:24		MAIN PROGRAM

   179	000051'	400 11 0 00 000000 	GBXSCN:	SETZ	F,		;CLEAR THE FLAGS
   180	000052'	260 17 0 00 000364'		CALL	UPSCN		;MAKE SURE HISEG IS THERE
   181	000053'	201 12 0 00 004134'		MOVEI	B,LSTHED	;INITIALIZE THE POINTER
   182						MOVE	T1,[11,[IOWD GBXSWL,GBXSWN ;ARGBLOCK FOR .TSCAN
   183							XWD GBXSWD,GBXSWM
   184							EXP GBXSWP	;POINTER TO SWITCH POINTERS
   185							EXP	-1	;USE JOB TABLE FOR NAME
   186							XWD CLRANS,CLRFIL
   187							XWD ALCIN,ALCOUT
   188							XWD 0,0		;MEMSTK,APLSTK
   189							0
   190							EXP SWTSTO	;STORE SWITCHES
   191							]
   192	000054'	200 01 0 00 004162'			]
   193	000055'	260 17 0 00 000000*		CALL	.TSCAN		;PARSE A LINE
   194	000056'	434 11 0 00 004073'		IOR	F,FLAGS		;GET THE FLAGS
   195	000057'	260 17 0 00 000144'		CALL	SCNCHK		;LEGALIZE THE SCAN BLOCKS
   196	000060'	402 00 0 00 002030'		SETZM	WLDTMP		;CLEAR TEMP STORE FOR WILD
   197	000061'	201 01 0 00 004075'		MOVEI	T1,O.AREA	;BEGINNING OF OUTPUT SPEC
   198	000062'	201 02 0 00 002031'		MOVEI	T2,OPNBLK	;ADDRESS OF 3 WORD OPEN BLOCK
   199	000063'	200 03 0 00 004163'		MOVE	T3,[.RBSIZ+1,,LKPBLK] ;SIZE,,ADDRESS OF LOOKUP BLOCK
   200	000064'	556 03 0 00 002022'		HLRZM	T3,LKPBLK	;SET SIZE INTO LOOKUP BLOCK
   201	000065'	260 17 0 00 000000*		CALL	.STOPN		;CONVERT SCAN BLOCK TO OPEN/ENTER BLOCK
   202						 JRST	[MOVE T1,OPNBLK+.OPDEV ;GET DEVICE
   203							DEVCHR T1,	;FIND WHAT SORT IT IS
   204							TXNE T1,DV.DIR	;HAVE A DIRECTORY?
   205							JRST E.WOI	;YES, ERROR THEM
   206	000066'	254 00 0 00 004164'			JRST DOXGLB]	;NO, FORGE AHEAD
   207
   208	000067'	554 01 0 00 002032'	DOXGLB:	HLRZ	T1,OPNBLK+.OPDEV;GET THE DEVICE NAME
   209	000070'	306 01 0 00 646471 		CAIN	T1,'TTY'	;TTY IS DIFFERENT
   210						 JRST	[TLO	F,FL.TTO;YES, OUTPUT TO TTY
   211	000071'	254 00 0 00 004171'			JRST	DOXGL1]	;BUT INPUT IS THE SAME
   212	000072'	201 01 0 00 000000 		MOVEI	T1,.IOASC	;OPEN OUTPUT IN ASCII
   213	000073'	436 01 0 00 002031'		IORM	T1,OPNBLK+.OPMOD
   214	000074'	205 01 0 00 002014'		MOVSI	T1,OUTBHR	;BUFFER HEADER
   215	000075'	202 01 0 00 002033'		MOVEM	T1,OPNBLK+.OPBUF
   216	000076'	050 02 0 00 002031'		OPEN	OCH,OPNBLK	;GET THE DEVICE
   217	000077'	254 00 0 00 000234'		 JRST	E.OPN		;CAN'T
   218	000100'	077 02 0 00 002022'		ENTER	OCH,LKPBLK	;WRITE THE FILE
   219	000101'	254 00 0 00 000243'		 JRST	E.ENT		;CAN'T
   220	000102'	201 01 0 00 002034'		MOVEI	T1,OUTBUF	;SET UP BUFFERS
   221	000103'	250 01 0 00 000121 		EXCH	T1,.JBFF
   222	000104'	065 02 0 00 000002 		OUTBUF	OCH,NOBUF
   223	000105'	202 01 0 00 000121 		MOVEM	T1,.JBFF	;RESTORE JOBFF
   224					;	SETZ	T1,		;GET MY RUNTIME
   225					;	RUNTIM	T1,
   226					;	MOVEM	T1,TIMEON
   227
   228					;HERE TO GET NEXT INPUT FILE
   229
   230	000106'	260 17 0 00 000364'	DOXGL1:	CALL	UPSCN		;MAKE SURE SCAN IS THERE
   231						MOVE	T1,[4,,[INBEG,,INEND ;INPUT START,INPUT END
   232							OPNBLK,,LKPBLK	;
   233							FBLKSZ,,.RBSIZ+1;INPUT SIZE,,OUTPUT SIZE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 4-1
XGLOB	MAC	19-MAR-76 13:24		MAIN PROGRAM

   234							EXP 1B0+WLDTMP
   235							]
   236	000107'	200 01 0 00 004177'			]
   237	000110'	260 17 0 00 000000*		CALL	.LKWLD		;FIND A FILE
   238	000111'	254 00 0 00 000132'		 JRST	DOXGLF		;FINISH UP, NO MORE FILES
   239	000112'	540 11 0 00 002030'		HRR	F,WLDTMP	;GET ADDRESS OF CURRENT SCAN BLOCK
   240	000113'	201 01 0 00 000014 		MOVEI	T1,.IOBIN	;DO THE INPUT IN BINARY
   241	000114'	436 01 0 00 002031'		IORM	T1,OPNBLK+.OPMOD
   242	000115'	201 01 0 00 002017'		MOVEI	T1,INPBHR	;INPUT HEADER
   243	000116'	202 01 0 00 002033'		MOVEM	T1,OPNBLK+.OPBUF
   244	000117'	050 01 0 00 002031'		OPEN	ICH,OPNBLK	;OPEN THE DEVICE
   245	000120'	254 00 0 00 000234'		 JRST	E.OPN		;CAN'T
   246	000121'	076 01 0 00 002022'		LOOKUP	ICH,LKPBLK
   247	000122'	254 00 0 00 000251'		 JRST	E.LKP
   248	000123'	201 01 0 00 002442'		MOVEI	T1,INPBUF	;SETUP BUFFERS
   249	000124'	250 01 0 00 000121 		EXCH	T1,.JBFF
   250	000125'	064 01 0 00 000006 		INBUF	ICH,NIBUF
   251	000126'	202 01 0 00 000121 		MOVEM	T1,.JBFF
   252
   253	000127'	260 17 0 00 000355'		CALL	DWNSCN		;DOWN WITH HISEG
   254	000130'	260 17 0 00 000440'		CALL	DOFILE		;PROCESS THE FILE
   255	000131'	254 00 0 00 000106'		JRST	DOXGL1		;DO NEXT FILE
   256
   257	000132'	260 17 0 00 000355'	DOXGLF:	CALL	DWNSCN		;.TOUTS IS IN THE LOWSEG
   258	000133'	260 17 0 00 001223'		CALL	LISTIT		;OUTPUT THE LISTING
   259	000134'	603 11 0 00 100000 		TLNE	F,FL.TTO	;IF TTY OUTPUT
   260	000135'	254 00 0 00 000142'		 JRST	XGLF1		;SKIP AHEAD
   261	000136'	201 01 0 00 000014 		MOVEI	T1,.CHFFD	;BOOT TO NEW PAGE AT END
   262	000137'	260 17 0 00 001650'		CALL	OBYTE		;...
   263	000140'	070 02 0 00 000000 		CLOSE	OCH,
   264	000141'	071 02 0 00 000000 		RELEASE	OCH,
   265	000142'	071 01 0 00 000000 	XGLF1:	RELEASE	ICH,
   266					;	SETZ	T1,
   267					;	RUNTIM	T1,		;SEE HOW LONG IT TOOK
   268					;	SUB	T1,TIMEON	;IN MILLISECS
   269					;	CALL	.TTIME		;TYPE THE TIME
   270					;	MOVEI	T1,[ASCIZ\ CPU TIME
   271					;\]
   272					;	CALL	.TSTRG		;OUTPUT IT
   273	000143'	254 00 0 00 000051'		JRST	GBXSCN		;NEXT COMMAND

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 5
XGLOB	MAC	19-MAR-76 13:24		SCNCHK VERIFIES SCANNED COMMAND

   274						SUBTTL	SCNCHK VERIFIES SCANNED COMMAND
   275
   276	000144'	260 17 0 00 000000*	SCNCHK:	CALL	.SAVE1		;
   277	000145'	201 02 0 00 004075'		MOVEI	T2,O.AREA	;GET POINTER TO OUTPUT SPEC
   278	000146'	205 01 0 00 546064 		MOVSI	T1,'LPT'	;YES, GET DEFAULT DEVICE
   279	000147'	336 00 0 02 000000 		SKIPN	.FXDEV(T2)	;DID USER SPECIFY ONE?
   280	000150'	202 01 0 02 000000 		 MOVEM	T1,.FXDEV(T2)	;NO, USE DEFAULT
   281	000151'	336 05 0 00 004131'		SKIPN	P1,INBEG	;GET ADDRESS OF INPUT SPEC
   282	000152'	254 00 0 00 000220'		 JRST	E.NIS		;WASN'T ANY?
   283	000153'	336 01 0 05 000001 		SKIPN	T1,.FXNAM(P1)	;WAS THERE A NAME?
   284	000154'	254 00 0 00 000203'		 JRST	E.NFI		;NO
   285	000155'	336 00 0 02 000001 		SKIPN	.FXNAM(T2)	;WAS THERE AN OUTPUT NAME?
   286	000156'	202 01 0 02 000001 		 MOVEM	T1,.FXNAM(T2)	;NO, USE FIRST INPUT NAME 
   287	000157'	205 01 0 00 777777 		MOVSI	T1,-1		;SET TO CHECK NAME
   288	000160'	612 01 0 02 000003 		TDNE	T1,.FXEXT(T2)	;WAS EXTENSION GIVEN?
   289	000161'	254 00 0 00 000166'		 JRST	SCNCK1		;YES, DON'T DIDDLE
   290	000162'	200 04 0 02 000004 		MOVE	T4,.FXMOD(T2)	;NO, GET FLAG
   291	000163'	525 01 0 00 546364 		HRLOI	T1,'LST'	;INCASE DEFAULT NEEDED
   292	000164'	603 04 0 00 200000 		TXNE	T4,FX.NUL	;EXPLICITLY NULL?
   293	000165'	202 01 0 02 000003 		 MOVEM	T1,.FXEXT(T2)	;NO, STORE DEFAULT
   294
   295	000166'	336 00 0 05 000001 	SCNCK1:	SKIPN	.FXNAM(P1)	;INPUT NAME SPECIFIED?
   296	000167'	254 00 0 00 000203'		 JRST	E.NFI
   297	000170'	205 01 0 00 777777 		MOVSI	T1,-1		;
   298	000171'	612 01 0 05 000003 		TDNE	T1,.FXEXT(P1)	;GIVEN?
   299	000172'	254 00 0 00 000177'		 JRST	SCNCK2		;YES, CHECK NEXT BLOCK
   300	000173'	200 02 0 05 000004 		MOVE	T2,.FXMOD(P1)	;GET FLAGS
   301	000174'	525 01 0 00 624554 		HRLOI	T1,'REL'	;INCASE NEEDED
   302	000175'	603 02 0 00 200000 		TXNE	T2,FX.NUL	;SPECIFICALLY NULL?
   303	000176'	202 01 0 05 000003 		 MOVEM	T1,.FXEXT(P1)	;NO, STORE DEFAULT
   304	000177'	316 05 0 00 004132'	SCNCK2:	CAMN	P1,INEND	;DONE SCANNING INPUT BLOCKS?
   305	000200'	263 17 0 00 000000 		 RETURN			;YES
   306	000201'	271 05 0 00 000033 		ADDI	P1,FBLKSZ	;NO, MOVE TO NEXT ONE
   307	000202'	254 00 0 00 000166'		JRST	SCNCK1		;CHECK IT OUT
   308
   309	000203'	265 01 0 00 000000*	E.NFI:	M.FAIL	(NULL FILENAME ILLEGAL)
   310	000211'	265 01 0 00 000203*	E.WOI:	M.FAIL	(WILD CARD ON OUTPUT ILLEGAL)
   311	000220'	265 01 0 00 000211*	E.NIS:	M.FAIL	(NULL INPUT SPEC ILLEGAL)
   312	000226'	265 01 0 00 000220*	E.TMO:	M.FAIL	(TOO MANY OUTPUT SPECS)
   313	000234'	200 07 0 00 002032'	E.OPN:	MOVE	N,OPNBLK+.OPDEV	;GET DEVICE NAME
   314	000235'	265 01 0 00 000000*		M.FAIN	(OPEN ERROR FOR DEVICE )
   315	000243'	201 07 0 00 004075'	E.ENT:	MOVEI	N,O.AREA	;POINT AT THE SPEC
   316	000244'	265 01 0 00 000000*		M.FAIF	(ENTER ERROR FOR )
   317	000251'	260 17 0 00 000000*	E.LKP:	CALL	E.DFL
   318	000252'	200 17 0 00 004143'	SCNERR:	MOVE	P,[IOWD PDSIZ,PDLIST] ;RESET PDLIST
   319	000253'	260 17 0 00 000000*		CALL	.CLRBF##	;CLEAR THE INPUT TYPE AHEAD
   320	000254'	254 00 0 00 000051'		JRST	GBXSCN		;FORGE ONWARD

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 6
XGLOB	MAC	19-MAR-76 13:24		CLRANS/ALCOUT/ALCINP

   321						SUBTTL CLRANS/ALCOUT/ALCINP
   322
   323	000255'	331 01 0 00 004133'	CLRFIL:	SKIPL	T1,INXTZ	;BLOCK ALLOC?
   324	000256'	254 00 0 00 000265'		 JRST	CLRFL1		;NO
   325	000257'	553 00 0 00 000001 		HRRZS	T1		;YES, CLEAR LH
   326	000260'	550 02 0 00 002012'		HRRZ	T2,SAVJFF	;START OF LIST
   327	000261'	316 01 0 00 000002 		CAMN	T1,T2		;THIS THE FIRST?
   328	000262'	402 00 0 00 004131'		 SETZM	INBEG		;YES, START OVER
   329	000263'	275 01 0 00 000033 		SUBI	T1,FBLKSZ	;COMPUTE END OF CORE
   330	000264'	202 01 0 00 000121 		MOVEM	T1,.JBFF
   331	000265'	402 00 0 00 004133'	CLRFL1:	SETZM	INXTZ
   332	000266'	263 17 0 00 000000 		RETURN
   333
   334	000267'				CLRANS:
   335	000267'	402 00 0 00 004073'		STORE	T1,SCN.F,SCN.Z,0 ;CLEAR SCANNER INFO
   336	000270'	200 01 0 00 004200'
   337	000271'	251 01 0 00 004137'
   338	000272'	200 01 0 00 002012'		MOVE	T1,SAVJFF	;RESTORE JOBFF
   339	000273'	552 01 0 00 000121 		HRRZM	T1,.JBFF
   340	000274'	557 00 0 00 000001 		HLRZS	T1		;GET JOBREL BACK
   341	000275'	312 01 0 00 000044 		CAME	T1,.JBREL	;IS IT THE SAME?
   342	000276'	047 01 0 00 000011 		CORE	T1,		;NO, SHRINK IT BACK
   343	000277'	255 00 0 00 000000 		 JFCL			;IGNORE THE ERROR
   344	000300'	263 17 0 00 000000 		RETURN			;BACK TO SCAN
   345
   346	000301'	201 01 0 00 004075'	ALCOUT:	MOVEI	T1,O.AREA	;GET ADDRESS
   347	000302'	201 02 0 00 000032 		MOVEI	T2,O.SIZE	;AND SIZE
   348	000303'	476 00 0 00 004137'		SETOM	OUTDON		;FLAG OUTPUT SIDE DONE
   349	000304'	263 17 0 00 000000 		RETURN
   350
   351	000305'	335 00 0 00 004133'	ALCIN:	SKIPGE	INXTZ		;FUNNY IN PROGRESS?
   352	000306'	254 00 0 00 000317'		 JRST	ALCIN1		;YES
   353	000307'	201 01 0 00 000033 		MOVEI	T1,FBLKSZ	;SIZE OF BLOCK
   354	000310'	260 17 0 00 000340'		CALL	GETCOR		;GET SOME SPACE
   355	000311'	336 00 0 00 004131'		SKIPN	INBEG		;FIRST ONE?
   356	000312'	202 01 0 00 004131'		 MOVEM	T1,INBEG	;YES, REMEMBER WHERE IT IS
   357	000313'	202 01 0 00 004132'		MOVEM	T1,INEND	;SAVE ADDRESS OF LAST
   358	000314'	540 11 0 00 000001 	ALCIN2:	HRR	F,T1		;BLOCK ADDRESS INTO F
   359	000315'	201 02 0 00 000032 		MOVEI	T2,.FXLEN	;RETURN SIZE
   360	000316'	263 17 0 00 000000 		RETURN
   361	000317'	553 01 0 00 004133'	ALCIN1:	HRRZS	T1,INXTZ	;CLEAR FUNNY FLAG
   362	000320'	254 00 0 00 000314'		JRST	ALCIN2		;BLOCK IS ALREADY ALLOCATED
   363
   364	000321'	331 00 0 00 004137'	SWTSTO:	SKIPL	OUTDON		;GOT OUTPUT?
   365	000322'	263 17 0 00 000000 		 RETURN			;NO,IGNORE
   366	000323'	332 00 0 00 000000*		SKIPE	F.NAM		;GLOBAL SWTCHES?
   367	000324'	254 00 0 00 000331'		 JRST	SWTLOC		;NO
   368	000325'	201 01 0 00 400000 		MOVX	T1,SW.LIB	;YES, GET LIB SWITCH
   369	000326'	436 01 0 00 004073'		IORM	T1,FLAGS
   370	000327'	436 01 0 00 004074'		IORM	T1,FLAGS+1
   371	000330'	263 17 0 00 000000 		RETURN
   372	000331'	336 01 0 00 004133'	SWTLOC:	SKIPN	T1,INXTZ	;BLOCK SET UP?
   373	000332'	254 00 0 00 000335'		 JRST	SWTLC1		;NO
   374	000333'	476 00 0 01 000032 	SWTLC2:	SETOM	.FXLIB(T1)	;STORE FLAG ON
   375	000334'	263 17 0 00 000000 		RETURN

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 6-1
XGLOB	MAC	19-MAR-76 13:24		CLRANS/ALCOUT/ALCINP

   376	000335'	260 17 0 00 000305'	SWTLC1:	CALL	ALCIN		;GET A BLOCK
   377	000336'	562 01 0 00 004133'		HRROM	T1,INXTZ	;FLAG FUNNY
   378	000337'	254 00 0 00 000333'		JRST	SWTLC2		;GO STORE
   379
   380					;GETCOR
   381					;CALL:	MOVEI  	T1,WORDS
   382					;	CALL	GETCOR
   383					;	*RETURN T1=ADDR OF CORE*
   384
   385	000340'	200 02 0 00 000001 	GETCOR:	MOVE	T2,T1		;COPY # WORDS
   386	000341'	200 01 0 00 000121 		MOVE	T1,.JBFF	;GET ADDRESS OF BLOCK
   387	000342'	273 02 0 00 000121 		ADDB	T2,.JBFF	;UPDATE NEW END OF CORE
   388	000343'	317 02 0 00 000044 		CAMG	T2,.JBREL	;OK?
   389	000344'	263 17 0 00 000000 		 RETURN			;YES, IN MY MEMORY
   390	000345'	047 02 0 00 000011 		CORE	T2,		;NO, GET SOME MORE
   391	000346'	334 00 0 00 000000 		 SKIPA			;???CAN'T
   392	000347'	263 17 0 00 000000 		RETURN
   393	000350'	260 17 0 00 000364'		CALL	UPSCN		;SEE ABOUT THE HISEG
   394						MOVEI	T1,[ASCIZ\?GBXNEC NOT ENOUGH CORE
   395	000351'	201 01 0 00 004201'	\]
   396	000352'	260 17 0 00 000000*		CALL	.TSTRG
   397	000353'	260 17 0 00 000000*		CALL	.MNRET
   398	000354'	254 00 0 00 000353'		JRST	.-1		;NO HOPE
   399

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 7
XGLOB	MAC	19-MAR-76 13:24		CLRANS/ALCOUT/ALCINP

   400					IFN FT2SEG,<
   401						DWNSCN=	.POPJ		;WE'RE UP THERE TOO!
   402						UPSCN=	.POPJ
   403					>
   404					IFE FT2SEG,<	;ARE WE IN THE LOWSEGMENT?
   405	000355'	335 00 0 00 000437'	DWNSCN:	SKIPGE	SCNDWN		;WHERE IS THE LITTLE RASCAL?
   406	000356'	263 17 0 00 000000 		RETURN			;HE WENT AWAY
   407	000357'	205 01 0 00 000001 		MOVSI	T1,1		;STILL HERE,
   408	000360'	047 01 0 00 000011 		CORE	T1,		;BUT THIS SHOULD GET HIM
   409	000361'	263 17 0 00 000000 		RETURN			;DIDN'T? SNH
   410	000362'	476 00 0 00 000437'		SETOM	SCNDWN		;SAY SCAN HAS GONE AWAY
   411	000363'	263 17 0 00 000000 		RETURN			;AND GO AWAY
   412
   413	000364'	331 00 0 00 000437'	UPSCN:	SKIPL	SCNDWN		;IS SCAN MISSING?
   414	000365'	263 17 0 00 000000 		 RETURN			;NO, HE'S RIGHT ABOVE ME
   415	000366'	202 17 0 00 000436'		MOVEM	17,SAV17	;SAVE ACS OVER GETSEG UUO
   416	000367'	201 17 0 00 000417'		MOVEI	17,SAV0		;STASH THEM AWAY
   417	000370'	251 17 0 00 000435'		BLT	17,SAV0+16	;...
   418	000371'	200 01 0 00 001726'		MOVE	T1,SGDEV	;GET DEVICE
   419	000372'	202 01 0 00 000411'		MOVEM	T1,SEGBLK	;PUT IN SEG BLOCK
   420	000373'	200 01 0 00 001724'		MOVE	T1,SGNAM	;DITTO FOR THE REST
   421	000374'	202 01 0 00 000412'		MOVEM	T1,SEGBLK+1
   422	000375'	402 00 0 00 000413'		SETZM	SEGBLK+2
   423	000376'	402 00 0 00 000414'		SETZM	SEGBLK+3
   424	000377'	200 01 0 00 001725'		MOVE	T1,SGPPN
   425	000400'	202 01 0 00 000415'		MOVEM	T1,SEGBLK+4
   426	000401'	402 00 0 00 000416'		SETZM	SEGBLK+5
   427	000402'	201 01 0 00 000411'	SEGAGN:	MOVEI	T1,SEGBLK
   428	000403'	047 01 0 00 000040 		GETSEG	T1,
   429	000404'	334 00 0 00 000000 		SKIPA
   430						JRST	[SETZM	SCNDWN
   431							MOVSI	17,SAV0
   432							BLT	17,17
   433	000405'	254 00 0 00 004207'			RETURN]
   434						OUTSTR	[ASCIZ\?XGBNGS CANNOT GET HISEG BACK
   435	000406'	051 03 0 00 004213'	\]
   436	000407'	047 01 0 00 000012 		EXIT	1,
   437	000410'	254 00 0 00 000402'		JRST	SEGAGN
   438	000411'				SEGBLK:	BLOCK	6	;ARGLIST FOR GETSEG UUUO
   439	000417'				SAV0:	BLOCK	20	;SAVE ACS OVER GETSEG UUO
   440			000436'			SAV17=.-1
   441	000437'				SCNDWN:	BLOCK	1	;-1 WHEN SCAN HAS TAKEN A VACATION
   442					>;END IFE FT2SEG

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 8
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   443						SUBTTL	DO ONE FILE
   444
   445	000440'	260 17 0 00 000000*	DOFILE:	CALL	.SAVE2		;NEED P1,P2
   446	000441'	402 00 0 00 004072'		SETZM	HSEGOR		;CLEAR ORIGINS
   447	000442'	402 00 0 00 004071'		SETZM	LSEGOR		;...
   448	000443'	621 11 0 00 604000 		TLZ	F,FL.NAM!FL.SKP!FL.HSE	;CLEAR VITAL FLAGS
   449	000444'	265 02 0 00 000530'	FILREAD:JSP	T2,IBYTEJ	;GET NEXT BLOCK TYPE
   450	000445'	554 05 0 00 000001 		HLRZ	P1,T1		;GET BLOCK CODE
   451	000446'	550 06 0 00 000001 		HRRZ	P2,T1		;AND SIZE
   452	000447'	306 05 0 00 000014 		CAIN	P1,14		;IF INDEX BLOCK
   453	000450'	254 00 0 00 000533'		 JRST	RDNDXB		;DO SPECIAL
   454	000451'	302 05 0 00 000400 		CAIE	P1,400		;CHECK FOR F40
   455	000452'	306 05 0 00 000401 		CAIN	P1,401		;OR MANTIS
   456	000453'	254 00 0 00 000675'		 JRST	RDF40		;YES
   457	000454'	205 03 0 00 777766 		MOVSI	T3,-NBLKTY	;AOBJN
   458	000455'	312 05 0 03 000504'		CAME	P1,BLKTYP(T3)	;THIS IT/
   459	000456'	253 03 0 00 000455'		 AOBJN	T3,.-1		;NO, LOOP FOR ALL
   460	000457'	325 03 0 00 000465'		 JUMPGE	T3,FILRD4	;JUMP IF NOT FOUND YET
   461	000460'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;SKIP RELOC WORD
   462	000461'	305 05 0 00 000100 		CAIGE	P1,100		;LEGAL BLOCK TYPE (OLDSTYLE)
   463	000462'	260 17 0 00 001066'		 CALL	COUNT		;YES, GET CORRECT COUNT
   464	000463'	367 06 1 03 000516'		SOJG	P2,@BLKDIS(T3)	;COUNT RELOC WORD AND JUMP OFF
   465	000464'	254 00 0 00 000444'		JRST	FILREAD		;NULL BLOCK (RELOC WORD ONLY)
   466	000465'	301 05 0 00 000100 	FILRD4:	CAIL	P1,100		;OLD TYPE LEGAL?
   467	000466'	254 00 0 00 000473'		 JRST	FILRD2		;NO, MUST CHECK SOME MORE
   468	000467'	260 17 0 00 001066'	FILRD1:	CALL	COUNT		;COMPUTE CORRECT SIZE
   469	000470'	361 06 0 00 000444'	FILRD3:	SOJL	P2,FILREAD	;JUMP IF DONE
   470	000471'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   471	000472'	254 00 0 00 000470'		JRST	FILRD3		;MORE
   472
   473	000473'	301 05 0 00 001000 	FILRD2:	CAIL	P1,1000		;IS IT A NEW BLOCK TYPE?
   474	000474'	301 05 0 00 001777 		 CAIL	P1,1777		;...
   475	000475'	334 00 0 00 000000 		  SKIPA			;NO, SEE IF ASCII
   476	000476'	254 00 0 00 000470'		JRST	FILRD3		;YES, SKIP IT
   477	000477'	307 05 0 00 003777 		CAIG	P1,3777		;IS IT ASCII?
   478	000500'	254 00 0 00 000751'		 JRST	E.BLKT		;NO, ILLEGAL TYPE
   479	000501'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   480	000502'	326 01 0 00 000500'		JUMPN	T1,.-2		;WATCH FOR THE 'Z' IN ASCIZ
   481	000503'	254 00 0 00 000444'		JRST	FILREAD		;GET NEXT BLOCK
   482
   483	000504'	000000	000004		BLKTYP:	EXP	4		;ENTRY BLOCK
   484	000505'	000000	001001			EXP	1001		;ENTRY BLOCK
   485	000506'	000000	001002			EXP	1002		;LONG ENTRY BLOCK
   486	000507'	000000	000003			EXP	3		;HISEG BLOCK
   487	000510'	000000	000006			EXP	6		;NAME BLOCK
   488	000511'	000000	001003			EXP	1003		;NAME BLOCK
   489	000512'	000000	000002			EXP	2		;SYMBOL
   490	000513'	000000	000020			EXP	20		;COMMON ALLOCATION
   491	000514'	000000	000005			EXP	5		;END BLOCK
   492	000515'	000000	001040			EXP	1040		;END BLOCK
   493			000012		NBLKTY==.-BLKTYP
   494
   495	000516'	000000	000622'		BLKDIS:	EXP	RDNTRY
   496	000517'	000000	000622'			EXP	RDNTRY
   497	000520'	000000	000622'			EXP	RDNTRY

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 8-1
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   498	000521'	000000	000537'			EXP	RDHSEG
   499	000522'	000000	000641'			EXP	RDNAME
   500	000523'	000000	000641'			EXP	RDNAME
   501	000524'	000000	000565'			EXP	RDSYMB
   502	000525'	000000	000550'			EXP	RDCOMM
   503	000526'	000000	000577'			EXP	RDEND
   504	000527'	000000	000577'			EXP	RDEND
   505
   506	000530'	260 17 0 00 001667'	IBYTEJ:	CALL	IBYTE		;GET A BYTE
   507	000531'	263 17 0 00 000000 		RETURN			;EOF
   508	000532'	254 00 0 02 000000 		JRST	(T2)		;OK, RETURN
   509
   510	000533'	550 03 0 00 000001 	RDNDXB:	HRRZ	T3,T1		;GET SIZE OF BLOCK
   511	000534'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;SKIP ONE
   512	000535'	367 03 0 00 000534'		SOJG	T3,.-1		;SKIP THEM ALL
   513	000536'	254 00 0 00 000444'		JRST	FILREAD		;CONTINUE
   514
   515	000537'	661 11 0 00 004000 	RDHSEG:	TLO	F,FL.HSE	;FLAG HISEG SEEN
   516	000540'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET HIGH SEG ORIGIN
   517	000541'	370 00 0 00 000006 		SOS	P2		;COUNT HISEG ORIGIN
   518	000542'	402 00 0 00 004071'		SETZM	LSEGOR		;CLEAR IN CASE NONE
   519	000543'	552 01 0 00 004072'		HRRZM	T1,HSEGOR	;SAVE HISEG ORIGIN
   520	000544'	361 06 0 00 000444'		SOJL	P2,FILREAD	;JUMP IF NO 2ND WORD
   521	000545'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET LOWSEG ORIGIN
   522	000546'	552 01 0 00 004071'		HRRZM	T1,LSEGOR	;...
   523	000547'	254 00 0 00 000470'		JRST	FILRD3		;CONTINUE
   524
   525					;HERE TO READ COMMON ALLOCATION BLOCK
   526
   527	000550'	265 02 0 00 000530'	RDCOMM:	JSP	T2,IBYTEJ	;GET NAME
   528	000551'	370 00 0 00 000006 		SOS	P2
   529	000552'	260 17 0 00 000760'		CALL	R50T6		;CONVERT TO SIXBIT
   530	000553'	260 17 0 00 001152'		CALL	NTRCOM		;ENDTER IN THE LIST
   531						 JRST	[JSP T2,IBYTEJ	;ALREADY DEFINED IN THIS MODULE
   532	000554'	254 00 0 00 004222'			JRST RDCOM1]	;IGNORE IT
   533	000555'	200 05 0 00 000001 		MOVE	P1,T1		;REMEMBER WHERE BLOCK IS
   534	000556'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET SIZE
   535	000557'	554 02 0 12 000006 		HLRZ	T2,TL$COM(B)	;GET TOTAL COMMON ALLOC SO FAR
   536	000560'	271 02 0 01 000000 		ADDI	T2,(T1)		;TOTAL NEW
   537	000561'	506 02 0 12 000006 		HRLM	T2,TL$COM(B)	;SAVE
   538	000562'	506 01 0 05 000001 		HRLM	T1,EG$FLG(P1)	;STORE COMMON ALLOCATION IN COMMON BLOC
   539	000563'	363 06 0 00 000444'	RDCOM1:	SOJLE	P2,FILREAD	;EXIT IF ENOUGH
   540	000564'	254 00 0 00 000550'		JRST	RDCOMM		;THERE IS MORE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 9
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   541	000565'	265 02 0 00 000530'	RDSYMB:	JSP	T2,IBYTEJ	;GET THE SYMBOL
   542	000566'	135 02 0 00 004224'		LDB	T2,[POINT 4,T1,3] ;GET CODE
   543	000567'	302 02 0 00 000014 		CAIE	T2,14		;GLOBAL REQUEST?
   544	000570'	254 00 0 00 000573'		 JRST	RDSYM1		;***NO, IGNORE THIS SYMBOL
   545	000571'	260 17 0 00 000760'		CALL	R50T6		;CONVER TO SIXBIT IN T1
   546	000572'	260 17 0 00 001143'		CALL	NTRGRQ		;ENTER THIS REQUEST INTO THE CHAIN
   547
   548	000573'	361 06 0 00 000444'	RDSYM1:	SOJL	P2,FILREAD	;COUNT SYMBOL AND JUMP IF AT END OF BLOCK
   549	000574'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;SKIP VALUE
   550	000575'	367 06 0 00 000565'		SOJG	P2,RDSYMB	;JUMP IF MORE SYMBOLS
   551	000576'	254 00 0 00 000444'		JRST	FILREAD		;NO, READ NEXT BLOCK TYPE
   552
   553	000577'	621 11 0 00 200000 	RDEND:	TLZ	F,FL.SKP	;CLEAR SKIP FLAG
   554	000600'	627 11 0 00 400000 		TLZN	F,FL.NAM	;HAVE A NAME BLOCK?
   555	000601'	254 00 0 00 000614'		 JRST	RDEND1		;NO NOT TODAY
   556	000602'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET FIRST DATA WORD
   557	000603'	370 00 0 00 000006 		SOS	P2		;COUNT IT
   558	000604'	627 11 0 00 004000 		TLZN	F,FL.HSE	;YES, HAVE A HISEG BLOCK?
   559	000605'	254 00 0 00 000617'		 JRST	RDEND2		;NO, LOWSEG ONLY
   560	000606'	274 01 0 00 004072'		SUB	T1,HSEGOR	;YES, COMPUTE HISEG SIZE
   561	000607'	506 01 0 12 000005 		HRLM	T1,TL$SIZ(B)	;SAVE IN TITLE BLOCK
   562	000610'	361 06 0 00 000444'		SOJL	P2,FILREAD	;JUMP IF DONE
   563	000611'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET LOWSEG BREAK
   564	000612'	274 01 0 00 004071'		SUB	T1,LSEGOR	;COMPUTE SIZE
   565	000613'	542 01 0 12 000005 		HRRM	T1,TL$SIZ(B)
   566	000614'	361 06 0 00 000444'	RDEND1:	SOJL	P2,FILREAD
   567	000615'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;SKIP ANY LEFT
   568	000616'	254 00 0 00 000614'		JRST	RDEND1
   569
   570	000617'	274 01 0 00 004071'	RDEND2:	SUB	T1,LSEGOR	;COMPUTE LOWSEG SIZE
   571	000620'	552 01 0 12 000005 		HRRZM	T1,TL$SIZ(B)	;SAVE
   572	000621'	254 00 0 00 000614'		JRST	RDEND1		;CONTINUE
   573
   574	000622'	603 11 0 00 400000 	RDNTRY:	TLNE	F,FL.NAM	;HAVE A TITLE BLOCK?
   575	000623'	254 00 0 00 000630'		 JRST	RDNT1		;YES
   576	000624'	400 01 0 00 000000 		SETZ	T1,		;NO, REQUEST ONE
   577	000625'	260 17 0 00 001074'		CALL	NTRTTL		;WITH NULL NAME
   578	000626'	254 04 0 00 000626'		HALT	.		;DIAGNOSTIC
   579	000627'	661 11 0 00 400000 		TLO	F,FL.NAM	;WE HAVE ONE NOW
   580	000630'	205 05 0 00 777756 	RDNT1:	MOVSI	P1,-22		;RELOC WORD EVERY 18
   581	000631'	265 02 0 00 000530'	RDNT2:	JSP	T2,IBYTEJ	;GET ENTRY NAME
   582	000632'	260 17 0 00 000760'		CALL	R50T6		;CONVERT TO SIXBIT
   583	000633'	260 17 0 00 001134'		CALL	NTRENT		;PUT IT IN THE LIST OF ENTRIES
   584	000634'	363 06 0 00 000444'		SOJLE	P2,FILREAD	;JUMP IF END OF BLOCK
   585	000635'	253 05 0 00 000631'		AOBJN	P1,RDNT2	;JUMP IF NOT RELOC TIME
   586	000636'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET RELOC WORD
   587	000637'	367 06 0 00 000630'		SOJG	P2,RDNT1	;JUMP IF MORE ENTRIES
   588	000640'	254 00 0 00 000444'		JRST	FILREAD		;NO, GET NEXT BLOCK

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 10
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   589	000641'	265 02 0 00 000530'	RDNAME:	JSP	T2,IBYTEJ	;GET THE NAME
   590	000642'	370 00 0 00 000006 		SOS	P2		;COUNT THE NAME
   591	000643'	260 17 0 00 000760'		CALL	R50T6		;CONVERT TO SIXBIT
   592	000644'	607 11 0 00 400000 		TLNN	F,FL.NAM	;ALREADY HAVE TITLE BLOCK?
   593	000645'	254 00 0 00 000652'		 JRST	RDNAM1		;NO, CONTINUE
   594	000646'	332 00 0 12 000002 		SKIPE	TL$NAM(B)	;YES, IS THERE A NAME?
   595	000647'	254 04 0 00 000000 		 HALT			;DIAGNOSTIC
   596	000650'	202 01 0 12 000002 		MOVEM	T1,TL$NAM(B)	;NO, STORE IT
   597	000651'	254 00 0 00 000655'		JRST	RDNAM2		;CONTINUE
   598	000652'	260 17 0 00 001074'	RDNAM1:	CALL	NTRTTL		;ENTER IT
   599	000653'	661 11 0 00 200000 		TLO	F,FL.SKP	;ALREADY DEFINED
   600	000654'	661 11 0 00 400000 		TLO	F,FL.NAM	;WE HAVE NAME BLOCK
   601	000655'	361 06 0 00 000444'	RDNAM2:	SOJL	P2,FILREAD	;JUMP IS NO FLAG WORD
   602	000656'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET FLAG WORD
   603	000657'	502 01 0 12 000001 		HLLM	T1,TL$FLG(B)	;STORE CPU/XLATR FLAGS
   604	000660'	135 02 0 00 004225'		LDB	T2,[POINT 12,T1,17] ;GET XLATOR TYPE
   605	000661'	306 02 0 00 000002 		CAIN	T2,CBLXLT	;IS IT COBOL?
   606	000662'	254 00 0 00 000470'		 JRST	FILRD3		;YES--RH IS SIZE OF STATIC LOW SEG
   607	000663'	550 05 0 00 000001 		HRRZ	P1,T1		;GET POSSIBLE BLANK COMMON ALLOC
   608	000664'	322 05 0 00 000470'		JUMPE	P1,FILRD3	;JUMP IF NONE
   609	000665'	200 01 0 00 004226'		MOVE	T1,[SIXBIT/.COMM./] ;BLANK COMMON NAME
   610	000666'	260 17 0 00 001152'		PUSHJ	P,NTRCOM	;ENTER IT
   611	000667'	254 00 0 00 000470'		 JRST	FILRD3		;??ALREADY DEFINED??
   612	000670'	506 05 0 01 000001 		HRLM	P1,EG$FLG(T1)	;STORE BLANK COMMON SIZE
   613	000671'	554 02 0 12 000006 		HLRZ	T2,TL$COM(B)	;CURRENT SIZE THIS MODULE
   614	000672'	271 02 0 05 000000 		ADDI	T2,(P1)		;ADD NEW
   615	000673'	506 02 0 12 000006 		HRLM	T2,TL$COM(B)	;STORE
   616	000674'	254 00 0 00 000470'		JRST	FILRD3		;CONTINUE
   617
   618	000675'	265 02 0 00 000530'	RDF40:	JSP	T2,IBYTEJ	;SKIP OVER CODE
   619	000676'	554 02 0 00 000001 		HLRZ	T2,T1		;[2] GET CODE BITS
   620	000677'	405 02 0 00 770000 		ANDI	T2,770000	;[2] TRIM TO TYPE
   621	000700'	306 02 0 00 040000 		CAIN	T2,40000	;[2] GLOBAL DEFINITION?
   622						 JRST	[		;[2] YES--ENTER IT
   623							CALL	R50T6	;[2] CONVERT TO SIXBIT
   624							CALL	NTRENT	;[2] ENTER THE ENTRY
   625							JRST	RDF40	;[2] CONTINUE THE  SCAN
   626	000701'	254 00 0 00 004227'			]
   627	000702'	312 01 0 00 004232'		CAME	T1,[-2]		;
   628	000703'	254 00 0 00 000675'		JRST	RDF40		;NOT YYET
   629	000704'	201 03 0 00 000003 		MOVEI	T3,3		;SKIP TWO WORDS
   630	000705'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   631	000706'	367 03 0 00 000705'		SOJG	T3,.-1
   632	000707'	200 03 0 00 000001 		MOVE	T3,T1		;GET LAST WORD
   633	000710'	322 03 0 00 000713'		JUMPE	T3,RDF40A	;JUMP IS NULL SECTION
   634	000711'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   635	000712'	367 03 0 00 000711'		SOJG	T3,.-1
   636
   637	000713'	265 02 0 00 000530'	RDF40A:	JSP	T2,IBYTEJ	;GET # GLOBAL REQUESTS
   638	000714'	322 01 0 00 000722'		JUMPE	T1,RDF40C	;JUMP IF NONE
   639	000715'	200 06 0 00 000001 		MOVE	P2,T1		;COPY IT
   640	000716'	265 02 0 00 000530'	RDF40B:	JSP	T2,IBYTEJ	;GET SYMBOL
   641	000717'	260 17 0 00 000760'		CALL	R50T6		;CONVERT TO SIXBIT
   642	000720'	260 17 0 00 001143'		CALL	NTRGRQ		;PUT IN GLOBAL REQUEST LIST
   643	000721'	367 06 0 00 000716'		SOJG	P2,RDF40B	;GET ALL OF THEM

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 10-1
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   644
   645	000722'	265 02 0 00 000530'	RDF40C:	JSP	T2,IBYTEJ	;# WORDS IN SCLAR SECTION
   646	000723'	322 01 0 00 000727'		JUMPE	T1,RDF40D	;JUMP IF NONE
   647	000724'	200 03 0 00 000001 		MOVE	T3,T1		;COPY IT
   648	000725'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET ONE
   649	000726'	367 03 0 00 000725'		SOJG	T3,.-1		;SKIP THEM ALL
   650
   651	000727'	265 02 0 00 000530'	RDF40D:	JSP	T2,IBYTEJ	;GET # WORDS IN ARRAY SECTION
   652	000730'	322 01 0 00 000734'		JUMPE	T1,RDF40E	;JUMP IF NONE
   653	000731'	200 03 0 00 000001 		MOVE	T3,T1
   654	000732'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   655	000733'	367 03 0 00 000732'		SOJG	T3,.-1
   656
   657	000734'	265 02 0 00 000530'	RDF40E:	JSP	T2,IBYTEJ	;NUMBER WORDS IN NEXT SECTION
   658	000735'	322 01 0 00 000741'		JUMPE	T1,RDF40F	;JUMP IF EMPTY
   659	000736'	200 03 0 00 000001 		MOVE	T3,T1
   660	000737'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   661	000740'	367 03 0 00 000737'		SOJG	T3,.-1
   662
   663	000741'	265 02 0 00 000530'	RDF40F:	JSP	T2,IBYTEJ	;SKIP A WORD
   664	000742'	265 02 0 00 000530'		JSP	T2,IBYTEJ	;GET # WORDS IN COMMON SECTION
   665	000743'	322 01 0 00 000747'		JUMPE	T1,RDF40G	;JUMP IF NONE
   666	000744'	200 03 0 00 000001 		MOVE	T3,T1
   667	000745'	265 02 0 00 000530'		JSP	T2,IBYTEJ
   668	000746'	367 03 0 00 000745'		SOJG	T3,.-1
   669
   670	000747'	621 11 0 00 400000 	RDF40G:	TLZ	F,FL.NAM	;THIS IS THE END
   671	000750'	254 00 0 00 000444'		JRST	FILREAD		;READ NEXT BLOCK
   672
   673					;E.BLKT:	CALL	UPSCN		;PUT SCAN BACK
   674	000751'	201 01 0 00 004233'	E.BLKT:	MOVEI	T1,[ASCIZ\%GBXUBA UNKNOWN BLOCK TYPE \]
   675	000752'	260 17 0 00 000352*		CALL	.TSTRG
   676	000753'	200 01 0 00 000005 		MOVE	T1,P1
   677	000754'	260 17 0 00 000000*		CALL	.TOCTW		;TELL WHAT SORT IT IS
   678						MOVEI	T1,[ASCIZ\, ATTEMPTING RECOVERY
   679	000755'	201 01 0 00 004241'	\]
   680	000756'	260 17 0 00 000752*		CALL	.TSTRG
   681					;	CALL	DWNSCN		;MAKE SCAN DISAPPEAR
   682	000757'	254 00 0 00 000470'		JRST	FILRD3		;IGNORE ILLEGAL BLOCK TYPES

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 11
XGLOB	MAC	19-MAR-76 13:24		DO ONE FILE

   683					;CALL WITH SYMBOL IN T1 IN RADIX 50
   684					;RETURN WITH SIXBIT SYMBOL IN T1
   685					;USES T1-3
   686
   687	000760'	621 01 0 00 740000 	R50T6:	TLZ	T1,740000	;CLEAR CODE BITS
   688	000761'	400 03 0 00 000000 		SETZ	T3,		;CLEAR RESULT
   689					;CODED INLINE FOR SPEED
   690					REPEAT	4,<
   691					XLIST
   692						IDIVI	T1,50		;PEEL OFF A DIGIT
   693						SKIPE	T2,R50TAB(T2)	;LOAD UP SIXBIT
   694						LSHC	T2,-6		;ADD INTO T3
   695						CAIG	T1,50		;DOWN TO LAST DIGIT?
   696						 JRST	R50T6X		;YES
   697					LIST
   698					>;END REPEAT 4
   699
   700
   701	001006'	231 01 0 00 000050 		IDIVI	T1,50		;GET NEXT TO LAST DIGIT
   702	001007'	332 02 0 02 001015'		SKIPE	T2,R50TAB(T2)	;GET FIFTH CHAR
   703	001010'	246 02 0 00 777772 		LSHC	T2,-6		;STORE IT
   704	001011'	332 02 0 01 001015'	R50T6X:	SKIPE	T2,R50TAB(T1)	;ONCE MORE
   705	001012'	246 02 0 00 777772 		LSHC	T2,-6
   706	001013'	200 01 0 00 000003 		MOVE	T1,T3		;POSITION
   707	001014'	263 17 0 00 000000 		RETURN
   708
   709					DEFINE R50 (C)<
   710					XLIST
   711					 IRPC C,<
   712					  ''C''
   713					>
   714					LIST
   715					>
   716
   717	001015'				R50TAB:	R50	( 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ.$% )
   718
   719					;CALL WITH COUNT IN P2
   720					;RETURN WITH CORRECT COUNT (INCLUDING RELOC WORDS IN P2)
   721
   722	001066'	550 01 0 00 000006 	COUNT:	HRRZ	T1,P2		;GET COUNT
   723	001067'	231 01 0 00 000022 		IDIVI	T1,22		;COUNT #18 GROUUPS
   724	001070'	271 06 0 01 000000 		ADDI	P2,(T1)		;ONE RELOC WORD FOR EACH
   725	001071'	332 00 0 00 000002 		SKIPE	T2		;ANY STRAGGLERS?
   726	001072'	350 00 0 00 000006 		 AOS	P2		;YES, ONE MORE RELOC WORD
   727	001073'	263 17 0 00 000000 		RETURN			;BACK

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 12
XGLOB	MAC	19-MAR-76 13:24		NTRTTL/NTRGRQ/NTRENT

   728						SUBTTL	NTRTTL/NTRGRQ/NTRENT
   729
   730					;NTRTTL
   731					;CALL:	MOVE	T1,SIXBIT NAME
   732					;	CALL	NTRTTL
   733					;	*RETURN IF ALREADY DEFINED*
   734					;	*RETURN THIS DEFINES IT*
   735
   736	001074'	260 17 0 00 001126'	NTRTTL:	CALL	IFDFIN		;SEE IF MODULE DEFINED
   737	001075'	354 00 0 17 000000 		AOSA	(P)		;NO, ENTER IT
   738	001076'	263 17 0 00 000000 		RETURN			;YES, RETURN CPOPJ
   739						SAVE	T1		;SAVE THE SYMBOL
   740	001100'	201 01 0 00 000013 		MOVEI	T1,TTLSIZ	;GET CORE FOR IT
   741	001101'	260 17 0 00 000340'		CALL	GETCOR		;...
   742	001102'	250 12 0 00 000001 		EXCH	B,T1		;SAVE LAST, GET NEW
   743	001103'	402 00 0 12 000000 		SETZM	(B)		;CLEAR THE BLOCK
   744	001104'	205 02 0 12 000000 		MOVSI	T2,(B)
   745	001105'	541 02 0 12 000001 		HRRI	T2,1(B)		;FORM BLT WORD
   746	001106'	251 02 0 12 000012 		BLT	T2,TTLSIZ-1(B)	;CLEAR THE BLOCK
   747						RESTOR	TL$NAM(B)	;ENTER THE NAME
   748	001110'	200 02 0 00 002032'		MOVE	T2,OPNBLK+.OPDEV;GET THE DEVICE
   749	001111'	202 02 0 12 000007 		MOVEM	T2,TL$DEV(B)	;STORE 
   750	001112'	200 02 0 00 002024'		MOVE	T2,LKPBLK+.RBNAM;FILENAME
   751	001113'	202 02 0 12 000011 		MOVEM	T2,TL$FIL(B)	;
   752	001114'	200 02 0 00 002025'		MOVE	T2,LKPBLK+.RBEXT;EXTENSION
   753	001115'	512 02 0 12 000012 		HLLZM	T2,TL$EXT(B)
   754	001116'	200 02 0 00 002023'		MOVE	T2,LKPBLK+.RBPPN;AND THE PPN
   755	001117'	202 02 0 12 000010 		MOVEM	T2,TL$PPN(B)
   756	001120'	201 02 0 00 400000 		MOVX	T2,FT$LIB	;GET BIT FOR LIBRARY
   757	001121'	332 00 0 11 000032 		SKIPE	.FXLIB(F)	;LIBRARY?
   758	001122'	436 02 0 12 000001 		IORM	T2,TL$FLG(B)	;YES, INDICATE IT
   759	001123'	542 12 0 01 000000 		HRRM	B,(T1)		;STORE LINK TO THIS ONE
   760	001124'	506 01 0 12 000000 		HRLM	T1,(B)		;STORE BACK LINK
   761	001125'	263 17 0 00 000000 		RETURN			;SKIP BACK
   762
   763					;CALL WITH T1 SIXBIT NAME
   764					;SKIP IF TITLE BLOCK DEFINED, NO SKIP IF NOT
   765
   766	001126'	201 02 0 00 004134'	IFDFIN:	MOVEI	T2,LSTHED	;START THE SEARCH
   767	001127'	550 02 0 02 000000 	IFDF1:	HRRZ	T2,(T2)		;MOVE ALONG THE LIST
   768	001130'	322 02 0 00 000000*		JUMPE	T2,.POPJ	;JUMP IF NOT FOUND
   769	001131'	312 01 0 02 000002 		CAME	T1,TL$NAM(T2)	;IS THIS ME?
   770	001132'	254 00 0 00 001127'		 JRST	IFDF1		;NO, KEEP SEARCHING
   771	001133'	254 00 0 00 000000*		JRST	.POPJ1		;YES, SKIP BACK

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 13
XGLOB	MAC	19-MAR-76 13:24		NTRTTL/NTRGRQ/NTRENT

   772					;NTRENT TO ENTER AN ENTRY
   773					;NTRGRQ TO ENTER A GLOBAL REQUEST
   774					;NTRLOC TO ENTER A LOCAL SYMBOL (FUTURE)
   775
   776	001134'	603 11 0 00 200000 	NTRENT:	TLNE	F,FL.SKP	;IGNORING THIS BLOCK?
   777	001135'	263 17 0 00 000000 		 RETURN
   778	001136'	201 02 0 12 000003 		MOVEI	T2,TL$ENT(B)	;INIT THE POINTER
   779	001137'	260 17 0 00 001161'		CALL	ENTRIT		;PUT IT ON THE LIST
   780	001140'	263 17 0 00 000000 		RETURN			;ALREADY DEFINED
   781	001141'	201 02 0 00 004132'		MOVEI	T2,ENTLST-EG$ORD;POINT AT LIST MINUS OFFSET
   782	001142'	254 00 0 00 001212'		PJRST	ENTSRT		;PUT THIS ENTRY IN THE SORTED LIST NOW
   783
   784	001143'	603 11 0 00 200000 	NTRGRQ:	TLNE	F,FL.SKP
   785	001144'	263 17 0 00 000000 		RETURN
   786	001145'	201 02 0 12 000004 		MOVEI	T2,TL$GRQ(B)
   787	001146'	260 17 0 00 001161'		CALL	ENTRIT		;PUT IN THE TABLE
   788	001147'	263 17 0 00 000000 		RETURN			;ALREADY THERE
   789	001150'	201 02 0 00 004133'		MOVEI	T2,GLBLST-EG$ORD;PUT THIS ENTRY IN ALPHA LIST
   790	001151'	254 00 0 00 001212'		PJRST	ENTSRT		;...
   791
   792	001152'	603 11 0 00 200000 	NTRCOM:	TLNE	F,FL.SKP	;SKIPPING?
   793	001153'	263 17 0 00 000000 		 RETURN			;YES
   794	001154'	201 02 0 12 000006 		MOVEI	T2,TL$COM(B)	;GET THE LIST
   795	001155'	260 17 0 00 001161'		CALL	ENTRIT		;ENTER COMMON IN THE LIST
   796	001156'	263 17 0 00 000000 		 RETURN			;ALREADY DEFINED
   797	001157'	350 00 0 17 000000 		AOS	(P)
   798	001160'	263 17 0 00 000000 		RETURN			;RETURN WITH ADDR IN T1
   799
   800					;CALL HERE TO PUT ITEM IN THE LIST
   801					;RETURN CPOPJ IF  ALREADY IN
   802					;RETURN CPOPJ1 IN JUST INSERTED WITH PTR IN T1
   803
   804	001161'	200 03 0 00 000002 	ENTRIT:	MOVE	T3,T2		;REMEMBER WHERE WE CAME FROM
   805	001162'	550 02 0 02 000000 		HRRZ	T2,(T2)		;GET NEXT
   806	001163'	322 02 0 00 001177'		JUMPE	T2,ENTRT2	;JUMP IF AT END OF LIST
   807	001164'	316 01 0 02 000002 		CAMN	T1,EG$NAM(T2)	;IS THIS IT?
   808	001165'	263 17 0 00 000000 		 RETURN			;YES, RETURN
   809	001166'	313 01 0 02 000002 		CAMLE	T1,EG$NAM(T2)	;NO, SHOULD IT GO IN HERE ALPHABETICALY?
   810	001167'	254 00 0 00 001161'		JRST	ENTRIT		;NO, KEEP LOOKING
   811
   812	001170'	260 17 0 00 001205'	ENTRT3:	CALL	ENTRT5		;PUT NAME IN THE CORE WE WILL GET
   813	001171'	200 02 0 03 000000 		MOVE	T2,(T3)		;GET PTR TO NEXT LINK
   814	001172'	542 02 0 01 000000 		HRRM	T2,(T1)		;MAKE THIS ONE POINT AT IT
   815	001173'	506 03 0 01 000000 		HRLM	T3,(T1)		;SET IN THE BACK LINK
   816	001174'	506 01 0 02 000000 		HRLM	T1,(T2)		;SET IN BACK LINK ON NEXT LINK
   817	001175'	542 01 0 03 000000 		HRRM	T1,(T3)		;MAKE PREDECESSOR POINT AT ME
   818	001176'	254 00 0 00 001202'		JRST	ENTRTX		;GO FINISH UP
   819
   820
   821	001177'	260 17 0 00 001205'	ENTRT2:	CALL	ENTRT5		;GET CORE AND INSERT NAME
   822	001200'	542 01 0 03 000000 		HRRM	T1,(T3)		;SET THIS LINK INTO TH CHAIN
   823	001201'	516 03 0 01 000000 		HRLZM	T3,(T1)		;SET IN BACK LINK,,CLEAR FORWARD LINK
   824	001202'	402 00 0 01 000001 	ENTRTX:	SETZM	EG$FLG(T1)	;CLEAR THE FLAGS
   825	001203'	552 12 0 01 000003 		HRRZM	B,EG$TTL(T1)	;AND POINT TO TITLE BLOCK
   826	001204'	254 00 0 00 001133*		JRST	.POPJ1		;SKIP BACK--WE JUST INSERTED IT

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 13-1
XGLOB	MAC	19-MAR-76 13:24		NTRTTL/NTRGRQ/NTRENT

   827
   828	001205'				ENTRT5:	SAVE	T1		;SAVE NAME
   829	001206'	201 01 0 00 000004 		MOVEI	T1,EGLSIZ	;GET BLOCK SIZE
   830	001207'	260 17 0 00 000340'		CALL	GETCOR		;GET NEEDED CORE
   831						RESTORE	EG$NAM(T1)	;PUT THE NAMEIN THE TABLE
   832	001211'	263 17 0 00 000000 		RETURN
   833
   834					;CALL HERE TO ENTER ENTRY OR GLOBAL REF INTO LINKED ALPHABETICAL TABLE
   835					;T1=PTR TO THIS ENTRY
   836					;T2=PTR TO ENTLST OR GLBLST
   837
   838	001212'				ENTSRT:
   839	001212'	200 03 0 00 000002 	ENTSR2:	MOVE	T3,T2		;SAVE LAST
   840	001213'	554 02 0 02 000003 		HLRZ	T2,EG$ORD(T2)	;GET NEXT
   841	001214'	322 02 0 00 001220'		JUMPE	T2,ENTSR1	;JUMP IF AT END
   842	001215'	200 04 0 01 000002 		MOVE	T4,EG$NAM(T1)	;GET NAME WE ARE AT
   843	001216'	313 04 0 02 000002 		 CAMLE	T4,EG$NAM(T2)	;DOES IT GO IN HERE?
   844	001217'	254 00 0 00 001212'		JRST	ENTSR2		;NO, SEARCH SOME MORE
   845
   846	001220'	506 02 0 01 000003 	ENTSR1:	HRLM	T2,EG$ORD(T1)	;SAVE LINK
   847	001221'	506 01 0 03 000003 		HRLM	T1,EG$ORD(T3)	;PUT THIS ONE IN THE LIST
   848	001222'	263 17 0 00 000000 		RETURN

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 14
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

   849						SUBTTL	LISTING ROUTINES
   850
   851	001223'	260 17 0 00 000000*	LISTIT:	CALL	.SAVE4		;MIGHT AS WELL...
   852	001224'	260 17 0 00 001271'		CALL	LINKER		;GO LINK EVERYTHING UP
   853	001225'	201 12 0 00 004132'		MOVEI	B,ENTLST-EG$ORD	;INIT THE PERM POINTER
   854	001226'	603 11 0 00 100000 		TLNE	F,FL.TTO	;OUTPUTTING TO TTY?
   855	001227'	254 00 0 00 001236'		 JRST	LSTIT1		;YES, SKIP AHEAD
   856	001230'	201 01 0 00 001650'		MOVEI	T1,OBYTE	;SET UP OUTPUT ROUTINE
   857	001231'	260 17 0 00 000000*		CALL	.TYOCH		;WITH SCAN
   858						SAVE	T1		;BUT REMEMBER WHAT IT WAS
   859	001233'	201 01 0 00 000074 		MOVEI	T1,^D60		;SET UP LINES/PAGE
   860	001234'	202 01 0 00 004065'		MOVEM	T1,LINKNT
   861	001235'	661 11 0 00 040000 		TLO	F,FL.PP		;PRETTY PRINT
   862
   863	001236'	201 01 0 00 004246'	LSTIT1:	MOVEI	T1,[ASCIZ\XGLOB %\]
   864	001237'	260 17 0 00 000756*		CALL	.TSTRG
   865	001240'	200 01 0 00 000137 		MOVE	T1,.JBVER	;MY VERSION
   866	001241'	260 17 0 00 000000*		CALL	.TVERW##	;TYPE IT
   867	001242'	201 01 0 00 001424'		MOVEI	T1,HEDMSG	;OUTPUT FIRST MESSAGE
   868	001243'	260 17 0 00 001237*		CALL	.TSTRG		;OUTPUT THE HEADER
   869
   870	001244'	554 12 0 12 000003 	LSTNXT:	HLRZ	B,EG$ORD(B)	;GET THE NEXT IN THE LIST
   871	001245'	322 12 0 00 001265'		JUMPE	B,LSTDUN	;QUIT AT THE END (AS USUAL)
   872	001246'	550 06 0 12 000003 		HRRZ	P2,EG$TTL(B)	;LINK TO TITLE BLOCK
   873	001247'	200 01 0 06 000001 		MOVE	T1,TL$FLG(P2)	;GET FLAGS
   874	001250'	606 01 0 00 400000 		TRNN	T1,FT$LIB	;IS THIS A LIBRARY
   875	001251'	254 00 0 00 001257'		 JRST	LSTNX1		;NO
   876	001252'	606 01 0 00 200000 		TRNN	T1,FT$REF	;YES, WAS IT REF?
   877	001253'	254 00 0 00 001244'		 JRST	LSTNXT		;NO
   878	001254'	200 01 0 12 000001 		MOVE	T1,EG$FLG(B)	;GET FLAGS FOR THIS ENTRY
   879	001255'	606 01 0 00 200000 		TRNN	T1,FT$REF	;HAS IT BEEN REFERENCED?
   880	001256'	254 00 0 00 001244'		 JRST	LSTNXT		;NO, DON'T PRINT IT
   881	001257'	400 10 0 00 000000 	LSTNX1:	SETZ	P4,		;CLEAR COUNT OF REFERENCES TO THIS ENTRY
   882	001260'	200 07 0 00 000121 		MOVE	P3,.JBFF	;REMEMBER THE START OF THE LIST
   883	001261'	260 17 0 00 001510'		CALL	FNDREF		;FIND ALL REFERENCES, MAKE LIST AT END OF CORE
   884									;POINTING TO TITLE BLOCKS OF REFERENCING MODULS
   885	001262'	202 07 0 00 000121 		MOVEM	P3,.JBFF	;***RESTORE .JBFF  NOW, WHILE WE THINK OF IT
   886					;	HRRZ	P2,EG$TTL(B)	;GET LINK TO TITLE BLOCK
   887					;	MOVE	T1,TL$FLG(P2)	;GET THE FLAGS
   888					;	TRNE	T1,FT$LIB	;IS THIS A LIBRARY?
   889					;	 JUMPE	P4,LSTNXT	;YES, AND IF WE JUMP IT WAS NEVER REFERENCED
   890	001263'	260 17 0 00 001350'		CALL	LSTENT		;NO, LIST THIS ENTRY
   891	001264'	254 00 0 00 001244'		JRST	LSTNXT		;AND GO ON TO THE NEXT ONE
   892	001265'	603 11 0 00 100000 	LSTDUN:	TLNE	F,FL.TTO	;TTY OUTPUT?
   893	001266'	263 17 0 00 000000 		 RETURN			;YES, ALLDONE
   894						RESTOR	T1		;GET TYPEOUT ADDRESS BACK
   895	001270'	254 00 0 00 001231*		PJRST	.TYOCH		;RESTORE AND RETURN

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 15
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

   896	001271'	201 12 0 00 004134'	LINKER:	MOVEI	B,LSTHED ;POINT AT TITLE LIST
   897	001272'	550 12 0 12 000000 	LINK1:	HRRZ	B,(B)		;LINK TO NEXT
   898	001273'	322 12 0 00 001302'		JUMPE	B,LINK2		;JUMP IF DONE WITH PHASE ONE
   899	001274'	200 01 0 12 000001 		MOVE	T1,TL$FLG(B)	;NO, GET FLAGS
   900	001275'	602 01 0 00 400000 		TRNE	T1,FT$LIB	;LIBRARY?
   901	001276'	254 00 0 00 001272'		 JRST	LINK1		;YES, IGNORE IT
   902	001277'	201 05 0 12 000004 		MOVEI	P1,TL$GRQ(B)	;NO, POINT AT GLOBAL REQUEST LIST
   903	001300'	260 17 0 00 001322'		CALL	LNKSAT		;FLAG ALL MODULES THAT SATISFY GLB REQ
   904	001301'	254 00 0 00 001272'		JRST	LINK1		;DO ALL NON-LIB MODULES
   905
   906	001302'	201 12 0 00 004134'	LINK2:	MOVEI	B,LSTHED	;NOW DO ALL LIBRARY MODULES
   907	001303'	402 00 0 00 004070'		SETZM	FOUND1		;CLEAR THE FLAG TO GO AGAIN
   908	001304'	550 12 0 12 000000 	LINK3:	HRRZ	B,(B)		;CHAIN TO NEXT
   909	001305'	322 12 0 00 001317'		JUMPE	B,LINK4		;JUMP AT THE END
   910	001306'	200 01 0 12 000001 		MOVE	T1,TL$FLG(B)	;GET THE FLAGS
   911	001307'	602 01 0 00 400000 		TRNE	T1,FT$LIB	;IS IT A LIBRARY?
   912	001310'	606 01 0 00 200000 		 TRNN	T1,FT$REF	;YES, HAS IT BEEN REFERENCED?
   913	001311'	254 00 0 00 001304'		  JRST	LINK3		;NO TO ONE OF ABOVE
   914	001312'	602 01 0 00 100000 		TRNE	T1,FT$SCN	;BEEN SCANED YET/
   915	001313'	254 00 0 00 001304'		 JRST	LINK3		;YES, ONLY DO IT ONCE
   916	001314'	201 05 0 12 000004 		MOVEI	P1,TL$GRQ(B)	;NO, GET GRQ LIST
   917	001315'	260 17 0 00 001322'		CALL	LNKSAT		;FIND SATISFYING MODULES
   918	001316'	254 00 0 00 001304'		JRST	LINK3
   919
   920	001317'	332 00 0 00 004070'	LINK4:	SKIPE	FOUND1		;DO ANYTHING?
   921	001320'	254 00 0 00 001302'		 JRST	LINK2		;YES, GO AGAIN
   922	001321'	263 17 0 00 000000 		RETURN			;NO, RETURN
   923
   924	001322'				LNKSAT:
   925	001322'	550 05 0 05 000000 	LSAT1:	HRRZ	P1,(P1)		;MOVE ALONG GRQ LIST
   926	001323'	322 05 0 00 001130*		JUMPE	P1,.POPJ	;RETURN ON NULL
   927	001324'	200 04 0 05 000002 		MOVE	T4,EG$NAM(P1)	;GET THE NAME
   928	001325'	201 03 0 00 004134'		MOVEI	T3,LSTHED	;POINT AT THE LIST
   929	001326'	550 03 0 03 000000 	LSAT2:	HRRZ	T3,(T3)		;CHAIN TO NEXT
   930	001327'	322 03 0 00 001322'		JUMPE	T3,LSAT1	;FINISED?
   931	001330'	200 02 0 03 000001 		MOVE	T2,TL$FLG(T3)	;NO, GET FLAGS
   932	001331'	602 02 0 00 400000 		TRNE	T2,FT$LIB	;LIBRARY?
   933	001332'	602 02 0 00 200000 		 TRNE	T2,FT$REF	;YES, REFERENCED?
   934	001333'	254 00 0 00 001326'		 JRST	LSAT2		;NOT LIB OR ALREADY REF
   935	001334'	201 02 0 03 000003 		MOVEI	T2,TL$ENT(T3)	;POINT AT ENTRY LST
   936	001335'	550 02 0 02 000000 	LSAT3:	HRRZ	T2,(T2)		;LINK TO NEXT
   937	001336'	322 02 0 00 001326'		JUMPE	T2,LSAT2	;JUMP ON END
   938	001337'	312 04 0 02 000002 		CAME	T4,EG$NAM(T2)	;ENTRY SATISFY GRQ?
   939	001340'	254 00 0 00 001335'		 JRST	LSAT3		;NO
   940	001341'	201 01 0 00 200000 		MOVEI	T1,FT$REF	;YES, GET FLAG BIT
   941	001342'	436 01 0 03 000001 		IORM	T1,TL$FLG(T3)	;FLAG IN TITLE BLOCK
   942	001343'	436 01 0 02 000001 		IORM	T1,EG$FLG(T2)	;SET ENTRY ENTRY REFERENCED
   943	001344'	201 02 0 00 100000 		MOVEI	T2,FT$SCN	;GET SCANNED FLAG
   944	001345'	436 02 0 05 000001 		IORM	T2,TL$FLG(P1)	;FLAG THIS BLOCK SCANNED
   945	001346'	476 00 0 00 004070'		SETOM	FOUND1		;FLAG TO GO AGAIN
   946	001347'	254 00 0 00 001326'		JRST	LSAT2		;FIND MORE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 16
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

   947					;CALL HERE TO LIST ONE ENTRY
   948
   949	001350'	260 17 0 00 000000*	LSTENT:	CALL	.TCRLF		;START WITH NEW LINE
   950	001351'	201 01 0 00 001423'		MOVEI	T1,STARS	;START OUT WITH SOME STARS
   951	001352'	260 17 0 00 001243*		CALL	.TSTRG
   952	001353'	200 01 0 12 000002 		MOVE	T1,EG$NAM(B)	;GET THE NAME
   953	001354'	260 17 0 00 000000*		CALL	.TSIXN		;OUTPUT IT
   954	001355'	201 01 0 00 001423'		MOVEI	T1,STARS	;MORE STARS
   955	001356'	260 17 0 00 001352*		CALL	.TSTRG
   956						MOVEI	T1,[ASCIZ\
   957	001357'	201 01 0 00 004250'	FOUND IN \]
   958	001360'	260 17 0 00 001356*		CALL	.TSTRG
   959	001361'	260 17 0 00 001505'		CALL	LISFLS		;OUTPUT THE FILE SPEC
   960	001362'	201 01 0 00 004253'		MOVEI	T1,[ASCIZ\, MODULE \]
   961	001363'	260 17 0 00 001360*		CALL	.TSTRG
   962	001364'	200 01 0 06 000002 		MOVE	T1,TL$NAM(P2)	;THE MODULE NAME
   963	001365'	260 17 0 00 001354*		CALL	.TSIXN
   964	001366'	201 01 0 00 004255'		MOVEI	T1,[ASCIZ\, COMPILED BY \]
   965	001367'	260 17 0 00 001363*		CALL	.TSTRG
   966	001370'	135 01 0 00 004260'		LDB	T1,[POINT 12,TL$FLG(P2),17] ;COMPILER VALUE
   967	001371'	303 01 0 00 000013 		CAILE	T1,MXLATR	;CHECK FOR ONE WE KNOW
   968	001372'	201 01 0 00 000000 		MOVEI	T1,0		;NO, USE ???
   969	001373'	200 01 0 01 001472'		MOVE	T1,XLATOR(T1)	;GET STRING ADDRESS
   970	001374'	260 17 0 00 001367*		CALL	.TSTRG
   971					IFN FTCPU,<
   972						MOVEI	T1,[ASCIZ\ FOR \]
   973						CALL	.TSTRG
   974						LDB	T1,[POINT 6,TL$FLG(P2),5] ;CPU IT WILL RUN ON
   975						CAILE	T1,MAXCPU
   976						MOVEI	T1,0		;MUST BE KL
   977						MOVE	T1,CPUTYP(T1)
   978						CALL	.TSTRG
   979					>;END IFN FTCPU
   980	001375'	260 17 0 00 001350*		CALL	.TCRLF		;NEXT LINE
   981	001376'	201 01 0 00 004261'		MOVEI	T1,[ASCIZ\MODULE SIZE IS \]
   982	001377'	260 17 0 00 001374*		CALL	.TSTRG		;TELL THE SIZZE
   983	001400'	554 01 0 06 000005 		HLRZ	T1,TL$SIZ(P2)	;GET HISEG SIZE
   984	001401'	322 01 0 00 001405'		JUMPE	T1,LSTEN1	;JUMP IF NO HISEG
   985	001402'	260 17 0 00 001603'		CALL	TOCDEC		;TYPE OCTAL AND DECIMAL
   986	001403'	201 01 0 00 004265'		MOVEI	T1,[ASCIZ\ [HISEG] \]
   987	001404'	260 17 0 00 001377*		CALL	.TSTRG
   988	001405'	550 01 0 06 000005 	LSTEN1:	HRRZ	T1,TL$SIZ(P2)
   989	001406'	260 17 0 00 001603'		CALL	TOCDEC
   990	001407'	201 01 0 00 004267'		MOVEI	T1,[ASCIZ\ [LOWSEG] \]
   991	001410'	260 17 0 00 001404*		CALL	.TSTRG
   992	001411'	554 01 0 06 000006 		HLRZ	T1,TL$COM(P2)	;GET COMMON ALLOCATION
   993						JUMPE	T1,[CALL .TCRLF	;JUMP IF NONE
   994	001412'	322 01 0 00 004272'			JRST LSTEN2]	;AND CONTINUE
   995	001413'	260 17 0 00 001603'		CALL	TOCDEC		;TYPE THE SIZE
   996						MOVEI	T1,[ASCIZ\ [COMMON]
   997	001414'	201 01 0 00 004274'	\]
   998	001415'	260 17 0 00 001410*		CALL	.TSTRG		;
   999	001416'	260 17 0 00 001540'	LSTEN2:	CALL	LSENTR		;LIST ENTRY POINTS
  1000	001417'	260 17 0 00 001554'		CALL	LSGRQ		;LIST GLOBAL REQUESTS
  1001	001420'	260 17 0 00 001625'		CALL	LSTCOM		;LIST COMMON ALLOCATION THIS MODULE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 16-1
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

  1002	001421'	260 17 0 00 001560'		CALL	LISREF		;LIST REFERENCES TO THIS ENTRY POINT
  1003	001422'	263 17 0 00 000000 		RETURN			;***END LIST ONE ENTRY
  1004
  1005	001423'	052 052 052 000 000 	STARS:	ASCIZ	\***\		;PRETTY!
  1006	001424'				HEDMSG:	ASCIZ	\
  1007
  1008	001424'	015 012 015 012 105 	E - ENTRY POINTS INTO THE MODULE
  1009	001425'	040 055 040 105 116 
  1010	001426'	124 122 131 040 120 
  1011	001427'	117 111 116 124 123 
  1012	001430'	040 111 116 124 117 
  1013	001431'	040 124 110 105 040 
  1014	001432'	115 117 104 125 114 
  1015	001433'	105 015 012 107 040 	G - GLOBAL REFERENCES
  1016	001434'	055 040 107 114 117 
  1017	001435'	102 101 114 040 122 
  1018	001436'	105 106 105 122 105 
  1019	001437'	116 103 105 123 015 
  1020	001440'	012 103 040 055 040 	C - COMMON DECLARED IN THIS MODULE
  1021	001441'	103 117 115 115 117 
  1022	001442'	116 040 104 105 103 
  1023	001443'	114 101 122 105 104 
  1024	001444'	040 111 116 040 124 
  1025	001445'	110 111 123 040 115 
  1026	001446'	117 104 125 114 105 
  1027	001447'	015 012 040 040 040 	    NOTE: COMMON LENGTH NOT INCLUDED IN MODULE SIZE
  1028	001450'	040 116 117 124 105 
  1029	001451'	072 040 103 117 115 
  1030	001452'	115 117 116 040 114 
  1031	001453'	105 116 107 124 110 
  1032	001454'	040 116 117 124 040 
  1033	001455'	111 116 103 114 125 
  1034	001456'	104 105 104 040 111 
  1035	001457'	116 040 115 117 104 
  1036	001460'	125 114 105 040 123 
  1037	001461'	111 132 105 015 012 	R - MODULES THAT REFERENCE THIS ONE
  1038	001462'	122 040 055 040 115 
  1039	001463'	117 104 125 114 105 
  1040	001464'	123 040 124 110 101 
  1041	001465'	124 040 122 105 106 
  1042	001466'	105 122 105 116 103 
  1043	001467'	105 040 124 110 111 
  1044	001470'	123 040 117 116 105 
  1045
  1046	001471'	015 012 015 012 000 	\

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 17
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

  1047					DEFINE P(A)<[ASCIZ\'A\]>
  1048
  1049	001472'	000000	004277'		XLATOR:	P UNKNOWN
  1050	001473'	000000	004301'			P F40
  1051	001474'	000000	004302'			P COBOL
  1052			000002		CBLXLT==.-XLATOR-1	;COBOL COMPILER TYPE
  1053	001475'	000000	004304'			P ALGOL-60
  1054	001476'	000000	004306'			P NELIAC
  1055	001477'	000000	004310'			P PL/1
  1056	001500'	000000	004311'			P BLISS-10
  1057	001501'	000000	004313'			P SAIL
  1058	001502'	000000	004314'			P FORTRAN-10
  1059	001503'	000000	004317'			P MACRO
  1060	001504'	000000	004321'			P FAIL
  1061			000013		MXLATR==.-XLATOR
  1062
  1063					IFN FTCPU,<
  1064					CPUTYP:	P <EITHER CPU>
  1065						P <KA10 CPU>
  1066						P <KI10 CPU>
  1067					MAXCPU==.-CPUTYP
  1068					>;END IFN FTCPU
  1069
  1070	001505'	201 02 0 06 000007 	LISFLS:	MOVEI	T2,TL$PPN-.RBPPN(P2) ;FAKE OUT .TOLEB A BIT
  1071	001506'	201 01 0 06 000006 		MOVEI	T1,TL$DEV-.OPDEV(P2) ;AND SOME MORE TRICKERY
  1072	001507'	254 00 0 00 000000*		PJRST	.TOLEB		;GO TYPE THE FILE SPEC
  1073
  1074	001510'	201 03 0 00 004133'	FNDREF:	MOVEI	T3,GLBLST-EG$ORD ;INIT THE POINTER
  1075	001511'	200 04 0 12 000002 	FNDRF1:	MOVE	T4,EG$NAM(B)	;GET NAME WE ARE LOOKING FOR
  1076	001512'	554 03 0 03 000003 	FNDNXT:	HLRZ	T3,EG$ORD(T3)	;NEXT LINK
  1077	001513'	322 03 0 00 001323*		JUMPE	T3,.POPJ	;EXIT ON NULL LINK
  1078	001514'	312 04 0 03 000002 		CAME	T4,EG$NAM(T3)	;FIND IT?
  1079	001515'	254 00 0 00 001512'		 JRST	FNDNXT		;NO, KEEP LOOKING
  1080	001516'	550 05 0 03 000003 		HRRZ	P1,EG$TTL(T3)	;GET LINK TO TITLE BLOCK
  1081	001517'	200 01 0 05 000001 		MOVE	T1,TL$FLG(P1)	;GET THE FLAGS
  1082	001520'	606 01 0 00 400000 		TRNN	T1,FT$LIB	;IS THIS A LIBRARY?
  1083	001521'	254 00 0 00 001524'		 JRST	FNDRF3		;NO, GO AHEAD
  1084	001522'	606 01 0 00 200000 		TRNN	T1,FT$REF	;YES, HAS IT BEEN REFERENCED ?
  1085	001523'	254 00 0 00 001512'		 JRST	FNDNXT		;NO, MOVE ALONG
  1086	001524'	322 10 0 00 001534'	FNDRF3:	JUMPE	P4,FNDRF2	;JUMP IF THIS IS THE FIRST
  1087	001525'	210 04 0 00 000010 		MOVN	T4,P4		;NO, GET - COUNT OF REFERENCES
  1088	001526'	517 00 0 00 000004 		HRLZS	T4		;POSITION IN LH
  1089	001527'	540 04 0 00 000007 		HRR	T4,P3		;POINT AT THE LIST ON THE END OF CORE
  1090	001530'	312 05 0 04 000000 		CAME	P1,(T4)		;IS THIS IT (ALREADY REQUESTED?)
  1091	001531'	253 04 0 00 001530'		AOBJN	T4,.-1		;NO, LOOP FOR ALL
  1092	001532'	321 04 0 00 001511'		JUMPL	T4,FNDRF1	;JUMP IF WE FOUND ONE
  1093	001533'	200 04 0 12 000002 		MOVE	T4,EG$NAM(B)	;NO, RESTORE THE NAME
  1094	001534'	201 01 0 00 000001 	FNDRF2:	MOVEI	T1,1		;ADD 1 TO THE LIST
  1095	001535'	260 17 0 00 000340'		CALL	GETCOR		;WHICH ALSO DESTROYS T2
  1096	001536'	202 05 0 01 000000 		MOVEM	P1,(T1)		;STORE ON LIST AT END OF CORE
  1097	001537'	344 10 0 00 001512'		AOJA	P4,FNDNXT	;COUNT AND GO FOR MORE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 18
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

  1098	001540'	201 01 0 00 004322'	LSENTR:	MOVEI	T1,[ASCIZ\E	\] ;START THE LINE
  1099	001541'	260 17 0 00 001415*		CALL	.TSTRG
  1100	001542'	201 05 0 06 000003 		MOVEI	P1,TL$ENT(P2)	;LINK TO ENTRYS
  1101	001543'	260 17 0 00 001613'	LSEGGO:	CALL	INIEGO		;INITIALIZE THE FORMATTER
  1102
  1103	001544'	550 05 0 05 000000 	LSENXT:	HRRZ	P1,(P1)		;GET THE NEXT ONE
  1104	001545'	322 05 0 00 001375*		JUMPE	P1,.TCRLF	;QUIT ON NULL
  1105	001546'	200 01 0 05 000002 		MOVE	T1,EG$NAM(P1)	;GET THE NAME
  1106	001547'	260 17 0 00 001365*		CALL	.TSIXN		;TYPE IT
  1107	001550'	377 00 0 00 004066'		SOSG	MODKNT		;CHECK IF TIME FOR NEW LINE
  1108						JRST	[CALL	.TCRLF	;YES, FORCE ONE
  1109							CALL	INIEGO	;INIT THE NEW LINE
  1110							HRRZ	T1,(P1)	;GET LINK TO NEXT
  1111							JUMPE	T1,.POPJ;JUMP IF NO MORE TO PRINT
  1112	001551'	254 00 0 00 004323'			JRST	.+1]	;YES, TAB OVER AND CONTINUE
  1113	001552'	260 17 0 00 000000*		CALL	.TTABC		;MOVE TO NEXT TAB STOP
  1114	001553'	254 00 0 00 001544'		JRST	LSENXT		;LIST NEXT ENTRY
  1115
  1116	001554'	201 01 0 00 004330'	LSGRQ:	MOVEI	T1,[ASCIZ\G	\] ;START FOR GLOBAL REQUESTS
  1117	001555'	260 17 0 00 001541*		CALL	.TSTRG
  1118	001556'	201 05 0 06 000004 		MOVEI	P1,TL$GRQ(P2)	;LINK TO GLOBAL REQUESTS
  1119	001557'	254 00 0 00 001543'		JRST	LSEGGO		;[3] GO DO IT
  1120
  1121	001560'	326 10 0 00 001563'	LISREF:	JUMPN	P4,LISRF1	;CHECK FOR NEVER REFERENCED
  1122						MOVEI	T1,[ASCIZ\NEVER REFERENCED
  1123	001561'	201 01 0 00 004331'	\]
  1124	001562'	254 00 0 00 001555*		PJRST	.TSTRG		;OUTPUT AND RETURN
  1125	001563'	201 01 0 00 004335'	LISRF1:	MOVEI	T1,[ASCIZ\R	\] ;START THE LINE
  1126	001564'	260 17 0 00 001562*		CALL	.TSTRG
  1127	001565'	260 17 0 00 001620'		CALL	INIRFL		;INIT FOR TYPEOUT
  1128	001566'	200 06 0 07 000000 	LISRF2:	MOVE	P2,(P3)		;GET THE POINTER TO TITLE BLOCK
  1129	001567'	260 17 0 00 001505'		CALL	LISFLS		;OUTPUT THE NAME
  1130	001570'	260 17 0 00 001601'		CALL	.TSLSH		;AND A SLASH
  1131	001571'	200 01 0 06 000002 		MOVE	T1,EG$NAM(P2)	;GET THE MODULE NAME
  1132	001572'	260 17 0 00 001547*		CALL	.TSIXN		;OUTPUT IT
  1133	001573'	260 17 0 00 001601'		CALL	.TSLSH		;ANOTHER SLASH
  1134	001574'	377 00 0 00 004066'		SOSG	MODKNT		;CHEK IF END OF LINE
  1135						JRST	[CALL	.TCRLF	;YES, NEW LINE
  1136							SOJLE	P4,.POPJ;RETURN IF DONE
  1137							CALL	INIRFL	;INIT FOR A NEW LINE
  1138							CALL	.TTABC	;ELSE, SPACE OVER
  1139	001575'	254 00 0 00 004336'			AOJA	P3,LISRF2] ;AND CONTINUE
  1140	001576'	260 17 0 00 001552*		CALL	.TTABC		;SPACE OVER
  1141	001577'	363 10 0 00 001545*		SOJLE	P4,.TCRLF	;QUIT WHEN DONE
  1142	001600'	344 07 0 00 001566'		AOJA	P3,LISRF2	;NO, BUMP POINTER AND GET NEXT
  1143
  1144	001601'	201 01 0 00 000057 	.TSLSH:	MOVEI	T1,"/"
  1145	001602'	254 00 0 00 000000*		PJRST	.TCHAR
  1146
  1147	001603'				TOCDEC:	SAVE	T1		;SAVE THE NUMBER
  1148	001604'	260 17 0 00 000754*		CALL	.TOCTW		;TYPE OCTAL
  1149	001605'	201 01 0 00 004343'		MOVEI	T1,[ASCIZ\ (\]
  1150	001606'	260 17 0 00 001564*		CALL	.TSTRG
  1151						RESTORE	T1		;GET NUMBER BACK
  1152	001610'	260 17 0 00 000000*		CALL	.TDECW		;TYPE DECIMAL

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 18-1
XGLOB	MAC	19-MAR-76 13:24		LISTING ROUTINES

  1153	001611'	201 01 0 00 004344'		MOVEI	T1,[ASCIZ\.) \]
  1154	001612'	254 00 0 00 001606*		PJRST	.TSTRG		;OUTPUT AND RETURN
  1155
  1156	001613'	201 01 0 00 000017 	INIEGO:	MOVEI	T1,^D15		;PUT 15 ENTRIES AND GLBREQ / LINE
  1157	001614'	603 11 0 00 010000 		TXNE	F,FL.NAR	;/NARROW?
  1158	001615'	201 01 0 00 000010 		MOVEI	T1,^D8		;THEN ONLY 8
  1159	001616'	202 01 0 00 004066'		MOVEM	T1,MODKNT	;STORE
  1160	001617'	263 17 0 00 000000 		RETURN
  1161
  1162	001620'	201 01 0 00 000003 	INIRFL:	MOVEI	T1,3		;THREE ACROSS
  1163	001621'	603 11 0 00 010000 		TXNE	F,FL.NAR	;IF /NAROW
  1164	001622'	201 01 0 00 000002 		MOVEI	T1,2		;THEN ONLY 2
  1165	001623'	202 01 0 00 004066'		MOVEM	T1,MODKNT
  1166	001624'	263 17 0 00 000000 		RETURN
  1167
  1168					;HERE TO LIST COMMON DECLARED HERE
  1169
  1170	001625'	554 01 0 06 000006 	LSTCOM:	HLRZ	T1,TL$COM(P2)	;SEE IF ANY
  1171	001626'	322 01 0 00 001513*		JUMPE	T1,.POPJ	;JUMP IF NOT
  1172	001627'	201 01 0 00 004345'		MOVEI	T1,[ASCIZ\C	\] ;START THE LINE
  1173	001630'	260 17 0 00 001612*		CALL	.TSTRG
  1174	001631'	201 05 0 06 000006 		MOVEI	P1,TL$COM(P2)	;INIT THE PTR
  1175	001632'	260 17 0 00 001620'		CALL	INIRFL		;INIT THE FORMATTER
  1176	001633'	550 05 0 05 000000 	COMNXT:	HRRZ	P1,(P1)		;GET NEXT
  1177	001634'	322 05 0 00 001577*		JUMPE	P1,.TCRLF	;QUIT ON NULL
  1178	001635'	260 17 0 00 001601'		CALL	.TSLSH		;SLASH
  1179	001636'	200 01 0 05 000002 		MOVE	T1,EG$NAM(P1)	;THE NAME
  1180	001637'	260 17 0 00 001572*		CALL	.TSIXN		;OUTPUT IT
  1181	001640'	260 17 0 00 001601'		CALL	.TSLSH		;SLASH
  1182	001641'	260 17 0 00 000000*		CALL	.TSPAC		;SPACE
  1183	001642'	554 01 0 05 000001 		HLRZ	T1,EG$FLG(P1)	;SIZE
  1184	001643'	260 17 0 00 001603'		CALL	TOCDEC		;LIST IT
  1185	001644'	377 00 0 00 004066'		SOSG	MODKNT		;CHECK FOR NEW LINE
  1186						JRST	[CALL	.TCRLF	;YES
  1187							CALL	INIRFL
  1188							HRRZ	T1,(P1)	;SEE IF ANOTHER
  1189							JUMPE	T1,.POPJ;JUMP IF AT END
  1190							CALL	.TTABC	;TAB OVER
  1191	001645'	254 00 0 00 004346'			JRST	.+1]	;NO--FORGE ON
  1192	001646'	260 17 0 00 001641*		CALL	.TSPAC		;SPACE OVER
  1193	001647'	254 00 0 00 001633'		JRST	COMNXT		;CONTINUE

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 19
XGLOB	MAC	19-MAR-76 13:24		I/O ROUTINES

  1194						SUBTTL I/O ROUTINES
  1195
  1196					;CALL WITH T1 ASCII BYTE FOR OUTPUT
  1197
  1198	001650'	377 00 0 00 002016'	OBYTE:	SOSG	OUTBHR+2	;ROOM?
  1199	001651'	254 00 0 00 001664'		 JRST	OBYBUF		;NO
  1200	001652'	136 01 0 00 002015'	OBYTE1:	IDPB	T1,OUTBHR+1
  1201	001653'	603 11 0 00 040000 		TLNE	F,FL.PP		;PRETTY PRINT?
  1202	001654'	306 01 0 00 000012 		CAIN	T1,.CHLFD	;YES--IS THIS  A LINEFFEED?
  1203	001655'	373 00 0 00 004065'		 SOSLE	LINKNT		;YES--TIME TO FORMFEED?
  1204	001656'	263 17 0 00 000000 		  RETURN		;NOT A LINEFEED OR NOT TIME
  1205	001657'	201 01 0 00 000074 		MOVEI	T1,^D60		;YES, RESET THE COUNTER
  1206	001660'	202 01 0 00 004065'		MOVEM	T1,LINKNT	;...
  1207	001661'	201 01 0 00 000014 		MOVEI	T1,.CHFFD	;GET A FORMFEED
  1208	001662'	254 00 0 00 001650'		JRST	OBYTE		;AND SEND IT
  1209					;	AOS	BYTCNT		;COUNT FOR FORMATTING
  1210	001663'	263 17 0 00 000000 		RETURN
  1211	001664'	057 02 0 00 000000 	OBYBUF:	OUT	OCH,
  1212	001665'	254 00 0 00 001652'		JRST	OBYTE1		;NO ERRORS
  1213	001666'	254 00 0 00 001652'		JRST	OBYTE1		;***FIXUP LATER
  1214
  1215					;CALL HERE TO GET 36-BIT BYTE INTO T1
  1216					;SKIP RETURN WITH THE BYTE, OR CPOPJ IF EOF
  1217
  1218	001667'	375 00 0 00 002021'	IBYTE:	SOSGE	INPBHR+2	;ANYTHING THERE/
  1219	001670'	254 00 0 00 001674'		 JRST	IBYTEN		;NO
  1220	001671'	134 01 0 00 002020'		ILDB	T1,INPBHR+1
  1221	001672'	350 00 0 17 000000 		AOS	(P)
  1222	001673'	263 17 0 00 000000 		RETURN
  1223	001674'	056 01 0 00 000000 	IBYTEN:	IN	ICH,		;GET NEW BUFFER
  1224	001675'	254 00 0 00 001667'		 JRST	IBYTE		;OK, GO GET DATA
  1225	001676'	062 01 0 00 000001 		GETSTS	ICH,T1		;OOPS, GET STATUS BITS
  1226						SAVE	T1		;REMEMBER THEM
  1227	001700'	620 01 0 00 740000 		TXZ	T1,IO.ERR	;CLEAR ERROR BITS
  1228	001701'	060 01 0 01 000000 		SETSTS	ICH,(T1)	;CLEAR WITH MON
  1229						RESTOR	T1		;GET BITS BACK
  1230	001703'	606 01 0 00 020000 		TXNN	T1,IO.EOF	;END OF FILE?
  1231	001704'	254 00 0 00 001667'		 JRST	IBYTE		;NO, GO PROCESS DATA
  1232	001705'	263 17 0 00 000000 		RETURN			;YES, POPJ BACK
  1233
  1234					;CALL WITH CHAR FOR TTY OUTPUT IN T1
  1235
  1236	001706'	377 00 0 00 004142'	TOCHAR:	SOSG	TOBHR+2		;ROOM?
  1237	001707'	067 03 0 00 000000 		OUTPUT	TTY,		;NO, BOOT THE BUFFER
  1238	001710'	136 01 0 00 004141'		IDPB	T1,TOBHR+1	;STORE IN THE BUFFER
  1239					;	AOS	BYTCNT		;COUNT FOR FORMATTING
  1240	001711'	306 01 0 00 000012 		CAIN	T1,.CHLFD	;IF A LINEFEED
  1241	001712'	067 03 0 00 000000 		OUTPUT	TTY,		;OUTPUT IT ANYWAY
  1242	001713'	263 17 0 00 000000 		RETURN

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 20
XGLOB	MAC	19-MAR-76 13:24		SCAN SWITCH TABLES

  1243						SUBTTL	SCAN SWITCH TABLES
  1244
  1245					DEFINE SWTCHS,<
  1246					SS	*LIBRAR,.FXLIB,1
  1247					SN	*NARROW,<POINTR(FLAGS,SW.NAR)>,FS.NUE
  1248					>
  1249
  1250					DOSCAN (GBXSW)
  1251	001714'	125451	426241			EXP  SIXBIT  /*LIBRAR/
  1252	001715'	125641	626257			EXP  SIXBIT  /*NARROW/
  1253	001716'	000000	000032			EXP <.FXLIB>			;*LIBRAR
  1254	001717'	360100	004073'		ARROW
  1255	001720'	000000	000000			XWD	0,0	;*LIBRAR
  1256	001721'	000000	000000			XWD	0,0	;*NARROW
  1257	001722'	000000	000001			XWD	..TEMR,1	;*LIBRAR
  1258	001723'	110000	000000			XWD	..TEMR,0	;*NARROW
  1259

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE 21
XGLOB	MAC	19-MAR-76 13:24		STORAGE

  1260						SUBTTL	STORAGE
  1261
  1262					IFN FT2SEG,<RELOC>
  1263
  1264	001724'				SGNAM:	BLOCK	1		;SAVE-GET ARGS
  1265	001725'				SGPPN:	BLOCK	1
  1266	001726'				SGDEV:	BLOCK	1
  1267	001727'				SGLOW:	BLOCK	1
  1268	001730'				PDLIST:	BLOCK	PDSIZ		;PUSHDOWN LIST
  1269	002012'				SAVJFF:	BLOCK	1		;ORIG. .JBFF
  1270	002013'				OFFSET:	BLOCK	1		;START OFFSET FOR CCL
  1271			002014'		F.ZER==.
  1272	002014'				OUTBHR:	BLOCK	3		;OUTPUT BUFFER HEADER
  1273	002017'				INPBHR:	BLOCK	3		;INPUT BUFFER HEADER
  1274	002022'				LKPBLK:	BLOCK	.RBSIZ+1	;EXTENDED LOOKUP BLOCK
  1275	002030'				WLDTMP:	BLOCK	1		;WILD STORES CURRENT BLOCK ADR HERE
  1276	002031'				OPNBLK:	BLOCK	3		;DEVICE OPEN BLOCK
  1277	002034'				OUTBUF:	BLOCK	203*NOBUF	;OUTPUT BUFFERS
  1278	002442'				INPBUF:	BLOCK	203*NIBUF	;INPUT BUFFERS
  1279	004064'				BYTCNT:	BLOCK	1		;REGISTER FOR FORMATTING OUTPUT
  1280	004065'				LINKNT:	BLOCK	1		;COUNTER FOR LINES/PAGE
  1281	004066'				MODKNT:	BLOCK	1		;NO. MODULES /LINE
  1282	004067'				TIMEON:	BLOCK	1		;FOR COUNTING CPU USAGE
  1283	004070'				FOUND1:	BLOCK	1		;-1 IF NEED ANOTHER PASS IN LINKER
  1284	004071'				LSEGOR:	BLOCK	1		;LOWSEG ORIGIN
  1285	004072'				HSEGOR:	BLOCK	1		;HISEG ORIGIN
  1286
  1287			004073'		SCN.F==.			;START OF SCAN INFO AREA
  1288	004073'				FLAGS:	BLOCK	2		;PERMANENT FLAGS DURING SCAN
  1289	004075'				O.AREA:	BLOCK	.FXLEN		;OUTPUT SPEC SIZE
  1290			000032			O.SIZE==.FXLEN
  1291	004127'				SWTWRD:	BLOCK	2		;SWITCH STORE AREA
  1292	004131'				INBEG:	BLOCK	1		;ADDRESS OF START OF INPUT SPECS
  1293	004132'				INEND:	BLOCK	1		;ADDRESS OF LAST INPUT SPEC
  1294	004133'				INXTZ:	BLOCK	1		;CURRENT BLOCK
  1295	004134'				LSTHED:	BLOCK	1		;POINTER TO FIRST TITLE BLOCK
  1296	004135'				ENTLST:	BLOCK	1		;POINTER TO SORTED ENTRY LIST
  1297	004136'				GLBLST:	BLOCK	1		;POINTER TO SORTED GLOBAL LIST
  1298	004137'				OUTDON:	BLOCK	1		;OUTPUT HAS BEEN SETUP
  1299			004137'		SCN.Z==.-1			;END OF SCANINFO AREA
  1300
  1301	004140'				TOBHR:	BLOCK	3		;TTY OUTPUT BUFFER HEADER
  1302			004142'		L.ZER==.-1
  1303
  1304			000015'			END	XGLOB

NO ERRORS DETECTED

PROGRAM BREAK IS 004354
CPU TIME USED 00:30.974

13K CORE USED

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE S-1
XGLOB	MAC	19-MAR-76 13:24		SYMBOL TABLE

AC		000000		F.NAM		000323'	EXT	INIEGO		001613'		OBYTE1		001652'		
ALCIN		000305'		F.ZER		002014'	SPD	INIRFL		001620'		OCH		000002	SPD	
ALCIN1		000317'		FBLKSZ		000033	SPD	INIT	041000	000000		OFFSET		002013'		
ALCIN2		000314'		FILRD1		000467'		INPBHR		002017'		OPEN	050000	000000		
ALCOUT		000301'		FILRD2		000473'		INPBUF		002442'		OPNBLK		002031'		
B		000012		FILRD3		000470'		INXTZ		004133'		OUT	057000	000000		
BLKDIS		000516'		FILRD4		000465'		IO.EOF		020000	SPD	OUTBHR		002014'		
BLKTYP		000504'		FILREA		000444'		IO.ERR		740000	SPD	OUTBUF		002034'		
BYTCNT		004064'		FL.FSA		020000	SPD	L.ZER		004142'	SPD	OUTBUF	065000	000000		
C		000010		FL.HSE		004000	SPD	LINK1		001272'		OUTDON		004137'		
CALL	260740	000000		FL.NAM		400000	SPD	LINK2		001302'		OUTPUT	067000	000000		
CBLXLT		000002	SPD	FL.NAR	010000	000000	SPD	LINK3		001304'		OUTSTR	051140	000000		
CLOSE	070000	000000		FL.PP		040000	SPD	LINK4		001317'		P		000017		
CLRANS		000267'		FL.SKP		200000	SPD	LINKER		001271'		P1		000005		
CLRFIL		000255'		FL.TTO		100000	SPD	LINKNT		004065'		P2		000006		
CLRFL1		000265'		FLAGS		004073'		LISFLS		001505'		P3		000007		
COMNXT		001633'		FNDNXT		001512'		LISREF		001560'		P4		000010		
CORE	047000	000011		FNDREF		001510'		LISRF1		001563'		PD.		000000	SPD	
COUNT		001066'		FNDRF1		001511'		LISRF2		001566'		PDLIST		001730'		
DEVCHR	047000	000004		FNDRF2		001534'		LISTIT		001223'		PDSIZ		000062	SPD	
DOFILE		000440'		FNDRF3		001524'		LKPBLK		002022'		PJRST	254000	000000		
DOXGL1		000106'		FOUND1		004070'		LNKSAT		001322'		PJSP	265000	000000		
DOXGLB		000067'		FS.LRG	200000	000000	SPD	LOOKUP	076000	000000		R50T6		000760'		
DOXGLF		000132'		FS.NOS	010000	000000	SPD	LSAT1		001322'		R50T6X		001011'		
DV.DIR	000004	000000	SPD	FS.NUE	100000	000000	SPD	LSAT2		001326'		R50TAB		001015'		
DWNSCN		000355'		FT$LIB		400000	SPD	LSAT3		001335'		RDCOM1		000563'		
E.BLKT		000751'		FT$REF		200000	SPD	LSEGGO		001543'		RDCOMM		000550'		
E.DFL		000251'	EXT	FT$SCN		100000	SPD	LSEGOR		004071'		RDEND		000577'		
E.ENT		000243'		FT2SEG		000000	SPD	LSENTR		001540'		RDEND1		000614'		
E.LKP		000251'		FTCPU		000000	SPD	LSENXT		001544'		RDEND2		000617'		
E.NFI		000203'		FTDDT		000001	SPD	LSGRQ		001554'		RDF40		000675'		
E.NIS		000220'		FX.NUL	200000	000000	SPD	LSTCOM		001625'		RDF40A		000713'		
E.OPN		000234'		GBXSCN		000051'		LSTDUN		001265'		RDF40B		000716'		
E.TMO		000226'		GBXSWD		001722'		LSTEN1		001405'		RDF40C		000722'		
E.WOI		000211'		GBXSWL		000002	SPD	LSTEN2		001416'		RDF40D		000727'		
EG$BAK		000000	SPD	GBXSWM		001720'		LSTENT		001350'		RDF40E		000734'		
EG$END		000003	SPD	GBXSWN		001714'		LSTHED		004134'		RDF40F		000741'		
EG$FLG		000001	SPD	GBXSWP		001716'		LSTIT1		001236'		RDF40G		000747'		
EG$NAM		000002	SPD	GETCOR		000340'		LSTNX1		001257'		RDHSEG		000537'		
EG$NXT		000000	SPD	GETSEG	047000	000040		LSTNXT		001244'		RDNAM1		000652'		
EG$ORD		000003	SPD	GETSTS	062000	000000		MODKNT		004066'		RDNAM2		000655'		
EG$TTL		000003	SPD	GLBLST		004136'		MX.		000000	SPD	RDNAME		000641'		
EGLSIZ		000004	SPD	HALT	254200	000000		MXLATR		000013	SPD	RDNDXB		000533'		
ENTER	077000	000000		HEDMSG		001424'		N		000007		RDNT1		000630'		
ENTLST		004135'		HSEGOR		004072'		NBLKTY		000012	SPD	RDNT2		000631'		
ENTRIT		001161'		IBYTE		001667'		NIBUF		000006	SPD	RDNTRY		000622'		
ENTRT2		001177'		IBYTEJ		000530'		NOBUF		000002	SPD	RDSYM1		000573'		
ENTRT3		001170'		IBYTEN		001674'		NTRCOM		001152'		RDSYMB		000565'		
ENTRT5		001205'		ICH		000001	SPD	NTRENT		001134'		RELEAS	071000	000000		
ENTRTX		001202'		IFDF1		001127'		NTRGRQ		001143'		RESET	047000	000000		
ENTSR1		001220'		IFDFIN		001126'		NTRTTL		001074'		RETURN	263740	000000		
ENTSR2		001212'		IN	056000	000000		O.AREA		004075'		SAV0		000417'		
ENTSRT		001212'		INBEG		004131'		O.SIZE		000032	SPD	SAV17		000436'		
EXIT	047000	000012		INBUF	064000	000000		OBYBUF		001664'		SAVJFF		002012'		
F		000011		INEND		004132'		OBYTE		001650'		SCN.F		004073'	SPD	

XGLOB	GENERATE REVERSE GLOBS FOR OVERLAY SETUP %1	MACRO %50A(441)-2 14:03 23-FEB-77 PAGE S-2
XGLOB	MAC	19-MAR-76 13:24		SYMBOL TABLE

SCN.Z		004137'	SPD	.CHFFD		000014	SPD	.TTIMN		000000	EXT	
SCNCHK		000144'		.CHLFD		000012	SPD	.TVERW		001241'	EXT	
SCNCK1		000166'		.CLRBF		000253'	EXT	.TYOCH		001270'	EXT	
SCNCK2		000177'		.FMSG		000226'	EXT	
SCNDWN		000437'		.FMSGD		000000	EXT	
SCNERR		000252'		.FMSGF		000244'	EXT	
SEGAGN		000402'		.FMSGN		000235'	EXT	
SEGBLK		000411'		.FMSGO		000000	EXT	
SETSTS	060000	000000		.FXDEV		000000	SPD	
SGDEV		001726'		.FXEXT		000003	SPD	
SGLOW		001727'		.FXLEN		000032	SPD	
SGNAM		001724'		.FXLIB		000032	SPD	
SGPPN		001725'		.FXMOD		000004	SPD	
STARS		001423'		.FXNAM		000001	SPD	
SW.LIB		400000	SPD	.IOASC		000000	SPD	
SW.NAR	010000	000000	SPD	.IOBIN		000014	SPD	
SWTLC1		000335'		.ISCAN		000042'	EXT	
SWTLC2		000333'		.JBFF		000121		
SWTLOC		000331'		.JBREL		000044		
SWTSTO		000321'		.JBSA		000120		
SWTWRD		004127'		.JBVER		000137		
T1		000001		.LKWLD		000110'	EXT	
T2		000002		.MNRET		000353'	EXT	
T3		000003		.OPBUF		000002	SPD	
T4		000004		.OPDEV		000001	SPD	
TIMEON		004067'		.OPMOD		000000	SPD	
TL$BAK		000000	SPD	.POPJ		004351'	EXT	
TL$COM		000006	SPD	.POPJ1		001204'	EXT	
TL$DEV		000007	SPD	.RBEXT		000003	SPD	
TL$END		000012	SPD	.RBNAM		000002	SPD	
TL$ENT		000003	SPD	.RBPPN		000001	SPD	
TL$EXT		000012	SPD	.RBSIZ		000005	SPD	
TL$FIL		000011	SPD	.SAVE1		000144'	EXT	
TL$FLG		000001	SPD	.SAVE2		000440'	EXT	
TL$GRQ		000004	SPD	.SAVE3		000000	EXT	
TL$NAM		000002	SPD	.SAVE4		001223'	EXT	
TL$NXT		000000	SPD	.SGDEV		000011	SPD	
TL$PPN		000010	SPD	.SGLOW		000017	SPD	
TL$SIZ		000005	SPD	.SGNAM		000000	SPD	
TOBHR		004140'		.SGPPN		000007	SPD	
TOCDEC		001603'		.STOPN		000065'	EXT	
TOCHAR		001706'		.TCHAR		001602'	EXT	
TTLSIZ		000013	SPD	.TCRLF		004346'	EXT	
TTY		000003	SPD	.TDATE		000000	EXT	
UPSCN		000364'		.TDATN		000000	EXT	
WLDTMP		002030'		.TDECW		001610'	EXT	
XGBEDT		000004	SPD	.TOCTW		001604'	EXT	
XGBMIN		000000	SPD	.TOLEB		001507'	EXT	
XGBVER		000002	SPD	.TSCAN		000055'	EXT	
XGBWHO		000000	SPD	.TSIXN		001637'	EXT	
XGLF1		000142'		.TSLSH		001601'		
XGLOB		000015'		.TSPAC		001646'	EXT	
XGLOB1		000027'		.TSTRG		001630'	EXT	
XGLOB2		000047'		.TTABC		004352'	EXT	
XLATOR		001472'		.TTIME		000000	EXT	

AC	     7#
ALCIN	   187	   351#	   376
ALCIN1	   352	   361#
ALCIN2	   358#	   362
ALCOUT	   187	   346#
B	    17#	   181	   535	   537	   561	   565	   571	   594	   596	   603	   613	   615	   742	   743
	   744	   745	   746	   748	   749	   751	   753	   755	   758	   759	   760	   778	   786	   794
	   825	   853	   870	   871	   872	   878	   896	   897	   898	   899	   902	   906	   908	   909
	   910	   916	   952	  1075	  1093
BLKDIS	   464	   495#
BLKTYP	   458	   483#	   493
BYTCNT	  1279#
C	    15#
CBLXLT	   605	  1052#
CLRANS	   186	   334#
CLRFIL	   186	   323#
CLRFL1	   324	   331#
COMNXT	  1176#	  1193
COUNT	   463	   468	   722#
DOFILE	   254	   445#
DOXGL1	   211	   230#	   255
DOXGLB	   206	   208#
DOXGLF	   238	   257#
DV.DIR	   204
DWNSCN	   253	   257	   405#
E.BLKT	   478	   674#
E.DFL	    50	    50#	   317
E.ENT	   219	   315#
E.LKP	   247	   317#
E.NFI	   284	   296	   309#
E.NIS	   282	   311#
E.OPN	   217	   245	   313#
E.TMO	   312#
E.WOI	   205	   310#
EG$BAK	   129#
EG$END	   134#	   135
EG$FLG	   131#	   538	   612	   824	   878	   942	  1183
EG$NAM	   132#	   807	   809	   832	   842	   843	   927	   938	   952	  1075	  1078	  1093	  1105	  1131
	  1179
EG$NXT	   130#
EG$ORD	   134#	   781	   789	   840	   846	   847	   853	   870	  1074	  1076
EG$TTL	   133#	   825	   872	  1080
EGLSIZ	   135#	   829
ENTLST	   781	   853	  1296#
ENTRIT	   779	   787	   795	   804#	   810
ENTRT2	   806	   821#
ENTRT3	   812#
ENTRT5	   812	   821	   828#
ENTRTX	   818	   824#
ENTSR1	   841	   846#
ENTSR2	   839#	   844
ENTSRT	   782	   790	   838#
F	    16#	   179	   194	   210	   239	   259	   358	   448	   515	   553	   554	   558	   574	   579
	   592	   599	   600	   670	   757	   776	   784	   792	   854	   861	   892	  1157	  1163	  1201
F.NAM	    50	    50#	   366
F.ZER	   156	   157	  1271#
FBLKSZ	    41	   233	   306	   329	   353
FILRD1	   468#
FILRD2	   467	   473#
FILRD3	   469#	   471	   476	   523	   606	   608	   611	   616	   682
FILRD4	   460	   466#
FILREA	   449#	   465	   469	   481	   513	   520	   539	   548	   551	   562	   566	   584	   588	   601
	   671
FL.FSA	    26#
FL.HSE	    28#	   448	   515	   558
FL.NAM	    22#	   448	   554	   574	   579	   592	   600	   670
FL.NAR	    35#	  1157	  1163
FL.PP	    25#	   861	  1201
FL.SKP	    23#	   448	   553	   599	   776	   784	   792
FL.TTO	    24#	   210	   259	   854	   892
FLAGS	   194	   369	   370	  1254	  1288#
FNDNXT	  1076#	  1079	  1085	  1097
FNDREF	   883	  1074#
FNDRF1	  1075#	  1092
FNDRF2	  1086	  1094#
FNDRF3	  1083	  1086#
FOUND1	   907	   920	   945	  1283#
FS.LRG	  1255	  1256	  1257	  1258
FS.NOS	  1256	  1258
FS.NUE	  1256	  1258
FT$LIB	   140#	   756	   874	   900	   911	   932	  1082
FT$REF	   141#	   876	   879	   912	   933	   940	  1084
FT$SCN	   142#	   914	   943
FT2SEG	    39	    70	    74	   400	   404	  1262
FTCPU	    38	   971	  1063
FTDDT	    37
FX.NUL	   292	   302
GBXSCN	   175	   179#	   273	   320
GBXSWD	   183	  1257#
GBXSWL	   182	  1253#
GBXSWM	   183	  1255#
GBXSWN	   182	  1251#	  1253
GBXSWP	   184	  1253#
GETCOR	   354	   385#	   741	   830	  1095
GLBLST	   789	  1074	  1297#
HEDMSG	   867	  1006#
HSEGOR	   446	   519	   560	  1285#
IBYTE	   506	  1218#	  1224	  1231
IBYTEJ	   449	   461	   470	   479	   506#	   511	   516	   521	   527	   531	   534	   541	   549	   556
	   563	   567	   581	   586	   589	   602	   618	   630	   634	   637	   640	   645	   648	   651
	   654	   657	   660	   663	   664	   667
IBYTEN	  1219	  1223#
ICH	    52#	   244	   246	   250	   265	  1223	  1225	  1228
IFDF1	   767#	   770
IFDFIN	   736	   766#
INBEG	   231	   281	   328	   355	   356	  1292#
INEND	   231	   304	   357	  1293#
INIEGO	  1101	  1109	  1156#
INIRFL	  1127	  1137	  1162#	  1175	  1187
INPBHR	   242	  1218	  1220	  1273#
INPBUF	   248	  1278#
INXTZ	   323	   331	   351	   361	   372	   377	  1294#
IO.EOF	  1230
IO.ERR	  1227
L.ZER	   158	  1302#
LINK1	   897#	   901	   904
LINK2	   898	   906#	   921
LINK3	   908#	   913	   915	   918
LINK4	   909	   920#
LINKER	   852	   896#
LINKNT	   860	  1203	  1206	  1280#
LISFLS	   959	  1070#	  1129
LISREF	  1002	  1121#
LISRF1	  1121	  1125#
LISRF2	  1128#	  1139	  1142
LISTIT	   258	   851#
LKPBLK	   199	   200	   218	   232	   246	   750	   752	   754	  1274#
LNKSAT	   903	   917	   924#
LSAT1	   925#	   930
LSAT2	   929#	   934	   937	   946
LSAT3	   936#	   939
LSEGGO	  1101#	  1119
LSEGOR	   447	   518	   522	   564	   570	  1284#
LSENTR	   999	  1098#
LSENXT	  1103#	  1114
LSGRQ	  1000	  1116#
LSTCOM	  1001	  1170#
LSTDUN	   871	   892#
LSTEN1	   984	   988#
LSTEN2	   994	   999#
LSTENT	   890	   949#
LSTHED	   181	   766	   896	   906	   928	  1295#
LSTIT1	   855	   863#
LSTNX1	   875	   881#
LSTNXT	   870#	   877	   880	   891
MODKNT	  1107	  1134	  1159	  1165	  1185	  1281#
MX.	  1255#
MXLATR	   967	  1061#
N	    14#	   313	   315
NBLKTY	   457	   493#
NIBUF	    43	   250	  1278
NOBUF	    44	   222	  1277
NTRCOM	   530	   610	   792#
NTRENT	   583	   624	   776#
NTRGRQ	   546	   642	   784#
NTRTTL	   577	   598	   736#
O.AREA	   197	   277	   315	   346	  1289#
O.SIZE	   347	  1290#
OBYBUF	  1199	  1211#
OBYTE	   262	   856	  1198#	  1208
OBYTE1	  1200#	  1212	  1213
OCH	    53#	   216	   218	   222	   263	   264	  1211
OFFSET	   148	   167	  1270#
OPNBLK	   198	   202	   208	   213	   215	   216	   232	   241	   243	   244	   313	   748	  1276#
OUTBHR	   214	  1198	  1200	  1272#
OUTBUF	   220	  1277#
OUTDON	   348	   364	  1298#
P	    18#	    30	    31	   155	   318	   610	   737	   740	   748	   797	   829	   832	   859	   895
	  1148	  1152	  1221	  1227	  1230
P1	    12#	   281	   283	   295	   298	   300	   303	   304	   306	   450	   452	   454	   455	   458
	   462	   466	   473	   474	   477	   533	   538	   580	   585	   607	   608	   612	   614	   676
	   902	   916	   925	   926	   927	   944	  1080	  1081	  1090	  1096	  1100	  1103	  1104	  1105
	  1110	  1118	  1174	  1176	  1177	  1179	  1183	  1188
P2	    13#	   451	   464	   469	   517	   520	   528	   539	   548	   550	   557	   562	   566	   584
	   587	   590	   601	   639	   643	   722	   724	   726	   872	   873	   962	   966	   983	   988
	   992	  1070	  1071	  1100	  1118	  1128	  1131	  1170	  1174
P3	    14#	   882	   885	  1089	  1128	  1139	  1142
P4	    15#	   881	  1086	  1087	  1097	  1121	  1136	  1141
PD.	  1257#
PDLIST	   155	   318	  1268#
PDSIZ	    40	   155	   318	  1268
R50T6	   529	   545	   582	   591	   623	   641	   687#
R50T6X	   700	   704#
R50TAB	   700	   702	   704	   717#
RDCOM1	   532	   539#
RDCOMM	   502	   527#	   540
RDEND	   503	   504	   553#
RDEND1	   555	   566#	   568	   572
RDEND2	   559	   570#
RDF40	   456	   618#	   625	   628
RDF40A	   633	   637#
RDF40B	   640#	   643
RDF40C	   638	   645#
RDF40D	   646	   651#
RDF40E	   652	   657#
RDF40F	   658	   663#
RDF40G	   665	   670#
RDHSEG	   498	   515#
RDNAM1	   593	   598#
RDNAM2	   597	   601#
RDNAME	   499	   500	   589#
RDNDXB	   453	   510#
RDNT1	   575	   580#	   587
RDNT2	   581#	   585
RDNTRY	   495	   496	   497	   574#
RDSYM1	   544	   548#
RDSYMB	   501	   541#	   550
SAV0	   416	   417	   431	   439#
SAV17	   415	   440#
SAVJFF	   174	   326	   338	  1269#
SCN.F	   335	   336	  1287#
SCN.Z	   337	  1299#
SCNCHK	   195	   276#
SCNCK1	   289	   295#	   307
SCNCK2	   299	   304#
SCNDWN	   405	   410	   413	   430	   441#
SCNERR	   318#
SEGAGN	   427#	   437
SEGBLK	   419	   421	   422	   423	   425	   426	   427	   438#
SGDEV	   151	   418	  1266#
SGLOW	   152	  1267#
SGNAM	   149	   420	  1264#
SGPPN	   150	   424	  1265#
STARS	   950	   954	  1005#
SW.LIB	    33#	   368
SW.NAR	    34#	    35	  1254
SWTLC1	   373	   376#
SWTLC2	   374#	   378
SWTLOC	   367	   372#
SWTSTO	   190	   364#
SWTWRD	  1291#
T1	     8#	   145	   146	   148	   153	   154	   157	   158	   166	   172	   173	   174	   182	   197
	   202	   203	   204	   208	   209	   212	   213	   214	   215	   220	   221	   223	   231	   240
	   241	   242	   243	   248	   249	   251	   261	   278	   280	   283	   286	   287	   288	   291
	   293	   297	   298	   301	   303	   309	   310	   311	   312	   314	   316	   323	   325	   327
	   329	   330	   336	   337	   338	   339	   340	   341	   342	   346	   353	   356	   357	   358
	   361	   368	   369	   370	   372	   374	   377	   385	   386	   394	   407	   408	   418	   419
	   420	   421	   424	   425	   427	   428	   450	   451	   480	   510	   519	   522	   533	   536
	   538	   542	   560	   561	   564	   565	   570	   571	   576	   596	   603	   604	   607	   609
	   612	   619	   627	   632	   638	   639	   646	   647	   652	   653	   658	   659	   665	   666
	   674	   676	   678	   687	   700	   701	   704	   706	   722	   723	   724	   740	   742	   759
	   760	   769	   807	   809	   814	   815	   816	   817	   822	   823	   824	   825	   829	   832
	   842	   846	   847	   856	   859	   860	   863	   865	   867	   873	   874	   876	   878	   879
	   895	   899	   900	   910	   911	   912	   914	   940	   941	   942	   950	   952	   954	   956
	   960	   962	   964	   966	   967	   968	   969	   981	   983	   984	   986	   988	   990	   992
	   993	   996	  1071	  1081	  1082	  1084	  1094	  1096	  1098	  1105	  1110	  1111	  1116	  1122
	  1125	  1131	  1144	  1148	  1149	  1152	  1153	  1156	  1158	  1159	  1162	  1164	  1165	  1170
	  1171	  1172	  1179	  1183	  1188	  1189	  1200	  1202	  1205	  1206	  1207	  1220	  1225	  1227
	  1228	  1230	  1238	  1240
T2	     9#	   198	   277	   279	   280	   285	   286	   288	   290	   293	   300	   302	   326	   327
	   347	   359	   385	   387	   388	   390	   449	   461	   470	   479	   508	   511	   516	   521
	   527	   531	   534	   535	   536	   537	   541	   542	   543	   549	   556	   563	   567	   581
	   586	   589	   602	   604	   605	   613	   614	   615	   618	   619	   620	   621	   630	   634
	   637	   640	   645	   648	   651	   654	   657	   660	   663	   664	   667	   700	   702	   703
	   704	   705	   725	   744	   745	   746	   748	   749	   750	   751	   752	   753	   754	   755
	   756	   758	   766	   767	   768	   769	   778	   781	   786	   789	   794	   804	   805	   806
	   807	   809	   813	   814	   816	   839	   840	   841	   843	   846	   931	   932	   933	   935
	   936	   937	   938	   942	   943	   944	  1070
T3	    10#	   199	   200	   457	   458	   459	   460	   464	   510	   512	   629	   631	   632	   633
	   635	   647	   649	   653	   655	   659	   661	   666	   668	   688	   706	   804	   813	   815
	   817	   822	   823	   839	   847	   928	   929	   930	   931	   935	   941	  1074	  1076	  1077
	  1078	  1080
T4	    11#	   290	   292	   842	   843	   927	   938	  1075	  1078	  1087	  1088	  1089	  1090	  1091
	  1092	  1093
TEMP%%	   204#	   204
TIMEON	  1282#
TL$BAK	   108#
TL$COM	   116#	   535	   537	   613	   615	   794	   992	  1170	  1174
TL$DEV	   117#	   749	  1071
TL$END	   121#	   122
TL$ENT	   113#	   778	   935	  1100
TL$EXT	   120#	   753
TL$FIL	   119#	   751
TL$FLG	   110#	   603	   758	   873	   899	   910	   931	   941	   944	   966	  1081
TL$GRQ	   114#	   786	   902	   916	  1118
TL$NAM	   112#	   594	   596	   748	   769	   962
TL$NXT	   109#
TL$PPN	   118#	   755	  1070
TL$SIZ	   115#	   561	   565	   571	   983	   988
TOBHR	   162	  1236	  1238	  1301#
TOCDEC	   985	   989	   995	  1147#	  1184
TOCHAR	   168	  1236#
TTLSIZ	   122#	   740	   746
TTY	    54#	   160	   164	   165	  1237	  1241
UPSCN	   180	   230	   393	   413#
WLDTMP	   196	   234	   239	  1275#
XGBEDT	    61#	    79
XGBMIN	    60#	    79
XGBVER	    59#	    79
XGBWHO	    58#	    79
XGLF1	   260	   265#
XGLOB	   145#	  1304
XGLOB1	   155#	   178
XGLOB2	   153	   177#
XLATOR	   969	  1049#	  1052	  1061
..TEMP	  1253#	  1253	  1254#	  1254	  1255#	  1255	  1256	  1256#	  1257	  1257#	  1258	  1258#	  1259
..TEMR	  1257#	  1257	  1258#	  1258	  1259
.CHFFD	   261	  1207
.CHLFD	  1202	  1240
.CLRBF	   319
.FMSG	    50	    50#	   309	   310	   311	   312
.FMSGD	    50	    50#
.FMSGF	    50	    50#	   316
.FMSGN	    50	    50#	   314
.FMSGO	    50	    50#
.FXDEV	   279	   280
.FXEXT	   288	   293	   298	   303
.FXLEN	    36	   359	  1289	  1290
.FXLIB	    36#	   374	   757	  1253
.FXMOD	   290	   300
.FXNAM	   283	   285	   286	   295
.IOASC	   160	   212
.IOBIN	   240
.ISCAN	    50	    50#	   171
.JBFF	   172	   221	   223	   249	   251	   330	   339	   386	   387	   882	   885
.JBREL	   173	   341	   388
.JBSA	   154
.JBVER	    78	   865
.LKWLD	    50	    50#	   237
.MNRET	    50	    50#	   397
.OPBUF	   215	   243
.OPDEV	   202	   208	   313	   748	  1071
.OPMOD	   213	   241
.POPJ	    50	    50#	   768	   926	  1077	  1111	  1136	  1171	  1189
.POPJ1	    50	    50#	   771	   826
.RBEXT	   752
.RBNAM	   750
.RBPPN	   754	  1070
.RBSIZ	   199	   233	  1274
.SAVE1	    50	    50#	   276
.SAVE2	    50	    50#	   445
.SAVE3	    50	    50#
.SAVE4	    50	    50#	   851
.SGDEV	   151
.SGLOW	   152
.SGNAM	   149
.SGPPN	   150
.STOPN	    50	    50#	   201
.TCHAR	    50	    50#	  1145
.TCRLF	    50	    50#	   949	   980	   993	  1104	  1108	  1135	  1141	  1177	  1186
.TDATE	    50	    50#
.TDATN	    50	    50#
.TDECW	    50	    50#	  1152
.TOCTW	    50	    50#	   677	  1148
.TOLEB	    50	    50#	  1072
.TSCAN	    50	    50#	   193
.TSIXN	    50	    50#	   953	   963	  1106	  1132	  1180
.TSLSH	  1130	  1133	  1144#	  1178	  1181
.TSPAC	    50	    50#	  1182	  1192
.TSTRG	    50	    50#	   396	   675	   680	   864	   868	   951	   955	   958	   961	   965	   970	   982
	   987	   991	   998	  1099	  1117	  1124	  1126	  1150	  1154	  1173
.TTABC	    50	    50#	  1113	  1138	  1140	  1190
.TTIME	    50	    50#
.TTIMN	    50	    50#
.TVERW	   866
.TYOCH	    50	    50#	   857	   895
CALL	    30#	   171	   180	   193	   195	   201	   230	   237	   253	   254	   257	   258	   262	   276
	   317	   319	   354	   376	   393	   396	   397	   445	   463	   468	   506	   529	   530	   545
	   546	   577	   582	   583	   591	   598	   623	   624	   641	   642	   675	   677	   680	   736
	   741	   779	   787	   795	   812	   821	   830	   851	   852	   857	   864	   866	   868	   883
	   890	   903	   917	   949	   951	   953	   955	   958	   959	   961	   963	   965	   970	   980
	   982	   985	   987	   989	   991	   993	   995	   998	   999	  1000	  1001	  1002	  1095	  1099
	  1101	  1106	  1108	  1109	  1113	  1117	  1126	  1127	  1129	  1130	  1132	  1133	  1135	  1137
	  1138	  1140	  1148	  1150	  1152	  1173	  1175	  1178	  1180	  1181	  1182	  1184	  1186	  1187
	  1190	  1192
CLOSE	   263
CORE	   342	   390	   408
DEVCHR	   203
DOSCAN	  1250
ENTER	   218
EXIT	   436
EXT	    46	   309	   310	   311	   312	   314	   316
GETSEG	   428
GETSTS	  1225
HALT	   163	   578	   595
IN	  1223
INBUF	   250
INIT	   160
LOOKUP	   246
M.FAIF	   316
M.FAIL	   309	   310	   311	   312
M.FAIN	   314
MOVX	   368	   756
ND	    37	    38	    39	    40	    41	    43	    44
OP%%TX	   204
OPEN	   216	   244
OUT	  1211
OUTBUF	   164	   222
OUTPUT	   165	  1237	  1241
OUTSTR	   434
P	  1047#	  1049	  1050	  1051	  1053	  1054	  1055	  1056	  1057	  1058	  1059	  1060
PJRST	   782	   790	   895	  1072	  1124	  1145	  1154
PJSP	   309	   310	   311	   312	   314	   316
POINTR	  1254
POS	  1254
R50	   709#	   717
RELEAS	   264	   265
RESET	   147	   177
RESTOR	    88#	   747	   831	   894	  1151	  1229
RETURN	    31#	   305	   332	   344	   349	   360	   365	   371	   375	   389	   392	   406	   409	   411
	   414	   433	   507	   707	   727	   738	   761	   777	   780	   785	   788	   793	   796	   798
	   808	   832	   848	   893	   922	  1003	  1160	  1166	  1204	  1210	  1222	  1232	  1242
SAVE	    82#	   739	   828	   858	  1147	  1226
SETSTS	  1228
SN	  1252	  1254	  1256	  1258
SS	  1251	  1253	  1255	  1257
STORE	   156	   335
SWTCHS	  1245#	  1251	  1253	  1255	  1257
TXNE	   204	   292	   302	  1157	  1163
TXNN	  1230
TXZ	  1227
VRSN.	    79
WID	  1254
X	  1251#	  1251	  1252	  1253#	  1253	  1254	  1255#	  1255	  1256	  1257#	  1257	  1258