

; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 1

; Digital Equipment Corporation

;

;00100  0001	MODULE LNK_MAPROUTINES 	(	! LINKER MAP ROUTINES

;00200  0002			IDENT = 'X01.18'

;00300  0003			) =

;00400  0004	BEGIN

;00500  0005	

;00600  0006	!

;00700  0007	! COPYRIGHT (C) 1977, 1978

;00800  0008	! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

;00900  0009	!

;01000  0010	! THIS SOFTWARE IS FURNISHED  UNDER A LICENSE FOR USE ONLY ON A SINGLE

;01100  0011	! COMPUTER  SYSTEM AND  MAY BE  COPIED ONLY WITH  THE INCLUSION OF THE

;01200  0012	! ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE, OR ANY OTHER COPIES THEREOF,

;01300  0013	! MAY NOT BE PROVIDED OR  OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON

;01400  0014	! EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO AGREES TO THESE LICENSE

;01500  0015	! TERMS.  TITLE TO AND  OWNERSHIP OF THE  SOFTWARE  SHALL AT ALL TIMES

;01600  0016	! REMAIN IN DEC.

;01700  0017	!

;01800  0018	! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE

;01900  0019	! AND SHOULD  NOT BE CONSTRUED  AS A COMMITMENT  BY DIGITAL  EQUIPMENT

;02000  0020	! CORPORATION.

;02100  0021	!

;02200  0022	! DEC ASSUMES  NO  RESPONSIBILITY  FOR  THE USE OR  RELIABILITY OF ITS

;02300  0023	! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.

;02400  0024	

;02500  0025	!++

;02600  0026	! FACILITY:	LINKER

;02700  0027	!

;02800  0028	! ABSTRACT:	PRODUCES THE MAP

;02900  0029	!

;03000  0030	! ENVIRONMENT:

;03100  0031	!

;03200  0032	! AUTHOR: K.D. MORSE, CREATION DATE: 27-MAR-77

;03300  0033	!

;03400  0034	! MODIFICATIONS:

;03500  0035	! NO.	DATE		PROGRAMMER	PURPOSE

;03600  0036	! ---	----		----------	-------

;03700  0037	! 001	1-JUN-77	T.J. PORTER	THIS IS THE CULMINATION OF A SERIES OF

;03800  0038	!					CHANGES TO (1) USE RMS I/O

;03900  0039	!						   (2) STANDARDIZE HEADING FORMATS

;04000  0040	!						   (3) PRODUCE CROSS REFERENCES

;04100  0041	!						   (4) REMOVE DIAGNOSTIC AIDS

;04200  0042	! 002	24-JUN-77	T.J. PORTER	ADD CROSS REFERENCE BY SYMBOL VALUE

;04300  0043	! 003	27-JUN-77	T.J. PORTER	ADD RUN TIME STATISTICS

;04400  0044	! 004	12-JUL-77	T.J. PORTER	REVISED CRF CONTROL TABLE AND

;04500  0045	!					ADD THE CRF ERROR HANDLING ROUTINE

;04600  0046	! 005	12-AUG-77	T.J. PORTER	ADD POSSIBLE OTS TRANSFER ADDRESS

;04700  0047	! 006	22-SEP-77	T.J. PORTER	ADD COUNT OF CROSS REFERENCES

;04800  0048	! 007	14-OCT-77	T.J. PORTER	ADD IMAGE IDENT LINE

;04900  0049	! 008	08-DEC-77	T.J. PORTER	ADD ONE LINE PER NON SUPPRESSED (NON - SYSLIB)

;05000  0050	!						P-SECTION TO DEFAULT MAP

;05100  0051	! 009	28-DEC-77	T.J. PORTER	MOVE IMAGE WIDE DATA TO END OF MAP

;05200  0052	! 010	10-JAN-78	T.J. PORTER	HEURISTIC TO ESTIMATE MAP LENGTH

;05300  0053	! 011	18-JAN-78	T.J. PORTER	SET MULTI-BLOCK COUNT IN RAB

;05400  0054	! 012	21-APR-78	T.J. PORTER	REQUIRE FILE CLEAN UP

;05500  0055	! 013	01-MAY-78	T.J. PORTER	COMPRESSION OF EMPTY IMAGE PAGES



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 1-1

; Digital Equipment Corporation

;

;05600  0056	! 014	16-JUN-78	T.J. PORTER	SHAREABLE IMAGES AND CLUSTERS

;05700  0057	! 015	20-JUN-78	K.D. MORSE	ADD TO IMAGE TYPE LINE IN IMAGE SYNOPSIS

;05800  0058	! 016	22-JUN-78	K.D. MORSE	ADD TO IMAGE SECTION SYNOPSIS

;05900  0059	! 017	05-JUL-78	K.D. MORSE	ADD MORE MAP OUTPUT.

;05910  0060	! 018	26-JUL-78	T.J. PORTER	MAKE LINES/PAGE ACCESSIBLE AS

;05920  0061	!						GLOBAL LITERAL "LNK$K_LINESPP" AND THE

;05930  0062	!						GLOBAL VARIABLE "LNK$GB_LINESPP"

;06000  0063	!--

;06100  0064	     

;00200  0066	!

;00300  0067	!++

;00400  0068	!

;00500  0069	! MODULE DESCRIPTION:

;00600  0070	!

;00700  0071	! THIS MODULE CONTAINS ALL THE ROUTINES NEEDED TO CREATE A MAP FOR THE 

;00800  0072	! LINKER.  THERE IS A GLOBAL ROUTINE TO PRODUCE EACH SECTION OF

;00900  0073	! THE MAP AND SEVERAL LOCAL SUBROUTINES TO HANDLE THE ACTUAL OUTPUT.  

;01000  0074	!

;01100  0075	! THE CALLING SEQUENCES OF THE GLOBAL ROUTINES ARE:

;01200  0076	!	LNK$MAPINIT()

;01300  0077	!	LNK$MAPMHD(OBJREC,OBJMODDSC)

;01400  0078	!	LNK$MAPLNG(LANGADDR,LANGLEN)

;01500  0079	!	LNK$MAPPSCTS()

;01600  0080	!	LNK$MAPSYMS()

;01700  0081	!	LNK$MAPISCTS()

;01800  0082	!	LNK$MAPOUT(LINEADDR,COUNT)

;01900  0083	!

;02000  0084	! WHERE:

;02100  0085	!

;02200  0086	!	OBJREC IS THE ADDRESS OF A MODULE HEADER RECORD (SEE OBJFMT)

;02300  0087	!	OBJMODDSC IS THE ADDRESS OF AN OBJECT MODULE DESCRIPTOR (SEE DATBAS)

;02400  0088	!	LANGADDR IS THE ADDRESS OF THE LANGUAGE PROCESSOR SUB-HEADER RECORD

;02500  0089	!	LANGLEN IS THE LENGTH OF THE LANGUAGE PROCESSOR NAME

;02600  0090	!	LINEADDR IS THE ADDRESS OF A LINE TO BE OUTPUT TO THE MAP (E.G. ERROR MESSAGES)

;02700  0091	!	COUNT IS THE NUMBER OF BYTES IN THE OUTPUT LINE

;02800  0092	!

;02900  0093	!--

;03000  0094	!

;03100  0095	! TABLE OF CONTENTS:

;03200  0096	!

;03300  0097	FORWARD ROUTINE

;03400  0098		CRFERROR : NOVALUE,					! CALLED BY CREF ON ERRORS

;03500  0099		FAOFAIL : NOVALUE,					! HANDLES FAILURES FROM FAO

;03600  0100		LNK$MAPINIT: NOVALUE,					! INITIALIZE MAP FILE

;03700  0101		LNK$CLOSMAPFIL : NOVALUE,				! CLOSE THE MAP FILE

;03800  0102		MAPFAIL: NOVALUE,					! MAP I/O FAILURE ROUTINE

;03900  0103		LNK$MAPMHD: NOVALUE,					! CREATE OBJECT MODULE LINE

;04000  0104		LNK$MAPLNG: NOVALUE,					! INSERT CREATOR IN MHD LINE

;04100  0105		LNK$MAPPSCTS: NOVALUE,					! CREATE THE PSECT MAP SECTION

;04200  0106		LNK$MAPSYMS: NOVALUE,					! CREATE ALL MAP SECTIONS FOR SYMBOLS

;04300  0107		LNK$MAPISCTS: NOVALUE,					! CREATE THE IMAGE SECTION SYNOPSIS

;04400  0108		LNK$MAPSTATS: NOVALUE,					! OUTPUT LINKER'S RUN STATISTICS

;04500  0109		MAPBOX,							! OUTPUT A HEADER IN A BOX

;04600  0110		LNK$MAPOUT,						! OUTPUT ONE LINE ALREADY FORMATTED

;04700  0111		MAPSUBHDR,						! CREATE A NEW SUBHEADER LINE AND OUTPUT IT



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2

; Digital Equipment Corporation

;

;04800  0112		NEWPAGE,						! OUTPUT NEW PAGE, HEADER, AND SUB-HEADER

;04900  0113		NEWLINE;						! OUTPUT BLANK LINE

;05000  0114	

;05100  0115	!

;05200  0116	! INCLUDE FILES:

;05300  0117	!

;05400  0118	LIBRARY

;05500  0119		'SYS$LIBRARY:LIB.L32';					! SYSTEM STRUCTURE DEFINITIONS

;05700  0120	REQUIRE

;05800  0121		'PREFIX';				! GET GENERAL DEFINITIONS

;05900  0313	REQUIRE

;06000  0314		'SYMFMT';				! GET SYMBOL TABLE DEFINITIONS

;06100  0399	REQUIRE

;06200  0400		'DATBAS';				! GET BASIC DATA BASE DEFINITIONS

;06300  0632	REQUIRE

;06400  0633		'ISGENC';				! GET OBJECT LANGUAGE RECORD FORMAT ANE ISD LAYOUT

;06500  1210	REQUIRE

;06600  1211		'CRFMAC';				! CROSS REFERENCE TABLE SETUP MACROS

;06700  1334	!

;06800  1335	! EQUATED SYMBOLS:

;06900  1336	!

;07000  1337	GLOBAL LITERAL

;07100  1338		LEN$C_MAPLINE = 132,					! LENGTH OF LINES ON THE MAP

;07200  1339		LEN$C_LNGNAM = 30,					! MAXIMUM LENGTH OF MODULE CREATOR NAME

;07210  1340		LNK$K_LINESPP = 58;					! NUMBER OF LINES PER PAGE

;07300  1341	LITERAL

;07400  1342		DATE_FLD_LNG = 17,					! LENGTH OF DATE FIELD IN OBJ MOD HDR REC

;07500  1343		MAJ_IDENT_LNG = 2,					! LENGTH OF MAJOR IDENT

;07600  1344		MIN_IDENT_LNG = 2,					! LENGTH OF MINOR IDENT

;07700  1345		MAX_K_RMSMBC = 8,					! MAXIMUM NUMBER FOR RMS BLOCKING

;07900  1346		BOXLINES = 3;						! NUMBER OF LINES IN BOX HEADINGS

;08000  1347	!

;08100  1348	! OWN STORAGE:

;08200  1349	!

;08300  1350	OWN

;08400  1351	!

;08500  1352	! FAO CONTROL STRINGS

;08600  1353	!

;08700  1354		CONTRBSTR : DESCRIPTOR('!16AC!15AC!3(9XL) (!8UL.) !5AC!1ZB!53AC'),		! PSECT CONTRIBUTION

;08800  1355		PSC_CNTRL_STR : DESCRIPTOR('!16AC!15AC!3(9XL) (!8UL.) !5AC!ZB !9(AC)'),		! PSECT DESCRIPTION

;08900  1356		HDR_CNTRL_STR: DESCRIPTOR('!^!64AS!25<!17%D!>!33<LINKER X!AD.!AD!>PAGE!5UL!/'),	! MAP PAGE HEADING

;09000  1357		OBJMD_CNTRL_STR: DESCRIPTOR('!16AC!15AC!10UL !37AD!19AD'),			! OBJ MOD SECTION

;09100  1358		CREAT_CNTRL_STR: DESCRIPTOR('!AD'),						! CREATOR OF MODULE

;09200  1359		ISECT_CNTRL_STR: DESCRIPTOR('!16AC!4UB!6UW!12XL!9UL!4UB !AC !AC !AC'),

;09300  1360		GBLIS_CNTRL_STR: DESCRIPTOR('!16AC!4UB!6UW!12XL!9UL!4UB!28< !AC !AC !AC!>!16AC !12AC !6UB  !8UL'),

;09400  1361		ABBRVTBL_STR: DESCRIPTOR('!/!/!/!AC!/!_!_+!18*-+!/!_!_!!!AC!!'),

;09500  1362		ABBRVTBL2_STR: DESCRIPTOR('!_!_!!!AC!!!/!_!_!!!AC!!!/!_!_!!!AC!!!/!_!_+!18*-+'),

;09600  1363	!

;09700  1364	! FAO CONTROL STRINGS FOR LINK-WIDE SYNOPSIS

;09800  1365	!

;09900  1366		VIRMEMLINE: DESCRIPTOR('!/!40<VIRTUAL MEMORY ALLOCATED:!>!3(9XL) (!UL. BYTE!%S, !UL. PAGE!%S)'),

;10000  1367		STACKLINE: DESCRIPTOR('!41<STACK SIZE:!>!8UW. PAGE!%S'),

;10100  1368		IMGHDRBLKLINE: DESCRIPTOR('!41<IMAGE HEADER VIRTUAL BLOCK LIMITS:!>!8UL.!9UW. (!5UW. BLOCK!%S)'),

;10200  1369		IMGBINBLKLINE: DESCRIPTOR('!41<IMAGE BINARY VIRTUAL BLOCK LIMITS:!>!8UL.!9UL. (!5UW. BLOCK!%S)'),

;10300  1370		IDENTLINE: DESCRIPTOR('!41<IMAGE NAME AND IDENTIFICATION:!>!AC !AC'),



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2-1

; Digital Equipment Corporation

;

;10400  1371		NFILLINE: DESCRIPTOR('!41<NUMBER OF FILES:!>!8UW.'),

;10500  1372		NMODLINE: DESCRIPTOR('!41<NUMBER OF MODULES:!>!8UW.'),

;10600  1373		NPSCLINE: DESCRIPTOR('!41<NUMBER OF PROGRAM SECTIONS:!>!8UW.'),		! NUMBER OF P-SECTS IN LINK

;10700  1374		NSYMLINE: DESCRIPTOR('!41<NUMBER OF GLOBAL SYMBOLS:!>!8UW.'),		! NUMBER OF GLOBAL SYMBOLS

;10800  1375		NUNDFLINE: DESCRIPTOR('!41<INCLUDING UNDEFINED COUNT OF:!>!8UW.'),	! COUNT OF UNDEFINED SYMBOLS

;10900  1376		NCROSREFS : DESCRIPTOR('!41<NUMBER OF CROSS REFERENCES:!>!8UW.'),

;11000  1377		NISCLINE: DESCRIPTOR('!41<NUMBER OF IMAGE SECTIONS:!>!8UW.'),		! NUMBER OF IMAGE SECTIONS

;11100  1378		DBGTFRLINE: DESCRIPTOR('!41<DEBUGGER TRANSFER ADDRESS:!>!8XL'),		! DEBUGGER TRANSFER ADDRESS

;11200  1379		OTSTFRLINE : DESCRIPTOR('!41<OTS TRANSFER ADDRESS - "!AC":!>!8XL'),	! OTS TRANSFER ADDRESS

;11300  1380		USRTFRLINE: DESCRIPTOR('!41<USER TRANSFER ADDRESS:!>!8XL'),		! USER TRANSFER ADDRESS

;11400  1381		IMGATRLINE: DESCRIPTOR('!41<IMAGE TYPE:!>!AC.'),			! IMAGE ATTRIBUTES LINE

;11500  1382		IMGSHRLINE: DESCRIPTOR(

;11600P 1383			'!41<IMAGE TYPE:!>!AC!AC. GLOBAL SECTION MATCH = "!AC", G.S. IDENT, MAJOR=!UB, MINOR=!UL'), ! IMAGE ATTRIBUTES LIN

;11700  1384		MAPFORMAT : DESCRIPTOR('!41<MAP FORMAT:!>!AC!ACIN FILE "!AD"'),

;11800  1385		MAPLENGTH : DESCRIPTOR('!41<ESTIMATED MAP LENGTH:!>!UL. BLOCKS'),

;11900  1386	!

;12000  1387	! BUFFERS AND DESCRIPTORS

;12100  1388	!

;12200  1389		ALIGNMENT,						! ADDRESS OF ALIGNMENT DESCRIPTION

;12300  1390		OUTLINE : CH$SEQUENCE[LEN$C_MAPLINE],			! OUTPUT LINE BUFFER

;12400  1391		OUTDES : VECTOR[2] INITIAL (LEN$C_MAPLINE,OUTLINE),	! OUTPUT LINE DESCRIPTOR

;12500  1392		OUTSIZE : WORD,						! SIZE OF OUTPUT STRING

;12600  1393		ARGS : VECTOR[9],					! FAO ARGUMENTS

;12700  1394		LINECNT,						! NUMBER OF LINES OUTPUT ON CURRENT PAGE

;12800  1395		PAGENUM,						! NEXT PAGE NUMBER

;12900  1396		SUBHDLINE;						! ADDR OF SUB-HEADER LINE DESCRIPTOR

;13000  1397	BIND

;13100  1398		ALIGNBYTE = CSTRING('BYTE '),				! BYTE ALIGNMENT ASCIC STRING

;13200  1399		ALIGNWORD = CSTRING('WORD '),				! WORD ALIGNMENT ASCIC STRING

;13300  1400		ALIGNLONG = CSTRING('LONG '),				! LONGWORD ALIGNMENT ASCIC STRING

;13400  1401		ALIGNQUAD = CSTRING('QUAD '),				! QUADWORD ALIGNMENT ASCIC STRING

;13500  1402		ALIGN2 = CSTRING('2 ** '),				! OTHER ALIGNMENT ASCIC STRING

;13600  1403		ALIGNPAGE = CSTRING('PAGE '),				! PAGE ALIGNMENT ASCIC STRING

;13700  1404		BLANKS = CSTRING(' '),					! ASCIC STRING OF SPACE

;13800  1405		HYPHENS = CSTRING('-'),					! ASCIC STRING OF HYPHENS

;13900  1406		PIC = CSTRING('  PIC,'),					! PIC ATTRIBUTE ASCIC STRING

;14000  1407		LIB = CSTRING('LIB,'),					! LIB ATTRIBUTE ASCIC STRING

;14100  1408		OVR = CSTRING('OVR,'),					! OVR ATTRIBUTE ASCIC STRING

;14200  1409		REL = CSTRING('REL,'),					! REL ATTRIBUTE ASCIC STRING

;14300  1410		GBL = CSTRING('GBL,'),					! GBL ATTRIBUTE ASCIC STRING

;14400  1411		SHR = CSTRING('  SHR,'),					! SHR ATTRIBUTE ASCIC STRING

;14500  1412		EXE = CSTRING('  EXE,'),					! EXE ATTRIBUTE ASCIC STRING

;14600  1413		RD  = CSTRING('  RD,'),					! RD ATTRIBUTE ASCIC STRING

;14700  1414		WRT = CSTRING('  WRT'),

;14800  1415		NOPIC = CSTRING('NOPIC,'),				! WRT ATTRIBUTE ASCIC STRING

;14900  1416		USR = CSTRING('USR,'),					! USR ATTRIBUTE ASCIC STRING

;15000  1417		CON = CSTRING('CON,'),					! CON ATTRIBUTE ASCIC STRING

;15100  1418		ABS = CSTRING('ABS,'),					! ABS ATTRIBUTE ASCIC STRING

;15200  1419		LCL = CSTRING('LCL,'),					! LCL ATTRIBUTE ASCIC STRING

;15300  1420		NOSHR = CSTRING('NOSHR,'),				! NOSHR ATTRIBUTE ASCIC STRING

;15400  1421		NOEXE = CSTRING('NOEXE,'),				! NOEXE ATTRIBUTE ASCIC STRING

;15500  1422		NORD  = CSTRING('NORD,'),				! NORD ATTRIBUTE ASCIC STRING

;15600  1423		NOWRT = CSTRING('NOWRT'),				! NOWRT ATTRIBUTE ASCIC STRING

;15700  1424		EXEIMAGE = CSTRING('EXECUTABLE'),			! EXECUTABLE IMAGE

;15800  1425		SYSIMAGE = CSTRING('SYSTEM'),				! SYSTEM IMAGE



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2-2

; Digital Equipment Corporation

;

;15900  1426		SHRIMAGE = CSTRING(' SHAREABLE'),			! AND LINKABLE IMAGE

;16000  1427		BRIEFMAP = CSTRING('BRIEF'),				! BRIEF MAP FORMAT

;16100  1428		ALLTIME = CSTRING('ALWAYS'),				! GS MATCH = ALWAYS

;16200  1429		NEVER = CSTRING('NEVER'),				! GS MATCH = NEVER

;16300  1430		EQUAL = CSTRING('EQUAL'),				! GS MATCH = EQUAL

;16400  1431		LSSEQUAL = CSTRING('LESS/EQUAL'),			! GS MATCH = LESS/EQUAL

;16500  1432		DEFAULTMAP = CSTRING('DEFAULT'),			! DEFAULT FORMAT

;16600  1433		LONGMAP = CSTRING('FULL'),				! LONG FORMAT

;16700  1434		CREFMAP = CSTRING(' WITH CROSS REFERENCE '),		! WITH CROSS REFERENCES

;16800  1435		READWRITE = CSTRING('READ WRITE'),

;16900  1436		READONLY = CSTRING('READ ONLY'),

;17000  1437		DEMANDZERO = CSTRING('DEMAND ZERO'),

;17100  1438		COPYONREF = CSTRING('COPY ON REF'),

;17200  1439		CHARDEF_STR = CSTRING('	KEY FOR SPECIAL CHARACTERS ABOVE:'),

;17300  1440		UNDEF_STR = CSTRING(' *  - UNDEFINED   '),

;17400  1441		UNIV_STR = CSTRING(' U  - UNIVERSAL   '),

;17500  1442		RELOC_STR = CSTRING(' R  - RELOCATABLE '),

;17600  1443		WEAK_STR = CSTRING(' WK - WEAK        '),

;17700  1444	!

;17800  1445	! BOXED HEADERS

;17900  1446	!

;18000  1447		PSECTHDR = CSTRING('! PROGRAM SECTION SYNOPSIS !'),	! PSECT SECTION HEADER

;18100  1448		OBJMODHDR = CSTRING('! OBJECT MODULE SYNOPSIS !'),	! OBJECT MODULE SECTION HEADER

;18200  1449		IMAGESECTIONS = CSTRING('! IMAGE SECTION SYNOPSIS !'),	! IMAGE SECTION HEADER

;18300  1450		LINKWIDEHDR = CSTRING('! IMAGE SYNOPSIS !'),		! LINK-WIDE INFORMATION HEADER

;18400  1451		SYMBYNAME = CSTRING('! SYMBOLS BY NAME !'),		! SYMBOL TABLE

;18500  1452		SYMBOLCREF = CSTRING('! SYMBOL CROSS REFERENCE !'),	! WITH CROSS REFERENCE

;18600  1453		SYMBYVALUE = CSTRING('! SYMBOLS BY VALUE !'),		! SYMBOL TABLE PRINTED BY VALUES

;18700  1454		LINKSTATS = CSTRING('! LINK RUN STATISTICS !');		! STATISTICS OF THE RUN

;18800  1455	!

;18900  1456	! SUB-HEADERS

;19000  1457	!

;19100  1458	OWN

;19200  1459	    PSECTSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;19300P 1460		'!/!16<P-SECT NAME!>!18<MODULE(S)!>!9<BASE!>!14<END!>!15<LENGTH!>!22<ALIGN!>ATTRIBUTES'),STRINGDESC(

;19400P 1461		'!16<!11*-!>!18<!9*-!>!9<!4*-!>!14<!3*-!>!15<!6*-!>!22<!5*-!>!10*-')),

;19500  1462	!

;19600  1463	    OBJMODSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;19700P 1464		'!/!16<MODULE NAME!>!19<IDENT!>!11<BYTES!>!36<FILE!>!19<CREATION DATE!>CREATOR'),STRINGDESC(

;19800P 1465		'!16<!11*-!>!19<!5*-!>!11<!5*-!>!36<!5*-!>!19<!13*-!>!7*-')),

;19900  1466	!

;20000  1467	    CRFSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;20100P 1468		'!/!16<SYMBOL!>!16<VALUE!>!22<DEFINED BY!>REFERENCED BY ...'),STRINGDESC(

;20200P 1469		'!16<!6*-!>!16<!5*-!>!22<!10*-!>!17*-')),

;20300  1470	!

;20400  1471	    SYMSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;20500P 1472		'!/!16<SYMBOL!>!19<VALUE!>!16<SYMBOL!>!19<VALUE!>!16<SYMBOL!>!19<VALUE!>!16<SYMBOL!>VALUE'),STRINGDESC(

;20600P 1473		'!16<!6*-!>!19<!5*-!>!16<!6*-!>!19<!5*-!>!16<!6*-!>!19<!5*-!>!16<!6*-!>!5*-')),

;20700  1474	!

;20800  1475	    VALSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;20900P 1476		'!/!40<VALUE!>SYMBOLS...'),STRINGDESC('!40<!5*-!>!10*-')),

;21000  1477	!

;21100  1478	    ISDSUBHDR : VECTOR[4] INITIAL(STRINGDESC(

;21200P 1479		'!/!16<   CLUSTER!>!5<TYPE!>!8<PAGES!>!50<!AC!>!16<GBL. SEC. NAME!>!12<   MATCH!> MAJORID   MINORID'),

;21300  1480		STRINGDESC(



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2-3

; Digital Equipment Corporation

;

;21400P 1481		'!16<   !7*-!>!5<!4*-!>!8<!5*-!>!9*- !8*- !3*- !27<!21*-!>!14*- !13<    !5*-!> !7*-   !7*-'));

;21500  1482	BIND

;21600  1483		ISDTXT = CSTRING('BASE ADDR DISK VBN PFC PROTECTION AND PAGING');

;21700  1484	

;21800  1485	!

;21900  1486	! EXTERNAL REFERENCES:

;22000  1487	!

;22100  1488	

;22200  1489	EXTERNAL ROUTINE

;22300  1490		CRF$OUT : ADDRESSING_MODE(GENERAL),			! CROSS REFERENCE AND SYMBOL TABLE OUTPUT

;22400  1491		SYS$FAO : ADDRESSING_MODE(GENERAL),			! FORMATTED ASCII OUTPUT

;22500  1492		LNK$ERRMSG;						! ERROR MESSAGE ROUTINE

;22600  1493	

;22700  1494	EXTERNAL LITERAL

;22800  1495		ERM$C_CRE8ERR : BYTLIT,					! FILE CREATION ERROR MESSAGE CODE

;22900  1496		ERM$C_CRFERR : BYTLIT,					! CROSS REFERENCE ERROR

;23000  1497		ERM$C_CLOSERR : BYTLIT,					! CLOSE ERROR MESSAGE

;23100  1498		ERM$C_FAOBUG : BYTLIT,					! FAILURE RETURN FROM FAO

;23200  1499		ERM$C_UNMCOD : BYTLIT,					! MESSAGE CONTAINING USER FILENAME AND ERROR CODE

;23300  1500		ERM$C_WRTERR : BYTLIT,					! ERROR MESSAGE CODE FOR PUT FAILURE

;23400  1501		SEV$C_DIAG : SHORT,					! DIAGNOSTIC SEVERITY LEVEL

;23500  1502		SEV$C_FATAL : SHORT,					! FATAL SEVERITY LEVEL

;23600  1503		SEV$C_INFOR : SHORT,					! INFORMATIVE SEVERITY LEVEL

;23700  1504		OBJ$B_SUBTYP: BYTLIT,					! OFFSET TO OBJECT HEADER RECORD SUB-TYPE

;23800  1505		LNK$S_IMAGE : SHORT,					! IMAGE OPENED FLAG

;23900  1506		LNK$S_EXE : SHORT,					! EXECUTABLE IMAGE FLAG

;24000  1507		LNK$S_SYS : SHORT,					! SYSTEM IMAGE FLAG

;24100  1508		LNK$S_MAP : SHORT,					! INDICATOR IF MAP IS REQUESTED

;24200  1509		LNK$S_MAPOPN : SHORT,					! MASK INDICATING MAP FILE OPEN

;24300  1510		LNK$S_PICIMG : SHORT,					! IMAGE IS PIC

;24400  1511		LNK$S_BRIEF : SHORT,					! BRIEF MAP FLAG

;24500  1512		LNK$S_LONG : SHORT,					! LONG MAP FLAG

;24600  1513		LNK$S_CROS : SHORT;					! CROSS REFERENCE FLAG

;24700  1514	

;24800  1515	EXTERNAL

;24900  1516		LNK$GL_CTLMSK: LONG,					! CONTROL BIT MASK LONGWORD

;25000  1517		LNK$GL_CURFIL: REF BLOCK[,BYTE],			! CURRENT FILE DESCRIPTOR

;25100  1518		LNK$GL_IMGFIL : REF BLOCK[,BYTE],			! IMAGE FILE DESCRIPTOR

;25200  1519		LNK$GL_MAPFIL : REF BLOCK[,BYTE],			! MAP FILE DESCRIPTOR

;25300  1520		LNK$GQ_STARTIM,						! STARTING DATE AND TIME

;25400  1521		LNK$AW_VERSION: BLOCK[LID$C_SIZE,BYTE],			! VERSION OF LINKER

;25500  1522		LNK$GW_HDRBLKS: WORD,					! NUMBER OF IMAGE HEADER BLOCKS

;25600  1523		LNK$GW_IMGBLKS: WORD,					! NUMBER OF IMAGE BINARY BLOCKS

;25700  1524		LNK$GL_CURCLU : REF BLOCK[,BYTE],			! CURRENT CLUSTER DESCRIPTOR

;25800  1525		LNK$GL_CLULST,						! CLUSTR LISTHEAD

;25900  1526		LNK$GL_MAPLST,						! LIST OF P-SECTIONS FOR MAP

;26000  1527		LNK$GL_MAXVA,						! MAXIMUM VIRTUAL ADDRESS ALLOCATED

;26100  1528		LNK$GL_MINVA,						! MINIMUM

;26200  1529		LNK$GW_STACK: WORD,					! SIZE OF STACK

;26300  1530		LNK$GW_NFILES: WORD,					! NUMBER OF FILES IN LINK

;26400  1531		LNK$GW_NMODULES: WORD,					! NUMBER OF MODULES IN LINK

;26500  1532		LNK$GW_NPSECTS: WORD,					! NUMBER OF P-SECTS IN LINK

;26600  1533		LNK$GW_NSYMBOLS: WORD,					! NUMBER OF SYMBOLS IN LINK

;26700  1534		LNK$GW_NCROSRFS : WORD,					! NUMBER OF SYMBOL CROSS REFERENCES

;26800  1535		LNK$GW_NUDFSYMS: WORD,					! NUMBER OF UNDEFINED SYMBOLS



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2-4

; Digital Equipment Corporation

;

;26900  1536		LNK$GL_TFRADR: LONG,					! USER TRANSFER ADDRESS

;27000  1537		LNK$GL_DBGTFR: LONG,					! DEBUGGER TRANSFER ADDRESS

;27100  1538		LNK$GL_OTSEPDSC : REF BLOCK[,BYTE],			! SYMBOL TABLE ENTRY FOR OTS RESERVED SYMBOL

;27200  1539		LNK$GW_NISECTS: WORD,					! NUMBER OF IMAGE SECTIONS

;27300  1540		LNK$GL_TFRPSC: LONG,					! PSECT DEFINING USER TRANSFER ADDRESS

;27400  1541		LNK$GL_DBGTFPS: LONG,					! PSECT DEFINING DEBUGGER TRANSFER ADDRESS

;27500  1542		LNK$GT_IMGNAM : VECTOR[,BYTE],				! IMAGE NAME STRING

;27600  1543		LNK$GT_IMGID : VECTOR[,BYTE];				! IMAGE ID STRING

;27700  1544	!

;27800  1545	OWN

;27900  1546		MAPESTIM,						! ESTIMATE OF MAP LENGTH

;28000  1547		IMAGEFILENAME : DESCRIPTOR('NO IMAGE FILE CREATED'),	! STRING TO PRINT WHEN THERE

;28100  1548									! WAS NO IMAGE CREATED

;28200  1549		AUXFNB : REF BLOCK[,BYTE],				! POINTER TO FILE'S AUXILIARY FILENAME BLOCK

;28300  1550		RMSERROR,						! ERROR CODE RETURNED BY RMS

;28400  1551		MAPRAB : $RAB(RAC = SEQ, ROP=WBH),			! SEQUENTIAL

;28500  1552		MAPIFI : WORD,						! SAVED INTERNAL IDENT FOR CLOSE

;28600  1553		SYMBOLFIELD : $CRFFIELD(FAO_STRING='!15AC',		! THE KEY 1 FIELD IS THE

;28700P 1554					FIELD_WIDTH=15),		! SYMBOL

;28800  1555		SYMBOLEND : $CRFFIELDEND,

;28900  1556		SPACEFIELD : $CRFFIELD(FAO_STRING=' ',		! SPACES BETWEEN SYMBOL AND VALE

;29000P 1557					FIELD_WIDTH=1),

;29100  1558		SPACEEND : $CRFFIELDEND,

;29200  1559		VALUEFIELD : $CRFFIELD(FAO_STRING='!XL',		! HEX LONGWORD VALUE

;29300P 1560					FIELD_WIDTH=8),

;29400  1561		VALUEEND : $CRFFIELDEND,

;29500  1562		VALUEFLAGS : $CRFFIELD(FAO_STRING='!3* ',		! DEFAULT SUFFIX

;29600P 1563					FIELD_WIDTH=3),			! WHEN NONE OF FOLLOWING APPLIES

;29700  1564			RELOC_SUF : $CRFFIELD(BIT_MASK=SYM$M_REL,	! RELOCATABLE ONLY

;29800P 1565					FAO_STRING='-R ',		! SUFFIX

;29900P 1566					FIELD_WIDTH=3),	

;30000  1567			UNIV_SUF : $CRFFIELD(BIT_MASK=SYM$M_UNI,	! SUFFIX ON UNIVERSAL

;30100P 1568					FAO_STRING='-U ',

;30200P 1569					FIELD_WIDTH=3),

;30300  1570			REL_UNI_SUF : $CRFFIELD(BIT_MASK=		! SUFFIX ON RELOCATABLE

;30400P 1571					(SYM$M_UNI OR SYM$M_REL),	! AND UNIVERSAL

;30500P 1572					FAO_STRING='-RU',

;30600P 1573					FIELD_WIDTH=3),

;30700  1574			UNDEF_SUF : $CRFFIELD(BIT_MASK=SYM$M_DEF,	! SUFFIX ON UNDEFINED

;30800P 1575					SET_CLEAR=0,			! SYMBOL VALUES

;30900P 1576					FAO_STRING='-* ',

;31000P 1577					FIELD_WIDTH=3),

;31100  1578		VALFLGSEND : $CRFFIELDEND,

;31200  1579		REFNCEFLAGS : $CRFFIELD(FAO_STRING='!6* ',		! DEFAULT SPACES WHEN NONE OF

;31300P 1580					FIELD_WIDTH=6),			! THE FOLLOWING REFERENCES

;31400  1581			WEAK_PRE : $CRFFIELD(BIT_MASK=SYM$M_WEAK,	! PREFIX FOR WEAK REFERENCE

;31500P 1582					FAO_STRING='!3* WK-',

;31600P 1583					FIELD_WIDTH=6),

;31700  1584		REFLAGSEND : $CRFFIELDEND,

;31800  1585		REFERENCER : $CRFFIELD(FAO_STRING='!16AC',		! NAME OF THE REFERENCING MODULE

;31900P 1586					FIELD_WIDTH=16),

;32000  1587		REFERENCEND : $CRFFIELDEND,

;32100  1588	!

;32200  1589		RELSYMVAL : $CRFFIELD(FAO_STRING='!4* ',

;32300P 1590					FIELD_WIDTH=4),



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 2-5

; Digital Equipment Corporation

;

;32400  1591			RELOC_PRE : $CRFFIELD(BIT_MASK=SYM$M_REL,

;32500P 1592						FAO_STRING='  R-',

;32600P 1593						FIELD_WIDTH=4),

;32700  1594			UNIV_PRE : $CRFFIELD(BIT_MASK=SYM$M_UNI,

;32800P 1595						FAO_STRING='  U-',

;32900P 1596						FIELD_WIDTH=4),

;33000  1597			REL_UNI_PRE : $CRFFIELD(BIT_MASK=(SYM$M_UNI OR SYM$M_REL),

;33100P 1598						FAO_STRING=' RU-',

;33200P 1599						FIELD_WIDTH=4),

;33300  1600		RELSYMVALEND : $CRFFIELDEND;

;33400  1601	!

;33500  1602	GLOBAL

;33510  1603		LNK$GB_LINESPP : BYTE INITIAL(LNK$K_LINESPP),		! SET DEFAULT LINES PER PAGE

;33600  1604		LNK$AL_SYTBLFMT : $CRFCTLTABLE(KEYTYPE=ASCIC,		! DEFINE THE TABLE THAT DRIVES

;33700P 1605					ERROR=CRFERROR,

;33800P 1606					OUTPUT=LNK$MAPOUT,

;33900P 1607					KEY1TABLE = SYMBOLFIELD,

;34000P 1608					KEY2TABLE = SPACEFIELD,		! THE CROSS REFERENCE TO PRODUCE

;34100P 1609					VAL1TABLE = VALUEFIELD,		! THE FORMATED SYMBOL TABLE

;34200P 1610					VAL2TABLE = VALUEFLAGS,		! LISTING LINES

;34300P 1611					REF2TABLE = REFERENCER,		! EACH ENTRY HERE IS A

;34400P 1612					REF1TABLE = REFNCEFLAGS),	! POINTER TO THE FORMATS

;34500  1613		LNK$AL_VALCTLTB : $CRFCTLTABLE(KEYTYPE=BIN_U32,		! DEFINE THE TABLE THAT DRIVES

;34600P 1614					ERROR=CRFERROR,

;34700P 1615					OUTPUT=LNK$MAPOUT,

;34800P 1616					KEY1TABLE=VALUEFIELD,		! CREF TO PRODUCE THE CROSS

;34900P 1617					KEY2TABLE=SPACEFIELD,		! REFERENCE OF SYMBOLS

;35000P 1618					VAL1TABLE=SPACEFIELD,		! SORTED BY VALUE

;35100P 1619					VAL2TABLE=SPACEFIELD,

;35200P 1620					REF2TABLE=SYMBOLFIELD,

;35300P 1621					REF1TABLE=RELSYMVAL);

;35400  1622	     

;00200  1624	GLOBAL ROUTINE LNK$MAPINIT: NOVALUE =				! ROUTINE TO INITIALIZE MAP FILE OUTPUT

;00300  1625	

;00400  1626	

;00500  1627	!++

;00600  1628	! FUNCTIONAL DESCRIPTION:

;00700  1629	!

;00800  1630	! THIS ROUTINE PERFORMS ALL INITIALIZATION NEEDED TO CREATE THE MAP FILE.

;00900  1631	! IT OPENS THE MAP FILE, SETS UP THE PAGE COUNTER, LINE COUNTER, AND PERFORMS

;01000  1632	! ANY NECESSARY TASKS DEPENDING ON THE MAP QUALIFIERS SPECIFIED BY THE USER.

;01100  1633	! IT SETS UP THE MAP FILE PAGE HEADER AND OUTPUTS THE LINK-WIDE SUMMARY.

;01200  1634	! AT THE PRESENT, IT IS USED TO DRIVE THE OTHER MAP ROUTINES, WHICH EVENTUALLY

;01300  1635	! WILL BE CALLED BY THE LINKER ITSELF.

;01400  1636	!

;01500  1637	! FORMAL PARAMETERS:

;01600  1638	!

;01700  1639	!	NONE

;01800  1640	!

;01900  1641	! IMPLICIT INPUTS:

;02000  1642	!

;02100  1643	!	THE TABLES CONTAINING THE LINKER DATA ARE ALREADY SET UP.

;02200  1644	!

;02300  1645	! IMPLICIT OUTPUTS:

;02400  1646	!



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3

; Digital Equipment Corporation

;

;02500  1647	!	THE MAP FILE IS OPENED FOR OUTPUT.

;02600  1648	!	THE PAGE AND LINE NUMBERS ARE INTIALIZED.

;02700  1649	!

;02800  1650	! ROUTINE VALUE:

;02900  1651	!

;03000  1652	!	NOVALUE

;03100  1653	!

;03200  1654	! COMPLETION CODES:

;03300  1655	!

;03400  1656	!	NONE

;03500  1657	!

;03600  1658	! SIDE EFFECTS:

;03700  1659	!

;03800  1660	!	NONE

;03900  1661	!

;04000  1662	!--

;04100  1663	

;04200  1664	BEGIN

;04300  1665		LOCAL

;04400  1666			SYMPSCADDER,					! BLOCKS ESTIMATED FOR SYMS + PSECTS

;04500  1667			MAPFAB : BLOCK[FAB$C_BLN,BYTE];			! FILE ACCESS BLOCK - FOR OPEN AND CONNECT

;04600  1668	!

;04700  1669		BIND IMGAUXFNB = LNK$GL_IMGFIL[FDB$AL_AUXFNB]		! REFERENCE THE IMAGE FILE'S AUXILIARY

;04800  1670					: BLOCK[NAM$C_BLN,BYTE];	! FILENAME BLOCK

;04900  1671	!

;05000  1672		AUXFNB = LNK$GL_MAPFIL[FDB$AL_AUXFNB];			! SET ADDRESS OF AUXILIARY FILENAME BLOCK

;05100  1673		CH$FILL(0,FAB$C_BLN,MAPFAB);				! ZERO THE FAB

;05200  1674		MAPFAB[FAB$B_BLN] = FAB$C_BLN;				! IDENTIFY THIS BLOCK AS A FAB

;05300  1675		MAPFAB[FAB$B_BID] = FAB$C_BID;				! LENGTH AND ID

;05400  1676		MAPFAB[FAB$V_PUT] = TRUE;				! SET FOR PUT RECORD ACCESSES

;05500  1677		MAPFAB[FAB$B_RFM] = FAB$C_VAR;				! AND VARIABLE LENGTH AND SET MAXIMUM

;05600  1678		MAPFAB[FAB$W_MRS] = LEN$C_MAPLINE;			! RECORD LENGTH !****BUG CHECK****

;05700  1679		MAPFAB[FAB$V_NIL] = TRUE;				! NOBODY ELSE CAN ACCESS IT

;05800  1680		MAPFAB[FAB$V_CR]  = TRUE;				! SET IMPLIED CARRIAGE CONTROL

;05900  1681		MAPFAB[FAB$L_FNA] = .(LNK$GL_MAPFIL[FDB$Q_USRNAMDSC]+4);! POINT TO FILENAME

;06000  1682		MAPFAB[FAB$B_FNS] = .LNK$GL_MAPFIL[FDB$Q_USRNAMDSC];	! SET LENGTH OF NAME

;06100  1683		MAPFAB[FAB$B_DNS] = %CHARCOUNT('.MAP');			! SET LENGTH OF DEFAULT FILE TYPE

;06200  1684		MAPFAB[FAB$L_DNA] = UPLIT(BYTE('.MAP'));		! POINT TO DEFAULT FILE TYPE

;06300  1685		MAPFAB[FAB$L_NAM] = .AUXFNB;				! POINT TO AUXILIARY FILENAME BLOCK

;06400  1686		MAPESTIM = 7 + .LNK$GW_NMODULES/4;			! MINIMUM MAP ESTIMATE

;06500  1687		IF NOT .LNK$GL_CTLMSK<LNK$S_BRIEF,1,0>			! IF NOT A BRIEF MAP

;06600  1688		THEN BEGIN						! MUST DO SOME MORE

;06700  1689			IF .LNK$GL_CTLMSK<LNK$S_CROS,1,0>		! IF A CROSS REFERENCE

;06800  1690			THEN MAPESTIM = .MAPESTIM + .LNK$GW_NCROSRFS/20;! ADD IN AN ESTIMATE

;06900  1691			SYMPSCADDER = .LNK$GW_NPSECTS + .LNK$GW_NSYMBOLS/16; ! COMPUTE SYMBOL + PSECTS COMPONENT

;07000  1692			IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>		! IF A LONG MAP

;07100  1693			THEN MAPESTIM = .MAPESTIM + 2*.SYMPSCADDER	! ADD IN DOUBLE THAT

;07200  1694			ELSE MAPESTIM = .MAPESTIM + .SYMPSCADDER;	! ONE TIMES FOR DEFAULT FORM

;07300  1695		     END;

;07400  1696		MAPFAB[FAB$L_ALQ] = .MAPESTIM;				! AND SET INITIAL ALLOCATION TO ESTIMATE

;07500  1697		MAPRAB[RAB$L_FAB] = MAPFAB;				! THE RAB POINTS TO FAB FOR CONNECT

;07600  1698		MAPRAB[RAB$B_MBC] = MINU(.MAPESTIM,MAX_K_RMSMBC);	! SET THE MULTI-BLOCK COUNT

;07700  1699		IF NOT (RMSERROR = $CREATE(FAB=MAPFAB))			! CREATE THE FILE

;07800  1700		OR NOT (RMSERROR = $CONNECT(RAB=MAPRAB))		! CONNECT THE RAB AND

;07900  1701		THEN BEGIN						! AND IF THERE IS AN ERROR



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-1

; Digital Equipment Corporation

;

;08000  1702			LNK$ERRMSG(ERM$C_CRE8ERR,SEV$C_DIAG,		! REPORT CREATE FAILURE WITH THE

;08100  1703				.AUXFNB[NAM$B_ESL],.AUXFNB[NAM$L_ESA]);	! FILENAME AS FAR AS RMS GOT

;08200  1704			LNK$ERRMSG(ERM$C_UNMCOD,SEV$C_INFOR,		! THEN WITH THE USER'S ORIGINAL NAME

;08300  1705				LNK$GL_MAPFIL[FDB$Q_USRNAMDSC],		! AND THE RMS ERROR CODE, ALL

;08400  1706				.RMSERROR);				! AS A DIAGNOSTIC

;08500  1707			LNK$ERRMSG(.RMSERROR AND NOT 7,SEV$C_DIAG,	! REPORT THE RMS

;08600  1708				.MAPFAB[FAB$L_STV]);			! ERROR MESSAGE

;08700  1709			RETURN;						! THEN GIVE UP

;08800  1710		     END;

;08900  1711		MAPIFI = .MAPFAB[FAB$W_IFI];				! SAVE INTERNAL IDENT FOR CLOSE

;09000  1712		LNK$GL_CTLMSK<LNK$S_MAPOPN,1,0> = TRUE;			! SET BIT FOR MAP FILE OPEN

;09100  1713	!

;09200  1714	! SET UP THE DESCRIPTOR OF THE IMAGE FILE (IF ANY)

;09300  1715	!

;09400  1716		IF .LNK$GL_IMGFIL NEQ 0					! PROVIDED AN IMAGE WAS SPECIFIED

;09500  1717		THEN BEGIN

;09600  1718			IMAGEFILENAME[0] = .LNK$GL_IMGFIL[FDB$Q_USRNAMDSC];	! SET LENGTH OF FILE NAME

;09700  1719			IMAGEFILENAME[1] = .(LNK$GL_IMGFIL[FDB$Q_USRNAMDSC]+4);	! AND POINTER TO IT

;09800  1720		     END;

;09900  1721	!

;10000  1722	! START MAP OUTPUT

;10100  1723	!

;10200  1724		SUBHDLINE = 0;						! INITIALIZE FOR NO SUB-HEADER GENERATION

;10300  1725		PAGENUM = 1;						! NEXT PAGE NUMBER

;10400  1726		IF NOT NEWPAGE() THEN RETURN;				! OUTPUT FIRST PAGE AND HEADERS

;10500  1727		IF NOT MAPBOX(OBJMODHDR) THEN RETURN;			! OUTPUT OBJECT MODULE SYNOPSIS HEADER

;10600  1728		MAPSUBHDR(OBJMODSUBHDR);				! OUTPUT OBJECT MODULE SUB-HEADER TITLE

;10700  1729		RETURN;

;10800  1730	END;





							    .TITLE  LNK_MAPROUTINES

							    .IDENT  \X01.18\



							    .PSECT  $PLIT$,NOWRT,NOEXE,2



					      00000 P.AAA:  .ASCII  \!16AC!15AC!3(9XL) (!8UL.) !5AC!1ZB!53AC\<0>	      ;

					      00028 P.AAB:  .ASCII  \!16AC!15AC!3(9XL) (!8UL.) !5AC!ZB !9(AC)\		      ;

					      00050 P.AAC:  .ASCII  \!^!64AS!25<!17%D!>!33<LINKER X!AD.!AD!>PAGE!5UL!/\<0>    ;

					      00082 	    .ASCII  <0><0>						      ;

					      00084 P.AAD:  .ASCII  \!16AC!15AC!10UL !37AD!19AD\<0><0>			      ;

					      000A0 P.AAE:  .ASCII  \!AD\<0>						      ;

					      000A4 P.AAF:  .ASCII  \!16AC!4UB!6UW!12XL!9UL!4UB !AC !AC !AC\<0><0>	      ;

					      000CC P.AAG:  .ASCII  \!16AC!4UB!6UW!12XL!9UL!4UB!28< !AC !AC !AC!>!16AC !12A\  ;

					      00102 	    .ASCII  \C !6UB  !8UL\<0><0>				      ;

					      00110 P.AAH:  .ASCII  \!/!/!/!AC!/!_!_+!18*-+!/!_!_!!!AC!!\<0>		      ;

					      00134 P.AAI:  .ASCII  \!_!_!!!AC!!!/!_!_!!!AC!!!/!_!_!!!AC!!!/!_!_+!18*-+\<0>   ;

					      00167 	    .ASCII  <0>							      ;

					      00168 P.AAJ:  .ASCII  \!/!40<VIRTUAL MEMORY ALLOCATED:!>!3(9XL) (!UL. BYTE!%S\  ;

					      0019E 	    .ASCII  \, !UL. PAGE!%S)\<0><0><0>				      ;

					      001B0 P.AAK:  .ASCII  \!41<STACK SIZE:!>!8UW. PAGE!%S\<0><0>		      ;

					      001D0 P.AAL:  .ASCII  \!41<IMAGE HEADER VIRTUAL BLOCK LIMITS:!>!8UL.!9UW. (!5\  ;

					      00206 	    .ASCII  \UW. BLOCK!%S)\<0>					      ;

					      00214 P.AAM:  .ASCII  \!41<IMAGE BINARY VIRTUAL BLOCK LIMITS:!>!8UL.!9UL. (!5\  ;

					      0024A 	    .ASCII  \UW. BLOCK!%S)\<0>					      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-2

; Digital Equipment Corporation

;

					      00258 P.AAN:  .ASCII  \!41<IMAGE NAME AND IDENTIFICATION:!>!AC !AC\<0>	      ;

					      00284 P.AAO:  .ASCII  \!41<NUMBER OF FILES:!>!8UW.\<0>			      ;

					      002A0 P.AAP:  .ASCII  \!41<NUMBER OF MODULES:!>!8UW.\<0><0><0>		      ;

					      002C0 P.AAQ:  .ASCII  \!41<NUMBER OF PROGRAM SECTIONS:!>!8UW.\<0><0>	      ;

					      002E8 P.AAR:  .ASCII  \!41<NUMBER OF GLOBAL SYMBOLS:!>!8UW.\		      ;

					      0030C P.AAS:  .ASCII  \!41<INCLUDING UNDEFINED COUNT OF:!>!8UW.\		      ;

					      00334 P.AAT:  .ASCII  \!41<NUMBER OF CROSS REFERENCES:!>!8UW.\<0><0>	      ;

					      0035C P.AAU:  .ASCII  \!41<NUMBER OF IMAGE SECTIONS:!>!8UW.\		      ;

					      00380 P.AAV:  .ASCII  \!41<DEBUGGER TRANSFER ADDRESS:!>!8XL\		      ;

					      003A4 P.AAW:  .ASCII  \!41<OTS TRANSFER ADDRESS - "!AC":!>!8XL\<0>	      ;

					      003CC P.AAX:  .ASCII  \!41<USER TRANSFER ADDRESS:!>!8XL\			      ;

					      003EC P.AAY:  .ASCII  \!41<IMAGE TYPE:!>!AC.\<0><0><0>			      ;

					      00404 P.AAZ:  .ASCII  \!41<IMAGE TYPE:!>!AC!AC. GLOBAL SECTION MATCH = "!AC",\  ;

					      0043A 	    .ASCII  \ G.S. IDENT, MAJOR=!UB, MINOR=!UL\<0>		      ;

					      0045C P.ABA:  .ASCII  \!41<MAP FORMAT:!>!AC!ACIN FILE "!AD"\		      ;

					      00480 P.ABB:  .ASCII  \!41<ESTIMATED MAP LENGTH:!>!UL. BLOCKS\<0><0>	      ;

					      004A8 P.ABC:  .BYTE   5							      ;

					      004A9 	    .ASCII  \BYTE \						      ;

					      004AE	    .BLKB   2

					      004B0 P.ABD:  .BYTE   5							      ;

					      004B1 	    .ASCII  \WORD \						      ;

					      004B6	    .BLKB   2

					      004B8 P.ABE:  .BYTE   5							      ;

					      004B9 	    .ASCII  \LONG \						      ;

					      004BE	    .BLKB   2

					      004C0 P.ABF:  .BYTE   5							      ;

					      004C1 	    .ASCII  \QUAD \						      ;

					      004C6	    .BLKB   2

					      004C8 P.ABG:  .BYTE   5							      ;

					      004C9 	    .ASCII  \2 ** \						      ;

					      004CE	    .BLKB   2

					      004D0 P.ABH:  .BYTE   5							      ;

					      004D1 	    .ASCII  \PAGE \						      ;

					      004D6	    .BLKB   2

					      004D8 P.ABI:  .BYTE   1							      ;

					      004D9 	    .ASCII  \ \							      ;

					      004DA	    .BLKB   2

					      004DC P.ABJ:  .BYTE   1							      ;

					      004DD 	    .ASCII  \-\							      ;

					      004DE	    .BLKB   2

					      004E0 P.ABK:  .BYTE   6							      ;

					      004E1 	    .ASCII  \  PIC,\						      ;

					      004E7	    .BLKB   1

					      004E8 P.ABL:  .BYTE   4							      ;

					      004E9 	    .ASCII  \LIB,\						      ;

					      004ED	    .BLKB   3

					      004F0 P.ABM:  .BYTE   4							      ;

					      004F1 	    .ASCII  \OVR,\						      ;

					      004F5	    .BLKB   3

					      004F8 P.ABN:  .BYTE   4							      ;

					      004F9 	    .ASCII  \REL,\						      ;

					      004FD	    .BLKB   3

					      00500 P.ABO:  .BYTE   4							      ;

					      00501 	    .ASCII  \GBL,\						      ;

					      00505	    .BLKB   3



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-3

; Digital Equipment Corporation

;

					      00508 P.ABP:  .BYTE   6							      ;

					      00509 	    .ASCII  \  SHR,\						      ;

					      0050F	    .BLKB   1

					      00510 P.ABQ:  .BYTE   6							      ;

					      00511 	    .ASCII  \  EXE,\						      ;

					      00517	    .BLKB   1

					      00518 P.ABR:  .BYTE   5							      ;

					      00519 	    .ASCII  \  RD,\						      ;

					      0051E	    .BLKB   2

					      00520 P.ABS:  .BYTE   5							      ;

					      00521 	    .ASCII  \  WRT\						      ;

					      00526	    .BLKB   2

					      00528 P.ABT:  .BYTE   6							      ;

					      00529 	    .ASCII  \NOPIC,\						      ;

					      0052F	    .BLKB   1

					      00530 P.ABU:  .BYTE   4							      ;

					      00531 	    .ASCII  \USR,\						      ;

					      00535	    .BLKB   3

					      00538 P.ABV:  .BYTE   4							      ;

					      00539 	    .ASCII  \CON,\						      ;

					      0053D	    .BLKB   3

					      00540 P.ABW:  .BYTE   4							      ;

					      00541 	    .ASCII  \ABS,\						      ;

					      00545	    .BLKB   3

					      00548 P.ABX:  .BYTE   4							      ;

					      00549 	    .ASCII  \LCL,\						      ;

					      0054D	    .BLKB   3

					      00550 P.ABY:  .BYTE   6							      ;

					      00551 	    .ASCII  \NOSHR,\						      ;

					      00557	    .BLKB   1

					      00558 P.ABZ:  .BYTE   6							      ;

					      00559 	    .ASCII  \NOEXE,\						      ;

					      0055F	    .BLKB   1

					      00560 P.ACA:  .BYTE   5							      ;

					      00561 	    .ASCII  \NORD,\						      ;

					      00566	    .BLKB   2

					      00568 P.ACB:  .BYTE   5							      ;

					      00569 	    .ASCII  \NOWRT\						      ;

					      0056E	    .BLKB   2

					      00570 P.ACC:  .BYTE   10							      ;

					      00571 	    .ASCII  \EXECUTABLE\					      ;

					      0057B	    .BLKB   1

					      0057C P.ACD:  .BYTE   6							      ;

					      0057D 	    .ASCII  \SYSTEM\						      ;

					      00583	    .BLKB   1

					      00584 P.ACE:  .BYTE   10							      ;

					      00585 	    .ASCII  \ SHAREABLE\					      ;

					      0058F	    .BLKB   1

					      00590 P.ACF:  .BYTE   5							      ;

					      00591 	    .ASCII  \BRIEF\						      ;

					      00596	    .BLKB   2

					      00598 P.ACG:  .BYTE   6							      ;

					      00599 	    .ASCII  \ALWAYS\						      ;

					      0059F	    .BLKB   1

					      005A0 P.ACH:  .BYTE   5							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-4

; Digital Equipment Corporation

;

					      005A1 	    .ASCII  \NEVER\						      ;

					      005A6	    .BLKB   2

					      005A8 P.ACI:  .BYTE   5							      ;

					      005A9 	    .ASCII  \EQUAL\						      ;

					      005AE	    .BLKB   2

					      005B0 P.ACJ:  .BYTE   10							      ;

					      005B1 	    .ASCII  \LESS/EQUAL\					      ;

					      005BB	    .BLKB   1

					      005BC P.ACK:  .BYTE   7							      ;

					      005BD 	    .ASCII  \DEFAULT\						      ;

					      005C4 P.ACL:  .BYTE   4							      ;

					      005C5 	    .ASCII  \FULL\						      ;

					      005C9	    .BLKB   3

					      005CC P.ACM:  .BYTE   22							      ;

					      005CD 	    .ASCII  \ WITH CROSS REFERENCE \				      ;

					      005E3	    .BLKB   1

					      005E4 P.ACN:  .BYTE   10							      ;

					      005E5 	    .ASCII  \READ WRITE\					      ;

					      005EF	    .BLKB   1

					      005F0 P.ACO:  .BYTE   9							      ;

					      005F1 	    .ASCII  \READ ONLY\						      ;

					      005FA	    .BLKB   2

					      005FC P.ACP:  .BYTE   11							      ;

					      005FD 	    .ASCII  \DEMAND ZERO\					      ;

					      00608 P.ACQ:  .BYTE   11							      ;

					      00609 	    .ASCII  \COPY ON REF\					      ;

					      00614 P.ACR:  .BYTE   34							      ;

					      00615 	    .ASCII  <9>\KEY FOR SPECIAL CHARACTERS ABOVE:\		      ;

					      00637	    .BLKB   1

					      00638 P.ACS:  .BYTE   18							      ;

					      00639 	    .ASCII  \ *  - UNDEFINED   \				      ;

					      0064B	    .BLKB   1

					      0064C P.ACT:  .BYTE   18							      ;

					      0064D 	    .ASCII  \ U  - UNIVERSAL   \				      ;

					      0065F	    .BLKB   1

					      00660 P.ACU:  .BYTE   18							      ;

					      00661 	    .ASCII  \ R  - RELOCATABLE \				      ;

					      00673	    .BLKB   1

					      00674 P.ACV:  .BYTE   18							      ;

					      00675 	    .ASCII  \ WK - WEAK        \				      ;

					      00687	    .BLKB   1

					      00688 P.ACW:  .BYTE   28							      ;

					      00689 	    .ASCII  \! PROGRAM SECTION SYNOPSIS !\			      ;

					      006A5	    .BLKB   3

					      006A8 P.ACX:  .BYTE   26							      ;

					      006A9 	    .ASCII  \! OBJECT MODULE SYNOPSIS !\			      ;

					      006C3	    .BLKB   1

					      006C4 P.ACY:  .BYTE   26							      ;

					      006C5 	    .ASCII  \! IMAGE SECTION SYNOPSIS !\			      ;

					      006DF	    .BLKB   1

					      006E0 P.ACZ:  .BYTE   18							      ;

					      006E1 	    .ASCII  \! IMAGE SYNOPSIS !\				      ;

					      006F3	    .BLKB   1

					      006F4 P.ADA:  .BYTE   19							      ;

					      006F5 	    .ASCII  \! SYMBOLS BY NAME !\				      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-5

; Digital Equipment Corporation

;

					      00708 P.ADB:  .BYTE   26							      ;

					      00709 	    .ASCII  \! SYMBOL CROSS REFERENCE !\			      ;

					      00723	    .BLKB   1

					      00724 P.ADC:  .BYTE   20							      ;

					      00725 	    .ASCII  \! SYMBOLS BY VALUE !\				      ;

					      00739	    .BLKB   3

					      0073C P.ADD:  .BYTE   23							      ;

					      0073D 	    .ASCII  \! LINK RUN STATISTICS !\				      ;

					      00754 P.ADE:  .ASCII  \!/!16<P-SECT NAME!>!18<MODULE(S)!>!9<BASE!>!14<END!>!1\  ;

					      0078A 	    .ASCII  \5<LENGTH!>!22<ALIGN!>ATTRIBUTES\<0><0><0>		      ;

					      007AC P.ADF:  .ASCII  \!16<!11*-!>!18<!9*-!>!9<!4*-!>!14<!3*-!>!15<!6*-!>!22<\  ;

					      007E2 	    .ASCII  \!5*-!>!10*-\<0><0><0>				      ;

					      007F0 P.ADG:  .ASCII  \!/!16<MODULE NAME!>!19<IDENT!>!11<BYTES!>!36<FILE!>!19\  ;

					      00826 	    .ASCII  \<CREATION DATE!>CREATOR\<0><0><0>			      ;

					      00840 P.ADH:  .ASCII  \!16<!11*-!>!19<!5*-!>!11<!5*-!>!36<!5*-!>!19<!13*-!>!7\  ;

					      00876 	    .ASCII  \*-\						      ;

					      00878 P.ADI:  .ASCII  \!/!16<SYMBOL!>!16<VALUE!>!22<DEFINED BY!>REFERENCED BY\  ;

					      008AE 	    .ASCII  \ ...\<0><0>					      ;

					      008B4 P.ADJ:  .ASCII  \!16<!6*-!>!16<!5*-!>!22<!10*-!>!17*-\		      ;

					      008D8 P.ADK:  .ASCII  \!/!16<SYMBOL!>!19<VALUE!>!16<SYMBOL!>!19<VALUE!>!16<SY\  ;

					      0090E 	    .ASCII  \MBOL!>!19<VALUE!>!16<SYMBOL!>VALUE\		      ;

					      00930 P.ADL:  .ASCII  \!16<!6*-!>!19<!5*-!>!16<!6*-!>!19<!5*-!>!16<!6*-!>!19<\  ;

					      00966 	    .ASCII  \!5*-!>!16<!6*-!>!5*-\<0><0>			      ;

					      0097C P.ADM:  .ASCII  \!/!40<VALUE!>SYMBOLS...\<0>			      ;

					      00994 P.ADN:  .ASCII  \!40<!5*-!>!10*-\<0>				      ;

					      009A4 P.ADO:  .ASCII  \!/!16<   CLUSTER!>!5<TYPE!>!8<PAGES!>!50<!AC!>!16<GBL.\  ;

					      009DA 	    .ASCII  \ SEC. NAME!>!12<   MATCH!> MAJORID   MINORID\<0><0>      ;

					      00A08 P.ADP:  .ASCII  \!16<   !7*-!>!5<!4*-!>!8<!5*-!>!9*- !8*- !3*- !27<!21*\  ;

					      00A3E 	    .ASCII  \-!>!14*- !13<    !5*-!> !7*-   !7*-\<0><0><0>	      ;

					      00A64 P.ADQ:  .BYTE   44							      ;

					      00A65 	    .ASCII  \BASE ADDR DISK VBN PFC PROTECTION AND PAGING\	      ;

					      00A91	    .BLKB   3

					      00A94 P.ADR:  .ASCII  \NO IMAGE FILE CREATED\<0><0><0>			      ;

					      00AAC P.ADS:  .ASCII  \!15AC\<0><0><0>					      ;

					      00AB4 P.ADT:  .ASCII  \ \<0><0><0>					      ;

					      00AB8 P.ADU:  .ASCII  \!XL\<0>						      ;

					      00ABC P.ADV:  .ASCII  \!3* \						      ;

					      00AC0 P.ADW:  .ASCII  \-R \<0>						      ;

					      00AC4 P.ADX:  .ASCII  \-U \<0>						      ;

					      00AC8 P.ADY:  .ASCII  \-RU\<0>						      ;

					      00ACC P.ADZ:  .ASCII  \-* \<0>						      ;

					      00AD0 P.AEA:  .ASCII  \!6* \						      ;

					      00AD4 P.AEB:  .ASCII  \!3* WK-\<0>					      ;

					      00ADC P.AEC:  .ASCII  \!16AC\<0><0><0>					      ;

					      00AE4 P.AED:  .ASCII  \!4* \						      ;

					      00AE8 P.AEE:  .ASCII  \  R-\						      ;

					      00AEC P.AEF:  .ASCII  \  U-\						      ;

					      00AF0 P.AEG:  .ASCII  \ RU-\						      ;

					      00AF4 P.AEH:  .ASCII  \.MAP\						      ;



							    .PSECT  $OWN$,NOEXE,2



					      00000 CONTRBSTR:

							    .LONG   39							      ;

					      00004 	    .ADDRESS  P.AAA						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-6

; Digital Equipment Corporation

;

					      00008 PSC_CNTRL_STR:

							    .LONG   40							      ;

					      0000C 	    .ADDRESS  P.AAB						      ;

					      00010 HDR_CNTRL_STR:

							    .LONG   49							      ;

					      00014 	    .ADDRESS  P.AAC						      ;

					      00018 OBJMD_CNTRL_STR:

							    .LONG   26							      ;

					      0001C 	    .ADDRESS  P.AAD						      ;

					      00020 CREAT_CNTRL_STR:

							    .LONG   3							      ;

					      00024 	    .ADDRESS  P.AAE						      ;

					      00028 ISECT_CNTRL_STR:

							    .LONG   38							      ;

					      0002C 	    .ADDRESS  P.AAF						      ;

					      00030 GBLIS_CNTRL_STR:

							    .LONG   66							      ;

					      00034 	    .ADDRESS  P.AAG						      ;

					      00038 ABBRVTBL_STR:

							    .LONG   35							      ;

					      0003C 	    .ADDRESS  P.AAH						      ;

					      00040 ABBRVTBL2_STR:

							    .LONG   50							      ;

					      00044 	    .ADDRESS  P.AAI						      ;

					      00048 VIRMEMLINE:

							    .LONG   69							      ;

					      0004C 	    .ADDRESS  P.AAJ						      ;

					      00050 STACKLINE:

							    .LONG   30							      ;

					      00054 	    .ADDRESS  P.AAK						      ;

					      00058 IMGHDRBLKLINE:

							    .LONG   67							      ;

					      0005C 	    .ADDRESS  P.AAL						      ;

					      00060 IMGBINBLKLINE:

							    .LONG   67							      ;

					      00064 	    .ADDRESS  P.AAM						      ;

					      00068 IDENTLINE:

							    .LONG   43							      ;

					      0006C 	    .ADDRESS  P.AAN						      ;

					      00070 NFILLINE:

							    .LONG   27							      ;

					      00074 	    .ADDRESS  P.AAO						      ;

					      00078 NMODLINE:

							    .LONG   29							      ;

					      0007C 	    .ADDRESS  P.AAP						      ;

					      00080 NPSCLINE:

							    .LONG   38							      ;

					      00084 	    .ADDRESS  P.AAQ						      ;

					      00088 NSYMLINE:

							    .LONG   36							      ;

					      0008C 	    .ADDRESS  P.AAR						      ;

					      00090 NUNDFLINE:

							    .LONG   40							      ;

					      00094 	    .ADDRESS  P.AAS						      ;

					      00098 NCROSREFS:



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-7

; Digital Equipment Corporation

;

							    .LONG   38							      ;

					      0009C 	    .ADDRESS  P.AAT						      ;

					      000A0 NISCLINE:

							    .LONG   36							      ;

					      000A4 	    .ADDRESS  P.AAU						      ;

					      000A8 DBGTFRLINE:

							    .LONG   36							      ;

					      000AC 	    .ADDRESS  P.AAV						      ;

					      000B0 OTSTFRLINE:

							    .LONG   39							      ;

					      000B4 	    .ADDRESS  P.AAW						      ;

					      000B8 USRTFRLINE:

							    .LONG   32							      ;

					      000BC 	    .ADDRESS  P.AAX						      ;

					      000C0 IMGATRLINE:

							    .LONG   21							      ;

					      000C4 	    .ADDRESS  P.AAY						      ;

					      000C8 IMGSHRLINE:

							    .LONG   87							      ;

					      000CC 	    .ADDRESS  P.AAZ						      ;

					      000D0 MAPFORMAT:

							    .LONG   36							      ;

					      000D4 	    .ADDRESS  P.ABA						      ;

					      000D8 MAPLENGTH:

							    .LONG   38							      ;

					      000DC 	    .ADDRESS  P.ABB						      ;

					      000E0 ALIGNMENT:

							    .BLKB   4

					      000E4 OUTLINE:.BLKB   132

					      00168 OUTDES: .LONG   132							      ;

					      0016C 	    .ADDRESS  OUTLINE						      ;

					      00170 OUTSIZE:.BLKB   2

					      00172	    .BLKB   2

					      00174 ARGS:   .BLKB   36

					      00198 LINECNT:.BLKB   4

					      0019C PAGENUM:.BLKB   4

					      001A0 SUBHDLINE:

							    .BLKB   4

					      001A4 PSECTSUBHDR:

							    .LONG   85							      ;

					      001A8 	    .ADDRESS  P.ADE						      ;

					      001AC 	    .LONG   65							      ;

					      001B0 	    .ADDRESS  P.ADF						      ;

					      001B4 OBJMODSUBHDR:

							    .LONG   77							      ;

					      001B8 	    .ADDRESS  P.ADG						      ;

					      001BC 	    .LONG   56							      ;

					      001C0 	    .ADDRESS  P.ADH						      ;

					      001C4 CRFSUBHDR:

							    .LONG   58							      ;

					      001C8 	    .ADDRESS  P.ADI						      ;

					      001CC 	    .LONG   36							      ;

					      001D0 	    .ADDRESS  P.ADJ						      ;

					      001D4 SYMSUBHDR:

							    .LONG   88							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-8

; Digital Equipment Corporation

;

					      001D8 	    .ADDRESS  P.ADK						      ;

					      001DC 	    .LONG   74							      ;

					      001E0 	    .ADDRESS  P.ADL						      ;

					      001E4 VALSUBHDR:

							    .LONG   23							      ;

					      001E8 	    .ADDRESS  P.ADM						      ;

					      001EC 	    .LONG   15							      ;

					      001F0 	    .ADDRESS  P.ADN						      ;

					      001F4 ISDSUBHDR:

							    .LONG   98							      ;

					      001F8 	    .ADDRESS  P.ADO						      ;

					      001FC 	    .LONG   89							      ;

					      00200 	    .ADDRESS  P.ADP						      ;

					      00204 MAPESTIM:

							    .BLKB   4

					      00208 IMAGEFILENAME:

							    .LONG   21							      ;

					      0020C 	    .ADDRESS  P.ADR						      ;

					      00210 AUXFNB: .BLKB   4

					      00214 RMSERROR:

							    .BLKB   4

					      00218 MAPRAB: .BYTE   1							      ;

					      00219 	    .BYTE   68							      ;

					      0021A 	    .WORD   0							      ;

					      0021C 	    .LONG   1024						      ;

					      00220 	    .LONG   0							      ;

					      00224 	    .LONG   0							      ;

					      00228 	    .WORD   0, 0, 0						      ;

					      0022E 	    .WORD   0							      ;

					      00230 	    .LONG   0							      ;

					      00234 	    .WORD   0							      ;

					      00236 	    .BYTE   0							      ;

					      00237 	    .BYTE   0							      ;

					      00238 	    .WORD   0							      ;

					      0023A 	    .WORD   0							      ;

					      0023C 	    .LONG   0							      ;

					      00240 	    .LONG   0							      ;

					      00244 	    .LONG   0							      ;

					      00248 	    .LONG   0							      ;

					      0024C 	    .BYTE   0							      ;

					      0024D 	    .BYTE   0							      ;

					      0024E 	    .BYTE   0							      ;

					      0024F 	    .BYTE   0							      ;

					      00250 	    .LONG   0							      ;

					      00254 	    .LONG   0							      ;

					      00258 	    .LONG   0							      ;

					      0025C MAPIFI: .BLKB   2

					      0025E	    .BLKB   2

					      00260 SYMBOLFIELD:

							    .WORD   -32768						      ;

					      00262 	    .BYTE   1							      ;

					      00263 	    .BYTE   15							      ;

					      00264 	    .LONG   5							      ;

					      00268 	    .ADDRESS  P.ADS						      ;

					      0026C SYMBOLEND:



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-9

; Digital Equipment Corporation

;

							    .WORD   0							      ;

					      0026E	    .BLKB   2

					      00270 SPACEFIELD:

							    .WORD   -32768						      ;

					      00272 	    .BYTE   1							      ;

					      00273 	    .BYTE   1							      ;

					      00274 	    .LONG   1							      ;

					      00278 	    .ADDRESS  P.ADT						      ;

					      0027C SPACEEND:

							    .WORD   0							      ;

					      0027E	    .BLKB   2

					      00280 VALUEFIELD:

							    .WORD   -32768						      ;

					      00282 	    .BYTE   1							      ;

					      00283 	    .BYTE   8							      ;

					      00284 	    .LONG   3							      ;

					      00288 	    .ADDRESS  P.ADU						      ;

					      0028C VALUEEND:

							    .WORD   0							      ;

					      0028E	    .BLKB   2

					      00290 VALUEFLAGS:

							    .WORD   -32768						      ;

					      00292 	    .BYTE   1							      ;

					      00293 	    .BYTE   3							      ;

					      00294 	    .LONG   4							      ;

					      00298 	    .ADDRESS  P.ADV						      ;

					      0029C RELOC_SUF:

							    .WORD   -32760						      ;

					      0029E 	    .BYTE   1							      ;

					      0029F 	    .BYTE   3							      ;

					      002A0 	    .LONG   3							      ;

					      002A4 	    .ADDRESS  P.ADW						      ;

					      002A8 UNIV_SUF:

							    .WORD   -32764						      ;

					      002AA 	    .BYTE   1							      ;

					      002AB 	    .BYTE   3							      ;

					      002AC 	    .LONG   3							      ;

					      002B0 	    .ADDRESS  P.ADX						      ;

					      002B4 REL_UNI_SUF:

							    .WORD   -32756						      ;

					      002B6 	    .BYTE   1							      ;

					      002B7 	    .BYTE   3							      ;

					      002B8 	    .LONG   3							      ;

					      002BC 	    .ADDRESS  P.ADY						      ;

					      002C0 UNDEF_SUF:

							    .WORD   -32766						      ;

					      002C2 	    .BYTE   0							      ;

					      002C3 	    .BYTE   3							      ;

					      002C4 	    .LONG   3							      ;

					      002C8 	    .ADDRESS  P.ADZ						      ;

					      002CC VALFLGSEND:

							    .WORD   0							      ;

					      002CE	    .BLKB   2

					      002D0 REFNCEFLAGS:

							    .WORD   -32768						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-10

; Digital Equipment Corporation

;

					      002D2 	    .BYTE   1							      ;

					      002D3 	    .BYTE   6							      ;

					      002D4 	    .LONG   4							      ;

					      002D8 	    .ADDRESS  P.AEA						      ;

					      002DC WEAK_PRE:

							    .WORD   -32767						      ;

					      002DE 	    .BYTE   1							      ;

					      002DF 	    .BYTE   6							      ;

					      002E0 	    .LONG   7							      ;

					      002E4 	    .ADDRESS  P.AEB						      ;

					      002E8 REFLAGSEND:

							    .WORD   0							      ;

					      002EA	    .BLKB   2

					      002EC REFERENCER:

							    .WORD   -32768						      ;

					      002EE 	    .BYTE   1							      ;

					      002EF 	    .BYTE   16							      ;

					      002F0 	    .LONG   5							      ;

					      002F4 	    .ADDRESS  P.AEC						      ;

					      002F8 REFERENCEND:

							    .WORD   0							      ;

					      002FA	    .BLKB   2

					      002FC RELSYMVAL:

							    .WORD   -32768						      ;

					      002FE 	    .BYTE   1							      ;

					      002FF 	    .BYTE   4							      ;

					      00300 	    .LONG   4							      ;

					      00304 	    .ADDRESS  P.AED						      ;

					      00308 RELOC_PRE:

							    .WORD   -32760						      ;

					      0030A 	    .BYTE   1							      ;

					      0030B 	    .BYTE   4							      ;

					      0030C 	    .LONG   4							      ;

					      00310 	    .ADDRESS  P.AEE						      ;

					      00314 UNIV_PRE:

							    .WORD   -32764						      ;

					      00316 	    .BYTE   1							      ;

					      00317 	    .BYTE   4							      ;

					      00318 	    .LONG   4							      ;

					      0031C 	    .ADDRESS  P.AEF						      ;

					      00320 REL_UNI_PRE:

							    .WORD   -32756						      ;

					      00322 	    .BYTE   1							      ;

					      00323 	    .BYTE   4							      ;

					      00324 	    .LONG   4							      ;

					      00328 	    .ADDRESS  P.AEG						      ;

					      0032C RELSYMVALEND:

							    .WORD   0							      ;



							    .PSECT  $GLOBAL$,NOEXE,2



					      00000 LNK$GB_LINESPP::

							    .BYTE   58							      ;

					      00001 LNK$AL_SYTBLFMT::

							    .LONG   0							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-11

; Digital Equipment Corporation

;

					      00005 	    .WORD    CRF$K_ENTSIZE, CRF$K_NODSIZE			      ;

					      00009 	    .BYTE    CRF$K_ASCIC					      ;

					      0000A 	    .BYTE   0, 0, 0						      ;

					      0000D 	    .ADDRESS  CRFERROR , LNK$MAPOUT , SYMBOLFIELD , SPACEFIELD , -    ;

								    VALUEFIELD , VALUEFLAGS , REFNCEFLAGS , REFERENCER	      ;

					      0002D LNK$AL_VALCTLTB::

							    .LONG   0							      ;

					      00031 	    .WORD    CRF$K_ENTSIZE, CRF$K_NODSIZE			      ;

					      00035 	    .BYTE    CRF$K_BIN_U32					      ;

					      00036 	    .BYTE   0, 0, 0						      ;

					      00039 	    .ADDRESS  CRFERROR , LNK$MAPOUT , VALUEFIELD , SPACEFIELD , -     ;

								    SPACEFIELD , SPACEFIELD , RELSYMVAL , SYMBOLFIELD	      ;



						    SYM$C_MAXLNG==	15

						    SYM$C_TBLSIZ==	128

						    SYM$C_SIZE==	42

						    FDB$C_SIZE==	75

						    LNK$S_NEWUDF==	0

						    LNK$S_LIBR==	1

						    LNK$S_SHR==		2

						    LNK$S_SELSER==	3

						    LNK$S_OPTION==	4

						    LNK$S_DEBUGER==	5

						    LNK$S_LIBEXTR==	6

						    LNK$S_LIBSRCH==	7

						    LNK$M_NEWUDF==	1

						    LNK$M_LIBR==	2

						    LNK$M_SHR==		4

						    LNK$M_SELSER==	8

						    LNK$M_OPTION==	16

						    LNK$M_DEBUGER==	32

						    LNK$M_LIBEXTR==	64

						    LNK$M_LIBSRCH==	128

						    PMT$L_PSCDES==	0

						    PMT$L_MODCON==	1

						    PMT$L_SYMLST==	1

						    PMT$C_SIZE==	8

						    OMD$C_SIZE==	2080

						    OMD$M_NOPSCT==	1

						    OMD$S_NOPSCT==	0

						    OMD$M_NOBIN==	2

						    OMD$S_NOBIN==	1

						    OMD$M_SHRIMG==	4

						    OMD$S_SHRIMG==	2

						    OMD$M_SELSER==	8

						    OMD$S_SELSER==	3

						    OMD$M_MAPMOD==	16

						    OMD$S_MAPMOD==	4

						    OMD$M_DEBUGER==	32

						    OMD$S_DEBUGER==	5

						    PSC$C_SIZE==	43

						    MPC$C_SIZE==	17

						    LID$C_SIZE==	4

						    CLU$C_SIZE==	55

						    CLU$S_BASED==	0



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-12

; Digital Equipment Corporation

;

						    CLU$S_SYMBAS==	1

						    CLU$S_SHRIMG==	2

						    CLU$S_PIC==		3

						    CLU$S_COPY==	4

						    CLU$S_OPEN==	5

						    CLU$S_PENDING==	6

						    FVM$C_SIZE==	12

						    OBJ$C_MAXRECTYP==	5

						    GPS$C_SIZE==	24

						    PSC$M_PIC==		1

						    PSC$M_LIB==		2

						    PSC$M_OVR==		4

						    PSC$M_REL==		8

						    PSC$M_GBL==		16

						    PSC$M_SHR==		32

						    PSC$M_EXE==		64

						    PSC$M_RD==		128

						    PSC$M_WRT==		256

						    PSC$M_SUPRES==	32768

						    GSY$C_SIZE==	4

						    SYM$S_WEAK==	0

						    SYM$S_DEF==		1

						    SYM$S_UNI==		2

						    SYM$S_REL==		3

						    SYM$S_SHRIMG==	11

						    SYM$S_REDEF==	12

						    SYM$S_SUPRES==	13

						    SYM$S_GSTMISS==	14

						    SYM$S_ENTMSK==	15

						    SYM$M_WEAK==	1

						    SYM$M_DEF==		2

						    SYM$M_UNI==		4

						    SYM$M_REL==		8

						    SYM$M_SHRIMG==	2048

						    SYM$M_REDEF==	4096

						    SYM$M_SUPRES==	8192

						    SYM$M_GSTMISS==	16384

						    SYM$M_ENTMSK==	32768

						    SRF$C_SIZE==	20

						    SDF$C_SIZE==	25

						    EPM$C_SIZE==	27

						    PRO$C_SIZE==	27

						    FML$C_SIZE==	2

						    ARG$C_SIZE==	2

						    ARG$K_UNKNOWN==	0

						    ARG$K_VALUE==	1

						    ARG$K_REF==		2

						    ARG$K_DESC==	3

						    MHD$C_SIZE==	20

						    EOM$C_SIZE==	7

						    OBJ$C_EOMMIN==	2

						    OBJ$C_EOMMAX==	7

						    TIR$C_STA_GBL==	0

						    TIR$C_STA_SB==	1

						    TIR$C_STA_SW==	2



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-13

; Digital Equipment Corporation

;

						    TIR$C_STA_LW==	3

						    TIR$C_STA_PB==	4

						    TIR$C_STA_PW==	5

						    TIR$C_STA_PL==	6

						    TIR$C_STA_UB==	7

						    TIR$C_STA_UW==	8

						    TIR$C_STA_BFI==	9

						    TIR$C_STA_WFI==	10

						    TIR$C_STA_LFI==	11

						    TIR$C_STA_EPM==	12

						    TIR$C_STA_CKARG==	13

						    TIR$C_MAXSTACOD==	13

						    TIR$C_MINSTOCOD==	20

						    TIR$C_STO_SB==	20

						    TIR$C_STO_SW==	21

						    TIR$C_STO_L==	22

						    TIR$C_STO_BD==	23

						    TIR$C_STO_WD==	24

						    TIR$C_STO_LD==	25

						    TIR$C_STO_LI==	26

						    TIR$C_STO_PIDR==	27

						    TIR$C_STO_PICR==	28

						    TIR$C_STO_RSB==	29

						    TIR$C_STO_RSW==	30

						    TIR$C_STO_RL==	31

						    TIR$C_STO_VPS==	32

						    TIR$C_STO_USB==	33

						    TIR$C_STO_USW==	34

						    TIR$C_STO_RUB==	35

						    TIR$C_STO_RUW==	36

						    TIR$C_STO_B==	37

						    TIR$C_STO_W==	38

						    TIR$C_STO_RB==	39

						    TIR$C_STO_RW==	40

						    TIR$C_MAXSTOCOD==	40

						    TIR$C_MINOPRCOD==	50

						    TIR$C_OPR_NOP==	50

						    TIR$C_OPR_ADD==	51

						    TIR$C_OPR_SUB==	52

						    TIR$C_OPR_MUL==	53

						    TIR$C_OPR_DIV==	54

						    TIR$C_OPR_AND==	55

						    TIR$C_OPR_IOR==	56

						    TIR$C_OPR_EOR==	57

						    TIR$C_OPR_NEG==	58

						    TIR$C_OPR_COM==	59

						    TIR$C_OPR_INSV==	60

						    TIR$C_OPR_ASH==	61

						    TIR$C_OPR_USH==	62

						    TIR$C_OPR_ROT==	63

						    TIR$C_OPR_SEL==	64

						    TIR$C_OPR_REDEF==	65

						    TIR$C_MAXOPRCOD==	65

						    TIR$C_MINCTLCOD==	80

						    TIR$C_CTL_SETRB==	80



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-14

; Digital Equipment Corporation

;

						    TIR$C_CTL_AUGRB==	81

						    TIR$C_MAXCTLCOD==	81

						    ISC$C_SIZE==	13

						    ISD$C_SIZE==	48

						    IHD$K_SHR==		2

						    IHD$K_ACTIVOFF==	40

						    IHD$K_SYMDBGOFF==	56

						    IHD$K_IMGIDOFF==	68

						    IHD$K_PATCHOFF==	124

						    IHD$K_MAXLENGTH==	124

						    HDR$K_FILLCHR==	255

						    HDR$K_MINFILL==	2

						    CRF$K_TBLSIZE==	44

						    CRF$K_FIELDSIZE==	12

						    LEN$C_MAPLINE==	132

						    LEN$C_LNGNAM==	30

						    LNK$K_LINESPP==	58

						    ALIGNBYTE=		P.ABC

						    ALIGNWORD=		P.ABD

						    ALIGNLONG=		P.ABE

						    ALIGNQUAD=		P.ABF

						    ALIGN2=		P.ABG

						    ALIGNPAGE=		P.ABH

						    BLANKS=		P.ABI

						    HYPHENS=		P.ABJ

						    PIC=		P.ABK

						    LIB=		P.ABL

						    OVR=		P.ABM

						    REL=		P.ABN

						    GBL=		P.ABO

						    SHR=		P.ABP

						    EXE=		P.ABQ

						    RD=			P.ABR

						    WRT=		P.ABS

						    NOPIC=		P.ABT

						    USR=		P.ABU

						    CON=		P.ABV

						    ABS=		P.ABW

						    LCL=		P.ABX

						    NOSHR=		P.ABY

						    NOEXE=		P.ABZ

						    NORD=		P.ACA

						    NOWRT=		P.ACB

						    EXEIMAGE=		P.ACC

						    SYSIMAGE=		P.ACD

						    SHRIMAGE=		P.ACE

						    BRIEFMAP=		P.ACF

						    ALLTIME=		P.ACG

						    NEVER=		P.ACH

						    EQUAL=		P.ACI

						    LSSEQUAL=		P.ACJ

						    DEFAULTMAP=		P.ACK

						    LONGMAP=		P.ACL

						    CREFMAP=		P.ACM

						    READWRITE=		P.ACN



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-15

; Digital Equipment Corporation

;

						    READONLY=		P.ACO

						    DEMANDZERO=		P.ACP

						    COPYONREF=		P.ACQ

						    CHARDEF_STR=	P.ACR

						    UNDEF_STR=		P.ACS

						    UNIV_STR=		P.ACT

						    RELOC_STR=		P.ACU

						    WEAK_STR=		P.ACV

						    PSECTHDR=		P.ACW

						    OBJMODHDR=		P.ACX

						    IMAGESECTIONS=	P.ACY

						    LINKWIDEHDR=	P.ACZ

						    SYMBYNAME=		P.ADA

						    SYMBOLCREF=		P.ADB

						    SYMBYVALUE=		P.ADC

						    LINKSTATS=		P.ADD

						    ISDTXT=		P.ADQ

							    .GLOBL  CRF$K_ASCIC, CRF$K_BIN_U32, CRF$K_ENTSIZE, CRF$K_NODSIZE

							    .GLOBL  CRF$K_VALUES, CRF$K_DEFS_REFS, CRF$K_VALS_REFS

							    .GLOBL  CRF$K_DELETE, CRF$K_SAVE, CRF$OUT, SYS$FAO, LNK$ERRMSG

							    .GLOBL  ERM$C_CRE8ERR, ERM$C_CRFERR, ERM$C_CLOSERR, ERM$C_FAOBUG

							    .GLOBL  ERM$C_UNMCOD, ERM$C_WRTERR, SEV$C_DIAG, SEV$C_FATAL

							    .GLOBL  SEV$C_INFOR, OBJ$B_SUBTYP, LNK$S_IMAGE, LNK$S_EXE

							    .GLOBL  LNK$S_SYS, LNK$S_MAP, LNK$S_MAPOPN, LNK$S_PICIMG

							    .GLOBL  LNK$S_BRIEF, LNK$S_LONG, LNK$S_CROS, LNK$GL_CTLMSK

							    .GLOBL  LNK$GL_CURFIL, LNK$GL_IMGFIL, LNK$GL_MAPFIL, LNK$GQ_STARTIM

							    .GLOBL  LNK$AW_VERSION, LNK$GW_HDRBLKS, LNK$GW_IMGBLKS

							    .GLOBL  LNK$GL_CURCLU, LNK$GL_CLULST, LNK$GL_MAPLST, LNK$GL_MAXVA

							    .GLOBL  LNK$GL_MINVA, LNK$GW_STACK, LNK$GW_NFILES, LNK$GW_NMODULES

							    .GLOBL  LNK$GW_NPSECTS, LNK$GW_NSYMBOLS, LNK$GW_NCROSRFS

							    .GLOBL  LNK$GW_NUDFSYMS, LNK$GL_TFRADR, LNK$GL_DBGTFR

							    .GLOBL  LNK$GL_OTSEPDSC, LNK$GW_NISECTS, LNK$GL_TFRPSC

							    .GLOBL  LNK$GL_DBGTFPS, LNK$GT_IMGNAM, LNK$GT_IMGID, SYS$CREATE

							    .GLOBL  SYS$CONNECT



							    .PSECT  $CODE$,NOWRT,2



					 0FBC 00000 	    .ENTRY  LNK$MAPINIT, Save R2,R3,R4,R5,R7,R8,R9,R10,R11	      ; 1624

		         57	0000G  CF  9E 00002 	    MOVAB   LNK$ERRMSG, R7					      ;

		         58	0000G  CF  9E 00007 	    MOVAB   LNK$GL_MAPFIL, R8					      ;

		         59	       00  D0 0000C 	    MOVL    #SEV$C_DIAG, R9					      ;

		         5A	0000G  CF  9E 0000F 	    MOVAB   LNK$GL_CTLMSK, R10					      ;

		         5B	0000'  CF  9E 00014 	    MOVAB   MAPESTIM, R11					      ;

		         5E	  B0   AE  9E 00019 	    MOVAB   -80(SP), SP						      ;

	   50	  0000G  CF	       13  C1 0001D 	    ADDL3   #19, LNK$GL_IMGFIL, R0				      ; 1669

      0C   AB	         68	       13  C1 00023 	    ADDL3   #19, LNK$GL_MAPFIL, AUXFNB				      ; 1672

	   00	         6E	       00  2C 00028 	    MOVC5   #0, (SP), #0, #80, MAPFAB				      ; 1673

		         6E	0050   8F     0002C									      ;

		         6E	5003   8F  B0 00030 	    MOVW    #20483, MAPFAB					      ; 1675

		    16   AE	       01  88 00035 	    BISB2   #1, MAPFAB+22					      ; 1676

		    1F   AE	       02  90 00039 	    MOVB    #2, MAPFAB+31					      ; 1677

		    36   AE	  84   8F  9B 0003D 	    MOVZBW  #132, MAPFAB+54					      ; 1678

		    17   AE	       20  88 00042 	    BISB2   #32, MAPFAB+23					      ; 1679

		    1E   AE	       02  88 00046 	    BISB2   #2, MAPFAB+30					      ; 1680

		         50	       68  D0 0004A 	    MOVL    LNK$GL_MAPFIL, R0					      ; 1681



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-16

; Digital Equipment Corporation

;

		    2C   AE	  0F   A0  D0 0004D 	    MOVL    15(R0), MAPFAB+44					      ;

		    34   AE	  0B   A0  90 00052 	    MOVB    11(R0), MAPFAB+52					      ; 1682

		    35   AE	       04  90 00057 	    MOVB    #4, MAPFAB+53					      ; 1683

		    30   AE	0000'  CF  9E 0005B 	    MOVAB   P.AEH, MAPFAB+48					      ; 1684

		    28   AE	  0C   AB  D0 00061 	    MOVL    AUXFNB, MAPFAB+40					      ; 1685

		         50	0000G  CF  3C 00066 	    MOVZWL  LNK$GW_NMODULES, R0					      ; 1686

		         50	       04  C6 0006B 	    DIVL2   #4, R0						      ;

	   6B	         50	       07  C1 0006E 	    ADDL3   #7, R0, MAPESTIM					      ;

	   2C	         6A	       00  E0 00072 	    BBS     #LNK$S_BRIEF, LNK$GL_CTLMSK, 3$			      ; 1687

	   0B	         6A	       00  E1 00076 	    BBC     #LNK$S_CROS, LNK$GL_CTLMSK, 1$			      ; 1689

		         50	0000G  CF  3C 0007A 	    MOVZWL  LNK$GW_NCROSRFS, R0					      ; 1690

		         50	       14  C6 0007F 	    DIVL2   #20, R0						      ;

		         6B	       50  C0 00082 	    ADDL2   R0, MAPESTIM					      ;

		         50	0000G  CF  3C 00085 1$:     MOVZWL  LNK$GW_NSYMBOLS, R0					      ; 1691

		         50	       10  C6 0008A 	    DIVL2   #16, R0						      ;

		         51	0000G  CF  3C 0008D 	    MOVZWL  LNK$GW_NPSECTS, R1					      ;

		         50	       51  C0 00092 	    ADDL2   R1, SYMPSCADDER					      ;

	   06	         6A	       00  E1 00095 	    BBC     #LNK$S_LONG, LNK$GL_CTLMSK, 2$			      ; 1692

		         7B	     9B40  3E 00099 	    MOVAW   @MAPESTIM[SYMPSCADDER], MAPESTIM			      ; 1693

				       03  11 0009D 	    BRB     3$							      ; 1692

		         6B	       50  C0 0009F 2$:     ADDL2   SYMPSCADDER, MAPESTIM				      ; 1694

		    10   AE	       6B  D0 000A2 3$:     MOVL    MAPESTIM, MAPFAB+16					      ; 1696

		    50   AB	       6E  9E 000A6 	    MOVAB   MAPFAB, MAPRAB+60					      ; 1697

		         50	       6B  D0 000AA 	    MOVL    MAPESTIM, R0					      ; 1698

		         08	       50  D1 000AD 	    CMPL    R0, #8						      ;

				       03  1B 000B0 	    BLEQU   4$							      ;

		         50	       08  D0 000B2 	    MOVL    #8, R0						      ;

		    4B   AB	       50  90 000B5 4$:     MOVB    R0, MAPRAB+55					      ;

				       5E  DD 000B9 	    PUSHL   SP							      ; 1699

	      00000000G  9F	       01  FB 000BB 	    CALLS   #1, @#SYS$CREATE					      ;

		    10   AB	       50  D0 000C2 	    MOVL    R0, RMSERROR					      ;

		         11	       50  E9 000C6 	    BLBC    R0, 5$						      ;

				  14   AB  9F 000C9 	    PUSHAB  MAPRAB						      ; 1700

	      00000000G  9F	       01  FB 000CC 	    CALLS   #1, @#SYS$CONNECT					      ;

		    10   AB	       50  D0 000D3 	    MOVL    R0, RMSERROR					      ;

		         35	       50  E8 000D7 	    BLBS    R0, 6$						      ;

		         50	  0C   AB  D0 000DA 5$:     MOVL    AUXFNB, R0						      ; 1703

				  0C   A0  DD 000DE 	    PUSHL   12(R0)						      ; 1702

		         7E	  0B   A0  9A 000E1 	    MOVZBL  11(R0), -(SP)					      ;

		         7E	       59  9A 000E5 	    MOVZBL  R9, -(SP)						      ;

		         7E	  00G  8F  9A 000E8 	    MOVZBL  #ERM$C_CRE8ERR, -(SP)				      ;

		         67	       04  FB 000EC 	    CALLS   #4, LNK$ERRMSG					      ;

				  10   AB  DD 000EF 	    PUSHL   RMSERROR						      ; 1704

	   7E	         68	       0B  C1 000F2 	    ADDL3   #11, LNK$GL_MAPFIL, -(SP)				      ; 1705

		         7E	       00  9A 000F6 	    MOVZBL  #SEV$C_INFOR, -(SP)					      ; 1704

		         7E	  00G  8F  9A 000F9 	    MOVZBL  #ERM$C_UNMCOD, -(SP)				      ;

		         67	       04  FB 000FD 	    CALLS   #4, LNK$ERRMSG					      ;

				  0C   AE  DD 00100 	    PUSHL   MAPFAB+12						      ; 1707

		         7E	       59  9A 00103 	    MOVZBL  R9, -(SP)						      ;

	   7E	    10   AB	       07  CB 00106 	    BICL3   #7, RMSERROR, -(SP)					      ;

		         67	       03  FB 0010B 	    CALLS   #3, LNK$ERRMSG					      ;

					   04 0010E 	    RET     							      ; 1709

		    58   AB	  02   AE  B0 0010F 6$:     MOVW    MAPFAB+2, MAPIFI					      ; 1711

	   00	         6A	       00  E2 00114 	    BBSS    #LNK$S_MAPOPN, LNK$GL_CTLMSK, 7$			      ; 1712

		         50	0000G  CF  D0 00118 7$:     MOVL    LNK$GL_IMGFIL, R0					      ; 1716



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-17

; Digital Equipment Corporation

;

				       0C  13 0011D 	    BEQL    8$							      ;

		         50	       0B  C0 0011F 	    ADDL2   #11, R0						      ; 1718

		    04   AB	       60  D0 00122 	    MOVL    (R0), IMAGEFILENAME					      ;

		    08   AB	  04   A0  D0 00126 	    MOVL    4(R0), IMAGEFILENAME+4				      ; 1719

		    98   AB	       01  7D 0012B 8$:     MOVQ    #1, PAGENUM						      ; 1725

		  0000V  CF	       00  FB 0012F 	    CALLS   #0, NEWPAGE						      ; 1726

		         14	       50  E9 00134 	    BLBC    R0, 9$						      ;

				0000'  CF  9F 00137 	    PUSHAB  OBJMODHDR						      ; 1624

		  0000V  CF	       01  FB 0013B 	    CALLS   #1, MAPBOX						      ; 1727

		         08	       50  E9 00140 	    BLBC    R0, 9$						      ;

				  B0   AB  9F 00143 	    PUSHAB  OBJMODSUBHDR					      ; 1728

		  0000V  CF	       01  FB 00146 	    CALLS   #1, MAPSUBHDR					      ;

					   04 0014B 9$:     RET     							      ; 1624



; Routine Size:  332 bytes





;10900  1731	ROUTINE FAOFAIL (FAO_ERRCODE) : NOVALUE =

;11000  1732	BEGIN

;11100  1733	!

;11200  1734	!	THIS ROUTINE IS CALLED FOR ANY FAILURE RETURN FROM FAO

;11300  1735	!

;11400  1736	LNK$ERRMSG(ERM$C_FAOBUG,SEV$C_DIAG);

;11500  1737	LNK$ERRMSG((.FAO_ERRCODE AND NOT 7),SEV$C_DIAG);

;11600  1738	RETURN;

;11700  1739	END;











					 0800 0014C FAOFAIL:.WORD   Save R11						      ; 1731

		         5B	       00  D0 0014E 	    MOVL    #SEV$C_DIAG, R11					      ;

		         7E	       5B  9A 00151 	    MOVZBL  R11, -(SP)						      ; 1736

		         7E	  00G  8F  9A 00154 	    MOVZBL  #ERM$C_FAOBUG, -(SP)				      ;

		  0000G  CF	       02  FB 00158 	    CALLS   #2, LNK$ERRMSG					      ;

		         7E	       5B  9A 0015D 	    MOVZBL  R11, -(SP)						      ; 1737

	   7E	    04   AC	       07  CB 00160 	    BICL3   #7, FAO_ERRCODE, -(SP)				      ;

		  0000G  CF	       02  FB 00165 	    CALLS   #2, LNK$ERRMSG					      ;

					   04 0016A 	    RET     							      ; 1731



; Routine Size:  31 bytes





;11800  1740	ROUTINE CRFERROR (ERRORCODE) : NOVALUE =

;11900  1741	BEGIN

;12000  1742	!

;12100  1743	!	THIS ROUTINE IS CALLED BY THE CROSS REFERENCE PROGRAM WHENEVER

;12200  1744	!	IT INCURRS AN ERROR. THE ROUTINE MERELY PRINTS A DIAGNOSTIC MESSAGE

;12300  1745	!

;12400  1746	LNK$ERRMSG(ERM$C_CRFERR,SEV$C_DIAG,.ERRORCODE);		! OUTPUT DIAGNOSTIC

;12500  1747	LNK$ERRMSG((.ERRORCODE AND NOT 7),SEV$C_DIAG);

;12600  1748	RETURN;

;12700  1749	END;





; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-18

; Digital Equipment Corporation

;









					 0800 0016B CRFERROR:

							    .WORD   Save R11						      ; 1740

		         5B	       00  D0 0016D 	    MOVL    #SEV$C_DIAG, R11					      ;

				  04   AC  DD 00170 	    PUSHL   ERRORCODE						      ; 1746

		         7E	       5B  9A 00173 	    MOVZBL  R11, -(SP)						      ;

		         7E	  00G  8F  9A 00176 	    MOVZBL  #ERM$C_CRFERR, -(SP)				      ;

		  0000G  CF	       03  FB 0017A 	    CALLS   #3, LNK$ERRMSG					      ;

		         7E	       5B  9A 0017F 	    MOVZBL  R11, -(SP)						      ; 1747

	   7E	    04   AC	       07  CB 00182 	    BICL3   #7, ERRORCODE, -(SP)				      ;

		  0000G  CF	       02  FB 00187 	    CALLS   #2, LNK$ERRMSG					      ;

					   04 0018C 	    RET     							      ; 1740



; Routine Size:  34 bytes





;12800  1750	ROUTINE MAPFAIL: NOVALUE =				! ROUTINE TO REPORT MAP I/O FAILURE

;12900  1751	

;13000  1752	!++

;13100  1753	! FUNCTIONAL DESCRIPTION:

;13200  1754	!

;13300  1755	! THIS ROUTINE REPORTS A MAP I/O FAILURE, THEN CLOSES THE FILE CLEARING

;13400  1756	! THE APPROPRIATE CONTROL BIT TO ENSURE NO MORE ATTEMPTS TO WRITE.

;13500  1757	!

;13600  1758	! FORMAL PARAMETERS:

;13700  1759	!

;13800  1760	!	NONE

;13900  1761	!

;14000  1762	! IMPLICIT INPUTS:

;14100  1763	!

;14200  1764	!	NONE

;14300  1765	!

;14400  1766	! IMPLICIT OUTPUTS:

;14500  1767	!

;14600  1768	!	THE MAP FILE IS CLOSED FOR OUTPUT.

;14700  1769	!

;14800  1770	! ROUTINE VALUE:

;14900  1771	!

;15000  1772	!	NOVALUE

;15100  1773	!

;15200  1774	! COMPLETION CODES:

;15300  1775	!

;15400  1776	!	NONE

;15500  1777	!

;15600  1778	! SIDE EFFECTS:

;15700  1779	!

;15800  1780	!	NONE

;15900  1781	!

;16000  1782	!--

;16100  1783	

;16200  1784	BEGIN

;16300  1785		LNK$GL_CTLMSK<LNK$S_MAPOPN,1,0> = FALSE;		! TURN OFF MAP OPEN FLAG



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-19

; Digital Equipment Corporation

;

;16400  1786		LNK$ERRMSG(ERM$C_WRTERR,SEV$C_DIAG,			! REPORT MAP I/O FAILURE

;16500  1787				LNK$GL_MAPFIL[FDB$Q_USRNAMDSC],.RMSERROR);

;16600  1788		LNK$ERRMSG((.RMSERROR AND NOT 7),SEV$C_DIAG,.MAPRAB[RAB$L_STV]);

;16700  1789		LNK$CLOSMAPFIL();					! THEN CLOSE THE FILE, IF POSSIBLE

;16800  1790		RETURN;

;16900  1791	END;











					 0800 0018D MAPFAIL:.WORD   Save R11						      ; 1750

		         5B	       00  D0 0018F 	    MOVL    #SEV$C_DIAG, R11					      ;

	   00	  0000G  CF	       00  E5 00192 	    BBCC    #LNK$S_MAPOPN, LNK$GL_CTLMSK, 1$			      ; 1785

				0000'  CF  DD 00198 1$:     PUSHL   RMSERROR						      ; 1786

	   7E	  0000G  CF	       0B  C1 0019C 	    ADDL3   #11, LNK$GL_MAPFIL, -(SP)				      ; 1787

		         7E	       5B  9A 001A2 	    MOVZBL  R11, -(SP)						      ; 1786

		         7E	  00G  8F  9A 001A5 	    MOVZBL  #ERM$C_WRTERR, -(SP)				      ;

		  0000G  CF	       04  FB 001A9 	    CALLS   #4, LNK$ERRMSG					      ;

				0000'  CF  DD 001AE 	    PUSHL   MAPRAB+12						      ; 1788

		         7E	       5B  9A 001B2 	    MOVZBL  R11, -(SP)						      ;

	   7E	  0000'  CF	       07  CB 001B5 	    BICL3   #7, RMSERROR, -(SP)					      ;

		  0000G  CF	       03  FB 001BB 	    CALLS   #3, LNK$ERRMSG					      ;

		  0000V  CF	       00  FB 001C0 	    CALLS   #0, LNK$CLOSMAPFIL					      ; 1789

					   04 001C5 	    RET     							      ; 1750



; Routine Size:  57 bytes





;17000  1792	GLOBAL ROUTINE LNK$CLOSMAPFIL : NOVALUE =

;17100  1793	!

;17200  1794	!++

;17300  1795	! FUNCTIONAL DESCRIPTION:

;17400  1796	!

;17500  1797	! THIS ROUTINE CLOSES THE MAP FILE

;17600  1798	!

;17700  1799	! FORMAL PARAMETERS:

;17800  1800	!

;17900  1801	!	NONE

;18000  1802	!

;18100  1803	! IMPLICIT INPUTS:

;18200  1804	!

;18300  1805	!	LNK$GL_MAPFIL = POINTER TO MAP FILE DESCRIPTOR BLOCK

;18400  1806	!	AUXFNB        =   "      " AUXILIARY FILENAME BLOCK

;18500  1807	!	MAPIFI        = INTERNAL FILE IDENTIFIER

;18600  1808	!

;18700  1809	! IMPLICIT OUTPUTS:

;18800  1810	!

;18900  1811	!	THE MAP FILE IS CLOSED FOR OUTPUT.

;19000  1812	!

;19100  1813	! ROUTINE VALUE:

;19200  1814	!

;19300  1815	!	NOVALUE

;19400  1816	!

;19500  1817	! COMPLETION CODES:



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-20

; Digital Equipment Corporation

;

;19600  1818	!

;19700  1819	!	NONE

;19800  1820	!

;19900  1821	! SIDE EFFECTS:

;20000  1822	!

;20100  1823	!	NONE

;20200  1824	!

;20300  1825	!--

;20400  1826	

;20500  1827	BEGIN

;20600  1828	!

;20700  1829	LOCAL

;20800  1830		MAPFAB : BLOCK[FAB$C_BLN,BYTE],				! FAB FOR THE CLOSE

;20900  1831		CLOSERROR;						! ERROR CODE RETURNED BY RMS ON CLOSE

;21000  1832	!

;21100  1833	IF .MAPIFI NEQ 0						! IF THE MAP FILE IS STILL OPEN,

;21200  1834	THEN BEGIN

;21300  1835		CH$FILL(0,FAB$C_BLN,MAPFAB);				! CLEAR OUT THE FAB

;21400  1836		MAPFAB[FAB$B_BLN] = FAB$C_BLN;				! IDENTIFY THIS AS A FAB WITH LENGTH

;21500  1837		MAPFAB[FAB$B_BID] = FAB$C_BID;				! AND IDENTIFICATION

;21600  1838		MAPFAB[FAB$W_IFI] = .MAPIFI;				! INSERT THE SAVED FILE ID

;21650  1839		MAPFAB[FAB$V_TEF] = TRUE;				! SET FOR TRUNCATE AT EOF

;21700  1840		IF (CLOSERROR = $WAIT(RAB=MAPRAB))			! WAIT FOR POSSIBLE ASYNCHRONOUS OUTPUT

;21800  1841		THEN BEGIN						! AND IF OK

;21900  1842			LNK$GL_CTLMSK<LNK$S_MAPOPN,1,0> = FALSE;	! TURN OFF THE CONTROL BIT

;22000  1843			IF (CLOSERROR =$CLOSE(FAB=MAPFAB))		! ATTEMPT THE CLOSE AND IF IT

;22100  1844			THEN BEGIN					! SUCCEEDS

;22200  1845				MAPIFI = 0;				! WE ARE ALL DONE

;22300  1846				RETURN;

;22400  1847			     END;

;22500  1848		     END;						! BUT IF ANYTHING

;22600  1849		LNK$ERRMSG(ERM$C_CLOSERR,SEV$C_DIAG,			! FAILS, ISSUE THE ERROR MESSAGE BUT

;22700  1850			.AUXFNB[NAM$B_RSL],.AUXFNB[NAM$L_RSA],		! CONTINUE

;22800  1851			.CLOSERROR);					!

;22900  1852		LNK$ERRMSG((.CLOSERROR AND NOT 7),SEV$C_DIAG,.MAPFAB[FAB$L_STV]);

;23000  1853		MAPIFI = 0;						! AND CLOSE IS COMPLETE

;23100  1854	     END;

;23200  1855	RETURN;

;23300  1856	END;







							    .GLOBL  SYS$WAIT, SYS$CLOSE



					 0C3C 001C6 	    .ENTRY  LNK$CLOSMAPFIL, Save R2,R3,R4,R5,R10,R11		      ; 1792

		         5A	       00  D0 001C8 	    MOVL    #SEV$C_DIAG, R10					      ;

		         5B	0000'  CF  9E 001CB 	    MOVAB   MAPIFI, R11						      ;

		         5E	  B0   AE  9E 001D0 	    MOVAB   -80(SP), SP						      ;

				       6B  B5 001D4 	    TSTW    MAPIFI						      ; 1833

				       64  13 001D6 	    BEQL    4$							      ;

	   00	         6E	       00  2C 001D8 	    MOVC5   #0, (SP), #0, #80, MAPFAB				      ; 1835

		         6E	0050   8F     001DC									      ;

		         6E	5003   8F  B0 001E0 	    MOVW    #20483, MAPFAB					      ; 1837

		    02   AE	       6B  B0 001E5 	    MOVW    MAPIFI, MAPFAB+2					      ; 1838

		    07   AE	       10  88 001E9 	    BISB2   #16, MAPFAB+4					      ; 1839



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 3-21

; Digital Equipment Corporation

;

				  BC   AB  9F 001ED 	    PUSHAB  MAPRAB						      ; 1840

	      00000000G  9F	       01  FB 001F0 	    CALLS   #1, @#SYS$WAIT					      ;

		         52	       50  D0 001F7 	    MOVL    R0, CLOSERROR					      ;

		         15	       52  E9 001FA 	    BLBC    CLOSERROR, 2$					      ;

	   00	  0000G  CF	       00  E5 001FD 	    BBCC    #LNK$S_MAPOPN, LNK$GL_CTLMSK, 1$			      ; 1842

				       5E  DD 00203 1$:     PUSHL   SP							      ; 1843

	      00000000G  9F	       01  FB 00205 	    CALLS   #1, @#SYS$CLOSE					      ;

		         52	       50  D0 0020C 	    MOVL    R0, CLOSERROR					      ;

		         28	       52  E8 0020F 	    BLBS    CLOSERROR, 3$					      ;

				       52  DD 00212 2$:     PUSHL   CLOSERROR						      ; 1849

		         50	  B4   AB  D0 00214 	    MOVL    AUXFNB, R0						      ; 1850

				  04   A0  DD 00218 	    PUSHL   4(R0)						      ; 1849

		         7E	  03   A0  9A 0021B 	    MOVZBL  3(R0), -(SP)					      ;

		         7E	       5A  9A 0021F 	    MOVZBL  R10, -(SP)						      ;

		         7E	  00G  8F  9A 00222 	    MOVZBL  #ERM$C_CLOSERR, -(SP)				      ;

		  0000G  CF	       05  FB 00226 	    CALLS   #5, LNK$ERRMSG					      ;

				  0C   AE  DD 0022B 	    PUSHL   MAPFAB+12						      ; 1852

		         7E	       5A  9A 0022E 	    MOVZBL  R10, -(SP)						      ;

	   7E	         52	       07  CB 00231 	    BICL3   #7, CLOSERROR, -(SP)				      ;

		  0000G  CF	       03  FB 00235 	    CALLS   #3, LNK$ERRMSG					      ;

				       6B  B4 0023A 3$:     CLRW    MAPIFI						      ; 1853

					   04 0023C 4$:     RET     							      ; 1792



; Routine Size:  119 bytes







; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4

; Digital Equipment Corporation

;

;00100  1857	GLOBAL ROUTINE LNK$MAPMHD(OBJREC,OBJMODDSC) : NOVALUE =	! ROUTINE TO COLLECT MHD INFORMATION

;00200  1858	

;00300  1859	!++

;00400  1860	! FUNCTIONAL DESCRIPTION:

;00500  1861	!

;00600  1862	! THIS ROUTINE EXTRACTS THE INFORMATION CONTAINED IN THE MODULE HEADER

;00700  1863	! RECORD AND CREATES A PART OF AN OUTPUT LINE FOR THE OBJECT MODULE SYNOPSIS

;00800  1864	! SECTION.  THE ROUTINE, LNK$MAPLNG, WILL INSERT THE LANGUAGE PROCESSOR

;00900  1865	! INFORMATION AND ACTUALLY WRITE THE LINE.  THE INPUT PARAMETERS INCLUDE

;01000  1866	! THE ADDRESSES OF THE MODULE HEADER RECORD AND THE OBJECT MODULE

;01100  1867	! TABLE ENTRY.

;01200  1868	!

;01300  1869	! FORMAL PARAMETERS:

;01400  1870	!

;01500  1871	!	OBJREC -- THE ADDRESS OF THE OBJECT MODULE HEADER RECORD

;01600  1872	!			(SUB-HEADER BYTE)

;01700  1873	!	OBJMODDSC -- THE ADDRESS OF THE OBJECT MODULE DESCRIPTOR

;01800  1874	!

;01900  1875	! IMPLICIT INPUTS:

;02000  1876	!

;02100  1877	!	THE NECESSARY LINKER TABLES MUST BE ALREADY SET UP.

;02200  1878	!

;02300  1879	! IMPLICIT OUTPUTS:

;02400  1880	!

;02500  1881	!	THE OUTPUT LINE IS BUILT SAVE FOR THE CREATOR DATA.

;02600  1882	!

;02700  1883	! ROUTINE VALUE:

;02800  1884	!

;02900  1885	!	NOVALUE

;03000  1886	!

;03100  1887	! COMPLETION CODES:

;03200  1888	!

;03300  1889	!	NONE

;03400  1890	!

;03500  1891	! SIDE EFFECTS:

;03600  1892	!

;03700  1893	!	NONE

;03800  1894	!

;03900  1895	!--

;04000  1896	!

;04100  1897	BEGIN

;04200  1898		LOCAL

;04300  1899			FAO_ERRCODE,					! FAO ERROR CODE

;04400  1900			CRE8DATE,					! ADDRESS OF CREATION DATE

;04500  1901			MODIDENT: REF VECTOR[,BYTE];			! REFERENCE TO MODULE IDENT

;04600  1902		MAP

;04700  1903			OBJMODDSC: REF BLOCK[,BYTE],			! REFERENCE TO OBJ MOD DESCRIPTOR

;04800  1904			OBJREC: REF VECTOR[,BYTE];			! REFERENCE TO OBJECT MODULE HEADER RECORD

;04900  1905		BIND

;05000  1906			MHDREC = OBJREC[OBJ$B_SUBTYP]: BLOCK[,BYTE],	! REFERENCE OBJECT MODULE HEADER RECORD

;05100  1907			OBJAUXFNB = LNK$GL_CURFIL[FDB$AL_AUXFNB]	! THE AUXILIARY FILENAME BLOCK OF CURRENT OBJ

;05200  1908					: BLOCK[NAM$C_BLN,BYTE];

;05300  1909	!

;05400  1910		OUTDES[0] = LEN$C_MAPLINE;				! RESET OUTPUT BUFFER DESCRIPTOR

;05500  1911		OUTDES[1] = OUTLINE;					! POINT TO FIRST CHARACTER OF OUTPUT LINE



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-1

; Digital Equipment Corporation

;

;05600  1912		MODIDENT = MHDREC[MHD$B_NAMLNG] +  .MHDREC[MHD$B_NAMLNG] + 1;	! GET OFFSET TO VERSION

;05700  1913		CRE8DATE = MODIDENT[0] + .MODIDENT[0] + 1;			! GET OFFSET TO CREATION DATE

;05800  1914		IF NOT (FAO_ERRCODE=SYS$FAO(OBJMD_CNTRL_STR,OUTSIZE,OUTDES,MHDREC[MHD$B_NAMLNG],

;05900  1915			MODIDENT[0],.OBJMODDSC[OMD$L_ALLOC],.OBJAUXFNB[NAM$B_RSL],

;06000  1916			.OBJAUXFNB[NAM$L_RSA],DATE_FLD_LNG,.CRE8DATE))		! FORMAT LINE

;06100  1917		THEN FAOFAIL(.FAO_ERRCODE)

;06200  1918		ELSE BEGIN						!

;06300  1919			OUTDES[1] = OUTLINE + .OUTSIZE;			! POINT TO CREATOR FIELD

;06400  1920			OUTDES[0] = .OUTDES[0] - .OUTSIZE;		! SUBTRACT OFF SIZE SO FAR

;06500  1921			END;						!

;06600  1922	END;











					 080C 0023D 	    .ENTRY  LNK$MAPMHD, Save R2,R3,R11				      ; 1857

		         5B	0000'  CF  9E 0023F 	    MOVAB   OUTDES, R11						      ;

	   53	    04   AC 00000000G  8F  C1 00244 	    ADDL3   #OBJ$B_SUBTYP, OBJREC, R3				      ; 1906

	   51	  0000G  CF	       13  C1 0024D 	    ADDL3   #19, LNK$GL_CURFIL, R1				      ; 1907

		         6B	  84   8F  9A 00253 	    MOVZBL  #132, OUTDES					      ; 1910

		    04   AB	FF7C   CB  9E 00257 	    MOVAB   OUTLINE, OUTDES+4					      ; 1911

		         50	       53  D0 0025D 	    MOVL    R3, R0						      ; 1912

		         50	  04   A0  9A 00260 	    MOVZBL  4(R0), R0						      ;

		         50	       53  C0 00264 	    ADDL2   R3, R0						      ;

	   52	         50	       05  C1 00267 	    ADDL3   #5, R0, MODIDENT					      ;

		         50	       62  9A 0026B 	    MOVZBL  (MODIDENT), R0					      ; 1913

		         50	       52  C0 0026E 	    ADDL2   MODIDENT, R0					      ;

				       50  D6 00271 	    INCL    CRE8DATE						      ;

				       50  DD 00273 	    PUSHL   CRE8DATE						      ; 1914

				       11  DD 00275 	    PUSHL   #17							      ;

				  04   A1  DD 00277 	    PUSHL   4(R1)						      ;

		         7E	  03   A1  9A 0027A 	    MOVZBL  3(R1), -(SP)					      ;

		         50	  08   AC  D0 0027E 	    MOVL    OBJMODDSC, R0					      ; 1915

				  04   A0  DD 00282 	    PUSHL   4(R0)						      ; 1914

				       52  DD 00285 	    PUSHL   MODIDENT						      ;

	   7E	         53	       04  C1 00287 	    ADDL3   #4, R3, -(SP)					      ;

				       5B  DD 0028B 	    PUSHL   R11							      ;

				  08   AB  9F 0028D 	    PUSHAB  OUTSIZE						      ;

				FEB0   CB  9F 00290 	    PUSHAB  OBJMD_CNTRL_STR					      ;

	      00000000G  00	       0A  FB 00294 	    CALLS   #10, SYS$FAO					      ;

		         08	       50  E8 0029B 	    BLBS    FAO_ERRCODE, 1$					      ;

				       50  DD 0029E 	    PUSHL   FAO_ERRCODE						      ; 1917

		  FEA7   CF	       01  FB 002A0 	    CALLS   #1, FAOFAIL						      ;

					   04 002A5 	    RET     							      ; 1914

		         50	FF7C   CB  9E 002A6 1$:     MOVAB   OUTLINE, R0						      ; 1919

		         51	  08   AB  3C 002AB 	    MOVZWL  OUTSIZE, R1						      ;

      04   AB	         50	       51  C1 002AF 	    ADDL3   R1, R0, OUTDES+4					      ;

		         50	  08   AB  3C 002B4 	    MOVZWL  OUTSIZE, R0						      ; 1920

		         6B	       50  C2 002B8 	    SUBL2   R0, OUTDES						      ;

					   04 002BB 	    RET     							      ; 1857



; Routine Size:  127 bytes







; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-2

; Digital Equipment Corporation

;

;06700  1923	GLOBAL ROUTINE LNK$MAPLNG(LANGADDR,LANGLEN) : NOVALUE =		! ROUTINE TO OUTPUT LANGUAGE PROCESSOR DATA

;06800  1924	

;06900  1925	!++

;07000  1926	! FUNCTIONAL DESCRIPTION:

;07100  1927	!

;07200  1928	! THIS ROUTINE TAKES INFORMATION FROM THE LANGUAGE PROCESSOR SUB-HEADER

;07300  1929	! RECORD AND INSERTS IT INTO THE OBJECT MODULE OUTPUT LINE.  THIS OUTPUT

;07400  1930	! LINE IS THEN WRITTEN TO THE MAP.

;07500  1931	!

;07600  1932	! FORMAL PARAMETERS:

;07700  1933	!

;07800  1934	!	LANGADDR -- ADDRESS OF THE LANGUAGE PROCESSOR NAME STRING

;07900  1935	!	LANGLEN -- LENGTH OF THE LANGUAGE PROCESSOR NAME STRING

;08000  1936	!

;08100  1937	!

;08200  1938	! IMPLICIT INPUTS:

;08300  1939	!

;08400  1940	!	THE MAIN BODY OF THE OBJECT MODULE OUTPUT LINE IS ALREADY BUILT.

;08500  1941	!

;08600  1942	! IMPLICIT OUTPUTS:

;08700  1943	!

;08800  1944	!	THE OBJECT MODULE OUTPUT LINE IS WRITTEN TO THE MAP FILE.

;08900  1945	!

;09000  1946	! ROUTINE VALUE:

;09100  1947	!

;09200  1948	!	NOVALUE

;09300  1949	!

;09400  1950	! COMPLETION CODES:

;09500  1951	!

;09600  1952	!	NONE

;09700  1953	!

;09800  1954	! SIDE EFFECTS:

;09900  1955	!

;10000  1956	!	THE LANGUAGE NAME WILL BE TRUNCATED TO THE MAXIMUM ALLOWED LENGTH

;10100  1957	!		AS DEFINED BY "LEN$C_LNGNAM"

;10200  1958	!

;10300  1959	!--

;10400  1960	!

;10500  1961	BEGIN

;10600  1962	!

;10700  1963		LOCAL

;10800  1964			FAO_ERRCODE;					! FAO ERROR CODE

;10900  1965	!

;11000  1966		IF NOT (FAO_ERRCODE=SYS$FAO(CREAT_CNTRL_STR,OUTSIZE,OUTDES,		! FORMAT LINE

;11100  1967				MIN(LEN$C_LNGNAM,.LANGLEN),.LANGADDR))	! TRUNCATING TO MAXIMUM ALLOWED LENGTH

;11200  1968		THEN FAOFAIL(.FAO_ERRCODE);				! FAO FAILURE

;11300  1969		OUTSIZE = .OUTSIZE + .OUTDES[1] - OUTLINE;		! CALCULATE TOTAL LINE SIZE

;11400  1970		LNK$MAPOUT(OUTLINE,.OUTSIZE);				! OUTPUT LINE

;11500  1971		OUTDES[0] = LEN$C_MAPLINE;				! RESET THE OUTPUT BUFFER DESCRIPTOR

;11600  1972		OUTDES[1] = OUTLINE;					! FOR NEXT USAGE

;11700  1973		RETURN;							! NO MORE TO DO

;11800  1974	END;









; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-3

; Digital Equipment Corporation

;





					 0800 002BC 	    .ENTRY  LNK$MAPLNG, Save R11				      ; 1923

		         5B	0000'  CF  9E 002BE 	    MOVAB   OUTSIZE, R11					      ;

				  04   AC  DD 002C3 	    PUSHL   LANGADDR						      ; 1966

				  08   AC  DD 002C6 	    PUSHL   LANGLEN						      ; 1967

		         1E	       6E  D1 002C9 	    CMPL    (SP), #30						      ;

				       03  15 002CC 	    BLEQ    1$							      ;

		         6E	       1E  D0 002CE 	    MOVL    #30, (SP)						      ;

				  F8   AB  9F 002D1 1$:     PUSHAB  OUTDES						      ; 1966

				       5B  DD 002D4 	    PUSHL   R11							      ;

				FEB0   CB  9F 002D6 	    PUSHAB  CREAT_CNTRL_STR					      ;

	      00000000G  00	       05  FB 002DA 	    CALLS   #5, SYS$FAO						      ;

		         07	       50  E8 002E1 	    BLBS    FAO_ERRCODE, 2$					      ;

				       50  DD 002E4 	    PUSHL   FAO_ERRCODE						      ; 1968

		  FE61   CF	       01  FB 002E6 	    CALLS   #1, FAOFAIL						      ;

		         51	       6B  3C 002EB 2$:     MOVZWL  OUTSIZE, R1						      ; 1969

		         51	  FC   AB  C0 002EE 	    ADDL2   OUTDES+4, R1					      ;

		         50	FF74   CB  9E 002F2 	    MOVAB   OUTLINE, R0						      ;

	   6B	         51	       50  A3 002F7 	    SUBW3   R0, R1, OUTSIZE					      ;

		         7E	       6B  3C 002FB 	    MOVZWL  OUTSIZE, -(SP)					      ; 1970

				FF74   CB  9F 002FE 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00302 	    CALLS   #2, LNK$MAPOUT					      ;

		    F8   AB	  84   8F  9A 00307 	    MOVZBL  #132, OUTDES					      ; 1971

		    FC   AB	FF74   CB  9E 0030C 	    MOVAB   OUTLINE, OUTDES+4					      ; 1972

					   04 00312 	    RET     							      ; 1923



; Routine Size:  87 bytes





;11900  1975	GLOBAL ROUTINE LNK$MAPPSCTS: NOVALUE =				! ROUTINE TO OUTPUT PSECT SYNOPSIS

;12000  1976	

;12100  1977	!++

;12200  1978	! FUNCTIONAL DESCRIPTION:

;12300  1979	!

;12400  1980	!

;12500  1981	! FORMAL PARAMETERS:

;12600  1982	!

;12700  1983	!	NONE

;12800  1984	!

;12900  1985	! IMPLICIT INPUTS:

;13000  1986	!

;13100  1987	!	THE PSECT TABLES MUST HAVE ALREADY BEEN COMPLETED.

;13200  1988	!	THE OBJECT MODULE TABLES AND THE CURRENT FILE DESCRIPTOR MUST

;13300  1989	!	BE AVAILABLE.

;13400  1990	!

;13500  1991	! IMPLICIT OUTPUTS:

;13600  1992	!

;13700  1993	!	NONE

;13800  1994	!

;13900  1995	! ROUTINE VALUE:

;14000  1996	!

;14100  1997	!	NOVALUE

;14200  1998	!

;14300  1999	! COMPLETION CODES:



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-4

; Digital Equipment Corporation

;

;14400  2000	!

;14500  2001	!	NONE

;14600  2002	!

;14700  2003	! SIDE EFFECTS:

;14800  2004	!

;14900  2005	!	NONE

;15000  2006	!

;15100  2007	!--

;15200  2008	!

;15300  2009	BEGIN

;15400  2010	OWN

;15500  2011		PSCTCONTR: REF BLOCK[,BYTE],				! OBJ MOD CONTRIBUTOR DES ADDR

;15600  2012		PSECTADDR: REF BLOCK[,BYTE],				! ADDRESS OF PSECT BEING OUTPUT

;15700  2013		PSCTOWNER: REF BLOCK[,BYTE];				! ADDRESS OF OWNER MODULE

;15800  2014	LOCAL

;15900  2015		FAO_ERRCODE,						! FAO ERROR CODE

;16000  2016		PSECTOFFSET,						! MODULE CONTR BASE ADDR

;16100  2017		PSECTEND,						! END ADDRESS OF PSECT

;16200  2018		PSECTBASE;						! BASE ADDRESS OF PSECT

;16300  2019	!

;16400  2020	! START ROUTINE OUTPUT.

;16500  2021	!

;16600  2022		IF .LNK$GL_CTLMSK<LNK$S_BRIEF,1,0>		! MORE THAN A BRIEF MAP?

;16700  2023			THEN RETURN;				! NO, RETURN

;16800  2024		SUBHDLINE = 0;					! INITIALIZE SUBHEADER ADDR

;16900  2025		IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>		! IF A FULL MAP

;17000  2026		THEN (IF NOT NEWPAGE() THEN RETURN)		! OUTPUT NEW PAGE AND HEADER

;17100  2027		ELSE (IF NOT NEWLINE() THEN RETURN);		! OTHERWISE JUST A NEW LINE

;17200  2028		IF NOT MAPBOX(PSECTHDR) THEN RETURN;		! OUTPUT PSECT HEADER

;17300  2029		IF NOT MAPSUBHDR(PSECTSUBHDR) THEN RETURN;	! OUTPUT PSECT SUB-HEADER

;17400  2030	!

;17500  2031	! OUTPUT PSECT SECTION LINES TO MAP.

;17600  2032	!

;17700  2033		PSECTADDR = LNK$GL_MAPLST;				! START AT TOP OF LIST

;17800  2034		WHILE (PSECTADDR = .PSECTADDR[PSC$L_NXTPSC]) NEQ 0 DO	! WHILE ANOTHER P-SECTION

;17900  2035		BEGIN IF (.PSECTADDR[PSC$W_FLAGS] AND PSC$M_REL) NEQ 0	! PROVIDED THAT IT IS RELOCATABLE

;18000  2036			AND (IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>		! PROVIDED IT IS LONG MAP

;18100  2037				THEN (IF NOT NEWLINE() THEN RETURN	! OUTPUT A NEW LINE

;18200  2038						ELSE TRUE)

;18300  2039				ELSE IF (.PSECTADDR[PSC$W_FLAGS] AND PSC$M_SUPRES) EQL 0 ! OR THE P-SECTION

;18400  2040					AND .PSECTADDR[PSC$L_LENGTH] NEQ 0		! IS NOT EMPTY AND

;18500  2041					THEN TRUE					! IS NOT SUPPRESSD

;18600  2042					ELSE FALSE)

;18700  2043		      THEN BEGIN

;18800  2044			PSECTBASE = .PSECTADDR[PSC$L_BASE];		! REMEMBER BASE ADDR

;18900  2045			PSECTEND = .PSECTBASE + .PSECTADDR[PSC$L_LENGTH]; ! CALCULATE END ADDR

;19000  2046			IF (.PSECTADDR[PSC$L_LENGTH] NEQ 0) THEN PSECTEND = .PSECTEND - 1; ! CALCULATE END ADDR

;19100  2047			ALIGNMENT = (CASE .PSECTADDR[PSC$B_ALIGN] FROM 0 TO 9 OF ! FIND ALIGNMENT ASCIC STRING ADDRESS

;19200  2048				SET

;19300  2049				[0] : ALIGNBYTE;			! BYTE ALIGNED

;19400  2050				[1] : ALIGNWORD;			! WORD ALIGNED

;19500  2051				[2] : ALIGNLONG;			! LONGWORD ALIGNED

;19600  2052				[3] : ALIGNQUAD;			! QUAD WORD ALIGNED

;19700  2053				[4 TO 8] : ALIGN2;			! OTHER ALIGNED

;19800  2054				[9] : ALIGNPAGE;			! PAGE ALIGNED



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-5

; Digital Equipment Corporation

;

;19900  2055				TES);					! GOT ALIGNMENT

;20000  2056			ARGS[0] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_PIC) EQL 0) ! DECIDE IF PSECT IS

;20100  2057	 			THEN NOPIC				! NOT POSITION INDEPENDENT,

;20200  2058				ELSE PIC);				! OR IS POSITION INDEPENDENT

;20300  2059			ARGS[1] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_LIB) EQL 0) ! DECIDE IF PSECT IS

;20400  2060				THEN USR				! DEFINED BY THE USER

;20500  2061				ELSE LIB);				! OR FROM A LIBRARY

;20600  2062			ARGS[2] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_OVR) EQL 0) ! DECIDE IF PSECT IS

;20700  2063				THEN CON				! CONCATENATED

;20800  2064				ELSE OVR);				! OR OVERLAID

;20900  2065			ARGS[3] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_REL) EQL 0) ! DECIDE IF PSECT IS

;21000  2066				THEN ABS				! ABSOLUTE

;21100  2067				ELSE REL);				! OR RELOCATABLE

;21200  2068			ARGS[4] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_GBL) EQL 0) ! DECIDE IF PSECT IS

;21300  2069				THEN LCL				! LOCALLY DEFINED

;21400  2070				ELSE GBL);				! OR GLOBALLY DEFINED

;21500  2071			ARGS[5] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_SHR) EQL 0) ! DECIDE IF PSECT IS

;21600  2072				THEN NOSHR				! NOT SHAREABLE

;21700  2073				ELSE SHR);				! OR IS SHAREABLE

;21800  2074			ARGS[6] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_EXE) EQL 0) ! DECIDE IF PSECT IS

;21900  2075				THEN NOEXE				! NOT EXECUTABLE

;22000  2076				ELSE EXE);				! OR IS EXECUTABLE

;22100  2077			ARGS[7] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_RD) EQL 0) ! DECIDE IF PSECT IS

;22200  2078				THEN NORD				! NOT READABLE

;22300  2079				ELSE RD);				! OR IS READABLE

;22400  2080			ARGS[8] = (IF ((.PSECTADDR[PSC$W_FLAGS] AND PSC$M_WRT) EQL 0) ! DECIDE IF PSECT IS

;22500  2081				THEN NOWRT				! NOT WRITEABLE

;22600  2082				ELSE WRT);				! OR IS WRITEABLE

;22700  2083			IF NOT (FAO_ERRCODE=SYS$FAO(PSC_CNTRL_STR,OUTSIZE,OUTDES,

;22800  2084				PSECTADDR[PSC$B_NAMLNG],BLANKS, ! FORMAT THE PSECT SUMMARY ALLOCATION LINE

;22900  2085				.PSECTADDR[PSC$L_BASE],.PSECTEND,.PSECTADDR[PSC$L_LENGTH],

;23000  2086				.PSECTADDR[PSC$L_LENGTH],.ALIGNMENT,.PSECTADDR[PSC$B_ALIGN],

;23100  2087				.ARGS[0],.ARGS[1],.ARGS[2],.ARGS[3],.ARGS[4],

;23200  2088				.ARGS[5],.ARGS[6],.ARGS[7],.ARGS[8]))

;23300  2089			THEN FAOFAIL(.FAO_ERRCODE)

;23400  2090			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT THE PSECT ALLOCATION SUMMARY LINE

;23500  2091					THEN RETURN;			! NO MORE OUTPUT, I/O FAILURE

;23600  2092			PSCTCONTR = .PSECTADDR[PSC$L_MPCLST];		! GET THE FIRST CONTRIBUTING OBJECT MODULE

;23700  2093			WHILE (.PSCTCONTR NEQ 0) DO			! LOOP ONCE FOR EACH CONTRIBUTOR

;23800  2094				BEGIN

;23900  2095				PSECTOFFSET = .PSECTBASE + .PSCTCONTR[MPC$L_OFFSET]; ! CALCULATE BASE OF THIS CONTRIBUTION

;24000  2096				PSECTEND = .PSECTOFFSET + .PSCTCONTR[MPC$L_LENGTH]; ! CALCULATE END OF THIS CONTRIBUTION

;24100  2097				IF (.PSCTCONTR[MPC$L_LENGTH] NEQ 0) THEN PSECTEND = .PSECTEND - 1; ! CALCULATE END ADDRESS

;24200  2098				ALIGNMENT = (CASE .PSCTCONTR[MPC$B_ALIGN] FROM 0 TO 9 OF ! FIND ALIGNMENT OF THIS CONTRIBUTION

;24300  2099					SET

;24400  2100					[0] : ALIGNBYTE;		! BYTE ALIGNED

;24500  2101					[1] : ALIGNWORD;		! WORD ALIGNED

;24600  2102					[2] : ALIGNLONG;		! LONGWORD ALIGNED

;24700  2103					[3] : ALIGNQUAD;		! QUADWORD ALIGNED

;24800  2104					[4 TO 8] : ALIGN2;		! OTHER ALIGNED

;24900  2105					[9] : ALIGNPAGE;		! PAGE ALIGNED

;25000  2106					TES);				! GOT ALIGNMENT

;25100  2107				PSCTOWNER = .PSCTCONTR[MPC$L_OWNOMD];	! FIND OBJ MOD NAME

;25200  2108				IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>			! IF A FULL MAP

;25300  2109				OR	((.PSCTCONTR[MPC$L_LENGTH] NEQ 0)	! OR A NON ZERO CONTRIBUTION



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-6

; Digital Equipment Corporation

;

;25400  2110					AND (.PSCTOWNER[OMD$B_FLAGS] AND	! FROM A MAPPED MODULE IN

;25500  2111							OMD$M_MAPMOD) NEQ 0)	! A DEFAULT MAP

;25600  2112				THEN BEGIN				! OUTPUT THE CONTRIBUTION LINE

;25700  2113				IF NOT (FAO_ERRCODE=SYS$FAO(CONTRBSTR,OUTSIZE,OUTDES,BLANKS, ! FORMAT CONTRIBUTING MODULE LINE

;25800  2114					PSCTOWNER[OMD$B_NAMLNG],

;25900  2115					.PSECTOFFSET,.PSECTEND,.PSCTCONTR[MPC$L_LENGTH],

;26000  2116					.PSCTCONTR[MPC$L_LENGTH],.ALIGNMENT,

;26100  2117					.PSCTCONTR[MPC$B_ALIGN],BLANKS))

;26200  2118				THEN FAOFAIL(.FAO_ERRCODE)

;26300  2119				ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE) ! OUTPUT CONTRIBUTING MODULE LINE

;26400  2120							THEN RETURN;	! NO MORE OUTPUT, I/O FAILURE

;26500  2121				END;

;26600  2122				PSCTCONTR = .PSCTCONTR[MPC$L_NXTMPC];	! GET NEXT CONTRIBUTING MODULE

;26700  2123				END;					! END THE CONTRIBUTOR LOOP

;26800  2124			END;

;26900  2125			END;						! END THE PSECT SUMMARY LOOP

;27000  2126		END;							! END THE ROUTINE







							    .PSECT  $OWN$,NOEXE,2



					      0032E	    .BLKB   2

					      00330 PSCTCONTR:

							    .BLKB   4

					      00334 PSECTADDR:

							    .BLKB   4

					      00338 PSCTOWNER:

							    .BLKB   4







							    .PSECT  $CODE$,NOWRT,2



					 0FFC 00313 	    .ENTRY  LNK$MAPPSCTS, Save R2,R3,R4,R5,R6,R7,R8,R9,R10,R11	      ; 1975

		         57 00000000G  00  9E 00315 	    MOVAB   SYS$FAO, R7						      ;

		         58	0000G  CF  9E 0031C 	    MOVAB   LNK$GL_CTLMSK, R8					      ;

		         59	       00  D0 00321 	    MOVL    #LNK$S_LONG, R9					      ;

		         5A	0000'  CF  9E 00324 	    MOVAB   BLANKS, R10						      ;

		         5B	0000'  CF  9E 00329 	    MOVAB   PSECTADDR, R11					      ;

	   01	         68	       00  E1 0032E 	    BBC     #LNK$S_BRIEF, LNK$GL_CTLMSK, 1$			      ; 2022

					   04 00332 	    RET     							      ;

				FE6C   CB  D4 00333 1$:     CLRL    SUBHDLINE						      ; 2024

	   07	         68	       59  E1 00337 	    BBC     R9, LNK$GL_CTLMSK, 2$				      ; 2025

		  0000V  CF	       00  FB 0033B 	    CALLS   #0, NEWPAGE						      ; 2026

				       05  11 00340 	    BRB     3$							      ;

		  0000V  CF	       00  FB 00342 2$:     CALLS   #0, NEWLINE						      ; 2027

		         34	       50  E9 00347 3$:     BLBC    R0, 6$						      ;

				01B0   CA  9F 0034A 	    PUSHAB  PSECTHDR						      ; 1975

		  0000V  CF	       01  FB 0034E 	    CALLS   #1, MAPBOX						      ; 2028

		         28	       50  E9 00353 	    BLBC    R0, 6$						      ;

				FE70   CB  9F 00356 	    PUSHAB  PSECTSUBHDR						      ; 2029

		  0000V  CF	       01  FB 0035A 	    CALLS   #1, MAPSUBHDR					      ;

		         1C	       50  E9 0035F 	    BLBC    R0, 6$						      ;

		         6B	0000G  CF  9E 00362 	    MOVAB   LNK$GL_MAPLST, PSECTADDR				      ; 2033



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-7

; Digital Equipment Corporation

;

		         7B	       9B  D0 00367 4$:     MOVL    @PSECTADDR, PSECTADDR				      ; 2034

				       01  12 0036A 	    BNEQ    5$							      ;

					   04 0036C 	    RET     							      ;

		         52	       6B  D0 0036D 5$:     MOVL    PSECTADDR, R2					      ; 2035

	   F2	    19   A2	       03  E1 00370 	    BBC     #3, 25(R2), 4$					      ;

	   09	         68	       59  E1 00375 	    BBC     R9, LNK$GL_CTLMSK, 7$				      ; 2036

		  0000V  CF	       00  FB 00379 	    CALLS   #0, NEWLINE						      ; 2037

		         0B	       50  E8 0037E 6$:     BLBS    R0, 8$						      ;

					   04 00381 	    RET     							      ;

	   E0	    19   A2	       0F  E0 00382 7$:     BBS     #15, 25(R2), 4$					      ; 2039

				  10   A2  D5 00387 	    TSTL    16(R2)						      ; 2040

				       DB  13 0038A 	    BEQL    4$							      ;

		         50	       6B  D0 0038C 8$:     MOVL    PSECTADDR, R0					      ; 2044

		         56	  0C   A0  D0 0038F 	    MOVL    12(R0), PSECTBASE					      ;

	   54	         56	  10   A0  C1 00393 	    ADDL3   16(R0), PSECTBASE, PSECTEND				      ; 2045

				  10   A0  D5 00398 	    TSTL    16(R0)						      ; 2046

				       02  13 0039B 	    BEQL    9$							      ;

				       54  D7 0039D 	    DECL    PSECTEND						      ;

	   09	         00	  18   A0  8F 0039F 9$:     CASEB   24(R0), #0, #9					      ; 2047

	 0020	       001A	     0014     003A4 10$:    .WORD   11$-10$,-						      ;

	 002C	       002C	     0026     003AA		    12$-10$,-						      ;

	 002C	       002C	     002C     003B0		    13$-10$,-						      ;

				     0032     003B6		    14$-10$,-						      ;

								    15$-10$,-						      ;

								    15$-10$,-						      ;

								    15$-10$,-						      ;

								    15$-10$,-						      ;

								    15$-10$,-						      ;

								    16$-10$						      ;

		         51	  D0   AA  9E 003B8 11$:    MOVAB   ALIGNBYTE, R1					      ; 1975

				       1C  11 003BC 	    BRB     17$							      ; 2047

		         51	  D8   AA  9E 003BE 12$:    MOVAB   ALIGNWORD, R1					      ; 1975

				       16  11 003C2 	    BRB     17$							      ; 2047

		         51	  E0   AA  9E 003C4 13$:    MOVAB   ALIGNLONG, R1					      ; 1975

				       10  11 003C8 	    BRB     17$							      ; 2047

		         51	  E8   AA  9E 003CA 14$:    MOVAB   ALIGNQUAD, R1					      ; 1975

				       0A  11 003CE 	    BRB     17$							      ; 2047

		         51	  F0   AA  9E 003D0 15$:    MOVAB   ALIGN2, R1						      ; 1975

				       04  11 003D4 	    BRB     17$							      ; 2047

		         51	  F8   AA  9E 003D6 16$:    MOVAB   ALIGNPAGE, R1					      ; 1975

		  FDAC   CB	       51  D0 003DA 17$:    MOVL    R1, ALIGNMENT					      ; 2047

		         51	  19   A0  9E 003DF 	    MOVAB   25(R0), R1						      ; 2056

		         06	       61  E8 003E3 	    BLBS    (R1), 18$						      ;

		         52	  50   AA  9E 003E6 	    MOVAB   NOPIC, R2						      ; 1975

				       04  11 003EA 	    BRB     19$							      ; 2056

		         52	  08   AA  9E 003EC 18$:    MOVAB   PIC, R2						      ; 1975

		  FE40   CB	       52  D0 003F0 19$:    MOVL    R2, ARGS						      ; 2056

	   06	         61	       01  E0 003F5 	    BBS     #1, (R1), 20$					      ; 2059

		         52	  58   AA  9E 003F9 	    MOVAB   USR, R2						      ; 1975

				       04  11 003FD 	    BRB     21$							      ; 2059

		         52	  10   AA  9E 003FF 20$:    MOVAB   LIB, R2						      ; 1975

		  FE44   CB	       52  D0 00403 21$:    MOVL    R2, ARGS+4						      ; 2059

	   06	         61	       02  E0 00408 	    BBS     #2, (R1), 22$					      ; 2062

		         52	  60   AA  9E 0040C 	    MOVAB   CON, R2						      ; 1975

				       04  11 00410 	    BRB     23$							      ; 2062



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-8

; Digital Equipment Corporation

;

		         52	  18   AA  9E 00412 22$:    MOVAB   OVR, R2						      ; 1975

		  FE48   CB	       52  D0 00416 23$:    MOVL    R2, ARGS+8						      ; 2062

	   06	         61	       03  E0 0041B 	    BBS     #3, (R1), 24$					      ; 2065

		         52	  68   AA  9E 0041F 	    MOVAB   ABS, R2						      ; 1975

				       04  11 00423 	    BRB     25$							      ; 2065

		         52	  20   AA  9E 00425 24$:    MOVAB   REL, R2						      ; 1975

		  FE4C   CB	       52  D0 00429 25$:    MOVL    R2, ARGS+12						      ; 2065

	   06	         61	       04  E0 0042E 	    BBS     #4, (R1), 26$					      ; 2068

		         52	  70   AA  9E 00432 	    MOVAB   LCL, R2						      ; 1975

				       04  11 00436 	    BRB     27$							      ; 2068

		         52	  28   AA  9E 00438 26$:    MOVAB   GBL, R2						      ; 1975

		  FE50   CB	       52  D0 0043C 27$:    MOVL    R2, ARGS+16						      ; 2068

	   06	         61	       05  E0 00441 	    BBS     #5, (R1), 28$					      ; 2071

		         52	  78   AA  9E 00445 	    MOVAB   NOSHR, R2						      ; 1975

				       04  11 00449 	    BRB     29$							      ; 2071

		         52	  30   AA  9E 0044B 28$:    MOVAB   SHR, R2						      ; 1975

		  FE54   CB	       52  D0 0044F 29$:    MOVL    R2, ARGS+20						      ; 2071

	   07	         61	       06  E0 00454 	    BBS     #6, (R1), 30$					      ; 2074

		         52	0080   CA  9E 00458 	    MOVAB   NOEXE, R2						      ; 1975

				       04  11 0045D 	    BRB     31$							      ; 2074

		         52	  38   AA  9E 0045F 30$:    MOVAB   EXE, R2						      ; 1975

		  FE58   CB	       52  D0 00463 31$:    MOVL    R2, ARGS+24						      ; 2074

	   07	         61	       07  E0 00468 	    BBS     #7, (R1), 32$					      ; 2077

		         52	0088   CA  9E 0046C 	    MOVAB   NORD, R2						      ; 1975

				       04  11 00471 	    BRB     33$							      ; 2077

		         52	  40   AA  9E 00473 32$:    MOVAB   RD, R2						      ; 1975

		  FE5C   CB	       52  D0 00477 33$:    MOVL    R2, ARGS+28						      ; 2077

	   07	         61	       08  E0 0047C 	    BBS     #8, (R1), 34$					      ; 2080

		         51	0090   CA  9E 00480 	    MOVAB   NOWRT, R1						      ; 1975

				       04  11 00485 	    BRB     35$							      ; 2080

		         51	  48   AA  9E 00487 34$:    MOVAB   WRT, R1						      ; 1975

		  FE60   CB	       51  D0 0048B 35$:    MOVL    R1, ARGS+32						      ; 2080

		         7E	FE5C   CB  7D 00490 	    MOVQ    ARGS+28, -(SP)					      ; 2083

		         7E	FE54   CB  7D 00495 	    MOVQ    ARGS+20, -(SP)					      ;

		         7E	FE4C   CB  7D 0049A 	    MOVQ    ARGS+12, -(SP)					      ;

		         7E	FE44   CB  7D 0049F 	    MOVQ    ARGS+4, -(SP)					      ;

				FE40   CB  DD 004A4 	    PUSHL   ARGS						      ;

		         7E	  18   A0  9A 004A8 	    MOVZBL  24(R0), -(SP)					      ;

				FDAC   CB  DD 004AC 	    PUSHL   ALIGNMENT						      ;

				  10   A0  DD 004B0 	    PUSHL   16(R0)						      ;

				  10   A0  DD 004B3 	    PUSHL   16(R0)						      ;

				       54  DD 004B6 	    PUSHL   PSECTEND						      ;

				  0C   A0  DD 004B8 	    PUSHL   12(R0)						      ;

				       5A  DD 004BB 	    PUSHL   R10							      ; 1975

				  1B   A0  9F 004BD 	    PUSHAB  27(R0)						      ; 2084

				FE34   CB  9F 004C0 	    PUSHAB  OUTDES						      ; 2083

				FE3C   CB  9F 004C4 	    PUSHAB  OUTSIZE						      ;

				FCD4   CB  9F 004C8 	    PUSHAB  PSC_CNTRL_STR					      ;

		         67	       14  FB 004CC 	    CALLS   #20, SYS$FAO					      ;

		         53	       50  D0 004CF 	    MOVL    R0, FAO_ERRCODE					      ;

		         09	       53  E8 004D2 	    BLBS    FAO_ERRCODE, 36$					      ;

				       53  DD 004D5 	    PUSHL   FAO_ERRCODE						      ; 2089

		  FC70   CF	       01  FB 004D7 	    CALLS   #1, FAOFAIL						      ;

				       12  11 004DC 	    BRB     37$							      ; 2083

		         7E	FE3C   CB  3C 004DE 36$:    MOVZWL  OUTSIZE, -(SP)					      ; 2090



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-9

; Digital Equipment Corporation

;

				FDB0   CB  9F 004E3 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 004E7 	    CALLS   #2, LNK$MAPOUT					      ;

		         01	       50  E8 004EC 	    BLBS    R0, 37$						      ;

					   04 004EF 	    RET     							      ;

		         50	       6B  D0 004F0 37$:    MOVL    PSECTADDR, R0					      ; 2092

		    FC   AB	  04   A0  D0 004F3 	    MOVL    4(R0), PSCTCONTR					      ;

		         50	  FC   AB  D0 004F8 38$:    MOVL    PSCTCONTR, R0					      ; 2093

				       03  12 004FC 	    BNEQ    39$							      ;

				     FE66  31 004FE 	    BRW     4$							      ;

	   55	         56	  08   A0  C1 00501 39$:    ADDL3   8(R0), PSECTBASE, PSECTOFFSET			      ; 2095

	   54	         55	  0C   A0  C1 00506 	    ADDL3   12(R0), PSECTOFFSET, PSECTEND			      ; 2096

				       52  D4 0050B 	    CLRL    R2							      ; 2097

				  0C   A0  D5 0050D 	    TSTL    12(R0)						      ;

				       04  13 00510 	    BEQL    40$							      ;

				       52  D6 00512 	    INCL    R2							      ;

				       54  D7 00514 	    DECL    PSECTEND						      ;

	   09	         00	  10   A0  8F 00516 40$:    CASEB   16(R0), #0, #9					      ; 2098

	 0020	       001A	     0014     0051B 41$:    .WORD   42$-41$,-						      ;

	 002C	       002C	     0026     00521		    43$-41$,-						      ;

	 002C	       002C	     002C     00527		    44$-41$,-						      ;

				     0032     0052D		    45$-41$,-						      ;

								    46$-41$,-						      ;

								    46$-41$,-						      ;

								    46$-41$,-						      ;

								    46$-41$,-						      ;

								    46$-41$,-						      ;

								    47$-41$						      ;

		         51	  D0   AA  9E 0052F 42$:    MOVAB   ALIGNBYTE, R1					      ; 1975

				       1C  11 00533 	    BRB     48$							      ; 2098

		         51	  D8   AA  9E 00535 43$:    MOVAB   ALIGNWORD, R1					      ; 1975

				       16  11 00539 	    BRB     48$							      ; 2098

		         51	  E0   AA  9E 0053B 44$:    MOVAB   ALIGNLONG, R1					      ; 1975

				       10  11 0053F 	    BRB     48$							      ; 2098

		         51	  E8   AA  9E 00541 45$:    MOVAB   ALIGNQUAD, R1					      ; 1975

				       0A  11 00545 	    BRB     48$							      ; 2098

		         51	  F0   AA  9E 00547 46$:    MOVAB   ALIGN2, R1						      ; 1975

				       04  11 0054B 	    BRB     48$							      ; 2098

		         51	  F8   AA  9E 0054D 47$:    MOVAB   ALIGNPAGE, R1					      ; 1975

		  FDAC   CB	       51  D0 00551 48$:    MOVL    R1, ALIGNMENT					      ; 2098

		    04   AB	  04   A0  D0 00556 	    MOVL    4(R0), PSCTOWNER					      ; 2107

	   0C	         68	       59  E0 0055B 	    BBS     R9, LNK$GL_CTLMSK, 49$				      ; 2108

		         53	       52  E9 0055F 	    BLBC    R2, 51$						      ; 2109

		         51	  04   AB  D0 00562 	    MOVL    PSCTOWNER, R1					      ; 2110

	   4A	    0F   A1	       04  E1 00566 	    BBC     #4, 15(R1), 51$					      ;

				       5A  DD 0056B 49$:    PUSHL   R10							      ; 1975

		         7E	  10   A0  9A 0056D 	    MOVZBL  16(R0), -(SP)					      ; 2113

				FDAC   CB  DD 00571 	    PUSHL   ALIGNMENT						      ;

				  0C   A0  DD 00575 	    PUSHL   12(R0)						      ;

				  0C   A0  DD 00578 	    PUSHL   12(R0)						      ;

				       54  DD 0057B 	    PUSHL   PSECTEND						      ;

				       55  DD 0057D 	    PUSHL   PSECTOFFSET						      ;

	   7E	    04   AB	       10  C1 0057F 	    ADDL3   #16, PSCTOWNER, -(SP)				      ; 2114

				       5A  DD 00584 	    PUSHL   R10							      ; 1975

				FE34   CB  9F 00586 	    PUSHAB  OUTDES						      ; 2113

				FE3C   CB  9F 0058A 	    PUSHAB  OUTSIZE						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 4-10

; Digital Equipment Corporation

;

				FCCC   CB  9F 0058E 	    PUSHAB  CONTRBSTR						      ;

		         67	       0C  FB 00592 	    CALLS   #12, SYS$FAO					      ;

		         53	       50  D0 00595 	    MOVL    R0, FAO_ERRCODE					      ;

		         09	       53  E8 00598 	    BLBS    FAO_ERRCODE, 50$					      ;

				       53  DD 0059B 	    PUSHL   FAO_ERRCODE						      ; 2118

		  FBAA   CF	       01  FB 0059D 	    CALLS   #1, FAOFAIL						      ;

				       11  11 005A2 	    BRB     51$							      ; 2113

		         7E	FE3C   CB  3C 005A4 50$:    MOVZWL  OUTSIZE, -(SP)					      ; 2119

				FDB0   CB  9F 005A9 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 005AD 	    CALLS   #2, LNK$MAPOUT					      ;

		         08	       50  E9 005B2 	    BLBC    R0, 52$						      ;

		    FC   AB	  FC   BB  D0 005B5 51$:    MOVL    @PSCTCONTR, PSCTCONTR				      ; 2122

				     FF3B  31 005BA 	    BRW     38$							      ; 2093

					   04 005BD 52$:    RET     							      ; 1975



; Routine Size:  683 bytes





;27100  2127	     

;00200  2129	GLOBAL ROUTINE LNK$MAPSYMS: NOVALUE =				! ROUTINE TO OUTPUT SYMBOL INFORMATION

;00300  2130	

;00400  2131	!++

;00500  2132	! FUNCTIONAL DESCRIPTION:

;00600  2133	!

;00700  2134	!	THIS ROUTINE OUTPUTS ANY SYNOPSIS OF GLOBAL SYMBOLS REQUESTED BY

;00800  2135	!	THE USER, INCLUDING THE CROSS REFERENCE SUMMARY.  IT THEN CLOSES

;00900  2136	!	THE MAP FILE AND SPOOLS IT (IF SO REQUESTED).

;01000  2137	!

;01100  2138	! FORMAL PARAMETERS:

;01200  2139	!

;01300  2140	!	NONE

;01400  2141	!

;01500  2142	! IMPLICIT INPUTS:

;01600  2143	!

;01700  2144	!	ALL GLOBAL SYMBOLS MUST HAVE BEEN PREVIOUSLY RELOCATED AND SENT

;01800  2145	!	TO THE CROSS REFERENCE PROGRAM FOR STORAGE.

;01900  2146	!

;02000  2147	! IMPLICIT OUTPUTS:

;02100  2148	!

;02200  2149	!	THIS ROUTINE OUTPUTS THE GLOBAL SYMBOL SYNOPSES, BASED ON THE USER

;02300  2150	!	SPECIFIED MAP QUALIFIERS.  THESE INCLUDE THE GLOBAL SYNOPSIS ORDERED

;02400  2151	!	BY NAME AND BY VALUE AND THE CROSS REFERENCE SUMMARY.

;02500  2152	!

;02600  2153	! ROUTINE VALUE:

;02700  2154	!

;02800  2155	!	NOVALUE

;02900  2156	!

;03000  2157	! COMPLETION CODES:

;03100  2158	!

;03200  2159	!	NONE

;03300  2160	!

;03400  2161	! SIDE EFFECTS:

;03500  2162	!

;03600  2163	!	NONE

;03700  2164	!



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 5

; Digital Equipment Corporation

;

;03800  2165	!--

;03900  2166	!

;04000  2167	BEGIN

;04100  2168	!

;04200  2169	LOCAL

;04300  2170		ERRORCODE,				! LOCAL ERROR CODE

;04400  2171		LINESPAGE1,				! NUMBER OF LINES ON FIRST PAGE

;04500  2172		CREFMODE;				! NUMBER OF SYMBOLS ACROSS PAGE IS DEFINED

;04600  2173							! BY THE MODE

;04700  2174	!

;04800  2175	IF NOT .LNK$GL_CTLMSK<LNK$S_BRIEF,1,0>		! MORE THAN A BRIEF MAP?

;04900  2176	THEN BEGIN					! YES, THEN PROCEED, ELSE SKIP

;05000  2177		SUBHDLINE = 0;				! NO SUB HEADER FOR NEW PAGE YET

;05100  2178		IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>	! IF A FULL MAP

;05200  2179		THEN (IF NOT NEWPAGE() THEN RETURN)	! GIVE UP IF FAIL TO GET NEW PAGE

;05300  2180		ELSE (IF NOT NEWLINE() THEN RETURN);	! OR NEW LINE IF NOT FULL MAP

;05400  2181		IF .LNK$GL_CTLMSK<LNK$S_CROS,1,0>	! PICK THE SYMBOL TABLE HEADING

;05500  2182		THEN BEGIN

;05600  2183			IF NOT MAPBOX(SYMBOLCREF) THEN RETURN;	! FOR CROSS REFERENCED OR NOT

;05700  2184			IF NOT MAPSUBHDR(CRFSUBHDR) THEN RETURN;

;05800  2185			CREFMODE = CRF$K_DEFS_REFS;		! FULL CROSS REFERENCE

;05900  2186		     END

;06000  2187		ELSE BEGIN

;06100  2188			IF NOT MAPBOX(SYMBYNAME) THEN RETURN;	! GIVE UP IF FAIL TO OUTPUT THE BOXED HEADING

;06200  2189			IF NOT MAPSUBHDR(SYMSUBHDR) THEN RETURN;

;06300  2190			CREFMODE = CRF$K_VALUES;		! JUST WANT THE KEYS AND VALUES

;06400  2191		     END;

;06500  2192		LINESPAGE1 = .LNK$GB_LINESPP - .LINECNT;		! SET NUMBER OF LINES ON FIRST PAGE

;06600  2193		IF NOT (ERRORCODE=CRF$OUT(LNK$AL_SYTBLFMT,LEN$C_MAPLINE, ! CALL CRF TO DO THE WORK

;06700  2194			.LINESPAGE1,.LNK$GB_LINESPP-3,.CREFMODE,CRF$K_SAVE))

;06800  2195		THEN

;06900  2196			LNK$ERRMSG((.ERRORCODE AND NOT 7), SEV$C_DIAG);

;07000  2197	!

;07100  2198	!	NOW FOR SYMBOLS BY VALUE IF REQUESTED

;07200  2199	!

;07300  2200		IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>	! WANT A LONG MAP?

;07400  2201		THEN BEGIN					! YES, ADD THE VALUE CROSS REFERENCE

;07500  2202			SUBHDLINE = 0;				! NO SUBHEADING YET

;07600  2203			IF NOT NEWPAGE() THEN RETURN;		! GIVE UP IF NO NEW PAGE

;07700  2204			IF NOT MAPBOX(SYMBYVALUE) THEN RETURN;	! GIVE UP ON FAILURE TO OUTPUT THE BOX HEADING

;07800  2205			IF NOT MAPSUBHDR(VALSUBHDR) THEN RETURN;! OR THE TABLE HEADING

;07900  2206			LINESPAGE1 = .LNK$GB_LINESPP - .LINECNT;	! SET NUMBER OF LINES ON FIRST PAGE

;08000  2207			IF NOT (ERRORCODE=CRF$OUT(LNK$AL_VALCTLTB,	! AND CALL CRF TO DO

;08100  2208				LEN$C_MAPLINE,.LINESPAGE1,	! ITS THING

;08200  2209				.LNK$GB_LINESPP-3,CRF$K_VALS_REFS,	! AND SAVE THE TABLE

;08300  2210				CRF$K_SAVE))

;08400  2211			THEN

;08500  2212				LNK$ERRMSG((.ERRORCODE AND NOT 7), SEV$C_DIAG);

;08600  2213		     END;

;08700  2214	     IF NOT (ERRORCODE=$FAO(ABBRVTBL_STR,OUTSIZE,OUTDES,CHARDEF_STR,UNDEF_STR))

;08800  2215	     THEN

;08900  2216		  FAOFAIL(.ERRORCODE)

;09000  2217	     ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)

;09100  2218		  THEN RETURN;

;09200  2219	     IF NOT (ERRORCODE=$FAO(ABBRVTBL2_STR,OUTSIZE,OUTDES,UNIV_STR,RELOC_STR,WEAK_STR))



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 5-1

; Digital Equipment Corporation

;

;09300  2220	     THEN

;09400  2221		  FAOFAIL(.ERRORCODE)

;09500  2222	     ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)

;09600  2223		  THEN RETURN;

;09700  2224	     END;

;09800  2225	RETURN;

;09900  2226	END;











					 0FFC 005BE 	    .ENTRY  LNK$MAPSYMS, Save R2,R3,R4,R5,R6,R7,R8,R9,R10,R11	      ; 2129

		         54 00000000G  9F  9E 005C0 	    MOVAB   @#SYS$FAO, R4					      ;

		         55	       00  D0 005C7 	    MOVL    #SEV$C_DIAG, R5					      ;

		         56 00000000G  00  9E 005CA 	    MOVAB   CRF$OUT, R6						      ;

		         57	       00  D0 005D1 	    MOVL    #CRF$K_SAVE, R7					      ;

		         58	       00  D0 005D4 	    MOVL    #LNK$S_LONG, R8					      ;

		         59	0000G  CF  9E 005D7 	    MOVAB   LNK$GL_CTLMSK, R9					      ;

		         5A	0000'  CF  9E 005DC 	    MOVAB   LNK$GB_LINESPP, R10					      ;

		         5B	0000'  CF  9E 005E1 	    MOVAB   OUTSIZE, R11					      ;

	   01	         69	       00  E1 005E6 	    BBC     #LNK$S_BRIEF, LNK$GL_CTLMSK, 1$			      ; 2175

					   04 005EA 	    RET     							      ;

				  30   AB  D4 005EB 1$:     CLRL    SUBHDLINE						      ; 2177

	   07	         69	       58  E1 005EE 	    BBC     R8, LNK$GL_CTLMSK, 2$				      ; 2178

		  0000V  CF	       00  FB 005F2 	    CALLS   #0, NEWPAGE						      ; 2179

				       05  11 005F7 	    BRB     3$							      ;

		  0000V  CF	       00  FB 005F9 2$:     CALLS   #0, NEWLINE						      ; 2180

		         76	       50  E9 005FE 3$:     BLBC    R0, 7$						      ;

	   1C	         69	       00  E1 00601 	    BBC     #LNK$S_CROS, LNK$GL_CTLMSK, 4$			      ; 2181

				0000'  CF  9F 00605 	    PUSHAB  SYMBOLCREF						      ; 2129

		  0000V  CF	       01  FB 00609 	    CALLS   #1, MAPBOX						      ; 2183

		         7D	       50  E9 0060E 	    BLBC    R0, 8$						      ;

				  54   AB  9F 00611 	    PUSHAB  CRFSUBHDR						      ; 2184

		  0000V  CF	       01  FB 00614 	    CALLS   #1, MAPSUBHDR					      ;

		         72	       50  E9 00619 	    BLBC    R0, 8$						      ;

		         50	       00  9A 0061C 	    MOVZBL  #CRF$K_DEFS_REFS, CREFMODE				      ; 2185

				       1A  11 0061F 	    BRB     5$							      ; 2181

				0000'  CF  9F 00621 4$:     PUSHAB  SYMBYNAME						      ; 2129

		  0000V  CF	       01  FB 00625 	    CALLS   #1, MAPBOX						      ; 2188

		         61	       50  E9 0062A 	    BLBC    R0, 8$						      ;

				  64   AB  9F 0062D 	    PUSHAB  SYMSUBHDR						      ; 2189

		  0000V  CF	       01  FB 00630 	    CALLS   #1, MAPSUBHDR					      ;

		         56	       50  E9 00635 	    BLBC    R0, 8$						      ;

		         50	       00  9A 00638 	    MOVZBL  #CRF$K_VALUES, CREFMODE				      ; 2190

		         53	       6A  9A 0063B 5$:     MOVZBL  LNK$GB_LINESPP, LINESPAGE1				      ; 2192

		         53	  28   AB  C2 0063E 	    SUBL2   LINECNT, LINESPAGE1					      ;

		         7E	       57  9A 00642 	    MOVZBL  R7, -(SP)						      ; 2193

				       50  DD 00645 	    PUSHL   CREFMODE						      ;

		         7E	       6A  9A 00647 	    MOVZBL  LNK$GB_LINESPP, -(SP)				      ; 2194

		         6E	       03  C2 0064A 	    SUBL2   #3, (SP)						      ;

				       53  DD 0064D 	    PUSHL   LINESPAGE1						      ; 2193

		         7E	  84   8F  9A 0064F 	    MOVZBL  #132, -(SP)						      ;

				  01   AA  9F 00653 	    PUSHAB  LNK$AL_SYTBLFMT					      ;

		         66	       06  FB 00656 	    CALLS   #6, CRF$OUT						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 5-2

; Digital Equipment Corporation

;

		         52	       50  D0 00659 	    MOVL    R0, ERRORCODE					      ;

		         0C	       52  E8 0065C 	    BLBS    ERRORCODE, 6$					      ;

		         7E	       55  9A 0065F 	    MOVZBL  R5, -(SP)						      ; 2196

	   7E	         52	       07  CB 00662 	    BICL3   #7, ERRORCODE, -(SP)				      ;

		  0000G  CF	       02  FB 00666 	    CALLS   #2, LNK$ERRMSG					      ;

	   53	         69	       58  E1 0066B 6$:     BBC     R8, LNK$GL_CTLMSK, 9$				      ; 2200

				  30   AB  D4 0066F 	    CLRL    SUBHDLINE						      ; 2202

		  0000V  CF	       00  FB 00672 	    CALLS   #0, NEWPAGE						      ; 2203

		         77	       50  E9 00677 7$:     BLBC    R0, 11$						      ;

				0000'  CF  9F 0067A 	    PUSHAB  SYMBYVALUE						      ; 2129

		  0000V  CF	       01  FB 0067E 	    CALLS   #1, MAPBOX						      ; 2204

		         6B	       50  E9 00683 	    BLBC    R0, 11$						      ;

				  74   AB  9F 00686 	    PUSHAB  VALSUBHDR						      ; 2205

		  0000V  CF	       01  FB 00689 	    CALLS   #1, MAPSUBHDR					      ;

		         60	       50  E9 0068E 8$:     BLBC    R0, 11$						      ;

		         53	       6A  9A 00691 	    MOVZBL  LNK$GB_LINESPP, LINESPAGE1				      ; 2206

		         53	  28   AB  C2 00694 	    SUBL2   LINECNT, LINESPAGE1					      ;

		         7E	       57  9A 00698 	    MOVZBL  R7, -(SP)						      ; 2207

		         7E	       00  9A 0069B 	    MOVZBL  #CRF$K_VALS_REFS, -(SP)				      ;

		         7E	       6A  9A 0069E 	    MOVZBL  LNK$GB_LINESPP, -(SP)				      ; 2209

		         6E	       03  C2 006A1 	    SUBL2   #3, (SP)						      ;

				       53  DD 006A4 	    PUSHL   LINESPAGE1						      ; 2207

		         7E	  84   8F  9A 006A6 	    MOVZBL  #132, -(SP)						      ;

				  2D   AA  9F 006AA 	    PUSHAB  LNK$AL_VALCTLTB					      ;

		         66	       06  FB 006AD 	    CALLS   #6, CRF$OUT						      ;

		         52	       50  D0 006B0 	    MOVL    R0, ERRORCODE					      ;

		         0C	       52  E8 006B3 	    BLBS    ERRORCODE, 9$					      ;

		         7E	       55  9A 006B6 	    MOVZBL  R5, -(SP)						      ; 2212

	   7E	         52	       07  CB 006B9 	    BICL3   #7, ERRORCODE, -(SP)				      ;

		  0000G  CF	       02  FB 006BD 	    CALLS   #2, LNK$ERRMSG					      ;

				0000'  CF  9F 006C2 9$:     PUSHAB  UNDEF_STR						      ; 2129

				0000'  CF  9F 006C6 	    PUSHAB  CHARDEF_STR						      ;

				  F8   AB  9F 006CA 	    PUSHAB  OUTDES						      ; 2214

				       5B  DD 006CD 	    PUSHL   R11							      ;

				FEC8   CB  9F 006CF 	    PUSHAB  ABBRVTBL_STR					      ;

		         64	       05  FB 006D3 	    CALLS   #5, SYS$FAO						      ;

		         52	       50  D0 006D6 	    MOVL    R0, ERRORCODE					      ;

		         09	       52  E8 006D9 	    BLBS    ERRORCODE, 10$					      ;

				       52  DD 006DC 	    PUSHL   ERRORCODE						      ; 2216

		  FA69   CF	       01  FB 006DE 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 006E3 	    BRB     12$							      ; 2214

		         7E	       6B  3C 006E5 10$:    MOVZWL  OUTSIZE, -(SP)					      ; 2217

				FF74   CB  9F 006E8 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 006EC 	    CALLS   #2, LNK$MAPOUT					      ;

		         32	       50  E9 006F1 11$:    BLBC    R0, 14$						      ;

				0000'  CF  9F 006F4 12$:    PUSHAB  WEAK_STR						      ; 2129

				0000'  CF  9F 006F8 	    PUSHAB  RELOC_STR						      ;

				0000'  CF  9F 006FC 	    PUSHAB  UNIV_STR						      ;

				  F8   AB  9F 00700 	    PUSHAB  OUTDES						      ; 2219

				       5B  DD 00703 	    PUSHL   R11							      ;

				FED0   CB  9F 00705 	    PUSHAB  ABBRVTBL2_STR					      ;

		         64	       06  FB 00709 	    CALLS   #6, SYS$FAO						      ;

		         52	       50  D0 0070C 	    MOVL    R0, ERRORCODE					      ;

		         08	       52  E8 0070F 	    BLBS    ERRORCODE, 13$					      ;

				       52  DD 00712 	    PUSHL   ERRORCODE						      ; 2221



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 5-3

; Digital Equipment Corporation

;

		  FA33   CF	       01  FB 00714 	    CALLS   #1, FAOFAIL						      ;

					   04 00719 	    RET     							      ; 2219

		         7E	       6B  3C 0071A 13$:    MOVZWL  OUTSIZE, -(SP)					      ; 2222

				FF74   CB  9F 0071D 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00721 	    CALLS   #2, LNK$MAPOUT					      ;

					   04 00726 14$:    RET     							      ; 2129



; Routine Size:  361 bytes





;10000  2227	     

;00200  2229	GLOBAL ROUTINE LNK$MAPISCTS: NOVALUE =				! ROUTINE TO OUTPUT IMAGE SECTION INFORMATION

;00300  2230	BEGIN

;00400  2231	!++

;00500  2232	! FUNCTIONAL DESCRIPTION:

;00600  2233	!

;00700  2234	!	THIS ROUTINE OUTPUTS THE IMAGE SECTION SYNOPSIS.

;00800  2235	!

;00900  2236	! FORMAL PARAMETERS:

;01000  2237	!

;01100  2238	!	NONE

;01200  2239	!

;01300  2240	! IMPLICIT INPUTS:

;01400  2241	!

;01500  2242	!	THE IMAGE SECTION DESCRIPTOR LIST - HEAD IS LNK$GL_ISDLST

;01600  2243	!	AND THE IMAGE FILE DESCRIPTOR BLOCK.

;01700  2244	!

;01800  2245	! IMPLICIT OUTPUTS:

;01900  2246	!

;02000  2247	!	THIS ROUTINE OUTPUTS THE IMAGE SECTION SYNOPSIS.

;02100  2248	!

;02200  2249	! ROUTINE VALUE:

;02300  2250	!

;02400  2251	!	NOVALUE

;02500  2252	!

;02600  2253	! COMPLETION CODES:

;02700  2254	!

;02800  2255	!	NONE

;02900  2256	!

;03000  2257	! SIDE EFFECTS:

;03100  2258	!

;03200  2259	!	NONE

;03300  2260	!

;03400  2261	!--

;03500  2262	!

;03600  2263	LOCAL

;03700  2264		FAO_ERRCODE,					! FAO ERROR CODE

;03800  2265		MATCH_STR,						! POINTER TO MATCH CONTROL STRING

;03900  2266		FAO_CTL_STR,						! POINTER TO FAO CONTROL STRING

;04000  2267		NEXTISD : REF BLOCK[,BYTE],				! ISECT DESCRIPTOR BLOCK

;04100  2268		CLUSTER,						! ADDRESS OF CLUSTER NAME STRING

;04200  2269		DISKVBN,						! DISK VBN OF ISECTION

;04300  2270		PROTECT,						! ADDRESS OF PROTECTION STRING

;04400  2271		OTHERATRIBS1,						! FOR ADDITIONAL ATTRIBUTES

;04500  2272		OTHERATRIBS2,



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6

; Digital Equipment Corporation

;

;04600  2273		BASEVA;							! BASE VIRTUAL PAGE NUMBER

;04700  2274	!

;04800  2275	BIND IMGAUXFNB = LNK$GL_IMGFIL[FDB$AL_AUXFNB]			! REFERENCE THE IMAGE FILE'S AUXILIARY

;04900  2276					: BLOCK[NAM$C_BLN,BYTE];	! FILENAME BLOCK

;05000  2277	!

;05100  2278	! RE-SET UP THE DESCRIPTOR OF THE IMAGE FILE (IF ANY), BECAUSE

;05200  2279	!	IT IS PROBABLY CREATED NOW.

;05300  2280	!

;05400  2281	IF .LNK$GL_IMGFIL NEQ 0						! PROVIDED AN IMAGE WAS SPECIFIED

;05500  2282	AND .LNK$GL_CTLMSK<LNK$S_IMAGE,1,0>				! AND SUCCESSFULLY CREATED

;05600  2283	THEN BEGIN

;05700  2284		IMAGEFILENAME[0] = .IMGAUXFNB[NAM$B_RSL];		! SET LENGTH OF RESULTANT FILE NAME

;05800  2285		IMAGEFILENAME[1] = .IMGAUXFNB[NAM$L_RSA];		! AND POINTER TO IT

;05900  2286	     END;

;06000  2287	!

;06100  2288	IF NOT .LNK$GL_CTLMSK<LNK$S_LONG,1,0>				! IF A LONG MAP

;06200  2289	OR .LNK$GW_NISECTS EQL 0					! AND SOME IMAGE SECTIONS

;06300  2290	THEN RETURN;							! NO, RETURN

;06400  2291	SUBHDLINE = 0;							! RESET HEADER LINE

;06500  2292	IF NOT NEWPAGE() THEN RETURN;					! GIVE UP IF FAIL TO GET NEW PAGE

;06600  2293	IF NOT MAPBOX(IMAGESECTIONS) THEN RETURN;			! AND IF THE BOX HEADING FAILS

;06700  2294	IF NOT MAPSUBHDR(ISDSUBHDR,ISDTXT) THEN RETURN;		! DITTO FOR ISECTIION SUBHEADER

;06800  2295	LNK$GL_CURCLU = LNK$GL_CLULST;					! START AT TOP OF CLUSTER LIST

;06900  2296	WHILE ( LNK$GL_CURCLU = .LNK$GL_CURCLU[CLU$L_NXTCLU]) NEQ 0 DO	! GET NEXT CLUSTER DESCRIPTOR

;07000  2297	BEGIN

;07100  2298	IF NOT NEWLINE() THEN RETURN;					! OUTPUT A BLANK LINE

;07200  2299	CLUSTER = LNK$GL_CURCLU[CLU$B_NAMLNG];				! SET ITS NAME POINTER

;07300  2300	NEXTISD = LNK$GL_CURCLU[CLU$L_FSTISD];				! GO DOWN LIST OF DESCRIPTORS

;07400  2301	WHILE (NEXTISD = .NEXTISD[ISD$L_NXTISD]) NEQ 0			! TILL ZERO TERMINATED END

;07500  2302	DO BEGIN

;07600  2303		BIND ISECTDESC = NEXTISD[ISD$AL_HDRISD] : BLOCK[,BYTE];	! POINT TO THE HEADER PART

;07700  2304		FAO_CTL_STR = CH$PTR(ISECT_CNTRL_STR, 0);		! ASSUME ISECT IS NOT GLOBAL

;07800  2305		BASEVA = .ISECTDESC[ISD$V_VPG] ^9;			! GET BASE VIRTUAL ADDRESS

;07900  2306		IF .ISECTDESC[ISD$V_DZRO]				! IF A DEMAND ZERO IMAGE SECTION

;08000  2307		THEN BEGIN						! THERE IS NO DISK SPACE ALLOCATED

;08100  2308			DISKVBN = 0;					! SO ZERO THE VBN

;08200  2309			OTHERATRIBS1 = DEMANDZERO;			! AND SET THE DESCRIPTIONSTRING

;08300  2310		     END

;08400  2311		ELSE BEGIN

;08500  2312			DISKVBN = .ISECTDESC[ISD$L_VBN];		! GET BASE VBN ON DISK

;08600  2313			OTHERATRIBS1 = BLANKS;

;08700  2314		     END;

;08800  2315		IF .ISECTDESC[ISD$V_WRT]				! IF THE SECTION IS WRITABLE

;08900  2316		THEN PROTECT = READWRITE				! THEN SAY SO

;09000  2317		ELSE PROTECT = READONLY;				! OTHERWISE TELL THEM READ ONLY

;09100  2318		IF .ISECTDESC[ISD$V_CRF]				! NOW TELL THEM IF IT IS COPY ON REFERENCE

;09200  2319		THEN OTHERATRIBS2 = COPYONREF				! IF IT IS

;09300  2320		ELSE OTHERATRIBS2 = BLANKS;				! ELSE SAY NOTHING

;09400  2321		IF .ISECTDESC[ISD$V_GBL]

;09500  2322		THEN

;09600  2323			BEGIN

;09700  2324			FAO_CTL_STR = CH$PTR(GBLIS_CNTRL_STR, 0);	! USE GLOBAL ISECT FAO CONTROL STRING

;09800  2325			MATCH_STR =

;09900  2326				(SELECTONE .ISECTDESC[ISD$V_MATCHCTL] OF

;10000  2327					SET



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-1

; Digital Equipment Corporation

;

;10100  2328					[ISD$K_MATALL]:		ALLTIME; ! SELECT MATCH = ALWAYS

;10200  2329					[ISD$K_MATNEV]:		NEVER;	! SELECT MATCH = NEVER

;10300  2330					[ISD$K_MATEQU]:		EQUAL;	! SELECT MATCH = EQUAL

;10400  2331					[ISD$K_MATLEQ]:		LSSEQUAL; ! SELECT MATCH = LESS/EQUAL

;10500  2332					[OTHERWISE]:		BLANKS;	! NO MATCH SET

;10600  2333					TES);

;10700  2334			END;

;10800  2335		BEGIN

;10900  2336		BIND

;11000  2337			GSMAJID = .(ISECTDESC[ISD$L_IDENT])<24,8,0>,	! GLOB SEC MAJOR ID

;11100  2338			GSMINID = .(ISECTDESC[ISD$L_IDENT])<0,24,0>;	! GLOB SEC MINOR ID

;11200  2339		IF NOT (FAO_ERRCODE=SYS$FAO(.FAO_CTL_STR,OUTSIZE,OUTDES,.CLUSTER, ! GO FORMAT THE LINE

;11300  2340				.ISECTDESC[ISD$B_TYPE],.ISECTDESC[ISD$W_PAGCNT],

;11400  2341				.BASEVA,.DISKVBN,.ISECTDESC[ISD$B_PFC],

;11500  2342				.PROTECT,.OTHERATRIBS1,.OTHERATRIBS2,	! AND CHECK FOR

;11600  2343				ISECTDESC[ISD$T_GBLNAM],.MATCH_STR,GSMAJID,GSMINID)) ! AN ERROR

;11700  2344		THEN FAOFAIL(.FAO_ERRCODE)				! AND REPORT IT

;11800  2345		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT THE LINE

;11900  2346			THEN RETURN;					! AND GIVE UP ON FAILURE

;12000  2347		END;

;12100  2348		CLUSTER = BLANKS;

;12200  2349	   END;

;12300  2350	END;

;12400  2351	RETURN;								! AND ALL DONE

;12500  2352	END;











					 0FFC 00727 	    .ENTRY  LNK$MAPISCTS, Save R2,R3,R4,R5,R6,R7,R8,R9,R10,R11	      ; 2229

		         5E	       04  C2 00729 	    SUBL2   #4, SP						      ;

	   50	  0000G  CF	       13  C1 0072C 	    ADDL3   #19, LNK$GL_IMGFIL, R0				      ; 2275

				0000G  CF  D5 00732 	    TSTL    LNK$GL_IMGFIL					      ; 2281

				       12  13 00736 	    BEQL    1$							      ;

	   0C	  0000G  CF	       00  E1 00738 	    BBC     #LNK$S_IMAGE, LNK$GL_CTLMSK, 1$			      ; 2282

		  0000'  CF	  03   A0  9A 0073E 	    MOVZBL  3(R0), IMAGEFILENAME				      ; 2284

		  0000'  CF	  04   A0  D0 00744 	    MOVL    4(R0), IMAGEFILENAME+4				      ; 2285

	   01	  0000G  CF	       00  E0 0074A 1$:     BBS     #LNK$S_LONG, LNK$GL_CTLMSK, 2$			      ; 2288

					   04 00750 	    RET     							      ;

				0000G  CF  B5 00751 2$:     TSTW    LNK$GW_NISECTS					      ; 2289

				       36  13 00755 	    BEQL    4$							      ;

				0000'  CF  D4 00757 	    CLRL    SUBHDLINE						      ; 2291

		  0000V  CF	       00  FB 0075B 	    CALLS   #0, NEWPAGE						      ; 2292

		         32	       50  E9 00760 	    BLBC    R0, 6$						      ;

				0000'  CF  9F 00763 	    PUSHAB  IMAGESECTIONS					      ; 2229

		  0000V  CF	       01  FB 00767 	    CALLS   #1, MAPBOX						      ; 2293

		         26	       50  E9 0076C 	    BLBC    R0, 6$						      ;

				0000'  CF  9F 0076F 	    PUSHAB  ISDTXT						      ; 2229

				0000'  CF  9F 00773 	    PUSHAB  ISDSUBHDR						      ; 2294

		  0000V  CF	       02  FB 00777 	    CALLS   #2, MAPSUBHDR					      ;

		         16	       50  E9 0077C 	    BLBC    R0, 6$						      ;

		  0000G  CF	0000G  CF  9E 0077F 	    MOVAB   LNK$GL_CLULST, LNK$GL_CURCLU			      ; 2295

		  0000G  CF	0000G  DF  D0 00786 3$:     MOVL    @LNK$GL_CURCLU, LNK$GL_CURCLU			      ; 2296

				       01  12 0078D 4$:     BNEQ    5$							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-2

; Digital Equipment Corporation

;

					   04 0078F 	    RET     							      ;

		  0000V  CF	       00  FB 00790 5$:     CALLS   #0, NEWLINE						      ; 2298

		         01	       50  E8 00795 6$:     BLBS    R0, 7$						      ;

					   04 00798 	    RET     							      ;

	   57	  0000G  CF	       27  C1 00799 7$:     ADDL3   #39, LNK$GL_CURCLU, CLUSTER				      ; 2299

	   54	  0000G  CF	       14  C1 0079F 	    ADDL3   #20, LNK$GL_CURCLU, NEXTISD				      ; 2300

		         54	       64  D0 007A5 8$:     MOVL    (NEXTISD), NEXTISD					      ; 2301

				       DC  13 007A8 	    BEQL    3$							      ;

	   50	         54	       0C  C1 007AA 	    ADDL3   #12, NEXTISD, R0					      ; 2303

		         56	0000'  CF  9E 007AE 	    MOVAB   ISECT_CNTRL_STR, FAO_CTL_STR			      ; 2304

      04   A0	         17	       00  EF 007B3 	    EXTZV   #0, #23, 4(R0), R1					      ; 2305

				       51     007B8									      ;

	   6E	         51	       09  78 007B9 	    ASHL    #9, R1, BASEVA					      ;

		         51	  08   A0  9E 007BD 	    MOVAB   8(R0), R1						      ; 2306

	   09	         61	       02  E1 007C1 	    BBC     #2, (R1), 9$					      ;

				       58  D4 007C5 	    CLRL    DISKVBN						      ; 2308

		         5A	0000'  CF  9E 007C7 	    MOVAB   DEMANDZERO, OTHERATRIBS1				      ; 2229

				       09  11 007CC 	    BRB     10$							      ; 2306

		         58	  0C   A0  D0 007CE 9$:     MOVL    12(R0), DISKVBN					      ; 2312

		         5A	0000'  CF  9E 007D2 	    MOVAB   BLANKS, OTHERATRIBS1				      ; 2229

	   07	         61	       03  E1 007D7 10$:    BBC     #3, (R1), 11$					      ; 2315

		         59	0000'  CF  9E 007DB 	    MOVAB   READWRITE, PROTECT					      ; 2229

				       05  11 007E0 	    BRB     12$							      ; 2315

		         59	0000'  CF  9E 007E2 11$:    MOVAB   READONLY, PROTECT					      ; 2229

	   07	         61	       01  E1 007E7 12$:    BBC     #1, (R1), 13$					      ; 2318

		         5B	0000'  CF  9E 007EB 	    MOVAB   COPYONREF, OTHERATRIBS2				      ; 2229

				       05  11 007F0 	    BRB     14$							      ; 2318

		         5B	0000'  CF  9E 007F2 13$:    MOVAB   BLANKS, OTHERATRIBS2				      ; 2229

		         41	       61  E9 007F7 14$:    BLBC    (R1), 19$						      ; 2321

		         56	0000'  CF  9E 007FA 	    MOVAB   GBLIS_CNTRL_STR, FAO_CTL_STR			      ; 2324

		    70   8F	       61  93 007FF 	    BITB    (R1), #112						      ; 2326

				       07  12 00803 	    BNEQ    15$							      ;

		         53	0000'  CF  9E 00805 	    MOVAB   ALLTIME, MATCH_STR					      ; 2229

				       2F  11 0080A 	    BRB     19$							      ; 2326

	   61	         03	       04  ED 0080C 15$:    CMPZV   #4, #3, (R1), #3					      ;

				       03     00810									      ;

				       07  12 00811 	    BNEQ    16$							      ;

		         53	0000'  CF  9E 00813 	    MOVAB   NEVER, MATCH_STR					      ; 2229

				       21  11 00818 	    BRB     19$							      ; 2326

	   61	         03	       04  ED 0081A 16$:    CMPZV   #4, #3, (R1), #1					      ;

				       01     0081E									      ;

				       07  12 0081F 	    BNEQ    17$							      ;

		         53	0000'  CF  9E 00821 	    MOVAB   EQUAL, MATCH_STR					      ; 2229

				       13  11 00826 	    BRB     19$							      ; 2326

	   61	         03	       04  ED 00828 17$:    CMPZV   #4, #3, (R1), #2					      ;

				       02     0082C									      ;

				       07  12 0082D 	    BNEQ    18$							      ;

		         53	0000'  CF  9E 0082F 	    MOVAB   LSSEQUAL, MATCH_STR					      ; 2229

				       05  11 00834 	    BRB     19$							      ; 2326

		         53	0000'  CF  9E 00836 18$:    MOVAB   BLANKS, MATCH_STR					      ; 2229

		         52	  13   A0  9A 0083B 19$:    MOVZBL  19(R0), R2						      ; 2335

      10   A0	         18	       00  EF 0083F 	    EXTZV   #0, #24, 16(R0), R1					      ;

				       51     00844									      ;

				       51  DD 00845 	    PUSHL   R1							      ; 2339

				       52  DD 00847 	    PUSHL   R2							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-3

; Digital Equipment Corporation

;

				       53  DD 00849 	    PUSHL   MATCH_STR						      ;

				  14   A0  9F 0084B 	    PUSHAB  20(R0)						      ; 2343

				0E00   8F  BB 0084E 	    PUSHR   #^M<R9,R10,R11>					      ; 2339

		         7E	  07   A0  9A 00852 	    MOVZBL  7(R0), -(SP)					      ;

				       58  DD 00856 	    PUSHL   DISKVBN						      ;

				  24   AE  DD 00858 	    PUSHL   BASEVA						      ;

		         7E	  02   A0  3C 0085B 	    MOVZWL  2(R0), -(SP)					      ;

		         7E	  0B   A0  9A 0085F 	    MOVZBL  11(R0), -(SP)					      ;

				       57  DD 00863 	    PUSHL   CLUSTER						      ;

				0000'  CF  9F 00865 	    PUSHAB  OUTDES						      ;

				0000'  CF  9F 00869 	    PUSHAB  OUTSIZE						      ;

				       56  DD 0086D 	    PUSHL   FAO_CTL_STR						      ;

	      00000000G  00	       10  FB 0086F 	    CALLS   #16, SYS$FAO					      ;

		         55	       50  D0 00876 	    MOVL    R0, FAO_ERRCODE					      ;

		         09	       55  E8 00879 	    BLBS    FAO_ERRCODE, 20$					      ;

				       55  DD 0087C 	    PUSHL   FAO_ERRCODE						      ; 2344

		  F8C9   CF	       01  FB 0087E 	    CALLS   #1, FAOFAIL						      ;

				       11  11 00883 	    BRB     21$							      ; 2339

		         7E	0000'  CF  3C 00885 20$:    MOVZWL  OUTSIZE, -(SP)					      ; 2345

				0000'  CF  9F 0088A 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 0088E 	    CALLS   #2, LNK$MAPOUT					      ;

		         08	       50  E9 00893 	    BLBC    R0, 22$						      ;

		         57	0000'  CF  9E 00896 21$:    MOVAB   BLANKS, CLUSTER					      ; 2229

				     FF07  31 0089B 	    BRW     8$							      ; 2301

					   04 0089E 22$:    RET     							      ; 2229



; Routine Size:  376 bytes





;12600  2353	GLOBAL ROUTINE LNK$MAPSTATS : NOVALUE =			! RUN TIME STATISTICS

;12700  2354	BEGIN

;12800  2355	!++

;12900  2356	! FUNCTIONAL DESCRIPTION:

;13000  2357	!

;13100  2358	!	THIS ROUTINE GATHERS SOME STATISTICS OF THE LINK RUN

;13200  2359	!	AND OUTPUTS THEM TO THE MAP.

;13300  2360	!

;13400  2361	! FORMAL PARAMETERS:

;13500  2362	!

;13600  2363	!	NONE

;13700  2364	!

;13800  2365	! IMPLICIT INPUTS:

;13900  2366	!

;14000  2367	!	THE MAP FILE MUST HAVE BEEN PREVIOUSLY OPENED.

;14100  2368	!	DATA GATHERED DURING THE LINK

;14200  2369	!

;14300  2370	! IMPLICIT OUTPUTS:

;14400  2371	!

;14500  2372	!	EACH LINE IS OUTPUT TO THE MAP ON A NEW PAGE IF NEED BE.

;14600  2373	!	THE LINE COUNTER IS INCREMENTED.

;14700  2374	!

;14800  2375	! ROUTINE VALUE:

;14900  2376	!

;15000  2377	!	NOVALUE

;15100  2378	!



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-4

; Digital Equipment Corporation

;

;15200  2379	! COMPLETION CODES:

;15300  2380	!

;15400  2381	!	NONE

;15500  2382	!

;15600  2383	! SIDE EFFECTS:

;15700  2384	!

;15800  2385	!	NONE

;15900  2386	!

;16000  2387	!--

;16100  2388	!

;16200  2389	EXTERNAL ROUTINE

;16300  2390		SYS$GETTIM : ADDRESSING_MODE(GENERAL),			! GETS CURRENT TIME FROM SYSTEM

;16400  2391		LNK$STATSOUT;						! DOES ALL THE WORK

;16500  2392	EXTERNAL

;16600  2393		LNK$GL_MATCHID,						! PNTR TO GLOB SEC ID

;16700  2394		LNK$GB_MATCHCTL: BLOCK[,BYTE];				! GLOB SEC MATCH CTL FLG

;16800  2395	GLOBAL

;16900  2396		LNK$GQ_ENDTIM : VECTOR[2];				! END TIME IS THE TIME WE GET TO HERE

;17000  2397	!

;17100  2398	LOCAL

;17200  2399			FAO_ERRCODE,					! FAO ERROR CODE

;17300  2400			VALUE1: LONG,					! INTERMEDIATE DATA STORAGE

;17400  2401			VALUE2: LONG,					! INTERMEDIATE DATA STORAGE

;17500  2402			VALUE3: LONG,					! INTERMEDIATE DATA STORAGE

;17600  2403			FAO_CTL_PTR : REF BLOCK[,BYTE];			! POINTER TO FAO CONTROL STRING DESCRIPTOR

;17700  2404	!

;17800  2405	BIND	AUXFNB = LNK$GL_MAPFIL[FDB$AL_AUXFNB]			! REFERENCE THE MAP FILE'S AUXILIARY

;17900  2406					: BLOCK[NAM$C_BLN,BYTE];	! FILENAME BLOCK

;18000  2407	!

;18100  2408		SUBHDLINE = 0;						! RESET SUB HEADING

;18200  2409		IF NOT NEWPAGE() THEN RETURN;				! OUTPUT NEW PAGE FOR IMAGE SYNOPSIS

;18300  2410		IF NOT MAPBOX(LINKWIDEHDR) THEN RETURN;			! OUTPUT LINK-WIDE SYNOPSIS HEADER

;18400  2411	!

;18500  2412	! OUTPUT LINK-WIDE SYNOPSIS SECTION

;18600  2413	!

;18700  2414	!

;18800  2415	! VIRTUAL MEMORY LIMITS

;18900  2416	!

;19000  2417		VALUE2 = .LNK$GL_MAXVA - .LNK$GL_MINVA + 1;		! CALCULATE MEMORY SIZE IN BYTES

;19100  2418		VALUE1 = (.VALUE2 + 511) / 512;				! CALCULATE MEMORY SIZE IN PAGES

;19200  2419		IF NOT (FAO_ERRCODE=SYS$FAO(VIRMEMLINE,OUTSIZE,OUTDES,.LNK$GL_MINVA,

;19300  2420			.LNK$GL_MAXVA,.VALUE2,.VALUE2,.VALUE1))		! FORMAT LINE

;19400  2421		THEN FAOFAIL(.FAO_ERRCODE)				!

;19500  2422		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;19600  2423				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;19700  2424	!

;19800  2425	! STACK SIZE

;19900  2426	!

;20000  2427		IF NOT (FAO_ERRCODE=SYS$FAO(STACKLINE,OUTSIZE,OUTDES,.LNK$GW_STACK)) ! FORMAT LINE

;20100  2428		THEN FAOFAIL(.FAO_ERRCODE)

;20200  2429		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;20300  2430				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;20400  2431	!

;20500  2432	! IMAGE HEADER VIRTUAL BLOCK UNITS

;20600  2433	!



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-5

; Digital Equipment Corporation

;

;20700  2434		IF .LNK$GW_HDRBLKS NEQ 0				! BASE BLOCK IS ALWAYS ONE (IF ANY HEADER)

;20800  2435		THEN IF NOT (FAO_ERRCODE=SYS$FAO(IMGHDRBLKLINE,OUTSIZE,OUTDES,1,.LNK$GW_HDRBLKS,.LNK$GW_HDRBLKS))

;20900  2436			THEN FAOFAIL(.FAO_ERRCODE)

;21000  2437			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;21100  2438				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;21200  2439	!

;21300  2440	! IMAGE BINARY VIRTUAL BLOCK UNITS

;21400  2441	!

;21500  2442		IF .LNK$GW_IMGBLKS EQL 0				! IF NO BLOCKS OF BINARY

;21600  2443		THEN (VALUE2 = 0; VALUE1 = 0)				! THAT IS WHAT WE PRINT

;21700  2444		ELSE (VALUE2 = .LNK$GW_HDRBLKS + 1;			! CALCULATE BASE BLOCK

;21800  2445		     VALUE1 = .VALUE2 + .LNK$GW_IMGBLKS - 1);		! CALCULATE TOP OF BINARY BLOCKS

;21900  2446		IF NOT (FAO_ERRCODE=SYS$FAO(IMGBINBLKLINE,OUTSIZE,OUTDES,.VALUE2,.VALUE1,.LNK$GW_IMGBLKS)) ! FORMAT LINE

;22000  2447			THEN FAOFAIL(.FAO_ERRCODE)

;22100  2448			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;22200  2449				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;22300  2450	!

;22400  2451	! IDENTIFICATION

;22500  2452	!

;22600  2453		IF NOT (FAO_ERRCODE=SYS$FAO(IDENTLINE,OUTSIZE,OUTDES,		! FORMAT LINE

;22700  2454				LNK$GT_IMGNAM,LNK$GT_IMGID))		! WITH THE STRINGS

;22800  2455		THEN FAOFAIL(.FAO_ERRCODE)

;22900  2456		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;23000  2457				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;23100  2458	!

;23200  2459	! NUMBER OF FILES

;23300  2460	!

;23400  2461		IF NOT (FAO_ERRCODE=SYS$FAO(NFILLINE,OUTSIZE,OUTDES,.LNK$GW_NFILES)) ! FORMAT LINE

;23500  2462		THEN FAOFAIL(.FAO_ERRCODE)

;23600  2463		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;23700  2464				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;23800  2465	!

;23900  2466	! NUMBER OF MODULES

;24000  2467	!

;24100  2468		IF NOT (FAO_ERRCODE=SYS$FAO(NMODLINE,OUTSIZE,OUTDES,.LNK$GW_NMODULES)) ! FORMAT LINE

;24200  2469		THEN FAOFAIL(.FAO_ERRCODE)

;24300  2470		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;24400  2471				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;24500  2472	!

;24600  2473	! NUMBER OF P-SECTS

;24700  2474	!

;24800  2475		IF NOT (FAO_ERRCODE=SYS$FAO(NPSCLINE,OUTSIZE,OUTDES,.LNK$GW_NPSECTS)) ! FORMAT LINE

;24900  2476		THEN FAOFAIL(.FAO_ERRCODE)

;25000  2477		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;25100  2478				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;25200  2479	!

;25300  2480	! NUMBER OF GLOBAL SYMBOLS

;25400  2481	!

;25500  2482		IF NOT (FAO_ERRCODE=SYS$FAO(NSYMLINE,OUTSIZE,OUTDES,.LNK$GW_NSYMBOLS)) ! FORMAT LINE

;25600  2483		THEN FAOFAIL(.FAO_ERRCODE)

;25700  2484		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;25800  2485				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;25900  2486	!

;26000  2487	! INCLUDING UNDEFINED COUNT OF:

;26100  2488	!



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-6

; Digital Equipment Corporation

;

;26200  2489		IF (.LNK$GW_NUDFSYMS NEQ 0) THEN			!

;26300  2490			BEGIN						!

;26400  2491			IF NOT (FAO_ERRCODE=SYS$FAO(NUNDFLINE,OUTSIZE,OUTDES,.LNK$GW_NUDFSYMS)) ! FORMAT LINE

;26500  2492			THEN FAOFAIL(.FAO_ERRCODE)

;26600  2493			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;26700  2494					THEN RETURN;			! NO MORE OUTPUT, I/O FAILURE

;26800  2495			END;

;26900  2496	!

;27000  2497	! NUMBER OF CROSS REFERENCES

;27100  2498	!

;27200  2499		IF .LNK$GW_NCROSRFS NEQ 0

;27300  2500		THEN IF NOT (FAO_ERRCODE=SYS$FAO(NCROSREFS,OUTSIZE,OUTDES,.LNK$GW_NCROSRFS))

;27400  2501			THEN FAOFAIL(.FAO_ERRCODE)

;27500  2502			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)

;27600  2503				THEN RETURN;

;27700  2504	!

;27800  2505	! NUMBER OF IMAGE SECTIONS

;27900  2506	!

;28000  2507		IF (.LNK$GW_NISECTS NEQ 0) THEN

;28100  2508			BEGIN

;28200  2509			IF NOT (FAO_ERRCODE=SYS$FAO(NISCLINE,OUTSIZE,OUTDES,.LNK$GW_NISECTS)) ! FORMAT LINE

;28300  2510			THEN FAOFAIL(.FAO_ERRCODE)

;28400  2511			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;28500  2512					THEN RETURN;			! NO MORE OUTPUT, I/O FAILURE

;28600  2513			END;

;28700  2514	IF NOT .LNK$GL_CTLMSK<LNK$S_SYS,1,0>

;28800  2515	THEN BEGIN

;28900  2516	!

;29000  2517	! USER TRANSFER ADDRESS

;29100  2518	!

;29200  2519		IF (.LNK$GL_TFRPSC NEQ 0) THEN

;29300  2520			BEGIN

;29400  2521			IF NOT (FAO_ERRCODE=SYS$FAO(USRTFRLINE,OUTSIZE,OUTDES,.LNK$GL_TFRADR)) ! FORMAT LINE

;29500  2522			THEN FAOFAIL(.FAO_ERRCODE)

;29600  2523			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;29700  2524					THEN RETURN;			! NO MORE OUTPUT, I/O FAILURE

;29800  2525			END;						!

;29900  2526	!

;30000  2527	! DEBUGGER TRANSFER ADDRESS

;30100  2528	!

;30200  2529		IF (.LNK$GL_DBGTFPS NEQ 0) THEN

;30300  2530			BEGIN

;30400  2531			IF NOT (FAO_ERRCODE=SYS$FAO(DBGTFRLINE,OUTSIZE,OUTDES,.LNK$GL_DBGTFR)) ! FORMAT LINE

;30500  2532			THEN FAOFAIL(.FAO_ERRCODE)

;30600  2533			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT LINE

;30700  2534					THEN RETURN;			! NO MORE OUTPUT, I/O FAILURE

;30800  2535			END;						!

;30900  2536	!

;31000  2537	! OTS TRANSFER ADDRESS

;31100  2538	!

;31200  2539		IF .LNK$GL_OTSEPDSC NEQ 0				! IF THE OTS TRANSFER ADDRESS WAS

;31300  2540		THEN BEGIN						! FOUND THEN OUTPUT IT TO

;31400  2541			IF NOT (FAO_ERRCODE=SYS$FAO(OTSTFRLINE,OUTSIZE,OUTDES,	! THE MAP ALSO. INCLUDE

;31500  2542				LNK$GL_OTSEPDSC[SYM$B_NAMLNG],		! THE NAME OF THE RESERVED

;31600  2543				.LNK$GL_OTSEPDSC[SYM$L_VALUE]))		! ENTRY POINT AS WELL AS ADDRESS



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-7

; Digital Equipment Corporation

;

;31700  2544			THEN FAOFAIL(.FAO_ERRCODE)			! REPORT ANY FORMATTING ERROR

;31800  2545			ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)	! OUTPUT IT

;31900  2546				THEN RETURN;				! EXITING ON ERROR

;32000  2547		     END;

;32100  2548	     END;

;32200  2549	!

;32300  2550	! IMAGE TYPE

;32400  2551	!

;32500  2552		VALUE2 = BLANKS;

;32600  2553		FAO_CTL_PTR = CH$PTR(IMGATRLINE, 0);			! ASSUME IMAGE IS NOT SHARABLE

;32700  2554		IF .LNK$GL_CTLMSK<LNK$S_EXE,1,0>			! SELECT EXE IMAGE PRINT

;32800  2555		THEN VALUE1 = EXEIMAGE;					! LINE

;32900  2556		IF .LNK$GL_CTLMSK<LNK$S_SYS,1,0>			! SELECT SYS IMAGE PRINT

;33000  2557		THEN VALUE1 = SYSIMAGE;					! LINE

;33100  2558		IF .LNK$GL_CTLMSK<LNK$S_SHR,1,0>			! SELECT SHR IMAGE PRINT

;33200  2559		THEN BEGIN

;33300  2560			FAO_CTL_PTR = CH$PTR(IMGSHRLINE, 0);		! USE SHARABLE IMAGE FAO CONTROL STRING

;33400  2561			IF .LNK$GL_CTLMSK<LNK$S_PICIMG,1,0>

;33500  2562			THEN VALUE1 = PIC

;33600  2563			ELSE VALUE1 = NOPIC;

;33700  2564			VALUE2 = SHRIMAGE;

;33800  2565			VALUE3 =

;33900  2566				(SELECTONE .LNK$GB_MATCHCTL OF

;34000  2567					SET

;34100  2568					[ISD$K_MATALL]:		ALLTIME; ! SELECT MATCH = ALWAYS

;34200  2569					[ISD$K_MATNEV]:		NEVER; ! SELECT MATCH = NEVER

;34300  2570					[ISD$K_MATEQU]:		EQUAL; ! SELECT MATCH = EQUAL

;34400  2571					[ISD$K_MATLEQ]:		LSSEQUAL; ! SELECT MATCH = LESS/EQUAL

;34500  2572					[OTHERWISE]:		BLANKS; ! NO MATCH SET

;34600  2573					TES);

;34700  2574		     END;

;34800  2575		BEGIN

;34900  2576		BIND

;35000  2577			GSMAJID = .LNK$GL_MATCHID<24,8,0>,		! GLOB SEC MAJOR ID

;35100  2578			GSMINID = .LNK$GL_MATCHID<0,24,0>;		! GLOB SEC MINOR ID

;35200  2579		IF NOT (FAO_ERRCODE=SYS$FAO(.FAO_CTL_PTR,OUTSIZE,OUTDES,.VALUE1,.VALUE2,

;35300  2580				.VALUE3,GSMAJID,GSMINID))		! FORMAT LINE

;35400  2581		THEN FAOFAIL(.FAO_ERRCODE)

;35500  2582		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)		! OUTPUT LINE

;35600  2583				THEN RETURN;				! NO MORE OUTPUT, I/O FAILURE

;35700  2584		END;

;35800  2585	!

;35900  2586	!	MAP FORMAT LINE

;36000  2587	!

;36100  2588		IF .LNK$GL_CTLMSK<LNK$S_BRIEF,1,0>		! SELECT BRIEF FIELD

;36200  2589		THEN VALUE1 = BRIEFMAP

;36300  2590		ELSE IF .LNK$GL_CTLMSK<LNK$S_LONG,1,0>		! SELECT LONG FIELD

;36400  2591		THEN VALUE1 = LONGMAP

;36500  2592		ELSE VALUE1 = DEFAULTMAP;

;36600  2593		IF .LNK$GL_CTLMSK<LNK$S_CROS,1,0>		! SELECT POSSIBLE CREF SUFFIX

;36700  2594		THEN VALUE2 = CREFMAP

;36800  2595		ELSE VALUE2 = BLANKS;

;36900  2596		IF NOT (FAO_ERRCODE=SYS$FAO(MAPFORMAT,OUTSIZE,OUTDES,.VALUE1,.VALUE2, ! FORMAT THE LINE

;37000  2597				.AUXFNB[NAM$B_RSL],.AUXFNB[NAM$L_RSA]))

;37100  2598		THEN FAOFAIL(.FAO_ERRCODE)					! REPORTING FAILURE



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-8

; Digital Equipment Corporation

;

;37200  2599		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE)			! OUTPUT THE LINE

;37300  2600			THEN RETURN;						! GIVING UP ON FAILURE

;37400  2601		IF NOT (FAO_ERRCODE=SYS$FAO(MAPLENGTH,OUTSIZE,OUTDES,.MAPESTIM)) ! FORMAT LENGTH ESTIMATE LINE

;37500  2602		THEN FAOFAIL(.FAO_ERRCODE)					! AND GIVE UP ON FAILURE

;37600  2603		ELSE IF NOT LNK$MAPOUT(OUTLINE,.OUTSIZE) THEN RETURN;		! OUTPUT THE LINE GIVING UP ON ERROR

;37700  2604	!

;37800  2605	! DONE WITH LINK-WIDE SYNOPSIS

;37900  2606	!

;38000  2607		SYS$GETTIM(LNK$GQ_ENDTIM);				! GET THE TIME NOW

;38100  2608	!

;38200  2609	!	NOW GIVE THEM THE RUN STATISTICS

;38300  2610	!

;38400  2611		IF NOT MAPBOX(LINKSTATS) THEN RETURN;		! GIVE UP ON FAILURE OF BOX HEADING

;38500  2612		LNK$STATSOUT();					! AND GO DO THE WORK

;38600  2613		RETURN;

;38700  2614	END;







							    .PSECT  $GLOBAL$,NOEXE,2



					      00059	    .BLKB   3

					      0005C LNK$GQ_ENDTIM::

							    .BLKB   8



							    .GLOBL  SYS$GETTIM, LNK$STATSOUT, LNK$GL_MATCHID, LNK$GB_MATCHCTL



							    .PSECT  $CODE$,NOWRT,2



					 0FFC 0089F 	    .ENTRY  LNK$MAPSTATS, Save R2,R3,R4,R5,R6,R7,R8,R9,R10,R11	      ; 2353

		         58	F8A7   CF  9E 008A1 	    MOVAB   FAOFAIL, R8						      ;

		         59	0000'  CF  9E 008A6 	    MOVAB   BLANKS, R9						      ;

		         5A 00000000G  00  9E 008AB 	    MOVAB   SYS$FAO, R10					      ;

		         5B	0000'  CF  9E 008B2 	    MOVAB   OUTSIZE, R11					      ;

	   57	  0000G  CF	       13  C1 008B7 	    ADDL3   #19, LNK$GL_MAPFIL, R7				      ; 2405

				  30   AB  D4 008BD 	    CLRL    SUBHDLINE						      ; 2408

		  0000V  CF	       00  FB 008C0 	    CALLS   #0, NEWPAGE						      ; 2409

		         58	       50  E9 008C5 	    BLBC    R0, 2$						      ;

				0208   C9  9F 008C8 	    PUSHAB  LINKWIDEHDR						      ; 2353

		  0000V  CF	       01  FB 008CC 	    CALLS   #1, MAPBOX						      ; 2410

		         79	       50  E9 008D1 	    BLBC    R0, 5$						      ;

	   50	  0000G  CF	0000G  CF  C3 008D4 	    SUBL3   LNK$GL_MINVA, LNK$GL_MAXVA, R0			      ; 2417

	   56	         50	       01  C1 008DC 	    ADDL3   #1, R0, VALUE2					      ;

		         50	01FF   C6  9E 008E0 	    MOVAB   511(R6), R0						      ; 2418

	   55	         50 00000200   8F  C7 008E5 	    DIVL3   #512, R0, VALUE1					      ;

				       55  DD 008ED 	    PUSHL   VALUE1						      ; 2419

				       56  DD 008EF 	    PUSHL   VALUE2						      ;

				       56  DD 008F1 	    PUSHL   VALUE2						      ;

				0000G  CF  DD 008F3 	    PUSHL   LNK$GL_MAXVA					      ;

				0000G  CF  DD 008F7 	    PUSHL   LNK$GL_MINVA					      ;

				  F8   AB  9F 008FB 	    PUSHAB  OUTDES						      ;

				       5B  DD 008FE 	    PUSHL   R11							      ;

				FED8   CB  9F 00900 	    PUSHAB  VIRMEMLINE						      ;

		         6A	       08  FB 00904 	    CALLS   #8, SYS$FAO						      ;

		         52	       50  D0 00907 	    MOVL    R0, FAO_ERRCODE					      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-9

; Digital Equipment Corporation

;

		         07	       52  E8 0090A 	    BLBS    FAO_ERRCODE, 1$					      ;

				       52  DD 0090D 	    PUSHL   FAO_ERRCODE						      ; 2421

		         68	       01  FB 0090F 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00912 	    BRB     3$							      ; 2419

		         7E	       6B  3C 00914 1$:     MOVZWL  OUTSIZE, -(SP)					      ; 2422

				FF74   CB  9F 00917 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 0091B 	    CALLS   #2, LNK$MAPOUT					      ;

		         64	       50  E9 00920 2$:     BLBC    R0, 8$						      ;

		         7E	0000G  CF  3C 00923 3$:     MOVZWL  LNK$GW_STACK, -(SP)					      ; 2427

				  F8   AB  9F 00928 	    PUSHAB  OUTDES						      ;

				       5B  DD 0092B 	    PUSHL   R11							      ;

				FEE0   CB  9F 0092D 	    PUSHAB  STACKLINE						      ;

		         6A	       04  FB 00931 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00934 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00937 	    BLBS    FAO_ERRCODE, 4$					      ;

				       52  DD 0093A 	    PUSHL   FAO_ERRCODE						      ; 2428

		         68	       01  FB 0093C 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 0093F 	    BRB     6$							      ; 2427

		         7E	       6B  3C 00941 4$:     MOVZWL  OUTSIZE, -(SP)					      ; 2429

				FF74   CB  9F 00944 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00948 	    CALLS   #2, LNK$MAPOUT					      ;

		         37	       50  E9 0094D 5$:     BLBC    R0, 8$						      ;

				0000G  CF  B5 00950 6$:     TSTW    LNK$GW_HDRBLKS					      ; 2434

				       34  13 00954 	    BEQL    9$							      ;

		         7E	0000G  CF  3C 00956 	    MOVZWL  LNK$GW_HDRBLKS, -(SP)				      ; 2435

		         7E	0000G  CF  3C 0095B 	    MOVZWL  LNK$GW_HDRBLKS, -(SP)				      ;

				       01  DD 00960 	    PUSHL   #1							      ;

				  F8   AB  9F 00962 	    PUSHAB  OUTDES						      ;

				       5B  DD 00965 	    PUSHL   R11							      ;

				FEE8   CB  9F 00967 	    PUSHAB  IMGHDRBLKLINE					      ;

		         6A	       06  FB 0096B 	    CALLS   #6, SYS$FAO						      ;

		         52	       50  D0 0096E 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00971 	    BLBS    FAO_ERRCODE, 7$					      ;

				       52  DD 00974 	    PUSHL   FAO_ERRCODE						      ; 2436

		         68	       01  FB 00976 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00979 	    BRB     9$							      ; 2435

		         7E	       6B  3C 0097B 7$:     MOVZWL  OUTSIZE, -(SP)					      ; 2437

				FF74   CB  9F 0097E 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00982 	    CALLS   #2, LNK$MAPOUT					      ;

		         7B	       50  E9 00987 8$:     BLBC    R0, 15$						      ;

				0000G  CF  B5 0098A 9$:     TSTW    LNK$GW_IMGBLKS					      ; 2442

				       04  12 0098E 	    BNEQ    10$							      ;

				       55  7C 00990 	    CLRQ    VALUE1						      ; 2443

				       13  11 00992 	    BRB     11$							      ; 2442

		         56	0000G  CF  3C 00994 10$:    MOVZWL  LNK$GW_HDRBLKS, VALUE2				      ; 2444

				       56  D6 00999 	    INCL    VALUE2						      ;

		         50	0000G  CF  3C 0099B 	    MOVZWL  LNK$GW_IMGBLKS, R0					      ; 2445

		         50	       56  C0 009A0 	    ADDL2   VALUE2, R0						      ;

	   55	         50	       01  C3 009A3 	    SUBL3   #1, R0, VALUE1					      ;

		         7E	0000G  CF  3C 009A7 11$:    MOVZWL  LNK$GW_IMGBLKS, -(SP)				      ; 2446

				       55  DD 009AC 	    PUSHL   VALUE1						      ;

				       56  DD 009AE 	    PUSHL   VALUE2						      ;

				  F8   AB  9F 009B0 	    PUSHAB  OUTDES						      ;

				       5B  DD 009B3 	    PUSHL   R11							      ;

				FEF0   CB  9F 009B5 	    PUSHAB  IMGBINBLKLINE					      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-10

; Digital Equipment Corporation

;

		         6A	       06  FB 009B9 	    CALLS   #6, SYS$FAO						      ;

		         52	       50  D0 009BC 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 009BF 	    BLBS    FAO_ERRCODE, 12$					      ;

				       52  DD 009C2 	    PUSHL   FAO_ERRCODE						      ; 2447

		         68	       01  FB 009C4 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 009C7 	    BRB     13$							      ; 2446

		         7E	       6B  3C 009C9 12$:    MOVZWL  OUTSIZE, -(SP)					      ; 2448

				FF74   CB  9F 009CC 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 009D0 	    CALLS   #2, LNK$MAPOUT					      ;

		         5A	       50  E9 009D5 	    BLBC    R0, 18$						      ;

				0000G  CF  9F 009D8 13$:    PUSHAB  LNK$GT_IMGID					      ; 2453

				0000G  CF  9F 009DC 	    PUSHAB  LNK$GT_IMGNAM					      ;

				  F8   AB  9F 009E0 	    PUSHAB  OUTDES						      ;

				       5B  DD 009E3 	    PUSHL   R11							      ;

				FEF8   CB  9F 009E5 	    PUSHAB  IDENTLINE						      ;

		         6A	       05  FB 009E9 	    CALLS   #5, SYS$FAO						      ;

		         52	       50  D0 009EC 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 009EF 	    BLBS    FAO_ERRCODE, 14$					      ;

				       52  DD 009F2 	    PUSHL   FAO_ERRCODE						      ; 2455

		         68	       01  FB 009F4 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 009F7 	    BRB     16$							      ; 2453

		         7E	       6B  3C 009F9 14$:    MOVZWL  OUTSIZE, -(SP)					      ; 2456

				FF74   CB  9F 009FC 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00A00 	    CALLS   #2, LNK$MAPOUT					      ;

		         57	       50  E9 00A05 15$:    BLBC    R0, 21$						      ;

		         7E	0000G  CF  3C 00A08 16$:    MOVZWL  LNK$GW_NFILES, -(SP)				      ; 2461

				  F8   AB  9F 00A0D 	    PUSHAB  OUTDES						      ;

				       5B  DD 00A10 	    PUSHL   R11							      ;

				FF00   CB  9F 00A12 	    PUSHAB  NFILLINE						      ;

		         6A	       04  FB 00A16 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00A19 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00A1C 	    BLBS    FAO_ERRCODE, 17$					      ;

				       52  DD 00A1F 	    PUSHL   FAO_ERRCODE						      ; 2462

		         68	       01  FB 00A21 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00A24 	    BRB     19$							      ; 2461

		         7E	       6B  3C 00A26 17$:    MOVZWL  OUTSIZE, -(SP)					      ; 2463

				FF74   CB  9F 00A29 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00A2D 	    CALLS   #2, LNK$MAPOUT					      ;

		         57	       50  E9 00A32 18$:    BLBC    R0, 24$						      ;

		         7E	0000G  CF  3C 00A35 19$:    MOVZWL  LNK$GW_NMODULES, -(SP)				      ; 2468

				  F8   AB  9F 00A3A 	    PUSHAB  OUTDES						      ;

				       5B  DD 00A3D 	    PUSHL   R11							      ;

				FF08   CB  9F 00A3F 	    PUSHAB  NMODLINE						      ;

		         6A	       04  FB 00A43 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00A46 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00A49 	    BLBS    FAO_ERRCODE, 20$					      ;

				       52  DD 00A4C 	    PUSHL   FAO_ERRCODE						      ; 2469

		         68	       01  FB 00A4E 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00A51 	    BRB     22$							      ; 2468

		         7E	       6B  3C 00A53 20$:    MOVZWL  OUTSIZE, -(SP)					      ; 2470

				FF74   CB  9F 00A56 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00A5A 	    CALLS   #2, LNK$MAPOUT					      ;

		         57	       50  E9 00A5F 21$:    BLBC    R0, 27$						      ;

		         7E	0000G  CF  3C 00A62 22$:    MOVZWL  LNK$GW_NPSECTS, -(SP)				      ; 2475

				  F8   AB  9F 00A67 	    PUSHAB  OUTDES						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-11

; Digital Equipment Corporation

;

				       5B  DD 00A6A 	    PUSHL   R11							      ;

				FF10   CB  9F 00A6C 	    PUSHAB  NPSCLINE						      ;

		         6A	       04  FB 00A70 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00A73 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00A76 	    BLBS    FAO_ERRCODE, 23$					      ;

				       52  DD 00A79 	    PUSHL   FAO_ERRCODE						      ; 2476

		         68	       01  FB 00A7B 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00A7E 	    BRB     25$							      ; 2475

		         7E	       6B  3C 00A80 23$:    MOVZWL  OUTSIZE, -(SP)					      ; 2477

				FF74   CB  9F 00A83 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00A87 	    CALLS   #2, LNK$MAPOUT					      ;

		         5D	       50  E9 00A8C 24$:    BLBC    R0, 30$						      ;

		         7E	0000G  CF  3C 00A8F 25$:    MOVZWL  LNK$GW_NSYMBOLS, -(SP)				      ; 2482

				  F8   AB  9F 00A94 	    PUSHAB  OUTDES						      ;

				       5B  DD 00A97 	    PUSHL   R11							      ;

				FF18   CB  9F 00A99 	    PUSHAB  NSYMLINE						      ;

		         6A	       04  FB 00A9D 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00AA0 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00AA3 	    BLBS    FAO_ERRCODE, 26$					      ;

				       52  DD 00AA6 	    PUSHL   FAO_ERRCODE						      ; 2483

		         68	       01  FB 00AA8 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00AAB 	    BRB     28$							      ; 2482

		         7E	       6B  3C 00AAD 26$:    MOVZWL  OUTSIZE, -(SP)					      ; 2484

				FF74   CB  9F 00AB0 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00AB4 	    CALLS   #2, LNK$MAPOUT					      ;

		         63	       50  E9 00AB9 27$:    BLBC    R0, 33$						      ;

				0000G  CF  B5 00ABC 28$:    TSTW    LNK$GW_NUDFSYMS					      ; 2489

				       2D  13 00AC0 	    BEQL    31$							      ;

		         7E	0000G  CF  3C 00AC2 	    MOVZWL  LNK$GW_NUDFSYMS, -(SP)				      ; 2491

				  F8   AB  9F 00AC7 	    PUSHAB  OUTDES						      ;

				       5B  DD 00ACA 	    PUSHL   R11							      ;

				FF20   CB  9F 00ACC 	    PUSHAB  NUNDFLINE						      ;

		         6A	       04  FB 00AD0 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00AD3 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00AD6 	    BLBS    FAO_ERRCODE, 29$					      ;

				       52  DD 00AD9 	    PUSHL   FAO_ERRCODE						      ; 2492

		         68	       01  FB 00ADB 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00ADE 	    BRB     31$							      ; 2491

		         7E	       6B  3C 00AE0 29$:    MOVZWL  OUTSIZE, -(SP)					      ; 2493

				FF74   CB  9F 00AE3 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00AE7 	    CALLS   #2, LNK$MAPOUT					      ;

		         63	       50  E9 00AEC 30$:    BLBC    R0, 36$						      ;

				0000G  CF  B5 00AEF 31$:    TSTW    LNK$GW_NCROSRFS					      ; 2499

				       2D  13 00AF3 	    BEQL    34$							      ;

		         7E	0000G  CF  3C 00AF5 	    MOVZWL  LNK$GW_NCROSRFS, -(SP)				      ; 2500

				  F8   AB  9F 00AFA 	    PUSHAB  OUTDES						      ;

				       5B  DD 00AFD 	    PUSHL   R11							      ;

				FF28   CB  9F 00AFF 	    PUSHAB  NCROSREFS						      ;

		         6A	       04  FB 00B03 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00B06 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00B09 	    BLBS    FAO_ERRCODE, 32$					      ;

				       52  DD 00B0C 	    PUSHL   FAO_ERRCODE						      ; 2501

		         68	       01  FB 00B0E 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00B11 	    BRB     34$							      ; 2500

		         7E	       6B  3C 00B13 32$:    MOVZWL  OUTSIZE, -(SP)					      ; 2502



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-12

; Digital Equipment Corporation

;

				FF74   CB  9F 00B16 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00B1A 	    CALLS   #2, LNK$MAPOUT					      ;

		         6B	       50  E9 00B1F 33$:    BLBC    R0, 40$						      ;

				0000G  CF  B5 00B22 34$:    TSTW    LNK$GW_NISECTS					      ; 2507

				       2D  13 00B26 	    BEQL    37$							      ;

		         7E	0000G  CF  3C 00B28 	    MOVZWL  LNK$GW_NISECTS, -(SP)				      ; 2509

				  F8   AB  9F 00B2D 	    PUSHAB  OUTDES						      ;

				       5B  DD 00B30 	    PUSHL   R11							      ;

				FF30   CB  9F 00B32 	    PUSHAB  NISCLINE						      ;

		         6A	       04  FB 00B36 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00B39 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00B3C 	    BLBS    FAO_ERRCODE, 35$					      ;

				       52  DD 00B3F 	    PUSHL   FAO_ERRCODE						      ; 2510

		         68	       01  FB 00B41 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00B44 	    BRB     37$							      ; 2509

		         7E	       6B  3C 00B46 35$:    MOVZWL  OUTSIZE, -(SP)					      ; 2511

				FF74   CB  9F 00B49 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00B4D 	    CALLS   #2, LNK$MAPOUT					      ;

		         6A	       50  E9 00B52 36$:    BLBC    R0, 43$						      ;

	   03	  0000G  CF	       00  E1 00B55 37$:    BBC     #LNK$S_SYS, LNK$GL_CTLMSK, 38$			      ; 2514

				     0099  31 00B5B 	    BRW     47$							      ;

				0000G  CF  D5 00B5E 38$:    TSTL    LNK$GL_TFRPSC					      ; 2519

				       2C  13 00B62 	    BEQL    41$							      ;

				0000G  CF  DD 00B64 	    PUSHL   LNK$GL_TFRADR					      ; 2521

				  F8   AB  9F 00B68 	    PUSHAB  OUTDES						      ;

				       5B  DD 00B6B 	    PUSHL   R11							      ;

				FF48   CB  9F 00B6D 	    PUSHAB  USRTFRLINE						      ;

		         6A	       04  FB 00B71 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00B74 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00B77 	    BLBS    FAO_ERRCODE, 39$					      ;

				       52  DD 00B7A 	    PUSHL   FAO_ERRCODE						      ; 2522

		         68	       01  FB 00B7C 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00B7F 	    BRB     41$							      ; 2521

		         7E	       6B  3C 00B81 39$:    MOVZWL  OUTSIZE, -(SP)					      ; 2523

				FF74   CB  9F 00B84 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00B88 	    CALLS   #2, LNK$MAPOUT					      ;

		         63	       50  E9 00B8D 40$:    BLBC    R0, 46$						      ;

				0000G  CF  D5 00B90 41$:    TSTL    LNK$GL_DBGTFPS					      ; 2529

				       2C  13 00B94 	    BEQL    44$							      ;

				0000G  CF  DD 00B96 	    PUSHL   LNK$GL_DBGTFR					      ; 2531

				  F8   AB  9F 00B9A 	    PUSHAB  OUTDES						      ;

				       5B  DD 00B9D 	    PUSHL   R11							      ;

				FF38   CB  9F 00B9F 	    PUSHAB  DBGTFRLINE						      ;

		         6A	       04  FB 00BA3 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00BA6 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00BA9 	    BLBS    FAO_ERRCODE, 42$					      ;

				       52  DD 00BAC 	    PUSHL   FAO_ERRCODE						      ; 2532

		         68	       01  FB 00BAE 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00BB1 	    BRB     44$							      ; 2531

		         7E	       6B  3C 00BB3 42$:    MOVZWL  OUTSIZE, -(SP)					      ; 2533

				FF74   CB  9F 00BB6 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00BBA 	    CALLS   #2, LNK$MAPOUT					      ;

		         31	       50  E9 00BBF 43$:    BLBC    R0, 46$						      ;

		         50	0000G  CF  D0 00BC2 44$:    MOVL    LNK$GL_OTSEPDSC, R0					      ; 2539

				       2E  13 00BC7 	    BEQL    47$							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-13

; Digital Equipment Corporation

;

				       60  DD 00BC9 	    PUSHL   (R0)						      ; 2541

				  08   A0  9F 00BCB 	    PUSHAB  8(R0)						      ; 2542

				  F8   AB  9F 00BCE 	    PUSHAB  OUTDES						      ; 2541

				       5B  DD 00BD1 	    PUSHL   R11							      ;

				FF40   CB  9F 00BD3 	    PUSHAB  OTSTFRLINE						      ;

		         6A	       05  FB 00BD7 	    CALLS   #5, SYS$FAO						      ;

		         52	       50  D0 00BDA 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00BDD 	    BLBS    FAO_ERRCODE, 45$					      ;

				       52  DD 00BE0 	    PUSHL   FAO_ERRCODE						      ; 2544

		         68	       01  FB 00BE2 	    CALLS   #1, FAOFAIL						      ;

				       10  11 00BE5 	    BRB     47$							      ; 2541

		         7E	       6B  3C 00BE7 45$:    MOVZWL  OUTSIZE, -(SP)					      ; 2545

				FF74   CB  9F 00BEA 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00BEE 	    CALLS   #2, LNK$MAPOUT					      ;

		         01	       50  E8 00BF3 46$:    BLBS    R0, 47$						      ;

					   04 00BF6 	    RET     							      ;

		         56	       69  9E 00BF7 47$:    MOVAB   BLANKS, VALUE2					      ; 2353

		         54	FF50   CB  9E 00BFA 	    MOVAB   IMGATRLINE, FAO_CTL_PTR				      ; 2553

	   05	  0000G  CF	       00  E1 00BFF 	    BBC     #LNK$S_EXE, LNK$GL_CTLMSK, 48$			      ; 2554

		         55	0098   C9  9E 00C05 	    MOVAB   EXEIMAGE, VALUE1					      ; 2353

	   05	  0000G  CF	       00  E1 00C0A 48$:    BBC     #LNK$S_SYS, LNK$GL_CTLMSK, 49$			      ; 2556

		         55	00A4   C9  9E 00C10 	    MOVAB   SYSIMAGE, VALUE1					      ; 2353

	   4F	  0000G  CF	       02  E1 00C15 49$:    BBC     #2, LNK$GL_CTLMSK, 56$				      ; 2558

		         54	FF58   CB  9E 00C1B 	    MOVAB   IMGSHRLINE, FAO_CTL_PTR				      ; 2560

	   06	  0000G  CF	       00  E1 00C20 	    BBC     #LNK$S_PICIMG, LNK$GL_CTLMSK, 50$			      ; 2561

		         55	  08   A9  9E 00C26 	    MOVAB   PIC, VALUE1						      ; 2353

				       04  11 00C2A 	    BRB     51$							      ; 2561

		         55	  50   A9  9E 00C2C 50$:    MOVAB   NOPIC, VALUE1					      ; 2353

		         56	00AC   C9  9E 00C30 51$:    MOVAB   SHRIMAGE, VALUE2					      ;

		         51	0000G  CF  D0 00C35 	    MOVL    LNK$GB_MATCHCTL, R1					      ; 2566

				       07  12 00C3A 	    BNEQ    52$							      ;

		         50	00C0   C9  9E 00C3C 	    MOVAB   ALLTIME, VALUE3					      ; 2353

				       27  11 00C41 	    BRB     56$							      ; 2566

		         03	       51  D1 00C43 52$:    CMPL    R1, #3						      ;

				       07  12 00C46 	    BNEQ    53$							      ;

		         50	00C8   C9  9E 00C48 	    MOVAB   NEVER, VALUE3					      ; 2353

				       1B  11 00C4D 	    BRB     56$							      ; 2566

		         01	       51  D1 00C4F 53$:    CMPL    R1, #1						      ;

				       07  12 00C52 	    BNEQ    54$							      ;

		         50	00D0   C9  9E 00C54 	    MOVAB   EQUAL, VALUE3					      ; 2353

				       0F  11 00C59 	    BRB     56$							      ; 2566

		         02	       51  D1 00C5B 54$:    CMPL    R1, #2						      ;

				       07  12 00C5E 	    BNEQ    55$							      ;

		         50	00D8   C9  9E 00C60 	    MOVAB   LSSEQUAL, VALUE3					      ; 2353

				       03  11 00C65 	    BRB     56$							      ; 2566

		         50	       69  9E 00C67 55$:    MOVAB   BLANKS, VALUE3					      ; 2353

		         53	0000G  CF  9A 00C6A 56$:    MOVZBL  LNK$GL_MATCHID+3, R3				      ; 2575

    0000G  CF	         18	       00  EF 00C6F 	    EXTZV   #0, #24, LNK$GL_MATCHID, R1				      ;

				       51     00C75									      ;

				       51  DD 00C76 	    PUSHL   R1							      ; 2579

				       09  BB 00C78 	    PUSHR   #^M<R0,R3>						      ;

		         7E	       55  7D 00C7A 	    MOVQ    VALUE1, -(SP)					      ;

				  F8   AB  9F 00C7D 	    PUSHAB  OUTDES						      ;

				0810   8F  BB 00C80 	    PUSHR   #^M<R4,R11>						      ;

		         6A	       08  FB 00C84 	    CALLS   #8, SYS$FAO						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-14

; Digital Equipment Corporation

;

		         52	       50  D0 00C87 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00C8A 	    BLBS    FAO_ERRCODE, 57$					      ;

				       52  DD 00C8D 	    PUSHL   FAO_ERRCODE						      ; 2581

		         68	       01  FB 00C8F 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00C92 	    BRB     58$							      ; 2579

		         7E	       6B  3C 00C94 57$:    MOVZWL  OUTSIZE, -(SP)					      ; 2582

				FF74   CB  9F 00C97 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00C9B 	    CALLS   #2, LNK$MAPOUT					      ;

		         5E	       50  E9 00CA0 	    BLBC    R0, 65$						      ;

	   07	  0000G  CF	       00  E1 00CA3 58$:    BBC     #LNK$S_BRIEF, LNK$GL_CTLMSK, 59$			      ; 2588

		         55	00B8   C9  9E 00CA9 	    MOVAB   BRIEFMAP, VALUE1					      ; 2353

				       12  11 00CAE 	    BRB     61$							      ; 2588

	   07	  0000G  CF	       00  E1 00CB0 59$:    BBC     #LNK$S_LONG, LNK$GL_CTLMSK, 60$			      ; 2590

		         55	00EC   C9  9E 00CB6 	    MOVAB   LONGMAP, VALUE1					      ; 2353

				       05  11 00CBB 	    BRB     61$							      ; 2590

		         55	00E4   C9  9E 00CBD 60$:    MOVAB   DEFAULTMAP, VALUE1					      ; 2353

	   07	  0000G  CF	       00  E1 00CC2 61$:    BBC     #LNK$S_CROS, LNK$GL_CTLMSK, 62$			      ; 2593

		         56	00F4   C9  9E 00CC8 	    MOVAB   CREFMAP, VALUE2					      ; 2353

				       03  11 00CCD 	    BRB     63$							      ; 2593

		         56	       69  9E 00CCF 62$:    MOVAB   BLANKS, VALUE2					      ; 2353

				  04   A7  DD 00CD2 63$:    PUSHL   4(R7)						      ; 2596

		         7E	  03   A7  9A 00CD5 	    MOVZBL  3(R7), -(SP)					      ;

		         7E	       55  7D 00CD9 	    MOVQ    VALUE1, -(SP)					      ;

				  F8   AB  9F 00CDC 	    PUSHAB  OUTDES						      ;

				       5B  DD 00CDF 	    PUSHL   R11							      ;

				FF60   CB  9F 00CE1 	    PUSHAB  MAPFORMAT						      ;

		         6A	       07  FB 00CE5 	    CALLS   #7, SYS$FAO						      ;

		         52	       50  D0 00CE8 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00CEB 	    BLBS    FAO_ERRCODE, 64$					      ;

				       52  DD 00CEE 	    PUSHL   FAO_ERRCODE						      ; 2598

		         68	       01  FB 00CF0 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00CF3 	    BRB     66$							      ; 2596

		         7E	       6B  3C 00CF5 64$:    MOVZWL  OUTSIZE, -(SP)					      ; 2599

				FF74   CB  9F 00CF8 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00CFC 	    CALLS   #2, LNK$MAPOUT					      ;

		         48	       50  E9 00D01 65$:    BLBC    R0, 69$						      ;

				0094   CB  DD 00D04 66$:    PUSHL   MAPESTIM						      ; 2601

				  F8   AB  9F 00D08 	    PUSHAB  OUTDES						      ;

				       5B  DD 00D0B 	    PUSHL   R11							      ;

				FF68   CB  9F 00D0D 	    PUSHAB  MAPLENGTH						      ;

		         6A	       04  FB 00D11 	    CALLS   #4, SYS$FAO						      ;

		         52	       50  D0 00D14 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       52  E8 00D17 	    BLBS    FAO_ERRCODE, 67$					      ;

				       52  DD 00D1A 	    PUSHL   FAO_ERRCODE						      ; 2602

		         68	       01  FB 00D1C 	    CALLS   #1, FAOFAIL						      ;

				       0F  11 00D1F 	    BRB     68$							      ; 2601

		         7E	       6B  3C 00D21 67$:    MOVZWL  OUTSIZE, -(SP)					      ; 2603

				FF74   CB  9F 00D24 	    PUSHAB  OUTLINE						      ;

		  0000V  CF	       02  FB 00D28 	    CALLS   #2, LNK$MAPOUT					      ;

		         1C	       50  E9 00D2D 	    BLBC    R0, 69$						      ;

				0000'  CF  9F 00D30 68$:    PUSHAB  LNK$GQ_ENDTIM					      ; 2607

	      00000000G  00	       01  FB 00D34 	    CALLS   #1, SYS$GETTIM					      ;

				0264   C9  9F 00D3B 	    PUSHAB  LINKSTATS						      ; 2353

		  0000V  CF	       01  FB 00D3F 	    CALLS   #1, MAPBOX						      ; 2611

		         05	       50  E9 00D44 	    BLBC    R0, 69$						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 6-15

; Digital Equipment Corporation

;

		  0000G  CF	       00  FB 00D47 	    CALLS   #0, LNK$STATSOUT					      ; 2612

					   04 00D4C 69$:    RET     							      ; 2353



; Routine Size:  1198 bytes







; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7

; Digital Equipment Corporation

;

;00100  2615	ROUTINE MAPBOX(ADDR) =				! OUTPUT HEADER IN A BOX

;00200  2616	

;00300  2617	!++

;00400  2618	! FUNCTIONAL DESCRIPTION:

;00500  2619	!

;00600  2620	!	THIS ROUTINE OUTPUTS A HEADER CONTAINED IN A BOX AND FOLLOWED BY 

;00700  2621	!	A BLANK LINE.

;00800  2622	!

;00900  2623	! FORMAL PARAMETERS:

;01000  2624	!

;01100  2625	!	ADDR -- THE ADDRESS OF THE HEADER, AN ASCIC STRING CONTAINING THE

;01200  2626	!		 SIDES OF THE BOX

;01300  2627	!

;01400  2628	! IMPLICIT INPUTS:

;01500  2629	!

;01600  2630	!	THE BOXED HEADER IS WRITTEN TO THE MAP AND FOLLOWED BY A BLANK LINE.

;01700  2631	!

;01800  2632	! IMPLICIT OUTPUTS:

;01900  2633	!

;02000  2634	!	NONE

;02100  2635	!

;02200  2636	! ROUTINE VALUE:

;02300  2637	!

;02400  2638	!	NOVALUE

;02500  2639	!

;02600  2640	! COMPLETION CODES:

;02700  2641	!

;02800  2642	!	NONE

;02900  2643	!

;03000  2644	! SIDE EFFECTS:

;03100  2645	!

;03200  2646	!	NONE

;03300  2647	!

;03400  2648	!--

;03500  2649	!

;03600  2650	BEGIN

;03700  2651		MAP

;03800  2652			ADDR: REF VECTOR[,BYTE];			! REFERENCE A COUNTED ASCII STRING

;03900  2653		LOCAL

;04000  2654			OUTSIZ: WORD,					! OUTPUT LINE SIZE

;04100  2655			CHPNTR: LONG,					! CHARACTER POINTER FOR OUTPUT LINE

;04200  2656			BOXPNTR: LONG,					! CHARACTER POINTER FOR OUTPUT LINE

;04300  2657			OUTBUFR: CH$SEQUENCE(LEN$C_MAPLINE);		! OUTPUT BUFFER

;04400  2658		IF NOT .LNK$GL_CTLMSK<LNK$S_MAPOPN,1,0>		! MAP FILE OPEN?

;04500  2659			THEN RETURN FALSE;				! NO, RETURN

;04600  2660		CHPNTR = CH$PTR(OUTBUFR);				! INITIALIZE CHARACTER POINTER

;04700  2661		OUTSIZ = (LEN$C_MAPLINE - .ADDR[0]) / 2 - 8;		! COMPUTE NUMBER OF SPACES BEFORE BOX

;04800  2662		CHPNTR = CH$FILL(%C' ',.OUTSIZ,.CHPNTR);		! MOVE IN SPACES

;04900  2663		BOXPNTR = .CHPNTR;					! REMEMBER WHERE BOX STARTS

;05000  2664		CHPNTR = CH$FILL(%C'+',1,.CHPNTR);			! MOVE IN BOX CORNER

;05100  2665		CHPNTR = CH$FILL(%C'-',.ADDR[0]-2,.CHPNTR);		! MOVE IN TOP OF BOX

;05200  2666		CHPNTR = CH$FILL(%C'+',1,.CHPNTR);			! MOVE IN BOX CORNER

;05300  2667		OUTSIZ = .OUTSIZ + .ADDR[0];				! COMPUTE LENGTH OF OUTPUT LINE

;05400  2668		IF NOT LNK$MAPOUT(OUTBUFR,.OUTSIZ)			! OUTPUT TOP OF BOX

;05500  2669			THEN RETURN FALSE;				! NO MORE OUTPUT, I/O FAILURE



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-1

; Digital Equipment Corporation

;

;05600  2670		CH$MOVE(.ADDR[0],ADDR[1],.BOXPNTR);			! MOVE IN TITLE AND BOX SIDES

;05700  2671		IF NOT LNK$MAPOUT(OUTBUFR,.OUTSIZ)			! OUTPUT HEADER IN BOX

;05800  2672			THEN RETURN FALSE;				! NO MORE OUTPUT, I/O FAILURE

;05900  2673		CHPNTR = CH$FILL(%C'+',1,.BOXPNTR);			! MOVE IN BOX CORNER

;06000  2674		CHPNTR = CH$FILL(%C'-',.ADDR[0]-2,.CHPNTR);		! MOVE IN BOTTOM OF BOX

;06100  2675		CHPNTR = CH$FILL(%C'+',1,.CHPNTR);			! MOVE IN BOX CORNER

;06200  2676		IF NOT LNK$MAPOUT(OUTBUFR,.OUTSIZ)			! OUTPUT BOTTOM OF BOX

;06300  2677			THEN RETURN FALSE;				! NO MORE OUTPUT, I/O FAILURE

;06400  2678		RETURN TRUE;						! SUCCESSFUL RETURN

;06500  2679	END;











					 0BFC 00D4D MAPBOX: .WORD   Save R2,R3,R4,R5,R6,R7,R8,R9,R11			      ; 2615

		         5B	0000V  CF  9E 00D4F 	    MOVAB   LNK$MAPOUT, R11					      ;

		         5E	FF7C   CE  9E 00D54 	    MOVAB   -132(SP), SP					      ;

	   03	  0000G  CF	       00  E0 00D59 	    BBS     #LNK$S_MAPOPN, LNK$GL_CTLMSK, 1$			      ; 2658

				     009C  31 00D5F 	    BRW     2$							      ;

		         56	       6E  9E 00D62 1$:     MOVAB   OUTBUFR, CHPNTR					      ; 2660

		         57	  04   AC  D0 00D65 	    MOVL    ADDR, R7						      ; 2661

		         50	       67  9A 00D69 	    MOVZBL  (R7), R0						      ;

		         50	FF7C   C0  9E 00D6C 	    MOVAB   -132(R0), R0					      ;

		         50	       02  C6 00D71 	    DIVL2   #2, R0						      ;

		         58	       50  AE 00D74 	    MNEGW   R0, OUTSIZ						      ;

		         58	       08  A2 00D77 	    SUBW2   #8, OUTSIZ						      ;

	   20	         6E	       00  2C 00D7A 	    MOVC5   #0, (SP), #32, OUTSIZ, (CHPNTR)			      ; 2662

		         66	       58     00D7E									      ;

		         56	       53  D0 00D80 	    MOVL    R3, CHPNTR						      ;

		         59	       56  D0 00D83 	    MOVL    CHPNTR, BOXPNTR					      ; 2663

	   2B	         6E	       00  2C 00D86 	    MOVC5   #0, (SP), #43, #1, (CHPNTR)				      ; 2664

		         66	       01     00D8A									      ;

		         56	       53  D0 00D8C 	    MOVL    R3, CHPNTR						      ;

		         50	       67  9A 00D8F 	    MOVZBL  (R7), R0						      ; 2665

		         50	       02  C2 00D92 	    SUBL2   #2, R0						      ;

	   2D	         6E	       00  2C 00D95 	    MOVC5   #0, (SP), #45, R0, (CHPNTR)				      ;

		         66	       50     00D99									      ;

		         56	       53  D0 00D9B 	    MOVL    R3, CHPNTR						      ;

	   2B	         6E	       00  2C 00D9E 	    MOVC5   #0, (SP), #43, #1, (CHPNTR)				      ; 2666

		         66	       01     00DA2									      ;

		         56	       53  D0 00DA4 	    MOVL    R3, CHPNTR						      ;

		         50	       67  9A 00DA7 	    MOVZBL  (R7), R0						      ; 2667

		         58	       50  A0 00DAA 	    ADDW2   R0, OUTSIZ						      ;

		         7E	       58  3C 00DAD 	    MOVZWL  OUTSIZ, -(SP)					      ; 2668

				  04   AE  9F 00DB0 	    PUSHAB  OUTBUFR						      ;

		         6B	       02  FB 00DB3 	    CALLS   #2, LNK$MAPOUT					      ;

		         45	       50  E9 00DB6 	    BLBC    R0, 2$						      ;

		         50	       67  9A 00DB9 	    MOVZBL  (R7), R0						      ; 2670

	   69	    01   A7	       50  28 00DBC 	    MOVC3   R0, 1(R7), (BOXPNTR)				      ;

		         7E	       58  3C 00DC1 	    MOVZWL  OUTSIZ, -(SP)					      ; 2671

				  04   AE  9F 00DC4 	    PUSHAB  OUTBUFR						      ;

		         6B	       02  FB 00DC7 	    CALLS   #2, LNK$MAPOUT					      ;

		         31	       50  E9 00DCA 	    BLBC    R0, 2$						      ;

	   2B	         6E	       00  2C 00DCD 	    MOVC5   #0, (SP), #43, #1, (BOXPNTR)			      ; 2673



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-2

; Digital Equipment Corporation

;

		         69	       01     00DD1									      ;

		         56	       53  D0 00DD3 	    MOVL    R3, CHPNTR						      ;

		         50	       67  9A 00DD6 	    MOVZBL  (R7), R0						      ; 2674

		         50	       02  C2 00DD9 	    SUBL2   #2, R0						      ;

	   2D	         6E	       00  2C 00DDC 	    MOVC5   #0, (SP), #45, R0, (CHPNTR)				      ;

		         66	       50     00DE0									      ;

		         56	       53  D0 00DE2 	    MOVL    R3, CHPNTR						      ;

	   2B	         6E	       00  2C 00DE5 	    MOVC5   #0, (SP), #43, #1, (CHPNTR)				      ; 2675

		         66	       01     00DE9									      ;

		         56	       53  D0 00DEB 	    MOVL    R3, CHPNTR						      ;

		         7E	       58  3C 00DEE 	    MOVZWL  OUTSIZ, -(SP)					      ; 2676

				  04   AE  9F 00DF1 	    PUSHAB  OUTBUFR						      ;

		         6B	       02  FB 00DF4 	    CALLS   #2, LNK$MAPOUT					      ;

		         04	       50  E9 00DF7 	    BLBC    R0, 2$						      ;

		         50	       01  D0 00DFA 	    MOVL    #1, R0						      ; 2678

					   04 00DFD 	    RET     							      ;

				       50  D4 00DFE 2$:     CLRL    R0							      ; 2615

					   04 00E00 	    RET     							      ;



; Routine Size:  180 bytes





;06600  2680	GLOBAL ROUTINE LNK$MAPOUT(ADDR,LENGTH) =			! CONDITIONALLY OUTPUT A LINE OF THE MAP, CHECKING FOR NEW PAGE

;06700  2681	

;06800  2682	!++

;06900  2683	! FUNCTIONAL DESCRIPTION:

;07000  2684	!

;07100  2685	!	THIS ROUTINE OUTPUTS A LINE OF DATA TO THE MAP FILE.  IT ALSO

;07200  2686	!	INSERTS A NEW PAGE AND THE APPROPRIATE HEADERS WHENEVER NEEDED.

;07300  2687	!

;07400  2688	! FORMAL PARAMETERS:

;07500  2689	!

;07600  2690	!	ADDR -- ADDRESS OF THE ASCII STRING TO BE OUTPUT

;07700  2691	!	LENGTH -- LENGTH OF THE ASCII STRING TO BE OUTPUT

;07800  2692	!

;07900  2693	! IMPLICIT INPUTS:

;08000  2694	!

;08100  2695	!	THE MAP FILE MUST BE ALREADY OPEN.

;08200  2696	!

;08300  2697	! IMPLICIT OUTPUTS:

;08400  2698	!

;08500  2699	!	THE OUTPUT LINE IS WRITTEN TO THE MAP FILE.  THE PAGE COUNTER IS INCREMENTED.

;08600  2700	!	IF THE CURRENT PAGE IS FULL, A NEW PAGE WITH HEADER LINES IS OUTPUT

;08700  2701	!	BEFORE THE CURRENT OUTPUT LINE.

;08800  2702	

;08900  2703	!

;09000  2704	! ROUTINE VALUE:

;09100  2705	!

;09200  2706	!	NOVALUE

;09300  2707	!

;09400  2708	! COMPLETION CODES:

;09500  2709	!

;09600  2710	!	NONE

;09700  2711	!

;09800  2712	! SIDE EFFECTS:



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-3

; Digital Equipment Corporation

;

;09900  2713	!

;10000  2714	!	NONE

;10100  2715	!

;10200  2716	!--

;10300  2717	!

;10400  2718	BEGIN

;10500  2719		MAP

;10600  2720			ADDR: REF VECTOR[,BYTE];			! REFERENCE AN OUTPUT BUFFER

;10700  2721	!

;10800  2722		IF NOT .LNK$GL_CTLMSK<LNK$S_MAPOPN,1,0>		! IF THE MAP FILE IS NO LONGER

;10900  2723		THEN RETURN TRUE;					! OPEN, RETURN IMMEDIATELY

;11000  2724		IF .LINECNT GEQ .LNK$GB_LINESPP				! CHECK IF A NEW PAGE IS NEEDED

;11100  2725		THEN IF NOT NEWPAGE() THEN RETURN FALSE;		! AND OUTPUT IT IF SO GIVING UP ON FAILURE

;11200  2726		IF NOT (RMSERROR = $WAIT(RAB=MAPRAB))			! WAIT FOR POSSIBLE PREVIOUS

;11300  2727		THEN BEGIN						! OUTPUT AND

;11400  2728			MAPFAIL();					! REPORT ANY ERROR

;11500  2729			LNK$ERRMSG(.RMSERROR AND NOT 7,SEV$C_DIAG,.MAPRAB[RAB$L_STV]);

;11600  2730			RETURN FALSE;				! GIVING UP ON IT

;11700  2731		     END;

;11800  2732		MAPRAB[RAB$L_RBF] = .ADDR;				! SET THE RECORD ADDRESS IN RAB

;11900  2733		MAPRAB[RAB$W_RSZ] = .LENGTH;				! AND THE RECORD LENGTH

;12000  2734		IF NOT (RMSERROR = $PUT(RAB=MAPRAB))			! AND OUTPUT IT

;12100  2735		THEN BEGIN						! BUT IF AN ERROR REPORT

;12200  2736			MAPFAIL();					! IT NOW AND

;12300  2737			RETURN .RMSERROR;				! AND GIVE UP

;12400  2738		     END;

;12500  2739		LINECNT = .LINECNT + 1;					! INCREMENT NUMBER OF LINES OUTPUT ON CURRENT PAGE

;12600  2740		RETURN TRUE;						! REPORT SUCCESS

;12700  2741	END;







							    .GLOBL  SYS$PUT



					 0800 00E01 	    .ENTRY  LNK$MAPOUT, Save R11				      ; 2680

		         5B	0000'  CF  9E 00E03 	    MOVAB   RMSERROR, R11					      ;

	   5E	  0000G  CF	       00  E1 00E08 	    BBC     #LNK$S_MAPOPN, LNK$GL_CTLMSK, 4$			      ; 2722

    0000'  CF	         08	       00  ED 00E0E 	    CMPZV   #0, #8, LNK$GB_LINESPP, LINECNT			      ; 2724

				  84   AB     00E14									      ;

				       08  14 00E16 	    BGTR    1$							      ;

		  0000V  CF	       00  FB 00E18 	    CALLS   #0, NEWPAGE						      ; 2725

		         50	       50  E9 00E1D 	    BLBC    R0, 5$						      ;

				  04   AB  9F 00E20 1$:     PUSHAB  MAPRAB						      ; 2726

	      00000000G  9F	       01  FB 00E23 	    CALLS   #1, @#SYS$WAIT					      ;

		         6B	       50  D0 00E2A 	    MOVL    R0, RMSERROR					      ;

		         16	       50  E8 00E2D 	    BLBS    R0, 2$						      ;

		  F358   CF	       00  FB 00E30 	    CALLS   #0, MAPFAIL						      ; 2728

				  10   AB  DD 00E35 	    PUSHL   MAPRAB+12						      ; 2729

		         7E	       00  9A 00E38 	    MOVZBL  #SEV$C_DIAG, -(SP)					      ;

	   7E	         6B	       07  CB 00E3B 	    BICL3   #7, RMSERROR, -(SP)					      ;

		  0000G  CF	       03  FB 00E3F 	    CALLS   #3, LNK$ERRMSG					      ;

				       2A  11 00E44 	    BRB     5$							      ; 2730

		    2C   AB	  04   AC  D0 00E46 2$:     MOVL    ADDR, MAPRAB+40					      ; 2732

		    26   AB	  08   AC  B0 00E4B 	    MOVW    LENGTH, MAPRAB+34					      ; 2733

				  04   AB  9F 00E50 	    PUSHAB  MAPRAB						      ; 2734



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-4

; Digital Equipment Corporation

;

	      00000000G  9F	       01  FB 00E53 	    CALLS   #1, @#SYS$PUT					      ;

		         6B	       50  D0 00E5A 	    MOVL    R0, RMSERROR					      ;

		         09	       50  E8 00E5D 	    BLBS    R0, 3$						      ;

		  F328   CF	       00  FB 00E60 	    CALLS   #0, MAPFAIL						      ; 2736

		         50	       6B  D0 00E65 	    MOVL    RMSERROR, R0					      ; 2737

					   04 00E68 	    RET     							      ;

				  84   AB  D6 00E69 3$:     INCL    LINECNT						      ; 2739

		         50	       01  D0 00E6C 4$:     MOVL    #1, R0						      ; 2740

					   04 00E6F 	    RET     							      ;

				       50  D4 00E70 5$:     CLRL    R0							      ; 2680

					   04 00E72 	    RET     							      ;



; Routine Size:  114 bytes





;12800  2742	ROUTINE MAPSUBHDR(SUBHDRDSC,ARG1) =			! OUTPUT PAGE SUB HEADING

;12900  2743	BEGIN

;13000  2744	!++

;13100  2745	! FUNCTIONAL DESCRIPTION:

;13200  2746	!

;13300  2747	!	THIS ROUTINE BUILDS A SUB-HEADER TITLE AND OUTPUTS IT TO THE MAP

;13400  2748	!	FILE.  IT INITIALIZES THE AUTOMATIC MAP SUB-HEADER GENERATION.

;13500  2749	!

;13600  2750	! FORMAL PARAMETERS:

;13700  2751	!

;13800  2752	!	SUBHDRDSC -- ADDRESS OF 2 FAO CONTROL STRING DESCRIPTORS FOR THE SUB-HEADER

;13900  2753	!			WHICH IS ASSUMED TO BE TWO LINES LONG,

;14000  2754	!			CONSISTING OF UNDERLINED COLUMN HEADERS

;14100  2755	!	ARG1 -- FAO ARGUMENT FOR SUBHEADER WHICH WAS TOO LONG TO MAKE ONE

;14200  2756	!			COUNTED ASCII STRING

;14300  2757	!

;14400  2758	! IMPLICIT INPUTS:

;14500  2759	!

;14600  2760	!	NONE

;14700  2761	!

;14800  2762	! IMPLICIT OUTPUTS:

;14900  2763	!

;15000  2764	!	THE SUBHEADER IS SET UP AND WRITTEN TO THE MAP FILE.  IT IS

;15100  2765	!	STORED AS POSSIBLE OUTPUT ON FUTURE PAGES.  SUBHDLINE IS

;15200  2766	!	INITIALIZED TO CAUSE AUTOMATIC SUB-HEADER GENERATION.  A BLANK

;15300  2767	!	LINE IS OUTPUT FOLLOWING THE SUB-HEADER LINE.

;15400  2768	!

;15500  2769	! ROUTINE VALUE:

;15600  2770	!

;15700  2771	!	NOVALUE

;15800  2772	!

;15900  2773	! COMPLETION CODES:

;16000  2774	!

;16100  2775	!	NONE

;16200  2776	!

;16300  2777	! SIDE EFFECTS:

;16400  2778	!

;16500  2779	!	NONE

;16600  2780	!

;16700  2781	!--



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-5

; Digital Equipment Corporation

;

;16800  2782	!

;16810  2783	OWN	EXTRA_FAO_ARG;						! REMEMBER PREVIOUS VALUE OF ARG1

;16820  2784	!

;16830  2785	BUILTIN	ACTUALCOUNT;

;16840  2786	!

;17000  2787	MAP	SUBHDRDSC : REF VECTOR;					! POINTER TO DESCRIPTOR VECTOR

;17100  2788	LOCAL

;17200  2789			FAO_ERRCODE,					! FAO ERROR CODE

;17300  2790			SUBHEADLNG,					! LENGTH OF FORMATTED LINE (RETURNED BY FAO)

;17400  2791			SUBHEADBUF : CH$SEQUENCE(LEN$C_MAPLINE),	! BUFFER FILLED BY FAO

;17500  2792			SUBHEADBUFDSC : VECTOR[2];			! DESCRIPTOR OF ABOVE BUFFER

;17600  2793	!

;17700  2794		IF .SUBHDRDSC EQL 0

;17800  2795		THEN RETURN TRUE;					! IF THERE IS NONE,RETURN

;17810  2796		IF ACTUALCOUNT() EQL 2					! IF A SECOND ARGUMENT PRESENT,

;17820  2797		THEN EXTRA_FAO_ARG = .ARG1;				! REMEMBER FOR NEXT TIME

;17900  2798		SUBHEADBUFDSC[0] = LEN$C_MAPLINE;			! INITIALIZE THE BUFFER DESCRIPTOR

;18000  2799		SUBHEADBUFDSC[1] = SUBHEADBUF;				! FOR CALL TO FAO

;18100  2800		INCR I FROM 0 TO 2 BY 2					! LOOP TO DO BOTH LINES

;18200  2801		DO BEGIN

;18300  2802			IF NOT (FAO_ERRCODE=SYS$FAO(SUBHDRDSC[.I],SUBHEADLNG,SUBHEADBUFDSC,

;18350  2803					.EXTRA_FAO_ARG))		! FORMAT THE NEXT LINE

;18400  2804			THEN FAOFAIL(.FAO_ERRCODE);

;18500  2805			IF NOT LNK$MAPOUT(SUBHEADBUF,.SUBHEADLNG)	! OUTPUT IT

;18600  2806			THEN RETURN FALSE;				! EXITING IF FAILURE

;18700  2807		   END;							! END LOOP TO INSERT SUBHEADER

;18800  2808		SUBHDLINE = .SUBHDRDSC;					! SET A SUBHEADER ADDRESS

;18900  2809		RETURN TRUE;						! SUCCESSFUL RETURN

;19000  2810	END;







							    .PSECT  $OWN$,NOEXE,2



					      0033C EXTRA_FAO_ARG:

							    .BLKB   4







							    .PSECT  $CODE$,NOWRT,2



					 001C 00E73 MAPSUBHDR:

							    .WORD   Save R2,R3,R4					      ; 2742

		         5E	FF70   CE  9E 00E75 	    MOVAB   -144(SP), SP					      ;

		         53	  04   AC  D0 00E7A 	    MOVL    SUBHDRDSC, R3					      ; 2794

				       50  13 00E7E 	    BEQL    4$							      ;

		         02	       6C  91 00E80 	    CMPB    (AP), #2						      ; 2796

				       06  12 00E83 	    BNEQ    1$							      ;

		  0000'  CF	  08   AC  D0 00E85 	    MOVL    ARG1, EXTRA_FAO_ARG					      ; 2797

		    04   AE	  84   8F  9A 00E8B 1$:     MOVZBL  #132, SUBHEADBUFDSC					      ; 2798

		    08   AE	  0C   AE  9E 00E90 	    MOVAB   SUBHEADBUF, SUBHEADBUFDSC+4				      ; 2799

				       52  D4 00E95 	    CLRL    I							      ; 2800

				0000'  CF  DD 00E97 2$:     PUSHL   EXTRA_FAO_ARG					      ; 2802

				  08   AE  9F 00E9B 	    PUSHAB  SUBHEADBUFDSC					      ;

				  08   AE  9F 00E9E 	    PUSHAB  SUBHEADLNG						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-6

; Digital Equipment Corporation

;

				     6342  DF 00EA1 	    PUSHAL  (R3)[I]						      ;

	      00000000G  00	       04  FB 00EA4 	    CALLS   #4, SYS$FAO						      ;

		         54	       50  D0 00EAB 	    MOVL    R0, FAO_ERRCODE					      ;

		         07	       54  E8 00EAE 	    BLBS    FAO_ERRCODE, 3$					      ;

				       54  DD 00EB1 	    PUSHL   FAO_ERRCODE						      ; 2804

		  F294   CF	       01  FB 00EB3 	    CALLS   #1, FAOFAIL						      ;

				       6E  DD 00EB8 3$:     PUSHL   SUBHEADLNG						      ; 2805

				  10   AE  9F 00EBA 	    PUSHAB  SUBHEADBUF						      ;

		  FF3F   CF	       02  FB 00EBD 	    CALLS   #2, LNK$MAPOUT					      ;

		         0F	       50  E9 00EC2 	    BLBC    R0, 5$						      ;

	   52	         02	       02  F1 00EC5 	    ACBL    #2, #2, I, 2$					      ; 2800

				     FFCC     00EC9									      ;

		  0000'  CF	       53  D0 00ECB 	    MOVL    R3, SUBHDLINE					      ; 2808

		         50	       01  D0 00ED0 4$:     MOVL    #1, R0						      ; 2809

					   04 00ED3 	    RET     							      ;

				       50  D4 00ED4 5$:     CLRL    R0							      ; 2742

					   04 00ED6 	    RET     							      ;



; Routine Size:  100 bytes





;19100  2811	ROUTINE NEWPAGE =					! OUTPUT NEW PAGE, ITS HEADING AND SUBHEADER

;19200  2812	

;19300  2813	!++

;19400  2814	! FUNCTIONAL DESCRIPTION:

;19500  2815	!

;19600  2816	!	THIS ROUTINE OUTPUTS A FORM FEED AND THE MAP HEADER LINE.  IT

;19700  2817	!	CONDITIONALLY OUTPUTS A SUB-HEADER LINE.  BALNK LINES FOLLOW

;19800  2818	!	THE HEADERS.

;19900  2819	!

;20000  2820	! FORMAL PARAMETERS:

;20100  2821	!

;20200  2822	!	NONE

;20300  2823	!

;20400  2824	! IMPLICIT INPUTS:

;20500  2825	!

;20600  2826	!	NONE

;20700  2827	!

;20800  2828	! IMPLICIT OUTPUTS:

;20900  2829	!

;21000  2830	!	A NEW PAGE WITH THE APPROPRIATE HEADERS IS WRITTEN TO THE MAP FILE.

;21100  2831	!

;21200  2832	! ROUTINE VALUE:

;21300  2833	!

;21400  2834	!	NOVALUE

;21500  2835	!

;21600  2836	! COMPLETION CODES:

;21700  2837	!

;21800  2838	!	NONE

;21900  2839	!

;22000  2840	! SIDE EFFECTS:

;22100  2841	!

;22200  2842	!	NONE

;22300  2843	!

;22400  2844	!--



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-7

; Digital Equipment Corporation

;

;22500  2845	!

;22600  2846	BEGIN

;22700  2847	!

;22800  2848	LOCAL

;22900  2849		FAO_ERRCODE,						! FAO ERROR CODE

;23000  2850		HDRDSC : VECTOR[2],					! HEADER BUFFER DESCRIPTOR

;23100  2851		HDRBUF : CH$SEQUENCE[LEN$C_MAPLINE],			! HEADER BUFFER

;23200  2852		HDRSIZ;							! HEADER LINE LENGTH FROM FAO

;23300  2853	!

;23400  2854		LINECNT = 0;						! RESET COUNT OF LINES ON CURRENT PAGE

;23500  2855		HDRDSC[0] = LEN$C_MAPLINE;				! INITIALIZE THE HEADER BUFFER

;23600  2856		HDRDSC[1] = HDRBUF;					! DESCRIPTOR FOR FAO

;23700  2857	!

;23800  2858		IF NOT (FAO_ERRCODE=SYS$FAO(HDR_CNTRL_STR,HDRSIZ,HDRDSC,IMAGEFILENAME,

;23900  2859			LNK$GQ_STARTIM,MAJ_IDENT_LNG,LNK$AW_VERSION[LID$W_MAJOR],

;24000  2860			MIN_IDENT_LNG,LNK$AW_VERSION[LID$W_MINOR],.PAGENUM))	! FORMAT HEADER LINE

;24100  2861		THEN BEGIN

;24200  2862			FAOFAIL(.FAO_ERRCODE);

;24300  2863			RETURN FALSE;				! REPORT ERROR

;24400  2864		     END;					!

;24500  2865		PAGENUM = .PAGENUM + 1;				! COUNT NEW PAGE

;24600  2866		IF NOT LNK$MAPOUT(HDRBUF,.HDRSIZ)		! OUTPUT MAIN PAGE HEADING

;24700  2867		THEN RETURN FALSE;				! GIVING UP ON FAILURE

;24800  2868		MAPSUBHDR(.SUBHDLINE);				! OUTPUT SUB HEADING IF ANY

;24900  2869		RETURN TRUE;						! RETURN SUCCESS STATUS

;25000  2870	END;











					 0800 00ED7 NEWPAGE:.WORD   Save R11						      ; 2811

		         5B	0000'  CF  9E 00ED9 	    MOVAB   PAGENUM, R11					      ;

		         5E	FF70   CE  9E 00EDE 	    MOVAB   -144(SP), SP					      ;

				  FC   AB  D4 00EE3 	    CLRL    LINECNT						      ; 2854

		    F8   AD	  84   8F  9A 00EE6 	    MOVZBL  #132, HDRDSC					      ; 2855

		    FC   AD	  04   AE  9E 00EEB 	    MOVAB   HDRBUF, HDRDSC+4					      ; 2856

				       6B  DD 00EF0 	    PUSHL   PAGENUM						      ; 2858

				0000G  CF  9F 00EF2 	    PUSHAB  LNK$AW_VERSION+2					      ; 2860

				       02  DD 00EF6 	    PUSHL   #2							      ; 2858

				0000G  CF  9F 00EF8 	    PUSHAB  LNK$AW_VERSION					      ; 2859

				       02  DD 00EFC 	    PUSHL   #2							      ; 2858

				0000G  CF  9F 00EFE 	    PUSHAB  LNK$GQ_STARTIM					      ;

				  6C   AB  9F 00F02 	    PUSHAB  IMAGEFILENAME					      ;

				  F8   AD  9F 00F05 	    PUSHAB  HDRDSC						      ;

				  20   AE  9F 00F08 	    PUSHAB  HDRSIZ						      ;

				FE74   CB  9F 00F0B 	    PUSHAB  HDR_CNTRL_STR					      ;

	      00000000G  00	       0A  FB 00F0F 	    CALLS   #10, SYS$FAO					      ;

		         09	       50  E8 00F16 	    BLBS    FAO_ERRCODE, 1$					      ;

				       50  DD 00F19 	    PUSHL   FAO_ERRCODE						      ; 2862

		  F22C   CF	       01  FB 00F1B 	    CALLS   #1, FAOFAIL						      ;

				       1B  11 00F20 	    BRB     2$							      ; 2863

				       6B  D6 00F22 1$:     INCL    PAGENUM						      ; 2865

				       6E  DD 00F24 	    PUSHL   HDRSIZ						      ; 2866

				  08   AE  9F 00F26 	    PUSHAB  HDRBUF						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-8

; Digital Equipment Corporation

;

		  FED3   CF	       02  FB 00F29 	    CALLS   #2, LNK$MAPOUT					      ;

		         0C	       50  E9 00F2E 	    BLBC    R0, 2$						      ;

				  04   AB  DD 00F31 	    PUSHL   SUBHDLINE						      ; 2868

		  FF3A   CF	       01  FB 00F34 	    CALLS   #1, MAPSUBHDR					      ;

		         50	       01  D0 00F39 	    MOVL    #1, R0						      ; 2869

					   04 00F3C 	    RET     							      ;

				       50  D4 00F3D 2$:     CLRL    R0							      ; 2811

					   04 00F3F 	    RET     							      ;



; Routine Size:  105 bytes





;25100  2871	ROUTINE NEWLINE =					! ROUTINE TO OUTPUT A BLANK LINE

;25200  2872	

;25300  2873	!++

;25400  2874	! FUNCTIONAL DESCRIPTION:

;25500  2875	!

;25600  2876	!	THIS ROUTINE OUTPUTS A BLANK LINE TO THE MAP FILE, UPDATING THE

;25700  2877	!	LINE COUNTER.

;25800  2878	!

;25900  2879	! FORMAL PARAMETERS:

;26000  2880	!

;26100  2881	!	NONE

;26200  2882	!

;26300  2883	! IMPLICIT INPUTS:

;26400  2884	!

;26500  2885	!	NONE

;26600  2886	!

;26700  2887	! IMPLICIT OUTPUTS:

;26800  2888	!

;26900  2889	!	OUTPUTS A BLANK LINE TO THE MAP FILE.

;27000  2890	!	INCREMENTS THE LINE COUNTER.

;27100  2891	!

;27200  2892	! ROUTINE VALUE:

;27300  2893	!

;27400  2894	!	NOVALUE

;27500  2895	!

;27600  2896	! COMPLETION CODES:

;27700  2897	!

;27800  2898	!	NONE

;27900  2899	!

;28000  2900	! SIDE EFFECTS:

;28100  2901	!

;28200  2902	!	NONE

;28300  2903	!

;28400  2904	!--

;28500  2905	!

;28600  2906	BEGIN

;28900  2907		IF NOT LNK$MAPOUT(OUTLINE,0)				! OUTPUT A BLANK LINE

;29000  2908		THEN RETURN FALSE;					! AND GIVE UP IF IT FAILS

;29100  2909		RETURN TRUE;						! REPORT SUCCESS

;29200  2910	END;









; Bliss-32 7.352	Saturday 22-AUG-1978 04:48:26	DBB3:[LINKER.SRC]LNKMAPRTN.B32;7				Page 7-9

; Digital Equipment Corporation

;





					 0000 00F40 NEWLINE:.WORD   Save nothing					      ; 2871

				       7E  D4 00F42 	    CLRL    -(SP)						      ; 2907

				0000'  CF  9F 00F44 	    PUSHAB  OUTLINE						      ;

		  FEB4   CF	       02  FB 00F48 	    CALLS   #2, LNK$MAPOUT					      ;

		         04	       50  E9 00F4D 	    BLBC    R0, 1$						      ;

		         50	       01  D0 00F50 	    MOVL    #1, R0						      ; 2909

					   04 00F53 	    RET     							      ;

				       50  D4 00F54 1$:     CLRL    R0							      ; 2871

					   04 00F56 	    RET     							      ;



; Routine Size:  23 bytes





;29300  2911	END ELUDOM













;				       PSECT SUMMARY

;

;	Name		 Bytes			       Attributes

;

;  $PLIT$         	  2808  NOWRT,  RD ,NOEXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)

;  $OWN$          	   832    WRT,  RD ,NOEXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)

;  $GLOBAL$       	   100    WRT,  RD ,NOEXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)

;  $CODE$         	  3927  NOWRT,  RD ,  EXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)









;				LIBRARY STATISTICS

;

;					     -------- Symbols --------    Blocks

;	File				     Total    Loaded   Percent      Read

;

;  DBA4:[SYSLIB]LIB.L32;1		      5582        77         1       260











; Size:		3927 code + 3740 data bytes

; Run Time:	03:55.0

; Elapsed Time:	04:01.0

; Memory Used:	716 pages

; Compilation Complete

