Source Code

013446,000001: # Copyright: Public domain. 013447,000002: # Filename: IMU_COMPENSATION_PACKAGE.agc 013448,000003: # Purpose: A section of Luminary 1C, revision 131. 013449,000004: # It is part of the source code for the Lunar Module's (LM) 013450,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 013451,000006: # This file is intended to be a faithful transcription, except 013452,000007: # that the code format has been changed to conform to the 013453,000008: # requirements of the yaYUL assembler rather than the 013454,000009: # original YUL assembler. 013455,000010: # Reference: pp. 333-344 of 1729.pdf. 013456,000011: # Contact: Ron Burkey <info@sandroid.org>. 013457,000012: # Website: www.ibiblio.org/apollo/index.html 013458,000013: # Mod history: 05/10/03 RSB. Began transcribing. 013459,000014: # 05/14/05 RSB Corrected website reference above. 013460,000015: 013461,000016: # Page 333 013462,000017: 07,2666 BANK 7 013463,000018: 06,2000 SETLOC IMUCOMP 013464,000019: 06,2000 BANK 013465,000020: 013466,000021: 06,3271 E3,1460 EBANK= NBDX 013467,000022: 013468,000023: 06,3271 COUNT* $$/ICOMP 013469,000024: 06,3271 33537 1/PIPA CAF LGCOMP # SAVE EBANK OF CALLING PROGRAM 013470,000025: 06,3272 56003 XCH EBANK 013471,000026: 06,3273 54163 TS MODE 013472,000027: 013473,000028: 06,3274 11477 CCS GCOMPSW # BYPASS IF GCOMPSW NEGATIVE 013474,000029: 06,3275 13300 TCF +3 013475,000030: 06,3276 13300 TCF +2 013476,000031: 06,3277 13361 TCF IRIG1 # RETURN 013477,000032: 013478,000033: 06,3300 34751 1/PIPA1 CAF FOUR # PIPAZ, PIPAY, PIPAX 013479,000034: 06,3301 54132 TS BUF +2 013480,000035: 013481,000036: 06,3302 50132 INDEX BUF +2 013482,000037: 06,3303 31453 CA PIPASCF # (P.P.M.) X 2(-9) 013483,000038: 06,3304 00006 EXTEND 013484,000039: 06,3305 50132 INDEX BUF +2 013485,000040: 06,3306 70324 MP DELVX # (PP) X 2(+14) NOW (PIPA PULSES) X 2(+5) 013486,000041: 06,3307 54002 TS Q # SAVE MAJOR PART 013487,000042: 013488,000043: 06,3310 30001 CA L # MINOR PART 013489,000044: 06,3311 00006 EXTEND 013490,000045: 06,3312 74746 MP BIT6 # SCALE 2(+9) SHIFT RIGHT 9 013491,000046: 013492,000047: 06,3313 50132 INDEX BUF +2 013493,000048: 06,3314 54325 TS DELVX +1 # FRACTIONAL PIPA PULSES SCALED 2(+14) 013494,000049: 013495,000050: 06,3315 30002 CA Q # MAJOR PART 013496,000051: 06,3316 00006 EXTEND 013497,000052: 06,3317 74746 MP BIT6 # SCALE 2(+9) SHIFT RIGHT 9 013498,000053: 06,3320 50132 INDEX BUF +2 013499,000054: 06,3321 20325 DAS DELVX # (PIPAI) + (PIPAI)(SF) 013500,000055: 013501,000056: 06,3322 50132 INDEX BUF +2 013502,000057: 06,3323 41452 CS PIPABIAS # (PIPA PULSES)/(CS) X 2(-3) * 013503,000058: 06,3324 00006 EXTEND 013504,000059: 06,3325 71074 MP 1/PIPADT # (CS) X 2(+8) NOW (PIPA PULSES) X 2(+5) * 013505,000060: 06,3326 00006 EXTEND 013506,000061: 06,3327 74746 MP BIT6 # SCALE 2(+9) SHIFT RIGHT 9 * 013507,000062: 06,3330 50132 INDEX BUF +2 013508,000063: 06,3331 20325 DAS DELVX # (PIPAI) + (PIPAI)(SFE) - (BIAS)(DELTAT) 013509,000064: 013510,000065: 06,3332 10132 CCS BUF +2 # PIPAZ, PIPAY, PIPAX 013511,000066: 06,3333 67752 AD NEG1 013512,000067: 06,3334 13301 TCF 1/PIPA1 +1 013513,000068: # Page 334 013514,000069: 06,3335 13336 NOOP # LESS THAN ZERO IMPOSSIBLE 013515,000070: 013516,000071: # Page 335 013517,000072: 06,3336 55477 IRIGCOMP TS GCOMPSW # INDICATE COMMANDS 2 PULSES OR LESS. 013518,000073: 06,3337 54130 TS BUF # INDEX COUNTER. IRIGX, IRIGY, IRIGZ. 013519,000074: 013520,000075: 06,3340 03364 TC IRIGX # COMPENSATE ACCELERATION TERMS 013521,000076: 013522,000077: 06,3341 41460 CS NBDX # (GYRO PULSES)/(CS) X 2(-5) 013523,000078: 06,3342 03462 TC DRIFTSUB # -(NBOX)(DELTAT) (GYRO PULSES) X 2(+14) 013524,000079: 013525,000080: 06,3343 03401 TC IRIGY # COMPENSATE ACCELERATION TERMS 013526,000081: 013527,000082: 06,3344 41461 CS NBDY # (GYRO PULSES)/(CS) X 2(-5) 013528,000083: 06,3345 03462 TC DRIFTSUB # +(NBDY)(DELTAT) (GYRO PULSES) X 2(+14) 013529,000084: 013530,000085: 06,3346 03416 TC IRIGZ # COMPENSATE ACCELERATION TERMS 013531,000086: 013532,000087: 06,3347 31462 CA NBDZ # (GYRO PULSES)/(CS) X 2(-5) 013533,000088: 06,3350 03462 TC DRIFTSUB # +(NBDZ)(DELTAT) (GYRO PULSES) X 2(+14) 013534,000089: 013535,000090: 06,3351 11477 CCS GCOMPSW # ARE GYRO COMMANDS GREATER THAN 2 PULSES 013536,000091: 06,3352 13354 TCF +2 # YES SEND OUT GYRO TORQUING COMMANDS. 013537,000092: 06,3353 13361 TCF IRIG1 # NO RETURN 013538,000093: 013539,000094: 06,3354 35031 CA PRIO21 # PRIO GREATER THAN SERVICER. 013540,000095: 06,3355 05072 TC NOVAC # SEND OUT GYRO TORQUING COMMANDS. 013541,000096: 06,3356 E3,1460 EBANK= NBDX 013542,000097: 06,3356 03515 14063 2CADR 1/GYRO 013543,000098: 013544,000099: 06,3360 00003 RELINT 013545,000100: 06,3361 30163 IRIG1 CA MODE # RESTORE CALLER'S EBANK 013546,000101: 06,3362 54003 TS EBANK 013547,000102: 06,3363 14631 TCF SWRETURN 013548,000103: 013549,000104: # Page 336 013550,000105: 06,3364 00006 IRIGX EXTEND 013551,000106: 06,3365 22156 QXCH MPAC +2 # SAVE Q 013552,000107: 06,3366 00006 EXTEND 013553,000108: 06,3367 40325 DCS DELVX # (PIPA PULSES) X 2(+14) 013554,000109: 06,3370 52155 DXCH MPAC 013555,000110: 06,3371 31463 CA ADIAX # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013556,000111: 06,3372 03433 TC GCOMPSUB # -(ADIAX)(PIPAX) (GYRO PULSES) X 2(+14) 013557,000112: 013558,000113: 06,3373 00006 EXTEND # 013559,000114: 06,3374 40327 DCS DELVY # (PIPA PULSES) X 2(+14) 013560,000115: 06,3375 52155 DXCH MPAC # 013561,000116: 06,3376 41466 CS ADSRAX # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013562,000117: 06,3377 03433 TC GCOMPSUB # -(ADSRAX)(PIPAY) (GYRO PULSES) X 2(+14) 013563,000118: 013564,000119: # EXTEND # *** 013565,000120: # DCS DELVY # *** (PIPA PULSES) X 2(+14) 013566,000121: # DXCH MPAC # *** 013567,000122: # CA ADOAX # *** (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013568,000123: # TC GCOMPSUB # *** -(ADOAX)(PIPAZ) (GYRO PULSES) X 2(+14) 013569,000124: 013570,000125: 06,3400 00156 TC MPAC +2 013571,000126: 013572,000127: 06,3401 00006 IRIGY EXTEND 013573,000128: 06,3402 22156 QXCH MPAC +2 # SAVE Q 013574,000129: 06,3403 00006 EXTEND 013575,000130: 06,3404 40327 DCS DELVY # (PIPA PULSES) X 2(+14) 013576,000131: 06,3405 52155 DXCH MPAC 013577,000132: 06,3406 31464 CA ADIAY # (GYRO PULSES)/(PIPA PULSE) X 2(+14) * 013578,000133: 06,3407 03433 TC GCOMPSUB # -(ADIAY)(PIPAY) (GYRO PULSES) X 2(+14) 013579,000134: 013580,000135: 06,3410 00006 EXTEND 013581,000136: 06,3411 40331 DCS DELVZ # (PIPA PULSES) X 2(+14) 013582,000137: 06,3412 52155 DXCH MPAC 013583,000138: 06,3413 41467 CS ADSRAY # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013584,000139: 06,3414 03433 TC GCOMPSUB # +(ADSRAY)(PIPAZ) (GYRO PULSES) X 2(+14) 013585,000140: 013586,000141: # EXTEND # *** 013587,000142: # DCS DELVX # *** (PIPA PULSES) X 2(+14) 013588,000143: # DXCH MPAC # *** 013589,000144: # CA ADOAY # *** (GYRO PULSES)/(PIPA PULS) X 2(-6) * 013590,000145: # TC GCOMPSUB # *** -(ADOAY)(/PIPAX) (GYRO PULSES) X 2(+14) 013591,000146: 013592,000147: 06,3415 00156 TC MPAC +2 013593,000148: 013594,000149: 06,3416 00006 IRIGZ EXTEND 013595,000150: 06,3417 22156 QXCH MPAC +2 # SAVE Q 013596,000151: 06,3420 00006 EXTEND 013597,000152: 06,3421 40327 DCS DELVY # (PIPA PULSES) X 2(-14) 013598,000153: 06,3422 52155 DXCH MPAC 013599,000154: 06,3423 31470 CA ADSRAZ # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013600,000155: # Page 337 013601,000156: 06,3424 03433 TC GCOMPSUB # -(ADSRAZ)(PIPAY) (GYRO PULSES) X 2(+14) 013602,000157: 013603,000158: 06,3425 00006 EXTEND 013604,000159: 06,3426 40331 DCS DELVZ # (PIPA PULSES) X 2(+14) 013605,000160: 06,3427 52155 DXCH MPAC 013606,000161: 06,3430 31465 CA ADIAZ # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013607,000162: 06,3431 03433 TC GCOMPSUB # -(ADIAZ)(PIPAZ) (GYRO PULSES) X 2(+14) 013608,000163: 013609,000164: # EXTEND # *** 013610,000165: # DCS DELVX # *** (PIPA PULSE) X 2(+14) 013611,000166: # DXCH MPAC # *** 013612,000167: # CS ADOAZ # *** (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013613,000168: # TC GCOMPSUB # *** +(ADOAZ)(PIPAX) (GYRO PULSES) X 2(+14) 013614,000169: 013615,000170: 06,3432 00156 TC MPAC +2 013616,000171: 013617,000172: # Page 338 013618,000173: 06,3433 56154 GCOMPSUB XCH MPAC # ADIA OR ADSRA COEFFICIENT ARRIVES IN A 013619,000174: 06,3434 00006 EXTEND # C(MPAC) = (PIPA PULSES) X 2(+14) 013620,000175: 06,3435 70154 MP MPAC # (GYRO PULSES)/(PIPA PULSE) X 2(-6) * 013621,000176: 06,3436 52123 DXCH VBUF # NOW = (GYRO PULSES) X 2(+8) * 013622,000177: 013623,000178: 06,3437 30155 CA MPAC +1 # MINOR PART OF PIPA PULSES 013624,000179: 06,3440 00006 EXTEND 013625,000180: 06,3441 70154 MP MPAC # ADIA OR ADSRA 013626,000181: 06,3442 54001 TS L 013627,000182: 06,3443 34755 CAF ZERO 013628,000183: 06,3444 20123 DAS VBUF # NO = (BYRO PULSES) X 2(+8) * 013629,000184: 013630,000185: 06,3445 30122 CA VBUF # PARTIAL RESULT -- MAJOR 013631,000186: 06,3446 00006 EXTEND 013632,000187: 06,3447 74743 MP BIT9 # SCALE 2(+6) SHIFT RIGHT 6 * 013633,000188: 06,3450 50130 INDEX BUF # RESULT = (BYRO PULSES) X 2(+14) 013634,000189: 06,3451 21472 DAS GCOMP # HI(ADIA)(PIPAI) OR HI(ADSRA)(PIPAI) 013635,000190: 013636,000191: 06,3452 30123 CA VBUF +1 # PARTIAL RESULT -- MINOR 013637,000192: 06,3453 00006 EXTEND 013638,000193: 06,3454 74743 MP BIT9 # SCALE 2(+6) SHIFT RIGHT 6 * 013639,000194: 06,3455 54001 TS L 013640,000195: 06,3456 34755 CAF ZERO 013641,000196: 06,3457 50130 INDEX BUF # RESULT = (TYRO PULSES) X 2(+14) 013642,000197: 06,3460 21472 DAS GCOMP # (ADIA)(PIPAI) OR (ADSRA)(PIPAI) 013643,000198: 013644,000199: 06,3461 00002 TC Q 013645,000200: 013646,000201: # Page 339 013647,000202: 06,3462 00006 DRIFTSUB EXTEND 013648,000203: 06,3463 22131 QXCH BUF +1 013649,000204: 013650,000205: 06,3464 00006 EXTEND # C(A) = NBD (GYRO PULSES)/(CS) X 2(-5) 013651,000206: 06,3465 71074 MP 1/PIPADT # (CS) X 2(+8) NO (GYRO PULSES) X 2(+3) 013652,000207: 06,3466 22155 LXCH MPAC +1 # SAVE FOR FRACTIONAL COMPENSATION 013653,000208: 06,3467 00006 EXTEND 013654,000209: 06,3470 74750 MP BIT4 # SCALE 2(+11) SHIFT RIGHT 11 013655,000210: 06,3471 50130 INDEX BUF 013656,000211: 06,3472 21472 DAS GCOMP # HI(NBD)(DELTAT) (GYRO PULSES) X 2(+14) 013657,000212: 013658,000213: 06,3473 30155 CA MPAC +1 # NO MINOR PART 013659,000214: 06,3474 00006 EXTEND 013660,000215: 06,3475 74750 MP BIT4 # SCALE 2(+11) SHIFT RIGHT 11 013661,000216: 06,3476 54001 TS L 013662,000217: 06,3477 34755 CAF ZERO 013663,000218: 06,3500 50130 INDEX BUF # ADD IN FRACTIONAL COMPENSATION 013664,000219: 06,3501 21472 DAS GCOMP # (NBD)(DELTAT) (GYRO PULSES) X 2(+14) 013665,000220: 013666,000221: 06,3502 34752 DRFTSUB2 CAF TWO # PIPAX, PIPAY, PIPAZ 013667,000222: 06,3503 60130 AD BUF 013668,000223: 06,3504 56130 XCH BUF 013669,000224: 06,3505 50000 INDEX A 013670,000225: 06,3506 11471 CCS GCOMP # ARE GYRO COMMANDS 1 PULSE OR GREATER 013671,000226: 06,3507 13511 TCF +2 # YES 013672,000227: 06,3510 00131 TC BUF +1 # NO 013673,000228: 013674,000229: 06,3511 73561 MASK COMPCHK # DEC -1 013675,000230: 06,3512 10000 CCS A # ARE GYRO COMMANDS GREATER THAN 2 PULSES 013676,000231: 06,3513 55477 TS GCOMPSW # YES -- SET GCOMPSW POSITIVE 013677,000232: 06,3514 00131 TC BUF +1 # NO 013678,000233: 013679,000234: # Page 340 013680,000235: 06,3515 34751 1/GYRO CAF FOUR # PIPAZ, PIPAY, PIPAX 013681,000236: 06,3516 54130 TS BUF 013682,000237: 013683,000238: 06,3517 50130 INDEX BUF # SCALE GYRO COMMANDS FOR IMUPULSE 013684,000239: 06,3520 31472 CA GCOMP +1 # FRACTIONAL PULSES 013685,000240: 06,3521 00006 EXTEND 013686,000241: 06,3522 74744 MP BIT8 # SHIFT RIGHT 7 013687,000242: 06,3523 50130 INDEX BUF 013688,000243: 06,3524 55472 TS GCOMP +1 # FRACTIONAL PULSES SCALED 013689,000244: 013690,000245: 06,3525 34755 CAF ZERO # SET GCOMP = 0 FOR DAS INSTRUCTION 013691,000246: 06,3526 50130 INDEX BUF 013692,000247: 06,3527 57471 XCH GCOMP # GYRO PULSES 013693,000248: 06,3530 00006 EXTEND 013694,000249: 06,3531 74744 MP BIT8 # SHIFT RIGHT 7 013695,000250: 06,3532 50130 INDEX BUF 013696,000251: 06,3533 21472 DAS GCOMP # ADD THESE TO FRACTIONAL PULSES ABOVE 013697,000252: 013698,000253: 06,3534 10130 CCS BUF # PIPAZ, PIPAY, PIPAX 013699,000254: 06,3535 67752 AD NEG1 013700,000255: 06,3536 13516 TCF 1/GYRO +1 013701,000256: 06,3537 01471 LGCOMP ECADR GCOMP # LESS THAN ZERO IMPOSSIBLE 013702,000257: 013703,000258: 06,3540 33537 CAF LGCOMP 013704,000259: 06,3541 04616 TC BANKCALL 013705,000260: 06,3542 17314 CADR IMUPULSE # CALL GYRO TORQUING ROUTINE 013706,000261: 06,3543 04616 TC BANKCALL 013707,000262: 06,3544 17707 CADR IMUSTALL # WAIT FOR PULSES TO GET OUT 013708,000263: 06,3545 15155 TCF ENDOFJOB # TEMPORARY 013709,000264: 013710,000265: 06,3546 34751 GCOMP1 CAF FOUR # PIPAZ, PIPAY, PIPAX 013711,000266: 06,3547 54130 TS BUF 013712,000267: 013713,000268: 06,3550 50130 INDEX BUF # RESCALE 013714,000269: 06,3551 31472 CA GCOMP +1 013715,000270: 06,3552 00006 EXTEND 013716,000271: 06,3553 74744 MP BIT8 # SHIFT MINOR PART LEFT 7 -- MAJOR PART = 0 013717,000272: 06,3554 50130 INDEX BUF 013718,000273: 06,3555 23472 LXCH GCOMP +1 # BITS 8-14 OF MINOR PART WERE = 0 013719,000274: 013720,000275: 06,3556 10130 CCS BUF # PIPAZ, PIPAY, PIPAX 013721,000276: 06,3557 67752 AD NEG1 013722,000277: 06,3560 13547 TCF GCOMP1 +1 013723,000278: 06,3561 77776 COMPCHK DEC -1 B-14 # LESS THAN ZERO IMPOSSIBLE 013724,000279: 06,3562 15155 TCF ENDOFJOB 013725,000280: 013726,000281: # Page 341 013727,000282: 06,3563 11477 NBDONLY CCS GCOMPSW # BYPASS IF GCOMPSW NEGATIVE 013728,000283: 06,3564 13567 TCF +3 013729,000284: 06,3565 13567 TCF +2 013730,000285: 06,3566 15155 TCF ENDOFJOB 013731,000286: 013732,000287: 06,3567 00004 INHINT 013733,000288: 06,3570 10076 CCS FLAGWRD2 # PREREAD T3RUPT MAY COINCIDE 013734,000289: 06,3571 15155 TCF ENDOFJOB 013735,000290: 06,3572 15155 TCF ENDOFJOB 013736,000291: 06,3573 13574 TCF +1 013737,000292: 013738,000293: 06,3574 30104 CA FLAGWRD8 # IF SURFACE FLAG IS SET, SET TEM1 013739,000294: 06,3575 74744 MASK BIT8 # POSITIVE SO THA THT EH ACCELERATION TERMS 013740,000295: 06,3576 54141 TS TEM1 # WILL BE COMPENSATED. 013741,000296: 06,3577 00006 EXTEND 013742,000297: 06,3600 13603 BZF +3 # ARE WE ON THE SURFACE 013743,000298: 013744,000299: 06,3601 04674 TC IBNKCALL # ON THE SURFACE 013745,000300: 06,3602 77541 CADR PIPASR +3 # READ PIPAS, BUT DO NOT SCALE THEM 013746,000301: 013747,000302: 06,3603 30025 CA TIME1 # (CS) X 2(+14) 013748,000303: 06,3604 57074 XCH 1/PIPADT # PREVIOUS TIME 013749,000304: 06,3605 00003 RELINT 013750,000305: 06,3606 40000 COM 013751,000306: 06,3607 61074 AD 1/PIPADT # PRESENT TIME - PREVIOUS TIME 013752,000307: 06,3610 64736 NBD2 AD HALF # CORRECT FOR POSSIBLE TIME1 TICK 013753,000308: 06,3611 64736 AD HALF 013754,000309: 06,3612 56001 XCH L # IF TIME1 DID NOT DICK, REMOVE RESULTING 013755,000310: 06,3613 56001 XCH L # OVERFLOW. 013756,000311: 013757,000312: 06,3614 00006 NBD3 EXTEND # C(A) = DELTAT (CS) X 2(+14) 013758,000313: 06,3615 74742 MP BIT10 # SHIFT RIGHT 5 013759,000314: 06,3616 52125 DXCH VBUF +2 013760,000315: 013761,000316: 06,3617 34755 CA ZERO 013762,000317: 06,3620 55477 TS GCOMPSW # INDICATE COMMANDS 2 PULSES OR LESS. 013763,000318: 06,3621 54130 TS BUF # INDEX X, Y, Z. 013764,000319: 013765,000320: 06,3622 10141 CCS TEM1 # IF SURFACE FLAG IS SET, 013766,000321: 06,3623 03364 TC IRIGX # COMPENSATE ACCELERATION TERMS. 013767,000322: 013768,000323: 06,3624 00006 EXTEND 013769,000324: 06,3625 30125 DCA VBUF +2 013770,000325: 06,3626 52155 DXCH MPAC # DELTAT NOW SCALED (CS) X 2(+19) 013771,000326: 013772,000327: 06,3627 41460 CS NBDX # (GYRO PULSES)/(CS) X 2(-5) 013773,000328: 06,3630 03652 TC FBIASSUB # -(NBOX)(DELTAT) (GYRO PULSES) X 2(+14) 013774,000329: 013775,000330: 06,3631 10141 CCS TEM1 # IF SURFACE FLAG IS SET, 013776,000331: 06,3632 03401 TC IRIGY # COMPENSAGE ACCELERATION TERMS. 013777,000332: # Page 342 013778,000333: 06,3633 00006 EXTEND 013779,000334: 06,3634 40125 DCS VBUF +2 013780,000335: 06,3635 52155 DXCH MPAC # DELTAT SCALED (CS) X 2(+19) 013781,000336: 06,3636 31461 CA NBDY # (BYRO PULSES)/(CS) X 2(-5) 013782,000337: 06,3637 03652 TC FBIASSUB # -(NBDY)(DELTAT) (GYRO PULSES) X 2(+14) 013783,000338: 013784,000339: 06,3640 10141 CCS TEM1 # IF SURFACE FLAG IS SET, 013785,000340: 06,3641 03416 TC IRIGZ # COMPENSATE ACCELERATION TERMS 013786,000341: 013787,000342: 06,3642 00006 EXTEND 013788,000343: 06,3643 40125 DCS VBUF +2 013789,000344: 06,3644 52155 DXCH MPAC # DELTAT SCALED (CS) X 2(+19) 013790,000345: 06,3645 41462 CS NBDZ # (GYRO PULSES)/(CS) X 2(-5) 013791,000346: 06,3646 03652 TC FBIASSUB # +(NBDZ)(DELTAT) (GYRO PULSES) X 2(+14) 013792,000347: 013793,000348: 06,3647 11477 CCS GCOMPSW # ARE GYRO COMMANDS GREATER THAN 2 PULSES 013794,000349: 06,3650 13515 TCF 1/GYRO # YES 013795,000350: 06,3651 15155 TCF ENDOFJOB # NO 013796,000351: 013797,000352: # Page 343 013798,000353: 06,3652 56002 FBIASSUB XCH Q 013799,000354: 06,3653 54131 TS BUF +1 013800,000355: 013801,000356: 06,3654 30002 CA Q # NBD SCALED (GYRO PULSES)/(CS) X 2(-5) 013802,000357: 06,3655 00006 EXTEND 013803,000358: 06,3656 70154 MP MPAC # DELTAT SCALED (CS) X 2(+19) 013804,000359: 06,3657 50130 INDEX BUF 013805,000360: 06,3660 21472 DAS GCOMP # HI(NBD)(DELTAT) (GYRO PULSES) X 2(+14) 013806,000361: 013807,000362: 06,3661 30002 CA Q # NO FRACTIONAL PART 013808,000363: 06,3662 00006 EXTEND 013809,000364: 06,3663 70155 MP MPAC +1 013810,000365: 06,3664 54001 TS L 013811,000366: 06,3665 34755 CAF ZERO 013812,000367: 06,3666 50130 INDEX BUF 013813,000368: 06,3667 21472 DAS GCOMP # (NBD)(DELTAT) (GYRO PULSES) X 2(+14) 013814,000369: 013815,000370: 06,3670 13502 TCF DRFTSUB2 # CHECK MAGNITUDE OF COMPENSATION 013816,000371: 013817,000372: 06,3671 04616 LASTBIAS TC BANKCALL 013818,000373: 06,3672 17270 CADR PIPUSE1 013819,000374: 013820,000375: 06,3673 11477 CCS GCOMPSW 013821,000376: 06,3674 13677 TCF +3 013822,000377: 06,3675 13677 TCF +2 013823,000378: 06,3676 15155 TCF ENDOFJOB 013824,000379: 013825,000380: 06,3677 30104 CA FLAGWRD8 # IF SURFACE FLAG IS SET, SET TEM1 013826,000381: 06,3700 74744 MASK SURFFBIT # POSITIVE SO THAT THE ACCELERATION TERMS 013827,000382: 06,3701 54141 TS TEM1 # WILL BE COMPENSATED. 013828,000383: 013829,000384: 06,3702 37721 CAF PRIO31 # 2 SECONDS SCALED (CS) X 2(+8) 013830,000385: 06,3703 57074 XCH 1/PIPADT 013831,000386: 06,3704 40000 COM 013832,000387: 06,3705 61234 AD PIPTIME +1 013833,000388: 06,3706 13610 TCF NBD2 013834,000389: 013835,000390: 06,3707 33537 GCOMPZER CAF LGCOMP # ROUTINE TO ZERO GCOMP BEFORE FIRST 013836,000391: 06,3710 56003 XCH EBANK # CALL TO 1/PIPA 013837,000392: 06,3711 54163 TS MODE 013838,000393: 013839,000394: 06,3712 34755 CAF ZERO 013840,000395: 06,3713 55477 TS GCOMPSW 013841,000396: 06,3714 55471 TS GCOMP 013842,000397: 06,3715 55472 TS GCOMP +1 013843,000398: 06,3716 55473 TS GCOMP +2 013844,000399: 06,3717 55474 TS GCOMP +3 013845,000400: 06,3720 55475 TS GCOMP +4 013846,000401: # Page 344 013847,000402: 06,3721 55476 TS GCOMP +5 013848,000403: 013849,000404: 06,3722 13361 TCF IRIG1 # RESTORE EBANK AND RETURN 013850,000405: End of include-file IMU_COMPENSATION_PACKAGE.agc. Parent file is MAIN.agc