;I.E. TELL LOADER THAT SQUOZE IN SYM, FORMERLY CONSIDERED LOCAL, IS REALLY GLOBAL
PLOGLO: SKIPGE CONTRL
RET
- PUSHJ P,MKROOM
PUSH P,A
+ TRO I,IRCONT ;Don't end block between the two words
PUSHJ P,PBITS7
MOVEI A,CLGLO
PUSHJ P,PBITS
TLO SYM,400000 ;SAY THIS IS NEW STYLE RQ,
PUSHJ P,OUTSM0 ;PUNCH "OLD NAME" = SYMTAB IDX,
TLC SYM,440000 ;SAY MAKE GLOBAL, OUTPUT ACTUAL NAME OF SYM.
+ TRZ I,IRCONT
PUSHJ P,OUTSM
JRST POPAJ
\f
TLO A,100000 ;RELOCATE
PUSHJ P,$OUTPT
HRRZ A,1(T)
- PUSHJ P,$OUTPT ;OUTPUT VALUE, FIRST LOCATION IN AREA
TRZ I,IRCONT
+ PUSHJ P,$OUTPT ;OUTPUT VALUE, FIRST LOCATION IN AREA
CNSTDA: MOVSI A,CTDEF
IORM A,2(T) ;CALL IT DEFINED
CNSTD: TRNE FF,FRPSS2
TROA FF,FRBIT7
TRZ FF,FRBIT7
IDPB A,BITP
- POPJ P,
-
- ;Call when you're about to output two words into a block.
-MKROOM: PUSH P,A
- MOVE A,OPT1
- CAIL A,BSIZE+BKBUF-1 ;Space for more than one word?
- PUSHJ P,EBLK ;No - start a new block
- POP P,A
POPJ P,
;FOLLOWING ROUTINES SAVE AC'S EXCEPT FOR A
SKIPL CONTRL ;IF RELOCATABLE ANDLOCAL SYMBOL,
CAIL A,DEFGVR_-33.
RET
- PUSHJ P,MKROOM
+ TRO I,IRCONT ;Don't end block between the two words
PUSHJ P,PBITS7 ;TELL STINK TO EXPUNGE SYM.
MOVEI A,CLGLO
PUSHJ P,PBITS
TLO SYM,400000 ;SAY IS NEW TYPE RQ,
PUSHJ P,OUTSM0
MOVSI A,400000 ;NEW NAME NULL => DELETE.
+ TRZ I,IRCONT
JRST $OUTPT
\f
;EQUAL SYM1,SYM2 ;DEFINE SYM1 SAME AS SYM2.