{{htmlmetatags>metatag-description:(ICL George 3 and George 4 GIN macro: PRINTMAC)}}
====== PRINTMAC ======
(GIN Macro)
**Defined in:** [[george:source:MACINTLUDES|MACINTLUDES]]
**Used in:**
BYHL [??? PRINTMAC SECT DIAG FGN 9 DOC
B^3= #MAC PRINTMAC [M.C.D. MANN AND J.T. WIFFEN
B^GW [
C22G [
C2G6 [ **************
C2^Q [ * PRINTMAC *
C3FB [ **************
C3^2 [
C4DL [
C4Y= [ PRINTMAC - PRINT THE SOURCE OF A MACRO AS KNOWN TO GIN.
C5CW [ %A MACRO NAME
C5XG [ %B LISTING LEVEL (OPTIONAL)
C6C6 [
C6WQ #DEF 20?=1?
C7BB #STR %B
C7W2 #LIS %B
C8*L #STR %B
C8T= #SKI
C9#W #LIS 0
C9SG #INT
C=#6 #ORD
C=RQ ZLINC +0
C??B WORK +0
C?R2 SQ #73
C#=L NAME 8H%A
C#Q= SPACE #20202020,20HNO SUCH MACRO KNOWN
C*9W START STO 0 ZLINC
C*PG LDX 3 18?+4] [2165: AMACCHAIN
CB96 LDX 5 NAME
CBNQ LDX 6 NAME+1
CC8B CALL 2 18?+2]+11]
CCN2 BRN PMC4 [EXIT 0 IF NOT FOUND
CD7L PMC6 LDX 3 0(3)
CDM= BZE 3 PMC7 [J IF END OF MACRO
CF6W CALL 0 18?+2]+6] [FIND
CFLG STO 3 WORK
CG66 CALL 5 18?+2]+20] [BUFLPSW
CGKQ LDX 6 SPACE
CH5B LDX 3 18?+1]+62 [CURPRIBUF - ADDRESS OF O/P BUFFER
CHK2 STO 6 0(3)
CJ4L LDN 4 1(3)
CJJ= MOVE 3 29
CK3W LDX 2 WORK
CKHG ADX 2 35?+6 [ENTMACIMG
CL36 PMC8 LDCH 0 0(2)
CLGQ TXU 0 SQ [END OF LINE?
CM2B BCC PMC9
CMG2 DCH 0 0(3) [ TRANSFER MACROS LINE TO BUFFER
CM^L BCHX 2 £
CNF= BCHX 3 £ [WRITTEN THIS WAY RO WORK IN ANY MODE
CNYW BRN PMC8
CPDG PMC9 CALL 3 18?+2]+19] [APLINE: PRINTS LINE
CPY6 LDX 3 WORK
CQCQ BRN PMC6
CQXB PMC7 CALL 3 18?+2]+10] [BLINE PRINTS BLANK LINE
CRC2 PMC1 LDX 0 ZLINC
CRWL EXIT 0 0
CSB= PMC4 CALL 5 18?+2]+20]
CSTW LDX 6 SPACE
CT*G LDX 3 18?+1]+62 [ADDRESS OF OUTPUT BUFFER
CTT6 LDN 4 1(3)
CW#Q STO 6 0(3)
CWSB MOVE 3 29
CX#2 LDN 2 SPACE
CXRL MOVE 2 6
CY?= CALL 3 18?+2]+19] [PRINT 'NO SUCH MACRO' MESSAGE
CYQW BRN PMC1
C^=G #EXT
C^Q6 #JUM START
D29Q #LIS 20?
D2PB #NOR