Source Code
048252,000001: # Copyright: Public domain.
048253,000002: # Filename: PLANETARY_INERTIAL_ORIENTATION.agc
048254,000003: # Purpose: Part of the source code for Luminary 1A build 099.
048255,000004: # It is part of the source code for the Lunar Module's (LM)
048256,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
048257,000006:
048258,000007: # Assembler: yaYUL
048259,000008: # Contact: Jim Lawton <jim.lawton@gmail.com>
048260,000009: # Website: www.ibiblio.org/apollo.
048261,000010: # Pages: 1140-1148
048262,000011: # Mod history: 2009-05-28 JVL Updated from page images.
048263,000012:
048264,000013: # This source code has been transcribed or otherwise adapted from digitized
048265,000014: # images of a hardcopy from the MIT Museum. The digitization was performed
048266,000015: # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many
048267,000016: # thanks to both. The images (with suitable reduction in storage size and
048268,000017: # consequent reduction in image quality as well) are available online at
048269,000018: # www.ibiblio.org/apollo. If for some reason you find that the images are
048270,000019: # illegible, contact me at info@sandroid.org about getting access to the
048271,000020: # (much) higher-quality images which Paul actually created.
048272,000021:
048273,000022: # Notations on the hardcopy document read, in part:
048274,000023:
048275,000024: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-061
048276,000025: # 16:27 JULY 14, 1969
048277,000026:
048278,000027: # Page 1140
048279,000028: # ***** RP-TO-R SUBROUTINE *****
048280,000029: # SUBROUTINE TO CONVERT RP (VECTOR IN PLANETARY COORDINATE SYSTEM, EITHER
048281,000030: # EARTH-FIXED OR MOON-FIXED) TO R (SAME VECTOR IN THE BASIC REF. SYSTEM)
048282,000031:
048283,000032: # R = MT(T) * (RP + LP X RP) MT = M MATRIX TRANSPOSE
048284,000033:
048285,000034: # CALLING SEQUENCE
048286,000035: # L CALL
048287,000036: # L+1 RP-TO-R
048288,000037:
048289,000038: # SUBROUTINES USED
048290,000039: # EARTHMX, MOONMX, EARTHL
048291,000040:
048292,000041: # ITEMS AVAILABLE FROM LAUNCH DATA
048293,000042: # 504LM = THE LIBRATION VECTOR L OF THE MOON AT TIME TIMSUBL, EXPRESSED
048294,000043: # IN THE MOON-FIXED COORD. SYSTEM RADIANS B0
048295,000044:
048296,000045: # ITEMS NECESSARY FOR SUBR. USED (SEE DESCRIPTION OF SUBR.)
048297,000046:
048298,000047: # INPUT
048299,000048: # MPAC = 0 FOR EARTH, NON-ZERO FOR MOON
048300,000049: # 0-5D = RP VECTOR
048301,000050: # 6-7D = TIME
048302,000051:
048303,000052: # OUTPUT
048304,000053: # MPAC = R VECTOR METERS B-29 FOR EARTH, B-27 FOR MOON
048305,000054:
048306,000055: 26,2000 SETLOC PLANTIN1
048307,000056: 26,2000 BANK
048308,000057:
048309,000058: 26,3716 COUNT* $$/LUROT
048310,000059:
048311,000060: 26,3716 46020 RP-TO-R STQ BHIZ
048312,000061: 26,3717 00050 RPREXIT
048313,000062: 26,3720 55733 RPTORA
048314,000063: 26,3721 77624 CALL # COMPUTE M MATRIX FOR MOON
048315,000064: 26,3722 51720 MOONMX # LP=LM FOR MOON RADIANS B0
048316,000065: 26,3723 77775 VLOAD
048317,000066: 26,3724 02013 504LM
048318,000067: 26,3725 53235 RPTORB VXV VAD
048319,000068: 26,3726 00001 504RPR
048320,000069: 26,3727 00001 504RPR
048321,000070: 26,3730 52105 VXM GOTO
048322,000071: 26,3731 00025 MMATRIX # MPAC=R=MT(T)*(RP+LPXRP)
048323,000072: 26,3732 51706 RPRPXXXX # RESET PUSHLOC TO 0 BEFORE EXITING
048324,000073: 26,3733 77624 RPTORA CALL # EARTH COMPUTATIONS
048325,000074: 26,3734 55743 EARTHMX # M MATRIX B-1
048326,000075: 26,3735 77624 CALL
048327,000076: 26,3736 15753 EARTHL # L VECTOR RADIANS B0
048328,000077: 26,3737 76521 MXV VSL1 # LP=M(T)*L RAD B-0
048329,000078: 26,3740 00025 MMATRIX
048330,000079: # Page 1141
048331,000080: 26,3741 77650 GOTO
048332,000081: 26,3742 55725 RPTORB
048333,000082: 24,2000 SETLOC PLANTIN
048334,000083: 24,2000 BANK
048335,000084: 24,3670 COUNT* $$/LUROT
048336,000085:
048337,000086: # Page 1142
048338,000087: # ***** R-TO-RP SUBROUTINE *****
048339,000088: # SUBROUTINE TO CONVERT R (VECTOR IN REFERENCE COORD. SYSTEM) TO RP
048340,000089: # (VECTOR IN PLANETARY COORD SYSTEM) EITHER EARTH-FIXED OR MOON-FIXED
048341,000090:
048342,000091: # RP = M(T) * (R - L X R)
048343,000092:
048344,000093: # CALLING SEQUENCE
048345,000094: # L CALL
048346,000095: # L+1 R-TO-RP
048347,000096:
048348,000097: # SUBROUTINES USED
048349,000098: # EARTHMX, MOONMX, EARTHL
048350,000099:
048351,000100: # INPUT
048352,000101: # MPAC = 0 FOR EARTH, NON-ZERO FOR MOON
048353,000102: # 0-5D = R VECTOR
048354,000103: # 6-7D = TIME
048355,000104:
048356,000105: # ITEMS AVAILABLE FROM LAUNCH DATA
048357,000106: # 504LM = THE LIBRATION VECTOR L OF THE MOON AT TIME TIMSUBL, EXPRESSED
048358,000107: # IN THE MOON-FIXED COORD. SYSTEM RADIANS B0
048359,000108:
048360,000109: # ITEMS NECESSARY FOR SUBROUTINES USED (SEE DESCRIPTION OF SUBR.)
048361,000110:
048362,000111: # OUTPUT
048363,000112: # MPAC = RP VECTOR METERS B-29 FOR EARTH, B-27 FOR MOON
048364,000113:
048365,000114: 24,3670 46020 R-TO-RP STQ BHIZ
048366,000115: 24,3671 00050 RPREXIT
048367,000116: 24,3672 51712 RTORPA
048368,000117: 24,3673 77624 CALL
048369,000118: 24,3674 51720 MOONMX
048370,000119: 24,3675 61375 VLOAD VXM
048371,000120: 24,3676 02013 504LM # LP=LM
048372,000121: 24,3677 00025 MMATRIX
048373,000122: 24,3700 77772 VSL1 # L = MT(T)*LP RADIANS B0
048374,000123: 24,3701 51235 RTORPB VXV BVSU
048375,000124: 24,3702 00001 504RPR
048376,000125: 24,3703 00001 504RPR
048377,000126: 24,3704 77721 MXV # M(T)*(R-LXR) B-2
048378,000127: 24,3705 00025 MMATRIX
048379,000128: 24,3706 40372 RPRPXXXX VSL1 SETPD
048380,000129: 24,3707 00001 0D
048381,000130: 24,3710 77650 GOTO
048382,000131: 24,3711 00050 RPREXIT
048383,000132: 24,3712 77624 RTORPA CALL # EARTH COMPUTATIONS
048384,000133: 24,3713 55743 EARTHMX
048385,000134: 24,3714 77624 CALL
048386,000135: 24,3715 15753 EARTHL
048387,000136: 24,3716 77650 GOTO # MPAC=L=(-AX,-AY,0) RAD B-0
048388,000137: 24,3717 51701 RTORPB
048389,000138:
048390,000139: # Page 1143
048391,000140: # ***** MOONMX SUBROUTINE *****
048392,000141: # SUBROUTINE TO COMPUTE THE TRANSFORMATION MATRIX M FOR THE MOON
048393,000142:
048394,000143: # CALLING SEQUENCE
048395,000144: # L CALL
048396,000145: # L+1 MOONMX
048397,000146:
048398,000147: # SUBROUTINES USED
048399,000148: # NEWANGLE
048400,000149:
048401,000150: # INPUT
048402,000151: # 6-7D = TIME
048403,000152:
048404,000153: # ITEMS AVAILABLE FROM LAUNCH DATA
048405,000154: # BSUBO, BDOT
048406,000155: # TIMSUBO, NODIO, NODDOT, FSUBO, FDOT
048407,000156: # COSI = COS(I) B-1
048408,000157: # SINI = SIN(I) B-1
048409,000158: # I IS THE ANGLE BETWEEN THE MEAN LUNAR EQUATORIAL PLANE AND THE
048410,000159: # PLANE OF THE ECLIPTIC (1 DEGREE 32.1 MINUTES)
048411,000160:
048412,000161: # OUTPUT
048413,000162: # MMATRIX = 3X3 M MATRIX B-1 (STORED IN VAC AREA)
048414,000163:
048415,000164: 24,3720 40220 MOONMX STQ SETPD
048416,000165: 24,3721 00051 EARTHMXX
048417,000166: 24,3722 00011 8D
048418,000167: 24,3723 77770 AXT,1 # B REQUIRES SL 0, SL 5 IN NEWANGLE
048419,000168: 24,3724 00005 5
048420,000169: 24,3725 65345 DLOAD PDDL # PD 10D 8-9D=BSUBO
048421,000170: 24,3726 14017 BSUBO # 10-11D=BDOT
048422,000171: 24,3727 14011 BDOT
048423,000172: 24,3730 45006 PUSH CALL # PD 12D
048424,000173: 24,3731 53743 NEWANGLE # EXIT WITH PD 8D AND MPAC= B REVS B0
048425,000174: 24,3732 71406 PUSH COS # PD 10D
048426,000175: 24,3733 14041 STODL COB # PD 8D COS(B) B-1
048427,000176: 24,3734 77756 SIN # SIN(B) B-1
048428,000177: 24,3735 14043 STODL SOB # SETUP INPUT FOR NEWANGLE
048429,000178: 24,3736 14015 FSUBO # 8-9D=FSUBO
048430,000179: 24,3737 41525 PDDL PUSH # PD 10D THEN 12D 10-11D=FDOT
048431,000180: 24,3740 14007 FDOT
048432,000181: 24,3741 45170 AXT,1 CALL # F REQUIRES SL 1, SL 6 IN NEWANGLE.
048433,000182: 24,3742 00004 4
048434,000183: 24,3743 53743 NEWANGLE # EXIT WITH PD 8D AND MPAC= F REVS B0
048435,000184: 24,3744 14027 STODL AVECTR +2 # SAVE F TEMP
048436,000185: 24,3745 14013 NODIO # 8-9D=NODIO
048437,000186: 24,3746 41525 PDDL PUSH # PD 10D THEN 12D 10-11D=NODDOT
048438,000187: 24,3747 14005 NODDOT # MPAC=T
048439,000188: 24,3750 45170 AXT,1 CALL # NODE REQUIRES SL 0, SL 5 IN NEWANGLE
048440,000189: 24,3751 00005 5
048441,000190: 24,3752 53743 NEWANGLE # EXIT WITH PD 8D AND MPAC= NODI REVS B0
048442,000191: # Page 1144
048443,000192: 24,3753 71406 PUSH COS # PD 10D 8-9D= NODI REVS B0
048444,000193: 24,3754 77606 PUSH # PD 12D 10-11D= COS(NODI) B-1
048445,000194: 24,3755 00025 STORE AVECTR
048446,000195: 24,3756 76405 DMP SL1R
048447,000196: 24,3757 00041 COB # COS(NODI) B-1
048448,000197: 24,3760 14035 STODL BVECTR +2 # PD 10D 20-25D=AVECTR= COB*SIN(NODI)
048449,000198: 24,3761 76405 DMP SL1R # SOB*SIN(NODI)
048450,000199: 24,3762 00043 SOB
048451,000200: 24,3763 14037 STODL BVECTR +4 # PD 8D
048452,000201: 24,3764 41556 SIN PUSH # PD 10D -SIN(NODI) B-1
048453,000202: 24,3765 77676 DCOMP # 26-31D=BVECTR= COB*COS(NODI)
048454,000203: 24,3766 14033 STODL BVECTR # PD 8D SOB*COS(NODI)
048455,000204: 24,3767 00027 AVECTR +2 # MOVE F FROM TEMP LOC. TO 504F
048456,000205: 24,3770 14007 STODL 504F
048457,000206: 24,3771 76405 DMP SL1R
048458,000207: 24,3772 00041 COB
048459,000208: 24,3773 77650 GOTO
048460,000209: 24,3774 53671 MOONMXA
048461,000210:
048462,000211: 25,3671 BANK 25
048463,000212: 25,2000 SETLOC PLANTIN3
048464,000213: 25,2000 BANK
048465,000214: 25,3671 COUNT* $$/LUROT
048466,000215:
048467,000216: 25,3671 14027 MOONMXA STODL AVECTR +2
048468,000217: 25,3672 00011 SINNODI # 8-9D=SIN(NODI) B-1
048469,000218: 25,3673 76405 DMP SL1R
048470,000219: 25,3674 00043 SOB
048471,000220: 25,3675 14031 STODL AVECTR +4 # 0
048472,000221: 25,3676 06522 HI6ZEROS # 8-13D= CVECTR= -SOB B-1
048473,000222: 25,3677 57525 PDDL DCOMP # PD 10D COB
048474,000223: 25,3700 00043 SOB
048475,000224: 25,3701 63325 PDDL PDVL # PD 12D THEN PD 14D
048476,000225: 25,3702 00041 COB
048477,000226: 25,3703 00033 BVECTR
048478,000227: 25,3704 63361 VXSC PDVL # PD 20D BVECTR*SINI B-2
048479,000228: 25,3705 14003 SINI
048480,000229: 25,3706 00011 CVECTR
048481,000230: 25,3707 53361 VXSC VAD # PD 14D CVECTR*COSI B-2
048482,000231: 25,3710 14001 COSI
048483,000232: 25,3711 77772 VSL1
048484,000233: 25,3712 24041 STOVL MMATRIX +12D # PD 8D M2=BVECTR*SINI+CVECTR*COSI B-1
048485,000234: 25,3713 63361 VXSC PDVL # PD 14D
048486,000235: 25,3714 14003 SINI # CVECTR*SINI B-2
048487,000236: 25,3715 00033 BVECTR
048488,000237: 25,3716 52361 VXSC VSU # PD 8D BVECTR*COSI B-2
048489,000238: 25,3717 14001 COSI
048490,000239: 25,3720 65372 VSL1 PDDL # PD 14D
048491,000240: 25,3721 00007 504F # 8-13D=DVECTR=BVECTR*COSI-CVECTR*SINI B-1
048492,000241: 25,3722 74346 COS VXSC
048493,000242: # Page 1145
048494,000243: 25,3723 00011 DVECTR
048495,000244: 25,3724 73525 PDDL SIN # PD 20D 14-19D= DVECTR*COSF B-2
048496,000245: 25,3725 00007 504F
048497,000246: 25,3726 52361 VXSC VSU # PD 14D AVECTR*SINF B-2
048498,000247: 25,3727 00025 AVECTR
048499,000248: 25,3730 77772 VSL1
048500,000249: 25,3731 14033 STODL MMATRIX +6 # M1= AVECTR*SINF-DVECTR*COSF B-1
048501,000250: 25,3732 00007 504F
048502,000251: 25,3733 74356 SIN VXSC # PD 8D
048503,000252: 25,3734 71525 PDDL COS # PD 14D 8-13D=DVECTR*SINF B-2
048504,000253: 25,3735 00007 504F
048505,000254: 25,3736 53361 VXSC VAD # PD 8D AVECTR*COSF B-2
048506,000255: 25,3737 00025 AVECTR
048507,000256: 25,3740 57572 VSL1 VCOMP
048508,000257: 25,3741 34025 STCALL MMATRIX # M0= -(AVECTR*COSF+DVECTR*SINF) B-1
048509,000258: 25,3742 00051 EARTHMXX
048510,000259:
048511,000260: # COMPUTE X=X0+(XDOT)(T+T0)
048512,000261: # 8-9D= X0 (REVS B-0), PUSHLOC SET AT 12D
048513,000262: # 10-11D=XDOT (REVS/CSEC) SCALED B+23 FOR WEARTH,B+28 FOR NODDOT AND BDOT
048514,000263: # AND B+27 FOR FDOT
048515,000264: # X1=DIFFERENCE IN 23 AND SCALING OF XDOT, =0 FOR WEARTH, 5 FOR NDDOT AND
048516,000265: # BDOT AND 4 FOR FDOT
048517,000266: # 6-7D=T (CSEC B-28), TIMSUBO= (CSEC B-42 TRIPLE PREC.)
048518,000267:
048519,000268: 25,3743 54345 NEWANGLE DLOAD SR # ENTER PD 12D
048520,000269: 25,3744 00007 6D
048521,000270: 25,3745 20617 14D
048522,000271: 25,3746 72371 TAD TLOAD # CHANGE MODE TO TP
048523,000272: 25,3747 01707 TIMSUBO
048524,000273: 25,3750 00155 MPAC
048525,000274: 25,3751 14017 STODL TIMSUBM # T+T0 CSEC B-42
048526,000275: 25,3752 00020 TIMSUBM +1
048527,000276: 25,3753 77605 DMP # PD 10D MULT BY XDOT IN 10-11D
048528,000277: 25,3754 43257 SL* DAD # PD 8D ADD X0 IN 8-9D AFTER SHIFTING
048529,000278: 25,3755 20206 5,1 # SUCH THAT SCALING IS B-0
048530,000279: 25,3756 67206 PUSH SLOAD # PD 10D SAVE PARTIAL (X0+XDOT*T) IN 8-9D
048531,000280: 25,3757 00017 TIMSUBM
048532,000281: 25,3760 41261 SL DMP
048533,000282: 25,3761 20212 9D
048534,000283: 25,3762 00013 10D # XDOT
048535,000284: 25,3763 43257 SL* DAD # PD 8D SHIFT SUCH THAT THIS PART OF X
048536,000285: 25,3764 20213 10D,1 # IS SCALED REVS/CSEC B-0
048537,000286: 25,3765 77600 BOV # TURN OFF OVERFLOW IF SET BY SHIFT
048538,000287: 25,3766 53767 +1 # INSTRUCTION BEFORE EXITING.
048539,000288: 25,3767 77616 RVQ # MPAC=X= X0+(XDOT)(T+T0) REVS B0
048540,000289:
048541,000290: # Page 1146
048542,000291: # ***** EARTHMX SUBROUTINE *****
048543,000292: # SUBROUTINE TO COMPUTE THE TRANSFORMATION MATRIX M FOR THE EARTH
048544,000293:
048545,000294: # CALLING SEQUENCE
048546,000295: # L CALL
048547,000296: # L+1 EARTHMX
048548,000297:
048549,000298: # SUBROUTINE USED
048550,000299: # NEWANGLE
048551,000300:
048552,000301: # INPUT
048553,000302: # INPUT AVAILABLE FROM LAUNCH DATA AZO REVS B-0
048554,000303: # TEPHEM CSEC B-42
048555,000304: # 6-7D= TIME CSEC B-28
048556,000305:
048557,000306: # OUTPUT
048558,000307: # MMATRIX= 3X3 M MATRIX B-1 (STORED IN VAC AREA)
048559,000308:
048560,000309: 26,3743 BANK 26
048561,000310: 26,2000 SETLOC PLANTIN1
048562,000311: 26,2000 BANK
048563,000312: 26,3743 COUNT* $$/LUROT
048564,000313:
048565,000314: 26,3743 40220 EARTHMX STQ SETPD # SET 8-9D=AZO
048566,000315: 26,3744 00051 EARTHMXX
048567,000316: 26,3745 00011 8D # 10-11D=WEARTH
048568,000317: 26,3746 77770 AXT,1 # FOR SL 5, AND SL 10 IN NEWANGLE
048569,000318: 26,3747 00000 0
048570,000319: 26,3750 65345 DLOAD PDDL # LEAVING PD SET AT 12D FOR NEWANGLE
048571,000320: 26,3751 01712 AZO
048572,000321: 26,3752 14021 WEARTH
048573,000322: 26,3753 45006 PUSH CALL
048574,000323: 26,3754 53743 NEWANGLE
048575,000324: 26,3755 41401 SETPD PUSH # 18-19D=504AZ
048576,000325: 26,3756 00023 18D # COS(AZ) SIN(AZ) 0
048577,000326: 26,3757 65346 COS PDDL # 20-37D= MMATRIX= -SIN(AZ) COS(AZ) 0 B-1
048578,000327: 26,3760 00023 504AZ # 0 0 1
048579,000328: 26,3761 65356 SIN PDDL
048580,000329: 26,3762 06522 HI6ZEROS
048581,000330: 26,3763 73525 PDDL SIN
048582,000331: 26,3764 00023 504AZ
048583,000332: 26,3765 65276 DCOMP PDDL
048584,000333: 26,3766 00023 504AZ
048585,000334: 26,3767 63346 COS PDVL
048586,000335: 26,3770 06522 HI6ZEROS
048587,000336: 26,3771 41525 PDDL PUSH
048588,000337: 26,3772 06520 HIDPHALF
048589,000338: 26,3773 77650 GOTO
048590,000339: 26,3774 00051 EARTHMXX
048591,000340:
048592,000341: # Page 1147
048593,000342: # ***** EARTHL SUBROUTINE *****
048594,000343: # SUBROUTINE TO COMPUTE L VECTOR FOR EARTH
048595,000344:
048596,000345: # CALLING SEQUENCE
048597,000346: # L CALL
048598,000347: # L+1 EARTHL
048599,000348:
048600,000349: # INPUT
048601,000350: # AXO,AYO SET AT LAUNCH TIME WITH AYO IMMEDIATELY FOLLOWING AXO IN CORE
048602,000351:
048603,000352: # OUTPUT
048604,000353: # -AX
048605,000354: # MPAC= -AY RADIANS B-0
048606,000355: # 0
048607,000356:
048608,000357: 06,3753 BANK 06
048609,000358: 06,2000 SETLOC EARTHLOC
048610,000359: 06,2000 BANK
048611,000360: 06,3753 COUNT* $$/LUROT
048612,000361:
048613,000362: 06,3753 57545 EARTHL DLOAD DCOMP
048614,000363: 06,3754 01716 AXO
048615,000364: 06,3755 14017 STODL 504LPL
048616,000365: 06,3756 01714 -AYO
048617,000366: 06,3757 14021 STODL 504LPL +2
048618,000367: 06,3760 24007 LO6ZEROS
048619,000368: 06,3761 24023 STOVL 504LPL +4
048620,000369: 06,3762 00017 504LPL
048621,000370: 06,3763 77616 RVQ
048622,000371:
048623,000372: # Page 1148
048624,000373: # CONSTANTS AND ERASABLE ASSIGNMENTS
048625,000374:
048626,000375: 06,3764 12,2004 1B1 = DP1/2 # 1 SCALED B-1
048627,000376: 06,3764 0000050 RPREXIT = S1 # R-TO-RP AND RP-TO-R SUBR EXIT
048628,000377: 06,3764 0000051 EARTHMXX = S2 # EARTHMX, MOONMX SUBR. EXITS
048629,000378: 06,3764 504RPR = 0D # 6 REGS R OR RP VECTOR
048630,000379: 06,3764 SINNODI = 8D # 2 SIN(NODI)
048631,000380: 06,3764 DVECTR = 8D # 6 D VECTOR MOON
048632,000381: 06,3764 CVECTR = 8D # 6 C VECTR MOON
048633,000382: 06,3764 504AZ = 18D # 2 AZ
048634,000383: 06,3764 TIMSUBM = 14D # 3 TIME SUB M (MOON) T+T0 IN GETAZ
048635,000384: 06,3764 504LPL = 14D # 6 L OR LP VECTOR
048636,000385: 06,3764 AVECTR = 20D # 6 A VECTOR (MOON)
048637,000386: 06,3764 BVECTR = 26D # 6 B VECTOR (MOON)
048638,000387: 06,3764 MMATRIX = 20D # 18 M MATRIX
048639,000388: 06,3764 COB = 32D # 2 COS(B) B-1
048640,000389: 06,3764 SOB = 34D # 2 SIN(B) B-1
048641,000390: 06,3764 504F = 6D # 2 F(MOON)
048642,000391:
End of include-file PLANETARY_INERTIAL_ORIENTATION.agc. Parent file is MAIN.agc