Source Code
![]() |
This source code is very close to the Apollo Guidance Computer software for the
Apollo 13 Lunar module. This revision of the Luminary 131 program is from December
of 1969, whereas there was a later revision in January of 1970, and still another
revision in February, which is the code that flew on the mission.
As far as this transcription is concerned, it was originally from a copy made in 1991 of
a printout from the collection of AGC developer Don Eyles for collector David Craig.
It was subsequently scanned by Gary Neff, reprocessed for online
presentation at the now-discontinued History of Recent Science and Technology (HRST) website
of MIT's Dibner Institute (the full-quality scans being discarded in the process),
and finally transcribed by Ron Burkey for the Virtual AGC Project. Although a
high-quality replacement scan for a completely illegible page was later provided by Gary
Neff, the reduced legibility of the reprocessed HRST posting nevertheless caused many
errors to be introduced into the transcription. Accordingly, a second scan of the same physical
printout was made in 2017 for the Virtual AGC Project's collection at the Internet Archive,
and used to correct the transcription errors. All of the scanned materials mentioned,
as well as other Luminary 131 related material, are available online.
Don Eyles apprently made additional hand-written notes in printout between 1991 and 2017,
so the two scans are not identical in that respect. The page-headings in the printout read, in part:GAP: ASSEMBLE REVISION 131 OF AGC PROGRAM LUMINARY BY NASA 2021112-091 17:53 DEC. 19, 1969Note that the date is the date the printout was made, not the date on which the program revision was released, although these happen to be very close together. |
046065,000002: ## Copyright: Public domain.
046066,000003: ## Filename: SINGLE_PRECISION_SUBROUTINES.agc
046067,000004: ## Purpose: A section of Luminary 1C, revision 131.
046068,000005: ## It is part of the source code for the Lunar Module's (LM)
046069,000006: ## Apollo Guidance Computer (AGC) for Apollo 13.
046070,000007: ## This file is intended to be a faithful transcription, except
046071,000008: ## that the code format has been changed to conform to the
046072,000009: ## requirements of the yaYUL assembler rather than the
046073,000010: ## original YUL assembler.
046074,000011: ## Reference: p. 1096
046075,000012: ## Contact: Ron Burkey <info@sandroid.org>.
046076,000013: ## Website: www.ibiblio.org/apollo/index.html
046077,000014: ## Mod history: 05/31/03 RSB. Began transcribing.
046078,000015: ## 05/14/05 RSB Corrected website references above.
046079,000016: ## 2017-01-06 RSB Page numbers now agree with those on the
046080,000017: ## original harcopy, as opposed to the PDF page
046081,000018: ## numbers in 1701.pdf.
046082,000019: ## 2017-02-27 RSB Proofed comment text using octopus/ProoferComments.
046083,000020:
![]() |
Page 1096 |
046085,000022: 5032 BLOCK 02
046086,000023:
046087,000024: # SINGLE PRECISION SINE AND COSINE
046088,000025:
046089,000026: 5032 COUNT* $$/INTER
046090,000027: 5032 64736 SPCOS AD HALF # ARGUMENTS SCALED AT PI
046091,000028: 5033 55075 SPSIN TS TEMK
046092,000029: 5034 15036 TCF SPT
046093,000030: 5035 41075 CS TEMK
046094,000031: 5036 60000 SPT DOUBLE
046095,000032: 5037 55075 TS TEMK
046096,000033: 5040 15051 TCF POLLEY
046097,000034: 5041 57075 XCH TEMK
046098,000035: 5042 51075 INDEX TEMK
046099,000036: 5043 64734 AD LIMITS
046100,000037: 5044 40000 COM
046101,000038: 5045 61075 AD TEMK
046102,000039: 5046 55075 TS TEMK
046103,000040: 5047 15051 TCF POLLEY
046104,000041: 5050 15067 TCF ARG90
046105,000042: 5051 00006 POLLEY EXTEND
046106,000043: 5052 71075 MP TEMK
046107,000044: 5053 55076 TS SQ
046108,000045: 5054 00006 EXTEND
046109,000046: 5055 75005 MP C5/2
046110,000047: 5056 67742 AD C3/2
046111,000048: 5057 00006 EXTEND
046112,000049: 5060 71076 MP SQ
046113,000050: 5061 67722 AD C1/2
046114,000051: 5062 00006 EXTEND
046115,000052: 5063 71075 MP TEMK
046116,000053: 5064 20001 DDOUBL
046117,000054: 5065 55075 TS TEMK
046118,000055: 5066 00002 TC Q
046119,000056: 5067 50000 ARG90 INDEX A
046120,000057: 5070 44734 CS LIMITS
046121,000058: 5071 00002 TC Q # RESULT SCALED AT 1
046122,000059:
046123,000060:
End of include-file SINGLE_PRECISION_SUBROUTINES.agc. Parent file is MAIN.agc