Source Code
![]() |
These source-code files were transcribed from scans made from Don Eyles's personal
copy of BURST120 (SUNBURST 120). They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Mike Stewart. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are in ALL-CAPS, whereas
comments added later in transcription are in Mixed-Case. In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the BURST120 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:YUL SYSTEM FOR AGC: REVISION 0 OF PROGRAM BURST120 BY NASA 2021106-031 DEC 7, 1967 THIS LISTING IS A COPY OF A VERSION OF THE PROGRAM INTENDED FOR USE IN THE ON-BOARD PRIMARY GUIDANCE COMPUTER IN THE UNMANNED FLIGHT OF APOLLO LUNAR MODULE 1 --- THE AS206 MISSION.Note that the date is the date of the printout, not the date of the program revision. |
035946,000002: ## Copyright: Public domain.
035947,000003: ## Filename: AVERAGE_G_INTEGRATOR.agc
035948,000004: ## Purpose: A module for revision 0 of BURST120 (Sunburst). It
035949,000005: ## is part of the source code for the Lunar Module's
035950,000006: ## (LM) Apollo Guidance Computer (AGC) for Apollo 5.
035951,000007: ## Assembler: yaYUL
035952,000008: ## Contact: Ron Burkey <info@sandroid.org>.
035953,000009: ## Website: www.ibiblio.org/apollo/index.html
035954,000010: ## Mod history: 2016-09-30 RSB Created draft version.
035955,000011: ## 2016-10-29 MAS Adapted from Colossus 237.
035956,000012: ## 2016-10-31 RSB Typos.
035957,000013: ## 2016-12-06 RSB Comment-proofing via octopus/ProoferComments;
035958,000014: ## no changes were made.
035959,000015:
![]() |
Page 842 |
035961,000017: # *************************************************************************************************************
035962,000018:
035963,000019: # ROUTINE CALCRVG INTEGRATES THE EQUATIONS OF MOTION BY AVERAGING THE THRUST AND GRAVITATIONAL
035964,000020: # ACCELERATIONS OVER A TIME INTERVAL OF 2 SECONDS.
035965,000021:
035966,000022: # FOR THE EARTH-CENTERED GRAVITATIONAL FIELD, THE PERTURBATION DUE TO OBLATENESS IS COMPUTED TO THE FIRST
035967,000023: # HARMONIC COEFFICIENT J.
035968,000024:
035969,000025: # ROUTINE CALCRVG REQUIRES...
035970,000026: # 1) THRUST ACCELERATION INCREMENTS IN DELV SCALED SAME AS PIPAX,Y,Z
035971,000027: # 2) VN SCALED 2(+7)M/CS.
035972,000028: # 3) PUSHDOWN COUNTER SET TO ZERO.
035973,000029: # IT LEAVES RN1 UPDATED (SCALED AT 2(+24)M, VN1 (SCALED AT 2(+7)M/CS), ANDGDT1/2 (SCALED AT 2(+7)M/CS).
035974,000030:
035975,000031:
035976,000032: 30,3103 BANK 30
035977,000033: 30,3103 E5,1544 EBANK= EVEX
035978,000034:
035979,000035: 30,3103 77656 CALCGRAV UNIT # ENTER WITH RN AT 2(+24)M IN VAC
035980,000036: 30,3104 01033 STORE UNITR
035981,000037: 30,3105 41441 DOT PUSH
035982,000038: 30,3106 01041 UNITW
035983,000039: 30,3107 56316 DSQ DDV
035984,000040: 30,3110 21171 DP1/10
035985,000041: 30,3111 65221 BDSU PDDL
035986,000042: 30,3112 21167 DP1/8TH
035987,000043: 30,3113 00045 36D
035988,000044: 30,3114 15047 STODL RMAG
035989,000045: 30,3115 21173 J(RE)SQ
035990,000046: 30,3116 77671 DDV
035991,000047: 30,3117 00043 34D
035992,000048: 30,3120 00041 STORE 32D
035993,000049: 30,3121 77605 DMP
035994,000050: 30,3122 65361 VXSC PDDL
035995,000051: 30,3123 01033 UNITR
035996,000052: 30,3124 74205 DMP VXSC
035997,000053: 30,3125 00041 32D
035998,000054: 30,3126 01041 UNITW
035999,000055: 30,3127 53255 VAD VAD
036000,000056: 30,3130 01033 UNITR
036001,000057: 30,3131 56325 PDDL DDV
036002,000058: 30,3132 21175 -MUDT
036003,000059: 30,3133 00043 34D
036004,000060: 30,3134 45561 VXSC STADR
036005,000061: 30,3135 76712 STORE GDT1/2
036006,000062:
036007,000063: 30,3136 77616 RVQ
036008,000064:
036009,000065: 30,3137 74375 CALCRVG VLOAD VXSC
036010,000066: 30,3140 00404 DELV
![]() |
Page 843 |
036012,000068: 30,3141 21165 KPIP1
036013,000069: 30,3142 44006 PUSH STQ # DV/2 TO PD SCALED AT 2(+7)M/CS
036014,000070: 30,3143 00037 31D
036015,000071: 30,3144 41455 VAD PUSH # (DV-OLDGDT)/2 TO PD SCALED AT 2(+7)M/CS
036016,000072: 30,3145 01025 GDT/2
036017,000073: 30,3146 74255 VAD VXSC
036018,000074: 30,3147 01017 VN
036019,000075: 30,3150 21177 2SEC(17)
036020,000076: 30,3151 77655 VAD
036021,000077: 30,3152 01011 RN
036022,000078: 30,3153 35051 STCALL RN1 # TEMP STORAGE OF RN SCALED 2(+24)M
036023,000079: 30,3154 61103 CALCGRAV
036024,000080:
![]() |
Both VADs on the following line are circled. |
036026,000082: 30,3155 53255 VAD VAD
036027,000083: 30,3156 77655 VAD
036028,000084: 30,3157 01017 VN
036029,000085: 30,3160 35057 STCALL VN1 # TEMP STORAGE OF VN SCALED 2(+7)M/CS
036030,000086: 30,3161 00037 31D
036031,000087:
036032,000088: 30,3162 03215 27057 KPIP 2DEC .1024 # SCALES DELV TO 2(+4)
036033,000089:
036034,000090: 30,3164 00150 33343 KPIP1 2DEC 0.0064
036035,000091:
036036,000092: 30,3166 04000 00000 DP1/8TH 2DEC 0.125
036037,000093:
036038,000094: 30,3170 03146 14632 DP1/10 2DEC 0.1
036039,000095:
036040,000096: 30,3172 00036 30103 J(RE)SQ 2DEC 0.060066630 B-5 # SCALED AT 2(+45)
036041,000097:
036042,000098: 30,3174 77774 53772 -MUDT 2DEC* -7.9720645 E+12 B-55*
036043,000099:
036044,000100: 30,3176 00031 00000 2SEC(17) 2DEC 200 B-17
036045,000101:
036046,000102: 30,3200 04000 00000 DP2(-3) 2DEC 0.125
036047,000103:
036048,000104: 30,3202 00224 17561 MUEARTH 2DEC 0.009063188 # 3.98603223 E14 SCALED AT 2(42)M(3)/CS(2)
036049,000105:
036050,000106: 30,3204 00164 34414 MUMOON 2DEC 0.007134481 # 4.90277800 E12 SCALED AT 2(36)M(3)/CS(2)
End of include-file AVERAGE_G_INTEGRATOR.agc. Parent file is MAIN.agc