{{htmlmetatags>metatag-description:(ICL George 3 and George 4 GIN macro: MD)}}
====== MD ======
(GIN Macro)
**Defined in:** [[george:source:MACROS_DTP|MACROS DTP]]
**Used in:**
7JXR ...[??? MD SECT DIAG FGN 579 DOC
7K8B #MAC MD [M.C.D. MANN
7KN2 [
7L7L [
7LM= [ ********
7M6W [ * MD *
7MLG [ ********
7N66 [
7NKQ [
7NL5 ...#SKI GFIXCORE<1$1 [NOT COMPILING FIXED CORE
7NLD ...(
7NLR ...#UNS K%A [ NON-PM SEGMENT?
7NM6 ...(
7NMF ...#SKI K%A<20-20 [FIXED CORE AT BEG OF CHAPTER TABLE
7NMS ...(
7NN7 ...#STR MESS,%A
7NNG ...(
7NNT ...! MENDIT OF FIXED CORE SEGMENT
7NP8 ...#CON MENDIT IGNORED
7NPH ...#EXI
7NPW ...)
7NQ9 ...)
7NQJ ...)
7NQX ...)
7NR= ...#UNS K%A [ NON-PM SEGMENT?
7NRY ...#STR
7NS? ...(
7NSL ...#UNS L%A [IS IT A NEW SEGMENT
7NS^ ...(
7NT# ...#UNS J%A [IS IT A PM SEGMENT?
7NTM ...(
7NW2 ...#STR PM,%F
7NW* ...(
7NWN ...! PM SEGMENTS MUST HAVE A PM PARAM
7NX3 ...#CON MENDIT IGNORED
7NXB ...#EXI
7NXP ...)
7NY4 ...#STR FIXINT,%A
7NYC ...#STR
7NYQ ...(
7N^5 ...#SKI GFIXCORE<1$1
7N^D ...(
7N^R ...! CANNOT MENDIT FIXINT OUTSIDE FIXED CORE
7P26 ...#CON MENDIT IGNORED
7P2F ...#EXI
7P2S ...)
7P37 ...)
7P3G ...)
7P3T ...)
7P48 ...)
7P5B #STR PM,%F [SKIP IF COMPILING PM
7PK2 (
7Q4L #SKI GFIXCORE [EXIT FROM THE MACRO IF
7QJ= ( [FIXED CORE IS BEING COMPILED
7R3W #SKI AHD%A [AND THIS SEGMENT HAS ALREADY
7RHG #EXI [BEEN COMPILED
7S36 )
7SGQ )
7T2B #ALT AMQ5=0
7TG2 #UNS L%A [SKIP IF THE SEGMENT IS NEW
7T^L #ALT AMQ5=1 [SET 0 IF THE SEGMENT IS NEW
7WF= #SKI AMQ5 [IF THE SEGMENT ISN'T NEW
7WYW (
7XDG #SKI GFIXCORE<1$1 [AND WE'RE NOT COMPILING FIXED CORE
7XY6 #REM %A [REMEMBER THE SEGMENT'S OLD D-ADDRESS
7YCQ )
7^C2 #DEF 30?+32=1 [WORD 31 SET 0 BY RES IF MENDIT FAILS
7^WL #NEW %A [FORGET OLD VERSION OF THE SEGMENT
82B= #STR %G
82TW COMPILE %G,%A,%B,%C,%D,%H
83*G #STR %G
83T6 #SKI
84#Q COMPILE %A,%B,%C,%D,%H
84SB #LIS %E+0
8548 ...#SKI ADTPFH<1$1
85#2 #GEO RL *CR1
85RL #SKI 30?+32]<1$1 [INCLUDE IF THE MENDIT FAILED
86?= (
86QW #CON MENDIT IGNORED [DISPLAY "MENDIT IGNORED"
87=G #EXI [AND EXIT FROM THE MACRO
87Q6 )
889Q #SKI AMQ5<1$1
8992 #CON NEW SEGMENT
89NL #SKI AMQ5 [SKIP COMPRESSION
8=8= ( [ IF THE SEGMENT IS NEW
8=MW #SKI GFIXCORE<1$1 [ OR COMPILING FIXED CORE
8?M6 (
8#6Q #STR PATCH,%F [ OR IF THE SEGMENT IS PATCHED
8#LB #COM %A [TRY AND MOVE THE SEGMENT DOWN
9H8Q )
9HNB )
9J82 #STR PM,%F [SKIP IF COMPILING PM
9JML (
9K7= #SKI GFIXCORE<1$1 [OR IF COMPILING FIXED CORE
9KLW (
9L6G #SKI GPATCH [INCLUDE IF IN PATCH ENVIRONMENT
9LL6 (
9M5Q #STR NOPATCH,%F
9MKB PATCH %A,%B [SET UP PATCH RECORD FOR SEGMENT
9N52 #STR NOPATCH,%F
9NJL #SKI
9P4= NEWCHENT %A [SET UP CHAPTER TABLE ENTRY
9PHW )
9Q3G #SKI GPATCH-1 [INCLUDE IF NOT PATCH ENVIRONMENT
9QH6 (
9R2Q #STR PATCH,%F
9RGB #SKI
9S22 PATCH %A,%B [SET UP PATCH RECORD FOR SEGMENT
9SFL #STR PATCH,%F
9S^= NEWCHENT %A [SET UP CHAPTER TABLE ENTRY
9TDW )
9TYG )
9WD6 )
9WXQ #STR PM,%F [INCLUDE IF COMPILING PM
9XCB #SKI
9XX2 (
9YBL PMNEWCHENT %A [SET UP PM "CHAPTER TABLE" ENTRY
9YW= PMSIZE [AND RESET MINIMUM FIXED CORE SPACE
9^*W )
9^TG #STR PM,%F [SKIP IF COMPILING PM
=2*6 (
=2SQ #SKI GFIXCORE [IF COMPILING FIXED CORE, REMEMBER
=3#B #ALT AHD%A=1 [THAT THIS SEGMENT HAS BEEN COMPILED
=3S2 )
=3SJ ...#STR FSTABLE,%A
=3T6 ...#STR
=3TN ...(
=3W= ...#MEN LOADERGO
=3WS ...#TRA JLTABLE [ AMEND D AND L FOR
=3XB ... +LFSTABLE [FSTABLE IN LOADER
=3XY ...#TRA JLTABLE+2
=3YG ... +DFSTABLE
=3^4 ...#TRA JLTMCNT+1
=3^L ... +DFSTABLE+FIRS
=428 ...#END
=42Q ...)
=43# ...#STR CDUM,%A
=43W ...#STR
=44D ...(
=452 ...#MEN LOADERGO [AMEND DS AND LS IN LOADER
=45J ...#TRA JLTABLE +1
=466 ... +LCDUM
=46N ...#TRA JLTABLE+3
=47= ... +DCDUM
=47S ...#END
=48B ...#MEN LOADERDA
=48Y ...#TRA JLUNDC
=49G ... +AUNRES+DCDUM,+ARES+DCDUM
=4=4 ...#END
=4=L ...)
=4=R ...#SKI 23?
=4=Y ...(
=4?5 ...#ALT 23? = 0
=4?= ...#EXI
=4?C ...)
=4?L ... MODSENT %A%B,%F,%A [SET UP A "MODS" RECORD
=4R= #NOR