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. |
046355,000002: ## Copyright: Public domain.
046356,000003: ## Filename: SINGLE_PRECISION_SUBROUTINES.agc
046357,000004: ## Purpose: A section of Luminary revision 116.
046358,000005: ## It is part of the source code for the Lunar Module's (LM)
046359,000006: ## Apollo Guidance Computer (AGC) for Apollo 12.
046360,000007: ## This file is intended to be a faithful transcription, except
046361,000008: ## that the code format has been changed to conform to the
046362,000009: ## requirements of the yaYUL assembler rather than the
046363,000010: ## original YUL assembler.
046364,000011: ## Reference: p. 1094
046365,000012: ## Assembler: yaYUL
046366,000013: ## Contact: Ron Burkey <info@sandroid.org>.
046367,000014: ## Website: www.ibiblio.org/apollo/index.html
046368,000015: ## Mod history: 2017-01-22 MAS Created from Luminary 99.
046369,000016: ## 2017-01-27 RRB Updated for Luminary 116.
046370,000017: ## 2017-03-14 RSB Proofed comment text via 3-way diff vs
046371,000018: ## Luminary 99 and 131 ... no problems found.
046372,000019:
Page 1094 |
046374,000021: 5032 BLOCK 02
046375,000022:
046376,000023: # SINGLE PRECISION SINE AND COSINE
046377,000024:
046378,000025: 5032 COUNT* $$/INTER
046379,000026: 5032 64736 SPCOS AD HALF # ARGUMENTS SCALED AT PI
046380,000027: 5033 55075 SPSIN TS TEMK
046381,000028: 5034 15036 TCF SPT
046382,000029: 5035 41075 CS TEMK
046383,000030: 5036 60000 SPT DOUBLE
046384,000031: 5037 55075 TS TEMK
046385,000032: 5040 15051 TCF POLLEY
046386,000033: 5041 57075 XCH TEMK
046387,000034: 5042 51075 INDEX TEMK
046388,000035: 5043 64734 AD LIMITS
046389,000036: 5044 40000 COM
046390,000037: 5045 61075 AD TEMK
046391,000038: 5046 55075 TS TEMK
046392,000039: 5047 15051 TCF POLLEY
046393,000040: 5050 15067 TCF ARG90
046394,000041: 5051 00006 POLLEY EXTEND
046395,000042: 5052 71075 MP TEMK
046396,000043: 5053 55076 TS SQ
046397,000044: 5054 00006 EXTEND
046398,000045: 5055 75005 MP C5/2
046399,000046: 5056 67742 AD C3/2
046400,000047: 5057 00006 EXTEND
046401,000048: 5060 71076 MP SQ
046402,000049: 5061 67722 AD C1/2
046403,000050: 5062 00006 EXTEND
046404,000051: 5063 71075 MP TEMK
046405,000052: 5064 20001 DDOUBL
046406,000053: 5065 55075 TS TEMK
046407,000054: 5066 00002 TC Q
046408,000055: 5067 50000 ARG90 INDEX A
046409,000056: 5070 44734 CS LIMITS
046410,000057: 5071 00002 TC Q # RESULT SCALED AT 1
046411,000058:
046412,000059:
End of include-file SINGLE_PRECISION_SUBROUTINES.agc. Parent file is MAIN.agc