Google
 

Trailing-Edge - PDP-10 Archives - ap-c796e-sb - mcr53.rnd
There are no other files named mcr53.rnd in the archive.
.LM0.RM70.F.J.PS58,70.FLAG CAP
\\
<MACRO.DOC -- ^CHANGES FROM <MACRO <V52(551) TO <V53(1020)
.br
^MARCH 1978
.FG30
^^COPYRIGHT (C) 1976,1978 BY
.BR
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
.B2
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
OF THE ABOVE
COPYRIGHT NOTICE. ^THIS SOFTWARE OR ANY OTHER COPIES THEREOF MAY NOT
BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
.B1
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
.B1
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL\\.
.TITLE <MCR53.DOC
.PG
<MACRO.DOC -- ^CHANGES FROM <MACRO <V52(551) TO <V53(1020)
.BR
^MARCH 1978
.B3
1.0##<SUMMARY
.B1
^THE PURPOSE OF THIS RELEASE IS TO PROVIDE A SOFTWARE MULTIPLE-SEGMENTATION (<PSECT) FACILITY.
.B 1;.LM 0
<MACRO VERSION 53 IS SUPPORTED BY ^DIGITAL ^EQUIPMENT ^CORPORATION, AND
RUNS ON ALL SUPPORTED MONITORS AS RELEASED.  ^VERSION 53 FULLY
SUPERSEDES ALL PREVIOUS VERSIONS, AND INCLUDES EDITS UP TO _#1020.
.B1
<MACRO ^V53 REQUIRES FIELD IMAGE <HELPER.REL TO BE ON <SYS: IN ORDER TO TYPE OUT THE
HELP FILE <MACRO.HLP, WHICH SHOULD BE PLACED ON <HLP: OR <REL:.
.b1
<MACRO ^V53 REQUIRES THAT IF <PSECTS ARE USED, THE RESULTANT <.REL FILES
BE LOADED WITH <LINK <V4, WHICH FULLY SUPPORTS THE <PSECT FACILITY.
.B1
<MACRO IS DOCUMENTED IN THE <DEC<SYSTEM-10 ^USER'S ^GUIDE, AND
IN THE <DEC<SYSTEM-10 <MACRO ^USER'S ^GUIDE.
.B 3;.LM 0
2.0##<EXTERNAL <CHANGES
.lm9.b1.i-4
1.##<.PSECT PSEUDO-OP:
.B1
^THE <.PSECT PSEUDO-OP DIRECTS <MACRO TO START OR CONTINUE PLACING CODE AND/OR
DATA INTO THE NAMED PROGRAM SECTION. ^SYNTAX:
.B1.I5
<_.PSECT NAME, ORIGIN
.B1
^WHERE "NAME" IS THE NAME OF THE PROGRAM SECTION; NAME MAY BE ANY CONSTRUCTION
WHICH WOULD BE VALID AS A SYMBOL BUT WILL NOT CONFLICT WITH A SYMBOL OR MACRO OF THE SAME NAME.
.B1
<MACRO WILL GENERATE A GLOBAL SYMBOL HAVING THE <PSECT NAME AND AT LOAD TIME THE SYMBOL
WILL TAKE ON THE <PSECT ORIGIN AS ITS VALUE.
.B1
^THE ORIGIN, IF SUPPLIED IN THE PROGRAM, TELLS <LINK WHERE THE <PSECT ORIGIN
SHOULD BE.  ^IF NOT SUPPLIED THEN IT MUST BE SET BY THE /<SET:NAME:ORIGIN SWITCH
TO <LINK.  ^IF BOTH ARE SUPPLIED, WHICHEVER OCCURS FIRST IS USED AND
CANNOT BE OVER-RIDDEN BY A LATER DECLARATION.
.PG.B1.I-4
2.##<.ENDPS PSEUDO OP:
.B1
^THE <.ENDPS PSEUDO-OP DIRECTS <MACRO TO STOP PLACING CODE AND/OR DATA INTO THE
CURRENT PROGRAM SECTION AND TO START PLACING IT IN THE PREVIOUS (MORE OUTER NESTED) PROGRAM SECTION.  ^SYNTAX:
.B1.I5
<_.ENDPS [NAME]
.B1
^THE NAME FIELD IS OPTIONAL AND IF PRESENT WILL BE CHECKED AGAINST THE CURRENT
<_.PSECT NAME.  ^IF THERE IS A DISAGREEMENT, A WARNING DIAGNOSTIC WILL BE ISSUED.  ^THIS
CHECK CANNOT BE DONE FOR THE BLANK <.PSECT.
.B1.I-4
3.##"<PSECT" ^NESTING
.B1
_.<PSECT AND <.ENDPS ARE ESSENTIALLY BRACKETS WHICH SURROUND THE CODE AND/OR
DATA WHICH IS TO BE LOADED INTO THE NAMED PROGRAM SECTION.  ^THESE BRACKETS MAY
BE NESTED TO A MAXIMUM DEPTH WHICH IS AN ASSEMBLY PARAMETER NORMALLY SET TO 16 DECIMAL WHEN THE
<MACRO ASSEMBLER IS ASSEMBLED.  ^ANOTHER SUCH ASSEMBLY PARAMETER WITHIN <MACRO IS THE MAXIMUM
NUMBER OF DISTINCT <.PSECT NAMES WHICH MAY OCCUR WITHIN A SINGLE ASSEMBLY; IT IS NORMALLY SET TO 64 DECIMAL.
.B1.I-4
4.##^RESTRICTIONS
.B1.LM13.I-4
A.##<.PSECT AND <.ENDPS ARE NOT ALLOWED WITHIN A "<UNIVERSAL" FILE.
.B1.I-4
B.##^WHILE <MACRO ALLOWS A MACRO AND A SYMBOL TO HAVE THE SAME NAME, THIS CAN PRODUCE
UNPREDICTABLE RESULTS IF THE TWO ARE NOT IN THE SAME SYMBOL TABLE DURING AN
ASSEMBLY.  ^THIS CAN HAPPEN IF ONE IS IN A UNIVERSAL SYMBOL TABLE AND THE OTHER IS NOT,
OR IF THE TWO APPEAR TO BE IN SEPARATE SEGMENTS.  ^IT IS RECOMMENDED THAT SYMBOLS
AND MACROS OF THE SAME NAME NOT BE EMPLOYED.  ^IF THEY ARE, <DEC RESERVES THE RIGHT TO CHANGE
THE IMPLEMENTATION OF THE <MACRO ASSEMBLER WITH RESPECT TO HOW THIS SITUATION IS TREATED.
.B1.I-4
C.##^IF UNIVERSAL FILES ARE SEARCHED WHILE ASSEMBLING A PROGRAM WITH MULTIPLE PROGRAM SECTIONS,
SYMBOLS WITHIN THE UNIVERSAL FILES WILL APPEAR TO BE IN THE BLANK PROGRAM
SECTION.  ^THIS IS PARTICULARLY RELEVANT TO RELOCATABLE SYMBOLS.
.B1.I-4
D.##<.PSECT, <HISEG, AND <TWOSEG ARE ALL MUTUALLY EXCLUSIVE.
.B1.I-4
E.##^LITERALS CONTAINING INTER-<PSECT REFERENCES WILL NOT BE COLLAPSED, THEREFORE
IF THERE ARE TWO SUCH IDENTICAL LITERALS, TWO SEPARATE ENTRIES IN THE LITERAL
TABLE WILL BE MADE.
.B1.I-4
F.##<PRGEND IS ILLEGAL WITH <.PSECT AND <MACRO WILL TREAT IT LIKE  <END AND THE REST OF THE FILE WILL BE TRUNCATED.
.B1.LM9.I-4
5.##^NEW ^ERROR ^MESSAGES:
.B1.I-2
"^S" ^ERRORS:
.B1.LM13.I-4
A.##^ATTEMPT TO NEST <.PSECT<S TOO DEEP.
.B1.I-4
B.##^ATTEMPT TO UNNEST <.PSECT<S TOO FAR.
.B1.I-4
C.##<.PSECT OCCURS WHILE ASSEMBLING A UNIVERSAL.
.B1.I-4
D.##^TOO MANY DISTINCT <.PSECT NAMES.
.B1.I-4
E.##^ATTEMPT TO MIX <.PSECT WITH <HISEG/TWOSEG.
.B1.LM9.I-2
"^Q" ^WARNING (ADDITIONAL):
.B1.LM13.I-4
A.##<.ENDPS SPECIFIES THE WRONG NAME.
.B1.I-4
B.##<.PSECT SPECIFIES CONFLICTING ATTRIBUTES.
.B1.I-4
C.##<.PSECT SPECIFIES UNKNOWN ATTRIBUTES.
.B1.LM9.I-2
^NEW <MCR ERROR MESSAGES:
.B1.LM13.I-4
A.##<MCRSTO -- ^SEARCH TABLE OVERFLOW
.B1.I-4
B.##<MCRATS -- ^ARGUMENT TOO SMALL.
.B1.I-4
C.##<MCRLTL -- ^LITERAL TOO LONG.
.B1.I-4
D.##<MCRISD -- ^ILLEGAL SYNTAX IN <DEFINE.
.B1.I-4
E.##<MCRISR -- ^ILLEGAL SYNTAX IN <REPEAT.
.B1.I-4
F.##<MCRISC -- ^ILLEGAL SYNTAX IN CONDITIONAL.
.B1.I-4
G.##<MCRISI -- ^ILLEGAL SYNTAX IN <IRP OR <IRPC OR <REPEAT.
.B1.LM9.I-4
6.##<.IF <ARG,REFERENCED,_< .... >
.BR
<.IF <ARG,NEEDED,_< .... >
.B1.LM25.TS25.I-16
<REFERENCED#--	^THE CODE WILL BE ASSEMBLED IF ARG IS IN THE SYMBOL TABLE.
.B1.I-16
<NEEDED#####--	^THE CODE WILL BE ASSEMBLED IF ARG IS IN THE SYMBOL TABLE AND ITS VALUE IS UNDEFINED.
.B1.LM9.I-4
7.##^ALTERNATE ^INTERPRETATIONS OF <MACRO ^ARGUMENTS
.B1
^THE NORMAL ARGUMENT PASSED BY A MACRO CALL IS SIMPLY THE STRING OF CHARACTERS
GIVEN WITH THE CALL.  <MACRO OFFERS THREE ALTERNATE INTERPRETATIONS OF THE PASSED ARGUMENT.
.PG.B1
^IF YOU PREFIX A BACKSLASH (_\) TO AN ARGUMENT, <MACRO EXPECTS A NUMERICAL VALUE AND THE <ASCII STRING REPRESENTATION OF THE VALUE IS PASSED.
.B1
^IF YOU PREFIX A BACKSLASH-APOSTROPHE (_\') TO AN ARGUMENT,
THE ARGUMENT IS EXPECTED TO HAVE A VALUE OF A <SIXBIT STRING. ^THE <ASCII REPRESENTATION OF THAT <SIXBIT VALUE IS PASSED.
.B1
^IF YOU PREFIX A BACKSLASH-QUOTEMARK (_\") TO AN ARGUMENT, THE ARGUMENT
IS EXPECTED TO HAVE A VALUE OF A <ASCII STRING. ^THE <ASCII STRING VALUE IS PASSED.
.B1.LM8.RM80.TS16,24,48,56,62.NF.NJ
<LALL
<DEFINE <LOOKIE(STR,ARG) _<
	<REMARK	^THE PASSED ARGUMENT IS:  <ARG
	<REMARK	BUILD A NEW STRING:	STR'ARG >
.B1.I-8
;^EXAMPLE OF PREFIXING ACTUAL ARGUMENT WITH _\
.I-8
<CASE1:##<VALUE=0
<LOOKIE <LPT,_<VALUE+1>_^
	<REMARK	^THE PASSED ARGUMENT IS:  <VALUE+1
	<REMARK	BUILD A NEW STRING:	<LPTVALUE+1
.I-8
<CASEA1:#<REPEAT 3,_<
<LOOKIE	<LPT,_\_<VALUE+1>
	<VALUE=VALUE+1>
<LOOKIE	<LPT,_\_<VALUE+1>_^
	<REMARK	^THE PASSED ARGUMENT IS:	1
	<REMARK	BUILD A NEW STRING:	<LPT1	_^
	<VALUE=VALUE+1
<LOOKIE	<LPT,_\_<VALUE+1>_^
	<REMARK	^THE PASSED ARGUMENT IS:	2
	<REMARK	BUILD A NEW STRING:	<LPT2	_^
	<VALUE=VALUE+1
<LOOKIE	<LPT,_\_<VALUE+1>_^
	<REMARK	^THE PASSED ARGUMENT IS:	3
	<REMARK	BUILD A NEW STRING:	<LPT3	_^
	<VALUE=VALUE+1
.I-8
;^EXAMPLE OF PREFIXING ARGUMENT WITH _\'
.I-8
<CASE2:##<VALUE='A'
<LOOKIE	<DSK,VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	<VALUE
	<REMARK	BUILD A NEW STRING:	<DSKVALUE	_^
.I-8
<CASE2A:#<REPEAT	3,_<
<LOOKIE	<DSK,_\'VALUE
	<VALUE=VALUE+1>
<LOOKIE	<DSK,_\'VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	^A
	<REMARK	BUILD A NEW STRING:	<DSKA	_^
	<VALUE=VALUE+1
.PG
<LOOKIE	<DSK,_\'VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	<B
	<REMARK	BUILD A NEW STRING:	<DSKB	_^
	<VALUE=VALUE+1
.B1
<LOOKIE	<DSK,_\'VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	<C
	<REMARK	BUILD A NEW STRING:	<DSKC	_^
	<VALUE=VALUE+1
.B1.I-8
;^EXAMPLE OF PREFIXING ARGUMENT WITH _\"
.I-8
<CASE3:##<VALUE="XIT"
<LOOKIE	_<<?ERROR <IN <LINK <MODULE <LNK>,VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	<VALUE
	<REMARK	BUILD A NEW STRING:	<?ERROR <IN <LINK <MODULE <LNKVALUE	_^
.I-8
<CASE3A:##<LOOKIE	_<<?ERROR <IN <LINK <MODULE <LNK>,_\"VALUE_^
	<REMARK	^THE PASSED ARGUMENT IS:	<XIT
	<REMARK	BUILD A NEW STRING:	?<ERROR <IN <LINK <MODULE <LNKXIT
.B1.LM9.RM70.PS58,70.F.J.I-4
8.##^POLISH BUGS FIXED IN THE FOLLOWING AREAS:
.B1
^^_<XWD POL,POL>\\ OR ^^_<POL,,POL>\\
.B1
^^_<IOWD POL>\\
.B1.I3
^^-_<POL>\\
.B1.I3
-<EXP WHERE <EXP IS A RELOCATABLE EXPRESSION
.B1.I3
^^@POL(AC)\\
.B1.I3
^^OPDEF FOO [ POL ]\\
.B1
^GENERATE FULL WORD FIXUP FOR <FOO_#_#
.B1.LM9.F.J.I-4
9.##^POLISH LISTING FORMAT
.B1
^A NUMBER SIGN (_#) IN THE LISTING INDICATES THAT A ^POLISH EXPRESSION IS REQUIRED
TO RESOLVE THE EXPRESSION:
.B1
^FOR EXAMPLE:
.B1.LM9.NF.NJ
561  02  000  000000_#      ;REQUIRES RIGHT HALF ^POLISH FIXUP
000000000000_#              ;REQUIRES FULL WORD ^POLISH FIXUP
000000_# 000002             ;REQUIRES LEFT HALF ^POLISH FIXUP
.PG.B1.F.J.LM9.I-5
10.##<PSECT INDEX IN LISTING
.B1
<PSECT INDEX IS OUTPUT AT THE END OF RELOCATION COUNTER VALUE IN THE LISTING, SEE EXAMPLE BELOW:
.B1.LM0.RM130.TS36,44,52,66.NF.NJ
^^5172	;GETNAM - RETURN LOCAL NODE NAME
5173
5174  005654'02 256 04 0 00 007001'	GETNAM:	UMOVE	T2,2	;GET ADDRESS OF USER'S ARGUMENT BLOCK
5175  005655'02 256 04 0 00 007002'		UMOVE	T1,.NDNOD(T2)	;GET POINTER TO WHERE NODE NAME IS TO GO
5176  005656'02 201 03 0 02 000000		MOVEI	T3,.NDNOD(T2)	;GET ADDRESS TO RETURN UPDATED POINTER
5177  005657'02 561 02 0 00 000000_#		HRROI	T2,OURNAM-1	;GET POINTER TO SOURCE STRING
5178  005660'02 260 17 0 00 000000*		CALL	CPYTU1	;COPY STRING TO USER SPACE, RETURN POINTER
5179  005661'02 254 00 0 00 005653*		RETSKP		;DONE, RETURN SUCCESS
5180
5181
5182		TNXEND
5183		END
PROGRAM BREAK IS 000000
PSECT 1 BREAK IS 000534 FOR RSCOD
PSECT 2 BREAK IS 007036 FOR NRCOD
PSECT 3 BREAK IS 000066 FOR BGSTR
PSECT 4 BREAK IS 000011 FOR BGPTR
CPU TIME USED 02:28.153
.B1
98P CORE USED\\
.PS58,70.B1.LM9.F.J.I-5
11.##^POLISH NOT ALLOWED WITH <RELOC _& <BLOCK _& ^CONDITIONALS
.I-5
12.##<KL INSTRUCTIONS HAVE BEEN UPDATED
.B1.LM0.RM70.C
<JRST AND <JFCL ^MNEMONICS
.C
-----------------------
.B2.LM5.NF.NJ.TS 28,38,60
^^
254 04 0 00 000000	 HALT	254 04 0 00 000000	JRST 4,
255 06 0 00 000000	 JCRY	255 06 0 00 000000	JFCL 6,
255 04 0 00 000000	 JCRY0	255 04 0 00 000000	JFCL 4,
255 02 0 00 000000	 JCRY1	255 02 0 00 000000	JFCL 2,
254 12 0 00 000000	 JEN	254 12 0 00 000000	JRST 12,
255 01 0 00 000000	 JFOV	255 01 0 00 000000	JFCL 1,
255 10 0 00 000000	 JOV	255 10 0 00 000000	JFCL 10,
254 02 0 00 000000	 JRSTF	254 02 0 00 000000	JRST 2,
254 01 0 00 000000	 PORTAL	254 01 0 00 000000	JRST 1,
254 06 0 00 000000	 XJEN	254 06 0 00 000000	JRST 6,
254 05 0 00 000000	 XJRSTF	254 05 0 00 000000	JRST 5,
254 07 0 00 000000	 XPCW	254 07 0 00 000000	JRST 7,
254 14 0 00 000000	 XSFM	254 14 0 00 000000	JRST 14,
\\
.PG.LM0.C
<KL10 <EXTEND ^INSTRUCTION ^MNEMONICS
.C
---------------------------------
.B2.LM5.NF.NJ.TS 28,38,60
^^
002 00 0 00 000000	 CMPSE	010 00 0 00 000000	 CVTDBO
007 00 0 00 000000	 CMPSG	011 00 0 00 000000	 CVTDBT
005 00 0 00 000000	 CMPSGE	004 00 0 00 000000	 EDIT
001 00 0 00 000000	 CMPSL	016 00 0 00 000000	 MOVSLJ
003 00 0 00 000000	 CMPSLE	014 00 0 00 000000	 MOVSO
006 00 0 00 000000	 CMPSN	017 00 0 00 000000	 MOVSRJ
012 00 0 00 000000	 CVTBDO	015 00 0 00 000000	 MOVST
013 00 0 00 000000	 CVTDBT	020 00 0 00 000000	 XBLT\\
.B1.LM9.F.J.I-5
13.##^TAGS DEFINED IN A LITERAL:
.B1
^TAGS IN LITERALS MAY BE REFERENCED ANYWHERE FROM THE PROGRAM WITH THE FOLLOWING RESTRICTIONS.
.B1.LM13.I-4
A.##^MAY <NOT BE USED IN AN ARBITRARY EXPRESSION.
.B1.I-4
B.##^MAY <NOT BE REFERENCED FROM ANOTHER <PSECT.
.B1.LM9.F.J.I-5
14.##^CODE ^GENERATION ^CHANGES:
.B1
^THE DESCRIPTIONS OF THE BLOCK TYPES 24,23, AND 22 SUPERCEDE THE DESCRIPTIONS IN THE <LINK MANUAL.
.B1
<BLOCK 24##--#<MACRO GENERATES A SET OF BLOCK 24'S AT THE BEGINNING OF THE ^REL FILE FOR EACH <PSECT
IN THIS ASSEMBLY. ^A TYPE 24 CONTAINS THREE DATA WORDS#--#A <PSECT NAME IN <SIXBIT, ITS ATTRIBUTES (RIGHT HALF)
AND ITS INDEX (LEFT HALF), AND ITS ORIGIN. ^A BLOCK 24 ESTABLISHES A <PSECT AND ASSOCIATES IT WITH AN
INDEX NUMBER SO THAT BLOCK 22'S AND BLOCK
11'S THAT FOLLOW MAY REFERENCE <PSECT<S BY THE <PSECT INDEX NUMBER.
.B1
<BLOCK 22#--#^INTERSPERSED WITH THE TYPE 1 AND TYPE 2 CODES THERE ARE TYPE
22 CODES. ^A TYPE 22 DIRECTS THE LINKING LOADER TO PLACE SUBSEQUENT TYPE 1 AND TYPE 2 INFORMATION INTO THE NAMED
<_.PSECT.
^A TYPE 22 WILL ALSO PRECEDE THE TYPE 7 BLOCK IF ONE OCCURS AND OTHER
TYPE 22S HAVE BEEN EMITTED. ^A TYPE 22 CONTAINS ONLY ONE DATA WORD WHICH IS THE <PSECT INDEX.
.PG.B1
<BLOCK 23#--#^<MACRO GENERATES A SET OF BLOCK 23'S FOR
ALL THE <PSECT<S AT THE END.  ^A TYPE 23 CONTAINS TWO DATA WORDS.  ^THE FIRST IS A <.PSECT NAME IN <SIXBIT.  ^THE SECOND CONTAINS
THE <.PSECT BREAK.
.B1
<BLOCK 11#--#^THERE IS AN ADDITIONAL TYPE OF ^POLISH FIXUP WHICH OCCURS FOR ASSEMBLIES
WITH MULTIPLE <.PSECT<S.  ^WITH MULTIPLE <.PSECT<S, IT IS NECESSARY TO DISTINGUISH AMONG
THE <.PSECT<S WITHIN THE FIXUPS IN ORDER THAT RELOCATION WILL OCCUR PROPERLY.
^HALFWORD <PSECT INDEX OF THE FORM 400000+(N-1) INDICATES NEXT
RELOCATABLE ADDRESS IS TO BE RELOCATED WITH RESPECT TO THE <PSECT
WHICH IS NAMED BY THE N'TH TYPE 23 BLOCK. ^THE VERY FIRST <PSECT
INDEX IN BLOCK 11 DEFINES THE CURRENT <PSECT AND THE
RELOCATION COUNTER FOR THE STORE ADDRESS. ^ANY RELOCATABLE
OPERAND WITH A DIFFERENT RELOCATION COUNTER MUST BE PRECEDED
 BY THE PROPER <PSECT INDEX.
.B1
<BLOCK 10#--#^FORWARD REFERENCES OF A TAG DEFINED IN A <LITERAL ARE CHAINED SIMILARLY TO
THAT OF AN EXTERNAL CHAIN.  ^A BLOCK 10 IS GENERATED CONTAINING THE VALUE OF
THE TAG AND THE START OF THE CHAIN. ^A SEPARATE CHAIN IS GENERATED
FOR EACH <PSECT JUST AS A SEPARATE EXTERNAL CHAIN IS GENERATED FOR <PSECT.
.B1.I-5
15.##^BETTER <RELOC,LOC, <.ORG INTERACTIONS
.B1.I-5
16.##^ADD <.NODDT PSEUDO-OP --
.B1
^SUPPRESS <DDT AND PART OF SYMBOL NAMES
.B1.I-5
17.##<REL FILES GENERATED BY <MACRO <V52
AND <MACRO <V53 MAY NOT COMPARE WITH <FILCOM.
.B1.I-5
18.##^UNIVERSALS ARE NOT SEARCHED WHEN PROCESSING LABEL, _#_#, <END
STATEMENT AND THE FOLLOWING PSEUDO-OPS: <EXTERN, <OPDEF, <.ASSIGN,
<SYN, <INTEGER, <ARRAY, .<COMMON, <DEFINE. ^PSEUDO-OPS <INTERN AND <ENTRY WILL STILL SEARCH UNIVERSALS SINCE THEY ARE NOT TRUELY DEFINING
OCCURRENCES.
.B1.I-5
19.##<OPDEF<'S MAY BE DECLARED <INTERNAL ONLY IF NO LABEL OF THE SAME
NAME EXISTS.
.B1.I-5
20.##<LABEL+OFFSET ERROR REPORTING IS NOW ENTIRELY SOURCE-ORIENTED. ^SPECIFICALLY, BLANK LINES
ARE REFLECTED IN THE OFFSET, AND <MACRO/REPEAT EXPANSION LINES ARE NOT.
.PG.LM0.B3
3.0##<KNOWN <BUGS <AND <DEFICIENCIES
.B1.LM9.I-4
1.##<MACRO CAN'T GENERATE ANY ^POLISH BLOCK WHICH WILL USE MORE THAN 17 WORDS.
.B1.I-4
2.##^YOU CAN'T FORWARD REFERENCE A ^POLISH SYMBOL,
.BR
SHOULD DO:
.B1.I5
<FOO=EXT_#_#+1
.I5
#####_.
.I5
#####_.
.I5
#####_.
.I5
<MOVE##<1,FOO
.B1.I-4
3.##^A ^POLISH <OPDEF IS TREATED INTERNALLY AS A FULL WORD ASSIGNMENT.
^AS A RESULT, <AC AND ADDRESS MAY NOT BE USED WITH IT.
.B2.LM0.F.J
.lm9.b1.i-4
4.##<MACRO<'S FLOATING POINT INPUT ROUTINES DO NOT AGREE WITH THOSE
OF OTHER COMPILERS, <FORTRAN IN PARTICULAR.
.B1.I-4
5.##<MACRO WILL NOT ASSEMBLE A LINE IN <PIP CORRECTLY:
.B1.I6
<DISP###),0
.B1
^ADD ANGLE BRACKETS AROUND THE UN-PAIRED CLOSE PAREN IN <PIP.MAC:
.B1.I6
<DISP###_<)>,0
.B1.I-4
6.##<MACRO WILL NOT ASSEMBLE A LINE IN <RUNOFF CORRECTLY:
.B1.I6
<MSG$###..."
.B1
^DELETE THE UNPAIRED QUOTE MARK AT THE END OF THE LINE <RUNOFF.MAC:
.B1.I6
<MSG$###...
.B1.I-4
7.##<MACRO PREVENTS THE <TWOSEG PSEUDO-OP FROM WORKING ACROSS
<PRGEND. <LOGIN 57 TOOK ADVANTAGE OF THE BUG.
^CORRECT <LOGIN SOURCES AS FOLLOWS:  REMOVE THE <TWOSEG PSEUDO-OP FROM PAGE 1 OF
<LGNUNV. ^ON PAGE 2 OF <LGNUNV, ADD A <TWOSEG TO THE <LGNDCL MACRO
DEFINITION JUST BEFORE THE <RELOC 400000. ^IN <LGNLOW,
ADD A <TWOSEG BEFORE THE <RELOC 400000. ^THIS FIX IS INCLUDED IN
<LOGIN VERSION 60, WHICH IS FULLY COMPATIBLE WITH VERSIONS
50^A, 52, AND 53 OF <MACRO.
.B1.I-4
8.##<MACRO CURRENTLY WILL NOT ALLOW POOLING OF LITERALS WHICH CONTAIN LABELS.
.PG.B1.I-4
9.##^IF THE RIGHT HAND SIDE OF AN ASSIGNMENT STATEMENT IS AN EXPRESSION CONTAINING ^POLISH, ANGLE-BRACKETS MUST SURROUND THE EXPRESSION.
.B1.I-4
10.#^EXPRESSIONS OF THE FORM
.B1.I5
_<<EXT##+1>^B7
.B1
GENERATE A ?<MCREPP ERROR MESSAGE.
.B1.I-4
11.#^INCORRECT <CREF LISTINGS GENERATED WHEN:
.B1.I5
_.ZERO LOOP OF <IRP IS DONE.
.B1.I5
_.REFERENCES SUPPRESSED BY <XLIST INSIDE MACRO EXPANSION.
.B1.I-4
12.#^PHASE ERRORS WILL BE GENERATED BY <MACRO WHEN ASSEMBLING
THE DISTRIBUTED <MIC SOURCE. <MACRO ALLOWS MACRO CALLS TO OCCUR
IN THE OPERAND FIELD OF A SOURCE STATEMENT. ^THE SAMPLE PROGRAM
BELOW SHOWS THE SEQUENCE OF INSTRUCTIONS IN THE <MIC SOURCE
WHICH CAUSES THE PHASE ERRORS TO OCCUR.
.B1.NF.I5
^^SEARCH MACTEN
.I5
JRST MACERR
.I5
MACERR:
.I5
END\\
.B1.F.J
^AS SHOWN ABOVE, <MIC.MAC  FORWARD-REFERENCES
<MACERR, A USER-DEFINED LABEL. ^HOWEVER, <MACERR ALSO HAPPENS
TO BE DEFINED IN <MACTEN AS A MACRO. ^SINCE <MIC SEARCHES
<MACTEN, AND SINCE MACRO CALLS ARE ALLOWED IN OPERAND FIELDS,
THE MACRO DEFINITION IS USED IN ASSEMBLING THE STATEMENT
"^^JRST MACERR\\" IN PASS ONE. ^THIS CAUSES PHASE ERRORS IN PASS
TWO WHEN THE CORRECT LABEL DEFINITION IS USED. ^PROBLEM MAY
BE FIXED BY CHANGING THE LABLE NAME <MACERR SO AS NOT TO CONFLICT
WITH THE MACRO NAME.
.B1.I-4
13.#^IN <SETSRC.MAC, <MACRO ENCOUNTERS A FORWARD REFERENCE OF A
SYMBOL NAME <JSYS, AND <MACRO ASSEMBLES IN <TOPS20 <JSYS
OPCODE INSTEAD OF USER LABEL ADDRESS. ^BY CHANGING THE LABEL NAME
AND ALL ITS REFERENCES IN <SETSRC, YOU WILL GET THE CORRECT ASSEMBLY.
.LM0.B3
4.0##<INSTALLATION <INSTRUCTIONS
.B2
^THE <MACRO SOURCE FILE AS DISTRIBUTED ASSEMBLES AND LOADS
INTO A SHARABLE SEGMENT. ^FOR THIS RELEASE, <MACRO.EXE IS BEING DISTRIBUTED.
^INSTALLATIONS WITHOUT <.EXE FILE SUPPORT MUST RELOAD TO GET
<MACRO.SHR.
.B1
^TO INSTALL <MACRO ^VERSION 53 ON YOUR SYSTEM, COPY THE FILE
<MACRO.EXE TO <SYS:.
.B1
^THE DISTRIBUTED VERSION OF <MACRO.CTL WAS USED TO FIRST BUILD
<MACRO USING FIELD IMAGE (<MACRO 52) <MACRO, AND THEN USE THIS
CREATED VERSION TO CREATE ITSELF. ^THE TWO VERSIONS OF <MACRO ^V53
WERE THEN CHECKED FOR INCONSISTANCIES. ^NONE WERE FOUND.
.B1
^CUSTOMERS WHO WISH TO REBUILD <MACRO AFTER INSTALLING ANY CHANGES
CAN USE <MACRO.CTL AS A GUIDE TO THE BUILDING PROCESS. ^IT IS
UNLIKELY, HOWEVER, THAT THE <.CTL FILE CAN BE EXECUTED WITHOUT MODIFICATION
ON MOST USER SYSTEMS. ^IN PARTICULAR, ATTENTION SHOULD BE GIVEN
TO <ERSATZ DEVICES, STRUCTURE NAMES, <PPN<S AND OTHER SUCH SYSTEM
PARAMETERS.
.B1
<MACRO REQUIRES FIELD IMAGE <HELPER, WHICH IS LOADED
IMPLICITLY VIA AN IMBEDDED <.REQUIRE PSEUDO-OP IN THE
<MACRO SOURCE FILE.
.B3;.LM 0;.F;.J
5.0##<INTERNAL <CHANGES
.B1.LM20.TS10,20.I-20
;^CONTINUED ^VERSION 52
.I-20
;553	(22193)	^FLAG NON-SIXBIT IN SINGLE-QUOTE STRINGS WITH ^Q-ERROR
.I-20
;554	(10382)	^DON'T REPLACE _^^Z WITH <LF UNLESS INPUT <DEV IS <TTY
.I-20
;555	(10202)	^WARN USER IF CODE STORED BEFORE <.COMMON
.I-20
;556	(22425)	^ALLOW LEADING NUMERIC CHAR IN ARGUMENTS TO "<SEARCH"
.I-20
;557	(22491)	^GENERATE -^X (WHERE ^X IS RELOCATABLE) PROPERLY
.I-20
;560	(22488)	^PLACE ALL OCCURENCES OF FLAGS '<INASGN', '<INANGL' UNDER ^POLISH ^FEATURE ^TEST
.I-20
;561	(22490)	^GENERATE -1_^!^X (WHERE ^X IS RELOCATABLE) PROPERLY
.I-20
;562	(22544)	^FIX PAGE OFFSET AFTER <PRGEND
.I-20
;563	(22495)	^FIX ;; COMMENTS LISTING WHEN DEFINED UNDER <LALL
.I-20
;564	(22493)	^PREVENT "<IO <TO <UNASSIGNED <CHANNEL" ERROR AFTER "^^?POLISH TOO COMPLEX\\" ERROR MESSAGE
.I-20
;565	(22489)	^PREVENT TERMINAL WAIT AFTER <PRGEND AFTER BEING DETACHED OR <CCONTED
.I-20
;566	(22498)	^REMOVE ^EDIT 531; BROKE LISTING OF EMBEDDED MACRO CALLS UNDER <XALL
.I-20
;567	(22500)	^ENHANCEMENT <EDIT/REQUEST <REL:HELPER,LC <SYMBOL <TYPES,U-LC <MONTHS
.I-20
;570	(10570)	^PREVENT ^E-ERRORS AFTER PURGE OF <UNDEF OR <EXT SYMBOL
.I-20
;571	(22676)	^FORCE <HISEG TO START ON PAGE BOUNDARY, NOT ^K-BOUNDARY
.I-20
;572	(22748)	^REPLACE ^EDIT 556 BY ALTERNATE EDIT ACCOMPLISHING SAME PURPOSE
.I-20
;573	(22321)	^FIX <LOC/RELOC IN <TWOSEG <RELOC PROGRAMS
.I-20
;574	(22501)	^ADD "^^ILLEGAL SYNTAX IN MACRO DEFINITION"\\ ERROR MESSAGE
.I-20
;575	(22492)	^PUT ALL <PSECT-RELATED CODE UNDER <FTPSECT SWITCH
.I-20
;576	(22485)	^FIX <LABEL+OFFSET ACCROSS SEGMENTS, AND WHEN <OFFSET > 1000
.I-20
;577	(22187)	^FIX LISTING OF <MACRO EXPANSION WITH ERRORS UNDER <SALL
.I-20
.B1.I-20
;^START OF ^VERSION 53
.I-20
;600		^TURN ON <FTPSEC
.I-20
;601		^FIX TAGS IN <LIT USED WITH <PSECT<S
.I-20
;602		^ALLOW <.PSECT/.ENDPS IN <LIT
.I-20
;603		^FORCE EXPRESSION EVALUATION IN CONDITIONAL.
.I-20
;604		^COMMENT OUT <1LINE <@BOUT20+5 (NEEDS RE-WORK)
.I-20
;605		^FIX BUG WITH WRONG <RELOC VALUE FOR <PSECT <@%SWSG2+6
.I-20
;606		^E-ERROR IF <FOO_#_#=EXP <@ASSIG3+6
.I-20
;607		^GENERATE A WORD OF 0 FOR [<SIXBIT_\_\] <@SIXB20+
.I-20
;610		^DO EXPRESSION OF ^POLISH SYMBOLS FROM <UNV IN <PASS2 <@EVNUM+
.I-20
;611		^ALPHABETIZE <.IF/.IFN ATTRIBUTE TABLE.
.I-20
;612		^FIX BUG WITH "<IOWD <A_#_#,FOO" WHEN USED WITH <PSECT
.I-20
;613		^STORE CURRENT <RADIX IN <CURADX AND FREE UP <RX AS <FRR.
.I-20
;614		^OUTPUT "_#" BIN BINARY LISTING TO INDICATE ^POLISH FIXUP.
.I-20
;615		^OUTPUT NUMBER OF PAGES USED INSTEAD.
.I-20
;616		^DON'T ALLOW ^POLISH FOR "<BLOCK" _& "<RELOC" PSEUDO-OPS.
.I-20
;617		^DON'T MAKE <LTAGF SYMBOLS EXTERNALS AT END OF <PASS1.
.I-20
;620		^Q-ERROR IF EXTERNALS PURGED.
.I-20
;621		^ADD <.IF <FOO,REFERENCED,_<...>
.I-20
;622		^FIX BUG WITH OUTPUTTING "_#"
.I-20
;623		^ALLOW EXPRESSIONS OF EXTERNALS AND <PSECT-SYMBOLS.
.I-20
;624		^ALLOW ^POLISH WITH <OPDEF
.I-20
;625		^GENERATE ^POLISH <FWF FOR [<A_#_#]
.I-20
;626		^ADD <.IF <FOO,NEEDED,_<...>
.I-20
;627		^UPDATE <KL INSTRUCTIONS
.I-20
;630		^MORE ON ^EDIT 625 TO CHECK FOR <LH=0,INDIRECT,INEX, _& <POLISH
.I-20
;631		^GENERATE A SET OF <BLOCK23<'S BEFORE ALL THE SYMBOLS
.I-20
;632		(^SAME AS 577)
.I-20
;633		^OUTPUT "_#" AND "*" FOR ASSIGNMENTS AND SYMBOL TABLES.
.I-20
;634		^ALLOW "<A <FOO_#_#+1(1)".
.I-20
;635		^ADD SPECIAL CHARS _\' AND _\" IN A MACRO CALL.
.I-20
;636		^ALLOW <POLISH AND <INDEX<ING
.I-20
;637		^DON'T DO <FWF FOR <OPDEF <A[B_#_#]
.I-20
;640		^SAVE <AC <FR ON STACK BEFORE DOING EXPONENT IN NUMBER PROCESSING.
.I-20
;641		^CHECK FOR <PSECT WHEN DOING <FWF <@OCTFW+
.I-20
;642		^SET <PSECT INDEX TO 0 BEFORE GENERATING <BLOCK 5
.I-20
;643		^FIX BUG WITH <FOO_#_#(1)
.I-20
;644		^FIX BUG WITH <EXP <FOO_#_#,FOO_#_#,FOO_#_#
.I-20
;645		<FWF FOR UNDEFINED SYMBOL IN OPERATOR FIELD.
.I-20
;646		^ILLEGAL TO USE <PRGEND WITH <PSECT, TREAT IT AS END
.I-20
;647		^OUTPUT <PSECT <INDEX IN LISTING
.I-20
;650	(22327)	^FIX DISAPPEARING MACRO CALLS WITH <FF UNDER <SALL
.I-20
;651	(22226)	^FIX VARIETY OF LISTING BUGS TIED TO ERROR-FLAGGING
.I-20
;652	(22999)	^FIX "<ENTRY <FOO" WHERE <FOO IS ALSO AN <OPDEF
.I-20
;653	(22497)	^FLAG "<VERSION <SKEW" IF OLD-STYLE <UNV WITH <SYN
.I-20
;654		^FIX TYPOGRAPHICAL ERROR IN PUBLISHED ^EDIT 564
.I-20
;655	(22482)	^FIX TOO MANY <LINES/PAGE WITH <XLIST INSIDE <SALL <MACRO
.I-20
;656	(22499)	^FIX "<?ILL <MEM <REF" WHILE EXPANDING MACRO CALLS EMBEDDED COMMAS
.I-20
;657	(^Q1382)	^EXTEND NEW <MACRO <ARG HANDLING TO PARENTHESIZED A <ARG STRING
.I-20
;660	(23098)	^RESTORE <IFE/IFN <A_#_# HANDLING TO OLD (PRE-52) WAY
.I-20
;661	(22515)	^PREVENT <ILL <MEM <REF ON UNCLOSED TEXT IN MULTI-LINE ASSIGNMENT
.I-20
;662		^SIMPLIFY ^EDIT 561
.I-20
;663	(23170)	^FIX LOST ERRORS IN <PASS1 DURING LINE "<IMAGE" TYPEOUT
.I-20
;664		^SPEED AND EFFICIENCY ENHANCEMENTS; <ROUTINES: <GETCHR,PRINT,CHARAC,READ1A
.I-20
;665	(23246)	^DON'T TREAT LEADING COMMAS AS SEMICOLONS
.I-20
;666		^FIX VARIOUS BUGS TIED TO "<LABEL+OFFSET" TYPEOUT
.I-20
;667		^FIX BAD <ASCIZ IN <LITERALS (SIDE-EFFECT OF ^EDIT 661)
.I-20
;670		^ALLOW <>NODDT OF <OPDEF (I.E., <.NODDT <PJRST,CALL, ETC.)
.I-20
;671		^REMOVE ^EDIT 657 (I.E., TAKE FAMILIAR PATH OF LEAST RESISTANCE
WITH REGARD TO EXISTING PROGRAMS)
.I-20
;672		^IGNORE REDUNDANT SEARCH <ARG<S, ADD "^SEARCH ^TABLE ^OVERFLOW" ERROR MESSAGE
.I-20
;673	(^Q1286)	^LIST <CRLF<S IN PARENTHESIZED <MACRO <ARG<S CORRECTLY
.I-20
;674		^GIVE ^E-ERROR FOR EXTERNAL ARRAY NAME
.I-20
;675		^HANDLE <INTERN OF MIXED <ARG TYPES CORRECTLY
.I-20
;676		^PREVENT THE USE OF ARGUMENS _< 4 TO _/<NNL
.I-20
;677		^ALLOW <.IF <EXPRESSION,QUALIFIER_<CODE> (OMITTING COMMA)
.I-20
;700		^ALTER "^CORE ^ALLOCATION ^PROBLEM" ERROR MESSAGE, FORCE
REALLOCATION UNLESS _/^U (MEMORY-RESIDENT UNIVERSALS)
.I-20
;701		^FLAG NON-SIXBIT IN <SIXBIT ^PSEUDO-OP CORRECTLY, TERMINATING STRING
.I-20
;702		^REPLACE <MBR,MBC,MBI MESSAGES WITH <ISR,ISC,ISI (SYNTAX CHECKS)
.I-20
;703	(22939)	^HANDLE COMPLES FORWARD <REF OF <SYM WHERE <SYM=POLISH CORRECTLY
.I-20
;704		^FIX BAD <CREF OUTPUT WHEN LISTING <MACRO <ARGS <W/CRLF<S AND "_\"
.I-20
;705	(23527)	^FIX <ILL <MEM <REF WITH <IFX _<<POLISH <SYMBOL> (SIDE EFFECT OF 660)
.I-20
;706	(22484)	^MAKE _<<LH,,POLISH>,_<POLISH,,RH>,_<POLISH,,POLISH> WORK
.I-20
;707		^FIX BUG WITH <LITERAL <PC WHEN DOING <PSECT CHANGES AT END.
.I-20
;710		^GET CORRECT RELOCATION WHEN EVALUATING "!".
.I-20
;711		^ENTER ^PSECT-NAMES AS EXTERNAL SYMBOLS.
.I-20
;712		^COLLAPSE 2 INSTRUCTIONS INTO <EXTRN2 ROUTINE
.I-20
;713		^MOVE NO <UNV SEARCH FLAG INTO <AC <FRR.
.I-20
;714		^RESET SYMBOL TABLE POINTER WHEN A TAG HAS OTHER USE IN <DIFF <PSECT<S
.I-20
;715		^SEARCH ONLY CURRENT SYMBOL TABLE IN LOOKING FOR <VAR<S.
.I-20
;716		^RESET <REL1P POINTER AT PASS INITIALIZATION
.I-20
;717		^BUG FIX WITH <PSECT OUTPUT FORMAT
.I-20
;720		^FLAG <.DIRECT NO NO <ARG WITH ^Q-ERROR
.I-20
;721		^FIX BUG IN ^EDIT 573 WITH <RELOC/RELOC/LOC/RELOC <ARG
.I-20
;722	(10945)	^FLAG <IOWD <A,B WHERE <A IS <RELOC WITH ^R-ERROR
.I-20
;723	(10929)	^FIX TRUNCATING OR GARBLING OF LONG <PRINTX TEXT
.I-20
;724	(23826)	^GIVE "<UNASSIGNED" ERROR MESSAGE FOR UNDEFINED SYMBOLS
WITH UNRESOLVED <36BIT VALUES (E.G. <B=B+1000000).
.I-20
;725	(23588)	^DON'T COLLAPSE LITERALS WHICH CONTAIN LABELS.  ^THIS EDIT
SHOULD BE REMOVED WHEN A FACILITY IS ADDED TO UPDATE
LABEL VALUES AFTER LITERAL POOLING.
.I-20
;726		^IMPLEMENT "<LTL <LITERAL <TOO <LONG" ERROR MESSAGE.
.I-20
;727		^GENERATE CORRECT ^POLISH FOR _<<POL>.
.I-20
;730		^GENERATE CORRECT ^POLISH FOR _<<IOWD <POL,POL>
.I-20
;731	<BBN	^BUG FIX WITH <GETCHR
.I-20
;732		^INCLUDE ^S-ERROR IN DEFINITION OF ERRORS.
.I-20
;733	(24065)	^FIX BAD ENTRY BLOCK CAUSED BY BAD <SEARCH/ENTRY INTERACTION
.I-20
;734	(23987)	^HANDLE NEGATIVE RELOCATION CORRECTLY WITH ^POLISH
.I-20
;735		^ALLOW FORWARD-REF OF TAGS IN <LIT(<GENERATE 10-BLOCKS).
.I-20
;736		^FIXUP <SYMTAB AFTER <FORWARD-REF TO <USER-DEFINED OPERATOR.
(<MACRO,OPDEF,SYN)
.I-20
;737		^FIX BUG WITH THE NEW <IOWD CODE.
.I-20
;740		^CHECK FOR NON-REFERENCED LITERAL TAGS.
.I-20
;741		^A-ERROR WHEN <LH-<TRUNCATED WITH <RELOC.
.I-20
;742		<VARF (<TREF) USED WITH <LTAGF MEAN TAG REFERENCED.
.I-20
;743		^SUPPRESS <PASS1 <IFX ^V-ERROR.
.I-20
;744	(^Q2191)	^MAKE SURE <LTGSW GETS CLEARED EACH TIME.
.I-20
;745		^CHECK FOR <SPTR BEFORE UPDATE IN <ASSIGN.
.I-20
;746		^GIVE <ERRMSG WHEN <MRP POINTS TO 0 DUE TO <MACRO EXPANSION <ERR.
.I-20
;747		^GENERATE CORRECT ^POLISH FOR <_<E,,K>,_<K,,E>, _& <_<E,,E>.
.I-20
;750		^FIX BUG WITH <@POL(K).
.I-20
;751		_<^POINT <K,POL,POL> TO USE <ANGFP ROUTINES.
.I-20
;752		^RESOLVE EDIT 736 _& 675 CONFLICT IN <OPDEF HANDLING.
.I-20
;753	(18606)	^PREVENT EXTRA LINE LISTING WITH <FF INSIDE REPEAT 0 OR FAILING CONDITIONAL.
.I-20
;754	(22804)	^CLEAR <XLIST AFTER <END/PRGEND (DOESN'T AFFECT LITS, ETC.).
.I-20
;755	(22442)	^OUTPUT TITLE ".<MAIN" FOR UNTITLED <PRGEND MODULES DURING <RPG ASSEMBLY.
.I-20
;756	(24473)	^FIX TOO FEW LINES/LISTING-PAGE WITH <PRINTX.
.I-20
;757(^REMOVED)	^MAKE SURE _^- HAS HIGHER PRECEDENCE OVER BINARY OPERATORS.
.I-20
;760		^OUTPUT BINARY ON BLOCK STATEMENT IN A LONG LINE INSIDE <MACRO.
.I-20
;761	(^Q2201)	^FIX BUG IN <EOUT THAT GENERATED WRONG COUNT FOR BLOCK 4.
.I-20
;762	(^Q2204)	^E-ERROR FOR <BYTE (^N)...<POL... WHERE ^N .<NE. _^^D36.
.I-20
;763	(^Q2211)	^GENERATE BLOCK 22 WITH SYMBOL TABLE INSTEAD OF BLOCK 23.
.I-20
;764		^CHECK FOR INTERNAL <OPDEF AT <INDEF.
.I-20
;765	(^Q2195)	^DON'T GENERATE EMPTY ENTRY BLOCK.
.I-20
;766		^SAME AS 733.
.I-20
;767	(^Q2185)	^RE-DO CALCULATION OF <RC IN <EVADR.
.I-20
;770	(^Q2210)	^FIX BUG WITH FLAGGING MULTIPLY DEFINED TAGS IN DIFFERENT <PSECTS.
.I-20
;771		^TEST FOR <NOPSW AT CLOSING ANGLE BRACKET.
.I-20
;772		^FIX BUG WITH REFERENCING ^POLISH <OPDEF.
.I-20
;773		^REPLACE EDIT 747
.I-20
;774		^MAKE <LABEL+OFFSET HANGLING CONSISTANT.
.I-20
;775	(^Q2200)	^CHECK <CPU VALUE BEFORE TYPEOUT OF SIZE INFO.
.I-20
;776		^DON'T DO <PSECT CHECK FOR PHASED LABEL.
.I-20
;777		^ALLOW <BYTE(18) OF ^POLISH IF HALF WORD ALIGNED.
.I-20
;1000		^ADD 2 CELLS FOR BUILDING <OPDEF CODE TO AVOID PROBLEM WITH NESTED LITERALS.
.I-20
;1001		^DON'T LET <MACRO EXPANSIONS CHANGE <LABEL+OFFSET SETTINGS.
.I-20
;1002	(^Q2235)	^DON'T STORE <UNV NAME UNTIL IT'S VERIFIED.
.I-20
;1003	(24751)	^MAKE <FF LIST CORRECTLY (SUPERSEDES EDIT 753).
.I-20
;1004		^MINOR SOURCE CHANGES:  TABS IN LONG LINE, PAGE, ETC.
.I-20
;1005		^DON'T GENERATE GLOBAL REQUEST FOR A SYMBOL WHERE SYMBOL=<UND.
.I-20
;1006		^SAVE <INOPDF <@SQBRK+ TO ALLOW LITERAL IN <OPDEF DEFINITION.
.I-20
;1007		^GIVE <EPP MESSAGE DUE TO TYPOS CAUSING ILLEGAL ^POLISH.
.I-20
;1010		^ADD A WORD TO DIFFERENTIATE _<0,,<POL> WITH _<<POL>
.I-20
;1011	(^Q2276)	^SAVE <INOPDEF <@ANGLB+ TO ALLOW NESTED _<...> IN <OPDEF DEFINITION.
.I-20
;1012		^RECOVER <EXTPNT IF NEEDED AT <OP3.
.I-20
;1013		^MOVE LEFT ^POLISH TO FREE ^POLISH TO FREE SPACE BEFORE STORING THE PTR IN <XWDANG.
.I-20
;1014		^ALLOW <ENTRY, <INTERN STATEMENTS TO APPEAR IN DIFF. <PSECT THEN THE TAG.
.I-20
;1015		^FIX BUG WITH SETTING UP CORRECT <MP FOR MACROS NESTED IN CONDITIONALS.
.I-20
;1016		^DEFINE A RELOCATBLE <PSECT BIT FOR <PSECTS WITH NO FIXED ORIGIN.
.I-20
;1017		^CARRY UNDEFINED BIT ACCROSS ASSIGMENT DURING PASS1.
.I-20
;1020		^MODIFY BLOCK 22'S AND BLOCK 23'S AND ADD BLOCK 24'S.
.B1.I-20
;*****^END OF ^REVISION ^HISTORY*****
.PG.B3.LM0.F.J
6.0##<SUGGESTIONS
.b1
^THE FOLLOWING IS A LIST OF SUGGESTIONS ACCUMULATED FROM VARIOUS SOURCES.  ^THE
APPEARANCE OF A SUGGESTED CHANGE IN THIS LIST DOES NOT IMPLY ANY COMMITMENT OR INTENT
ON THE PART OF <DEC TO IMPLEMENT ANY SUCH CHANGE.
.b1.lm9.i-4
1.##^USE A HASH TABLE INSTEAD OF BINARY SEARCH.  ^ADD A SWITCH TO SPECIFY THE HASH SIZE.
.b1.i-4
2.##^BETTER CORE MANAGEMENT SCHEME.
.b1.i-4
3.##^SEARCH <UUOSYM.
.b1.i-4
4.##^USE <MACTEN AND <JOBDAT.
.b1.i-4
5.##^ALLOW CURVY BRACKETS TO WORK THE SAME AS ANGLE BRACKETS _<#> FOR CONDITIONALS, <REPEAT<S, <IRP<S, ETC.
.b1.i-4
6.##^ADD AN ERROR FILE TO CONTAIN ALL ASSEMBLY ERRORS TO BE USED WITH </N SWITCH.
.b1.i-4
7.##^ALLOW THE LINE CONTINUATION CHARACTER (_^__) TO WORK OVER END-OF-MACRO, <-IRP, ETC.
.B1.I-4
8.##^ALLOW MORE THAN TEN UNIVERSAL FILES TO BE CREATED OR READ DURING A GIVEN ASSEMBLY.
.B3.LM0.F.J
[^END OF <MCR53.DOC]