Source Code

These source-code files are part of a reconstructed copy of Luminary 173, the second (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with reconstructed source code for Luminary 178. Changes between revision 173 and 178 were backed out, as described by Luminary memo 167 (revision 1). The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 173 listing would be different.

Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository.

002281,000002:                                                                                                  ## Copyright:   Public domain.
002282,000003:                                                                                                  ## Filename:    INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc
002283,000004:                                                                                                  ## Purpose:     A section of Luminary revision 173.
002284,000005:                                                                                                  ##              It is part of the reconstructed source code for the second
002285,000006:                                                                                                  ##              (unflown) release of the flight software for the Lunar
002286,000007:                                                                                                  ##              Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
002287,000008:                                                                                                  ##              The code has been recreated from a reconstructed copy of
002288,000009:                                                                                                  ##              Luminary 178, as well as Luminary memo 167 (revision 1).
002289,000010:                                                                                                  ##              It has been adapted such that the resulting bugger words
002290,000011:                                                                                                  ##              exactly match those specified for Luminary 173 in NASA
002291,000012:                                                                                                  ##              drawing 2021152N, which gives relatively high confidence
002292,000013:                                                                                                  ##              that the reconstruction is correct.
002293,000014:                                                                                                  ## Reference:   pp. 55-61
002294,000015:                                                                                                  ## Assembler:   yaYUL
002295,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
002296,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
002297,000018:                                                                                                  ## Mod history: 2019-09-18 MAS  Created from Luminary 178.
002298,000019: 

Page 55

002300,000021: 
002301,000022: 
002302,000023:                                                                                                  #  *** CHANNEL DESCRIPTIONSF WORDS ARE ALLOCATED IN ERASABLE ASSIGNMENTS ***
002303,000024: 
002304,000025: 
002305,000026:                                                                                                  #      CHANNEL 1    IDENTICAL TO COMPUTER REGISTER L (0001)
002306,000027: 
002307,000028: 
002308,000029:                                                                                                  #      CHANNEL 2    IDENTICAL TO COMPUTER REGISTER Q (0002)
002309,000030: 
002310,000031: 
002311,000032:                                                                                                  #      CHANNEL 3    HISCALAR; INPUT CHANNEL; MOST SIGNIFICANT 14 BITS FROM 33 STAGE BINARY COUNTER. SCALE
002312,000033:                                                                                                  #                   FACTOR IS B23 IN CSEC, SO MAX VALUE ABOUT 23.3 HOURS AND LEAST SIGNIFICANT BIT 5.12 SECS.
002313,000034: 
002314,000035: 
002315,000036:                                                                                                  #      CHANNEL 4    LOSCALAR; INPUT CHANNEL; NEXT MOST SIGNIFICANT 14 BITS FROM THE 33 STAGE BINARY COUNTER
002316,000037:                                                                                                  #                   ASSOCIATED WITH CHANNEL 3. SCALE FACTOR IS B9 IN  CSEC. SO MAX VAL IS 5.12 SEC AND LEAST
002317,000038:                                                                                                  #                   SIGNIFICANT BIT IS 1/3200 SEC. SCALE FACTOR OF D.P. WORD WITH CHANNEL 3 IS B23 CSEC.
002318,000039: 
002319,000040: 
002320,000041:                                                                                                  #      CHANNEL 5    PYJETS; OUTPUT CHANNEL; PITCH RCS JET CONTROL.   (REACTION CONTROL SYSTEM) USES BITS 1-8.
002321,000042: 
002322,000043: 
002323,000044:                                                                                                  #      CHANNEL 6    ROLLJETS; OUTPUT CHANNEL; ROLL RCS JET CONTROL.   (REACTION CONTROL SYSTEM) USES BIT 1-8.
002324,000045: 
002325,000046: 
002326,000047:                                                                                                  #      CHANNEL 7    SUPERBNK; OUTPUT CHANNEL; NOT RESET BY RESTART;   FIXED EXTENSION BITS USED TO SELECT THE
002327,000048:                                                                                                  #                   APPROPRIATE FIXED MEMORY BANK IF FBANK IS 30 OCTAL OR MORE. USES BITS 5-7.
002328,000049: 
002329,000050: 
002330,000051:                                                                                                  #      CHANNEL 10   OUTO; OUTPUT CHANNEL; REGISTER USED TO TRANSMIT   LATCHING-RELAY DRIVING INFORMATION FOR
002331,000052:                                                                                                  #                   THE DISPLAY SYSTEM. BITS 15-12 ARE SET TO THE ROW NUMBER (1-14 OCTAL) OF THE RELAY TO BE
002332,000053:                                                                                                  #                   CHANGED AND BITS 11-1 CONTAIN THE REQUIRED SETTINGS FOR THE RELAYS IN THE ROW.
002333,000054: 
002334,000055: 
002335,000056:                                                                                                  #      CHANNEL 11   DSALMOUT; OUTPUT CHANNEL; REGISTER WHOSE BITS ARE USED FOR ENGINE ON-OFF CONTROL AND TO
002336,000057:                                                                                                  #                   DRIVE INDIVIDUAL INDICATORS OF THE DISPLAY SYSTEM. BITS 1-7 ARE A RELAYS.
002337,000058: 
002338,000059:                                                                                                  #        BIT 1      ISS WARNING
002339,000060: 
002340,000061:                                                                                                  #        BIT 2      LIGHT COMPUTER ACTIVITY LAMP
002341,000062: 
002342,000063:                                                                                                  #        BIT 3      LIGHT UPLINK ACTIVITY LAMP
002343,000064: 
002344,000065:                                                                                                  #        BIT 4      LIGHT TEMP CAUTION LAMP
002345,000066: 
002346,000067:                                                                                                  #        BIT 5      LIGHT KEYBOARD RELEASE LAMP
002347,000068: 
002348,000069:                                                                                                  #        BIT 6      FLASH VERB AND NOUN LAMPS
002349,000070: 
002350,000071:                                                                                                  #        BIT 7      LIGHT OPERATOR ERROR LAMP
002351,000072: 

Page 56

002353,000074:                                                                                                  #        BIT 8      SPARE
002354,000075: 
002355,000076:                                                                                                  #        BIT 9      TEST CONNECTOR OUTBIT
002356,000077: 
002357,000078:                                                                                                  #        BIT 10     CAUTION RESET
002358,000079: 
002359,000080:                                                                                                  #        BIT 11     SPARE
002360,000081: 
002361,000082:                                                                                                  #        BIT 12     SPARE
002362,000083: 
002363,000084:                                                                                                  #        BIT 13     ENGINE ON
002364,000085: 
002365,000086:                                                                                                  #        BIT 14     ENGINE OFF
002366,000087: 
002367,000088:                                                                                                  #        BIT 15     SPARE
002368,000089: 
002369,000090: 
002370,000091:                                                                                                  #      CHANNEL 12   CHAN12; OUTPUT CHANNEL; BITS USED TO DRIVE NAVIGATION AND SPAECRAFT HARDWARE
002371,000092: 
002372,000093:                                                                                                  #        BIT 1      ZERO RR CDU; CDU'S GIVE RRADAR INFORMATION FOR LM
002373,000094: 
002374,000095:                                                                                                  #        BIT 2      ENABLE CDU RADAR ERROR COUNTERS
002375,000096: 
002376,000097:                                                                                                  #        BIT 3      NOT USED
002377,000098: 
002378,000099:                                                                                                  #        BIT 4      COARSE ALIGN ENABLE OF IMU
002379,000100: 
002380,000101:                                                                                                  #        BIT 5      ZERO IMU CDU'S
002381,000102: 
002382,000103:                                                                                                  #        BIT 6      ENABLE IMU ERROR COUNTER, CDU ERROR COUNTER.
002383,000104: 
002384,000105:                                                                                                  #        BIT 7      SPARE
002385,000106: 
002386,000107:                                                                                                  #        BIT 8      DISPLAY INERTIAL DATA
002387,000108: 
002388,000109:                                                                                                  #        BIT 9      -PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002389,000110: 
002390,000111:                                                                                                  #        BIT 10     +PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002391,000112: 
002392,000113:                                                                                                  #        BIT 11     -ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002393,000114: 
002394,000115:                                                                                                  #        BIT 12     +ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002395,000116: 
002396,000117:                                                                                                  #        BIT 13     LR POSITION 2 COMMAND
002397,000118: 
002398,000119:                                                                                                  #        BIT 14     ENABLE RENDESVOUS RADAR LOCK-ON;AUTO ANGLE TRACK'G
002399,000120: 
002400,000121:                                                                                                  #        BIT 15     ISS TURN ON DELAY COMPLETE
002401,000122: 
002402,000123: 

Page 57

002404,000125:                                                                                                  #      CHANNEL 13   CHAN13; OUTPUT CHANNEL
002405,000126: 
002406,000127:                                                                                                  #        BIT 1      RADAR C         PROPER SETTING OF THE A,B,C MATRIX
002407,000128:                                                                                                  #        BIT 2      RADAR B         SELECTS CERTAIN RADAR
002408,000129:                                                                                                  #        BIT 3      RADAR A         PARAMETERS TO BE READ.
002409,000130: 
002410,000131:                                                                                                  #        BIT 4      RADAR ACTIVITY
002411,000132: 
002412,000133:                                                                                                  #        BIT 5      NOT USED (CONNECTS AN ALTERNATE INPUT TO UPLINK)
002413,000134: 
002414,000135:                                                                                                  #        BIT 6      SPARE
002415,000136: 
002416,000137:                                                                                                  #        BIT 7      DOWNLINK TELEMETRY WORD ORDER CODE BIT
002417,000138: 
002418,000139:                                                                                                  #        BIT 8      RHC COUNTER ENABLE (READ HAND CONTROLLER ANGLES)
002419,000140: 
002420,000141:                                                                                                  #        BIT 9      START RHC READ INTO COUNTERS IF BIT 8 SET
002421,000142: 
002422,000143:                                                                                                  #        BIT 10     TEST ALARMS, TEST DSKY LIGHTS
002423,000144: 
002424,000145:                                                                                                  #        BIT 11     ENABLE STANDBY
002425,000146: 
002426,000147:                                                                                                  #        BIT 12     RESET TRAP 31-A    ALWAYS APPEAR TO BE SET TO 0
002427,000148: 
002428,000149:                                                                                                  #        BIT 13     RESET TRAP 31-B    ALWAYS APPEAR TO BE SET TO 0
002429,000150: 
002430,000151:                                                                                                  #        BIT 14     RESET TRAP 32      ALWAYS APPEAR TO BE SET TO 0
002431,000152: 
002432,000153:                                                                                                  #        BIT 15     ENABLE T6 RUPT
002433,000154: 
002434,000155: 
002435,000156:                                                                                                  #      CHANNEL 14   CHAN14; OUTPUT CHANNEL; USED TO CONTROL COMPUTER  COUNTER CELLS (CDU,GYRO,SPACECRAFT FUNC.
002436,000157: 
002437,000158:                                                                                                  #        BIT 1      OUTLINK ACTIVITY (NOT USED)
002438,000159: 
002439,000160:                                                                                                  #        BIT 2      ALTITUDE RATE OR ALTITIDE SELECTOR
002440,000161: 
002441,000162:                                                                                                  #        BIT 3      ALTITUDE METER ACTIVITY
002442,000163: 
002443,000164:                                                                                                  #        BIT 4      THRUST DRIVE ACTIVITY FOR DESCENT ENGINE
002444,000165: 
002445,000166:                                                                                                  #        BIT 5      SPARE
002446,000167: 
002447,000168:                                                                                                  #        BIT 6      GYRO ENABLE POWER FOR PULSES
002448,000169: 
002449,000170:                                                                                                  #        BIT 7      GYRO SELECT B    PAIR OF BITS IDENTIFIES AXIS OF -
002450,000171:                                                                                                  #        BIT 8      GYRO SELECT A    GYRO SYSTEM TO BE TORQUED.
002451,000172: 
002452,000173:                                                                                                  #        BIT 9      GYRO TORQUING COMMAND IN NEGATIVE DIRECTION
002453,000174: 

Page 58

002455,000176:                                                                                                  #        BIT 10     GYRO ACTIVITY
002456,000177: 
002457,000178:                                                                                                  #        BIT 11     DRIVE CDU S
002458,000179: 
002459,000180:                                                                                                  #        BIT 12     DRIVE CDU T
002460,000181: 
002461,000182:                                                                                                  #        BIT 13     DRIVE CDU Z
002462,000183: 
002463,000184:                                                                                                  #        BIT 14     DRIVE CDU Y
002464,000185: 
002465,000186:                                                                                                  #        BIT 15     DRIVE CDU X
002466,000187: 
002467,000188: 
002468,000189:                                                                                                  #      CHANNEL 15   MNKEYIN; INPUT CHANNEL;KEY CODE INPUT FROM KEYBOARD OF DSKY, SENSED BY PROGRAM WHEN
002469,000190:                                                                                                  #                   PROGRAM INTERRUPT #5 IS RECEIVED. USES BITS 5-1
002470,000191: 
002471,000192: 
002472,000193:                                                                                                  #      CHANNEL 16   NAVKEYIN; INPUT CHANNEL; OPTICS MARK INFORMATION AND NAVIGA ION PANEL DSKY (CM) OR THRUST
002473,000194:                                                                                                  #                   CONTROL (LM) SENSED BY PROGRAM WHEN PROGRAM INTER-RUPT #6 IS RECEIVED.  USES BITS 3-7 ONLY.
002474,000195: 
002475,000196:                                                                                                  #        BIT 1      NOT ASSIGNED
002476,000197: 
002477,000198:                                                                                                  #        BIT 2      NOT ASSIGNED
002478,000199: 
002479,000200:                                                                                                  #        BIT 3      OPTICS X-AXIS MARK SIGNAL FOR ALIGN OPTICAL TSCOPE
002480,000201: 
002481,000202:                                                                                                  #        BIT 4      OPTICS Y-AXIS MARK SIGNAL FOR AOT
002482,000203: 
002483,000204:                                                                                                  #        BIT 5      OPTICS MARK REJECT SIGNAL
002484,000205: 
002485,000206:                                                                                                  #        BIT 6      DESCENT+ ; CREW DESIRED SLOWING RATE OF DESCENT
002486,000207: 
002487,000208:                                                                                                  #        BIT 7      DESCENT- ; CREW DESIRED SPEEDING UP RATE OF D'CENT
002488,000209: 
002489,000210: 
002490,000211:                                                                                                  #      NOTE: ALL BITS IN CHANNELS 30-33 ARE INVERTED AS SENSED BY THE  PROGRAM, SO THAT A VALUE OF ZERO MEANS
002491,000212:                                                                                                  #      THAT THE INDICATED SIGNAL IS PRESENT.
002492,000213: 
002493,000214: 
002494,000215:                                                                                                  #      CHANNEL 30   INPUT CHANNEL
002495,000216: 
002496,000217:                                                                                                  #        BIT 1      ABORT WITH DESCENT STAGE
002497,000218: 
002498,000219:                                                                                                  #        BIT 2         UNUSED
002499,000220: 
002500,000221:                                                                                                  #        BIT 3      ENGINE ARMED SIGNAL
002501,000222: 
002502,000223:                                                                                                  #        BIT 4      ABORT WITH ASCENT ENGINE STAGE
002503,000224: 
002504,000225:                                                                                                  #        BIT 5      AUTO THROTTLE; COMPUTER CONTROL OF DESCENT ENGINE

Page 59

002506,000227:                                                                                                  #        BIT 6      DISPLAY INERTIAL DATA
002507,000228: 
002508,000229:                                                                                                  #        BIT 7      RR CDU FAIL
002509,000230: 
002510,000231:                                                                                                  #        BIT 8      SPARE
002511,000232: 
002512,000233:                                                                                                  #        BIT 9      IMU OPERATE WITH NO MALFUNCTION
002513,000234: 
002514,000235:                                                                                                  #        BIT 10     LM COMPUTER (NOT AGS) HAS CONTROL OF LM
002515,000236: 
002516,000237:                                                                                                  #        BIT 11     IMU CAGE COMMAND TO DRIVE IMU GIMBAL ANGLES TO 0.
002517,000238: 
002518,000239:                                                                                                  #        BIT 12     IMU CDU FAIL (MALFUNCTION OF IMU CDU,S)
002519,000240: 
002520,000241:                                                                                                  #        BIT 13     IMU FAIL (MALFUNCTION OF IMU STABILIZATION LOOPS)
002521,000242: 
002522,000243:                                                                                                  #        BIT 14     ISS TURN ON REQUESTED
002523,000244: 
002524,000245:                                                                                                  #        BIT 15     TEMPERATURE OF STABLE MEMBER WITHIN DESIGN LIMITS
002525,000246: 
002526,000247: 
002527,000248:                                                                                                  #      CHANNEL 31   INPUT CHANNEL; BITS ASSOCIATED WITH THE ATTITUDE  CONTROLLER, TRANSLATIONAL CONTROLLER,
002528,000249:                                                                                                  #                   AND SPACECRAFT ATTITUDE CONTROL; USED BY RCS DAP
002529,000250: 
002530,000251:                                                                                                  #        BIT 1      ROTATION (BY RHC) COMMANDED IN POSITIVE PITCH DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002531,000252:                                                                                                  #                   ALSO POSITIVE ELEVATION CHANGE FOR LANDING POINT  DESIGNATOR
002532,000253: 
002533,000254:                                                                                                  #        BIT 2      AS BIT 1 EXCEPT NEGATIVE PITCH AND ELEVATION
002534,000255: 
002535,000256:                                                                                                  #        BIT 3      ROTATION (BY RHC) COMMANDED IN POSITIVE YAW DIRECTION; MUST BE IN MINUMUM IMPULSE MODE.
002536,000257: 
002537,000258:                                                                                                  #        BIT 4      AS BIT 3 EXCEPT NEGATIVE YAW
002538,000259: 
002539,000260:                                                                                                  #        BIT 5      ROTATION (BY RHC) COMMANDED IN POSITIVE ROLL DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002540,000261:                                                                                                  #                   ALSO POSITIVE AZIMUTH CHANGE FOR LANDING POINT DESIGNATOR
002541,000262: 
002542,000263:                                                                                                  #        BIT 6      AS BIT 5 EXCEPT NEGATIVE ROLL AND AZIMUTH
002543,000264: 
002544,000265:                                                                                                  #        BIT 7      TRANSLATION IN +X DIRECTION COMMANDED BY THC
002545,000266: 
002546,000267:                                                                                                  #        BIT 8      TRANSLATION IN -X DIRECTION COMMANDED BY THC
002547,000268: 
002548,000269:                                                                                                  #        BIT 9      TRANSLATION IN +Y DIRECTION COMMANDED BY THC
002549,000270: 
002550,000271:                                                                                                  #        BIT 10     TRANSLATION IN -Y DIRECTION COMMANDED BY THC
002551,000272: 
002552,000273:                                                                                                  #        BIT 11     TRANSLATION IN +Z DIRECTION COMMANDED BY THC
002553,000274: 
002554,000275:                                                                                                  #        BIT 12     TRANSLATION IN -Z DIRECTION COMMANDED BY THC

Page 60

002556,000277: 
002557,000278:                                                                                                  #        BIT 13     ATTITUDE HOLD MODE ON SCS MODE CONTROL SWITCH
002558,000279: 
002559,000280:                                                                                                  #        BIT 14     AUTO STABILIZATION OF ATTITUDE ON SCS MODE SWITCH
002560,000281: 
002561,000282:                                                                                                  #        BIT 15     ATTITUDE CONTROL OUT OF DETENT (RHC NOT IN NEUTRAL
002562,000283: 
002563,000284: 
002564,000285:                                                                                                  #      CHANNEL 32      INPUT CHANNEL.
002565,000286: 
002566,000287:                                                                                                  #        BIT 1         THRUSTERS 2 & 4 DISABLED BY CREW
002567,000288: 
002568,000289:                                                                                                  #        BIT 2         THRUSTERS 5 & 8 DISABLED BY CREW
002569,000290: 
002570,000291:                                                                                                  #        BIT 3         THRUSTERS 1 & 3 DISABLED BY CREW
002571,000292: 
002572,000293:                                                                                                  #        BIT 4         THRUSTERS 6 & 7 DISABLED BY CREW
002573,000294: 
002574,000295:                                                                                                  #        BIT 5         THRUSTERS 14 & 16 DISABLED BY CREW
002575,000296: 
002576,000297:                                                                                                  #        BIT 6         THRUSTERS 13 & 15 DISABLED BY CREW
002577,000298: 
002578,000299:                                                                                                  #        BIT 7         THRUSTERS 9  & 12 DISABLED BY CREW
002579,000300: 
002580,000301:                                                                                                  #        BIT 8         THRUSTERS 10 & 11 DISABLED BY CREW
002581,000302: 
002582,000303:                                                                                                  #        BIT 9         DESCENT ENGINE GIMBALS DISABLED BY CREW
002583,000304: 
002584,000305:                                                                                                  #        BIT 10        APPARENT DESCENT ENGINE GIMBAL FAILURE
002585,000306: 
002586,000307:                                                                                                  #        BIT 14     INDICATES PROCEED KEY IS DEPRESSED
002587,000308: 
002588,000309: 
002589,000310:                                                                                                  #      CHANNEL 33   CHAN33; INPUT CHANNEL; FOR HARDWARE STATUS AND COMMAND INFORMATION. BITS 15-11 ARE FLIP-
002590,000311:                                                                                                  #                   FLOP BITS RESET BY A CHANNEL "WRITE" COMMAND THAT ARE RESET BY A RESTART & BY T4RUPT LOOP.
002591,000312: 
002592,000313:                                                                                                  #        BIT 1      SPARE
002593,000314: 
002594,000315:                                                                                                  #        BIT 2      RR AUTO-POWER ON
002595,000316: 
002596,000317:                                                                                                  #        BIT 3      RR RANGE LOW SCALE
002597,000318: 
002598,000319:                                                                                                  #        BIT 4      RR DATA GOOD
002599,000320: 
002600,000321:                                                                                                  #        BIT 5      LR RANGE DATA GOOD
002601,000322: 
002602,000323:                                                                                                  #        BIT 6      LR POS1
002603,000324: 
002604,000325:                                                                                                  #        BIT 7      LR POS2
002605,000326: 

Page 61

002607,000328:                                                                                                  #        BIT 8      LR VEL DATA GOOD
002608,000329: 
002609,000330:                                                                                                  #        BIT 9      LR RANGE LOW SCALE
002610,000331: 
002611,000332:                                                                                                  #        BIT 10     BLOCK UPLINK INPUT
002612,000333: 
002613,000334:                                                                                                  #        BIT 11     UPLINK TOO FAST
002614,000335: 
002615,000336:                                                                                                  #        BIT 12     DOWNLINK TOO FAST
002616,000337: 
002617,000338:                                                                                                  #        BIT 13     PIPA FAIL
002618,000339: 
002619,000340:                                                                                                  #        BIT 14     WARNING OF REPEATED ALARMS: RESTART,COUNTER FAIL, VOLTAGE FAIL,AND SCALAR DOUBLE.
002620,000341: 
002621,000342:                                                                                                  #        BIT 15     LGC OSCILLATOR STOPPED
002622,000343: 
002623,000344: 
002624,000345:                                                                                                  #     CHANNEL 34    DNT M1; OUTPUT CHANNEL; DOWNLINK 1  FIRST OF TWO WORDS SERIALIZATION.
002625,000346:                                                                                                  #     CHANNEL 35    DNT M2; OUTPUT CHANNEL DOWNLINK 2 SOCOND OF TWO   WORDS SERIALIZATION.

End of include-file INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc.  Parent file is MAIN.agc