Source Code
![]() |
These source-code files derive from a printout of Luminary 116 (the Apollo 12
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Ron Burkey, and transcribed to source code by a
team of volunteers. This colorized, syntax-highlighted form was created
by assembling that transcribed source code. Note that the full page images
are available on the
Virtual AGC project page at archive.org, while reduced-size images
are presented at the VirtualAGC project website. Report or fix any
transcription errors at
the Virtual AGC project code repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 116 OF AGC PROGRAM LUMINARY BY NASA 2021112-071 19:09 AUG. 11,1969Note that the date is the date of the printout, not the date of the program revision. |
046340,000002: ## Copyright: Public domain.
046341,000003: ## Filename: SINGLE_PRECISION_SUBROUTINES.agc
046342,000004: ## Purpose: A section of Luminary revision 116.
046343,000005: ## It is part of the source code for the Lunar Module's (LM)
046344,000006: ## Apollo Guidance Computer (AGC) for Apollo 12.
046345,000007: ## This file is intended to be a faithful transcription, except
046346,000008: ## that the code format has been changed to conform to the
046347,000009: ## requirements of the yaYUL assembler rather than the
046348,000010: ## original YUL assembler.
046349,000011: ## Reference: p. 1094
046350,000012: ## Assembler: yaYUL
046351,000013: ## Contact: Ron Burkey <info@sandroid.org>.
046352,000014: ## Website: www.ibiblio.org/apollo/index.html
046353,000015: ## Mod history: 2017-01-22 MAS Created from Luminary 99.
046354,000016: ## 2017-01-27 RRB Updated for Luminary 116.
046355,000017: ## 2017-03-14 RSB Proofed comment text via 3-way diff vs
046356,000018: ## Luminary 99 and 131 ... no problems found.
046357,000019:
![]() |
Page 1094 |
046359,000021: 5032 BLOCK 02
046360,000022:
046361,000023: # SINGLE PRECISION SINE AND COSINE
046362,000024:
046363,000025: 5032 COUNT* $$/INTER
046364,000026: 5032 64736 SPCOS AD HALF # ARGUMENTS SCALED AT PI
046365,000027: 5033 55075 SPSIN TS TEMK
046366,000028: 5034 15036 TCF SPT
046367,000029: 5035 41075 CS TEMK
046368,000030: 5036 60000 SPT DOUBLE
046369,000031: 5037 55075 TS TEMK
046370,000032: 5040 15051 TCF POLLEY
046371,000033: 5041 57075 XCH TEMK
046372,000034: 5042 51075 INDEX TEMK
046373,000035: 5043 64734 AD LIMITS
046374,000036: 5044 40000 COM
046375,000037: 5045 61075 AD TEMK
046376,000038: 5046 55075 TS TEMK
046377,000039: 5047 15051 TCF POLLEY
046378,000040: 5050 15067 TCF ARG90
046379,000041: 5051 00006 POLLEY EXTEND
046380,000042: 5052 71075 MP TEMK
046381,000043: 5053 55076 TS SQ
046382,000044: 5054 00006 EXTEND
046383,000045: 5055 75005 MP C5/2
046384,000046: 5056 67742 AD C3/2
046385,000047: 5057 00006 EXTEND
046386,000048: 5060 71076 MP SQ
046387,000049: 5061 67722 AD C1/2
046388,000050: 5062 00006 EXTEND
046389,000051: 5063 71075 MP TEMK
046390,000052: 5064 20001 DDOUBL
046391,000053: 5065 55075 TS TEMK
046392,000054: 5066 00002 TC Q
046393,000055: 5067 50000 ARG90 INDEX A
046394,000056: 5070 44734 CS LIMITS
046395,000057: 5071 00002 TC Q # RESULT SCALED AT 1
046396,000058:
046397,000059:
End of include-file SINGLE_PRECISION_SUBROUTINES.agc. Parent file is MAIN.agc