Source Code
These source-code files were obtained by digitally photographing
an Artemis 72 (Apollo 15-17 Command Module) program listing from a private
collection and then
modifying pre-existing Comanche 55 (Apollo 11) source files to
incorporate changes. Photography was by Ron Burkey, and transcription
was performed by a team of volunteers. Note that the page images
presented online are of reduced quality, and that additional images
may be available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 072 OF AGC PROGRAM ARTEMIS BY NASA 2021114-011 11:40 FEB. 26, 1971Note that the date is the date of the printout, not the date of the program revision. |
018495,000002: ## Copyright: Public domain.
018496,000003: ## Filename: GIMBAL_LOCK_AVOIDANCE.agc
018497,000004: ## Purpose: Part of the source code for Artemis (i.e., Colossus 3),
018498,000005: ## build 072. This is for the Command Module's (CM)
018499,000006: ## Apollo Guidance Computer (AGC), for
018500,000007: ## Apollo 15-17.
018501,000008: ## Assembler: yaYUL
018502,000009: ## Contact: Sergio Navarro <sergionavarrog@gmail.com>
018503,000010: ## Website: www.ibiblio.org/apollo/index.html
018504,000011: ## Page Scans: www.ibiblio.org/apollo/ScansForConversion/Artemis072/
018505,000012: ## Mod history: 2009-08-19 SN Adapted from corresponding Comanche 055 file.
018506,000013: ## 2009-09-04 JL Minor changes.
018507,000014: ## 2010-02-20 RSB Un-##'d this header.
018508,000015: ## 2017-02-05 RSB Proofed comment text by diff'ing vs Comanche 55
018509,000016: ## but no differences found.
018510,000017:
Page 416 |
018512,000019:
018513,000020: 22,2000 SETLOC KALCMON1
018514,000021: 22,2000 BANK
018515,000022:
018516,000023: 22,2745 COUNT* $$/KALC
018517,000024: 22,2745 E6,1661 EBANK= BCDU
018518,000025:
018519,000026: # DETECTING GIMBAL LOCK
018520,000027: 22,2745 22,2745 LOCSKIRT EQUALS WCALC
018521,000028: 22,2745 70740 WCALC LXC,1 DLOAD*
018522,000029: 22,2746 00774 RATEINDX
018523,000030: 22,2747 05002 ARATE,1
018524,000031: 22,2750 45002 SR4 CALL # COMPUTE THE INCREMENTAL ROTATION MATRIX
018525,000032: 22,2751 44522 DELCOMP # DEL CORRESPONDING TO A 1 SEC ROTATION
018526,000033: # ABOUT COF
018527,000034: 22,2752 74343 DLOAD* VXSC
018528,000035: 22,2753 05002 ARATE,1
018529,000036: 22,2754 03343 COF
018530,000037: 22,2755 77721 MXV
018531,000038: 22,2756 05014 QUADROT
018532,000039: 22,2757 17311 STODL BRATE
018533,000040: 22,2760 03365 AM
018534,000041: 22,2761 55605 DMP DDV*
018535,000042: 22,2762 05012 ANGLTIME
018536,000043: 22,2763 05002 ARATE,1
018537,000044: 22,2764 77661 SR
018538,000045: 22,2765 20606 5
018539,000046: 22,2766 03317 STORE TM
018540,000047: 22,2767 77214 BON VLOAD
018541,000048: 22,2770 00313 CYC61FLG
018542,000049: 22,2771 71747 RCYCLR61
018543,000050: 22,2772 03311 BRATE
018544,000051: 22,2773 77761 VXSC
018545,000052: 22,2774 05036 BIASCALE
018546,000053: 22,2775 03275 STORE BIASTEMP # ATTITUDE ERROR BIAS TO PREVENT OVERSHOOT
018547,000054: # IN SYSTEM
018548,000055: 22,2776 77614 SETGO # STATE SWITCH CALCMAN2 (43D)
018549,000056: 22,2777 01035 CALCMAN2 # 0(OFF) = BYPASS STARTING PROCEDURE
018550,000057: 22,3000 45053 NEWANGL +1 # 1(ON) = START MANEUVER
018551,000058:
018552,000059:
018553,000060: 22,3001 00044 15053 ARATE 2DEC .0022222222 # = .05 DEG/SEC
018554,000061: 22,3003 00221 24255 2DEC .0088888889 # = .2 DEG/SEC
018555,000062: 22,3005 00554 02660 2DEC .0222222222 # = .5 DEG/SEC
018556,000063: 22,3007 02660 13301 2DEC .0888888889 # = 2 DEG/SEC $22.5 DEG/SEC
018557,000064: 22,3011 00003 04000 ANGLTIME 2DEC .000190735 # = 100B - 19
018558,000065: # MANEUVER ANGLE TO MANEUVER TIME
Page 417 |
018560,000067: 22,3013 03146 14632 QUADROT 2DEC .1 # ROTATION MATRIX FROM S/C AXES TO CONTROL
018561,000068: 22,3015 00000 00000 2DEC 0 B-28 # AXES (X ROT = -7.25 DEG)
018562,000069: 22,3017 00000 00000 2DEC 0 B-28
018563,000070: 22,3021 00000 00000 2DEC 0 B-28
018564,000071: 22,3023 03131 11275 2DEC .099200 # =(.1)COS7.25
018565,000072: 22,3025 77461 47370 2DEC -.012620 # =-(.1)SIN7.25
018566,000073: 22,3027 00000 00000 2DEC 0 B-28
018567,000074: 22,3031 00316 30407 2DEC .012620 # (.1)SIN7.25
018568,000075: 22,3033 03131 11275 2DEC .099200 # (.1)COS7.25
018569,000076: 22,3035 00004 05253 BIASCALE 2DEC .0002543132 # = (450/180)(1/0.6)(1/16384)
End of include-file GIMBAL_LOCK_AVOIDANCE.agc. Parent file is MAIN.agc