Source Code

015000,000001: # Copyright: Public domain. 015001,000002: # Filename: GIMBAL_LOCK_AVOIDANCE.agc 015002,000003: # Purpose: A section of Luminary 1C, revision 131. 015003,000004: # It is part of the source code for the Lunar Module's (LM) 015004,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 015005,000006: # This file is intended to be a faithful transcription, except 015006,000007: # that the code format has been changed to conform to the 015007,000008: # requirements of the yaYUL assembler rather than the 015008,000009: # original YUL assembler. 015009,000010: # Reference: p. 371 of 1729.pdf. 015010,000011: # Contact: Ron Burkey <info@sandroid.org>. 015011,000012: # Website: www.ibiblio.org/apollo/index.html 015012,000013: # Mod history: 05/11/03 RSB. Began transcribing. 015013,000014: # 05/14/05 RSB Corrected website reference above. 015014,000015: 015015,000016: # Page 371 015016,000017: 15,2050 BANK 15 015017,000018: 015018,000019: 22,2000 SETLOC KALCMON1 015019,000020: 22,2000 BANK 015020,000021: 015021,000022: # DETECTING GIMBAL LOCK 015022,000023: 22,2744 22,2744 LOCSKIRT EQUALS NOGIMLOC 015023,000024: 015024,000025: 22,2744 77614 NOGIMLOC SET 015025,000026: 22,2745 01074 CALCMAN3 015026,000027: 22,2746 70740 WCALC LXC,1 DLOAD* 015027,000028: 22,2747 01322 RATEINDX # CHOOSE THE DESIRED MANEUVER RATE 015028,000029: 22,2750 04772 ARATE,1 # FROM A LIST OF FOUR 015029,000030: 22,2751 45002 SR4 CALL # COMPUTE THE INCREMENTAL ROTATION MATRIX 015030,000031: 22,2752 44527 DELCOMP # DEL CORRESPONDING TO A 1 SEC ROTATION 015031,000032: # ABOUT COF 015032,000033: 22,2753 74343 DLOAD* VXSC 015033,000034: 22,2754 04772 ARATE,1 015034,000035: 22,2755 03270 COF 015035,000036: 22,2756 17325 STODL BRATE # COMPONENT MANEUVER RATES 45 DEG/SEC 015036,000037: 22,2757 03335 AM 015037,000038: 22,2760 55605 DMP DDV* 015038,000039: 22,2761 05002 ANGLTIME 015039,000040: 22,2762 04772 ARATE,1 015040,000041: 22,2763 77661 SR 015041,000042: 22,2764 20606 5 015042,000043: 22,2765 03333 STORE TM # MANEUVER EXECUTION TIME SCALED AS T2 015043,000044: 22,2766 77614 SETGO 015044,000045: 22,2767 01035 CALCMAN2 # D(OFF) = CONTINUE MANEUVER 015045,000046: 22,2770 45010 NEWANGL +1 # 1(ON) = START MANEUVER 015046,000047: 015047,000048: # THE FOUR SELECTABLE FREE FALL MANEUVER RATES SELECTED BY 015048,000049: # LOADING RATEINDX WITH 0, 2, 4, 6, RESPECTIVELY 015049,000050: 015050,000051: 22,2771 00221 24255 ARATE 2DEC .0088888888 # = 0.2 DEG/SEC 015051,000052: 22,2773 00554 02660 2DEC .0222222222 # = 0.5 DEG/SEC 015052,000053: 22,2775 02660 13301 2DEC .0888888888 # = 2.0 DEG/SEC 015053,000054: 22,2777 16161 30707 2DEC .4444444444 # = 10.0 DEG/SEC 015054,000055: 015055,000056: 22,3001 00003 04000 ANGLTIME 2DEC .0001907349 # = 100B-19 FUDGE FACTOR TO CONVERT 015056,000057: # MANEUVER ANGLE TO MANEUVER TIME 015057,000058: 015058,000059: End of include-file GIMBAL_LOCK_AVOIDANCE.agc. Parent file is MAIN.agc