Source Code
These source-code files derive from a printout of Luminary 210 (Apollo 15-17
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Jim Lawton, 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 210 OF AGC PROGRAM LUMINARY BY NASA 2021112-161 17:11 MAR. 19,1971Note that the date is the date of the printout, not the date of the program revision. |
006920,000002: ## Copyright: Public domain.
006921,000003: ## Filename: CHECK_EQUALS_LIST.agc
006922,000004: ## Purpose: A section of Luminary revision 210.
006923,000005: ## It is part of the source code for the Lunar Module's (LM)
006924,000006: ## Apollo Guidance Computer (AGC) for Apollo 15-17.
006925,000007: ## This file is intended to be a faithful transcription, except
006926,000008: ## that the code format has been changed to conform to the
006927,000009: ## requirements of the yaYUL assembler rather than the
006928,000010: ## original YUL assembler.
006929,000011: ## Reference: pp. 161-162
006930,000012: ## Assembler: yaYUL
006931,000013: ## Contact: Ron Burkey <info@sandroid.org>.
006932,000014: ## Website: www.ibiblio.org/apollo/index.html
006933,000015: ## Mod history: 2016-11-17 JL Created from Artemis072 version.
006934,000016: ## 2016-11-20 HG Transcribed
006935,000017: ## 2016-12-23 RSB Proofed comment text with octopus/ProoferComments
006936,000018: ## and fixed all errors found.
006937,000019:
Page 161 |
006939,000021: # THIS LIST IS MAINTAINED TO ENSURE THAT CERTAIN ERASABLE LOCATIONS
006940,000022: # ARE LOCATED AT A SPECIFIED DISTANCE FROM ANOTHER ERASABLE LOCATION
006941,000023: # AS REQUIRED BY THE STRUCTURE OF THE DOWNLINK LISTS:
006942,000024: # 1. IF A LOCATION IS THE SECOND PART OF A DOWNLINK WORD, IT MUST
006943,000025: # BE CONTIGUOUS TO THE LOCATION THAT IS THE FIRST PART.
006944,000026: # 2. IF A LOCATION IS NOT THE FIRST WORD OF AN NDNADR IT
006945,000027: # MUST BE AT A SPECIFIC NUMBER OF LOCATIONS FROM THE FIRST
006946,000028: # LOCATION IN THE INSTRUCTION.
006947,000029: # 3. OTHER NAMES MAY BE GIVEN TO LOCATIONS IN THE DOWNLIND LISTS
006948,000030: # THAT ARE NOT REFERENCED IN THE LISTS. THESE MUST NOT BE MOVED.
006949,000031: # THIS IS ACCOMPLISHED USING THE INSTRUCTION CHECK= .
006950,000032: # THIS INSTRUCTION GIVES A CUSS IN THE ASSEMBLY IF THE LOCATION OF THE
006951,000033: # FIRST TAG FIELD IS NOT EQUAL TO THE LOCATION OF THE SECOND TAG FIELD.
006952,000034: # THE INSTRUCTION HAS NO OTHER EFFECT ON THE ASSEMBLY OR CODE.
006953,000035:
006954,000036: # THIS LIST SHOULD BE UPDATED FOR ANY CHANGES TO THE DOWNLINK LISTS.
006955,000037:
006956,000038: # THIS LIST IS MAINTAINED BY SUMNER ROSENBERG
006957,000039:
006958,000040:
006959,000041: E7,1745 TIME1 CHECK= TIME2 +1
006960,000042: ??????? CDUY CHECK= CDUX +1
006961,000043: ??????? CDUZ CHECK= CDUY +1
006962,000044: ??????? CDUT CHECK= CDUZ +1
006963,000045: ??????? PIPAX CHECK= CDUS +1
006964,000046: ??????? PIPAY CHECK= PIPAX +1
006965,000047: ??????? PIPAZ CHECK= PIPAY +1
006966,000048: ??????? DAPBOOLS CHECK= RADMODES +1
006967,000049: ??????? LASTXCMD CHECK= LASTYCMD +1
006968,000050: ??????? THETAD CHECK= REDOCTR +1
006969,000051: ??????? FAILREG CHECK= CHANBKUP +1
006970,000052: ??????? UPOLDMOD CHECK= COMPNUMB +1
006971,000053: ??????? UPVERB CHECK= UPOLDMOD +1
006972,000054: ??????? UPCOUNT CHECK= UPVERB +1
006973,000055: ??????? UPBUFF CHECK= UPCOUNT +1
006974,000056: ??????? SPIRAL CHECK= CURSOR +1
006975,000057: ??????? IMODES33 CHECK= IMODES30 +1
006976,000058: ??????? CSMMASS CHECK= LEMMASS +1
006977,000059: ??????? DNRRDOT CHECK= DNRRANGE +1
006978,000060: ??????? DNLRVELY CHECK= DNLRVELX +1
006979,000061: ??????? DNLRVELZ CHECK= DNLRVELY +1
006980,000062: ??????? DNLRALT CHECK= DNLRVELZ +1
006981,000063: ??????? DUMLOOPS CHECK= SERVDURN +1
006982,000064: ??????? ZNBSAV CHECK= YNBSAV +6
006983,000065: ??????? IGC CHECK= OGC +2
006984,000066: ??????? MGC CHECK= IGC +2
006985,000067: ??????? BESTJ CHECK= BESTI +1
006986,000068: ??????? OMEGAQ CHECK= OMEGAP +1
006987,000069: ??????? OMEGAR CHECK= OMEGAQ +1
006988,000070: ??????? ALPHAR CHECK= ALPHAQ +1
006989,000071:
Page 162 |
006991,000073: ??????? NEGTORKP CHECK= POSTORKP +1
006992,000074: ??????? NEGTORKU CHECK= POSTORKU +1
006993,000075: ??????? POSTORKV CHECK= NEGTORKU +1
006994,000076: ??????? NEGTORKV CHECK= POSTORKV +1
006995,000077: ??????? CDUYD CHECK= CDUXD +1
006996,000078: ??????? CDUZD CHECK= CDUYD +1
006997,000079: ??????? OMEGAQD CHECK= OMEGAPD +1
006998,000080: ??????? OMEGARD CHECK= OMEGAQD +1
006999,000081: ??????? AMG CHECK= AIG +1
007000,000082: ??????? TRKMKCNT CHECK= AOG +1
007001,000083: ??????? VSELECT CHECK= AOG +1
007002,000084: ??????? FORVMETR CHECK= LATVMETR +1
007003,000085: ??????? FLAGWRD0 CHECK= STATE
007004,000086: ??????? FLGWRD12 CHECK= RADMODES
007005,000087: ??????? FLGWRD13 CHECK= DAPBOOLS
007006,000088: ??????? CPHI CHECK= THETAD
007007,000089: ??????? CTHETA CHECK= THETAD +1
007008,000090: ??????? CPSI CHECK= THETAD +2
007009,000091: ??????? DELVX CHECK= DELV
007010,000092: ??????? DELVY CHECK= DELV +2
007011,000093: ??????? DELVZ CHECK= DELV +4
007012,000094: ??????? CTLIST CHECK= DNLSTCOD +1
007013,000095: ??????? CADRMARK CHECK= CADRFLSH +1
007014,000096: ??????? TEMPFLSH CHECK= CADRFLSH +2
007015,000097: ??????? STARCODE CHECK= AOTCODE
007016,000098: ??????? TETCSM CHECK= T-OTHER
007017,000099: ??????? TETOTHER CHECK= T-OTHER
007018,000100: ??????? R(CSM) CHECK= R-OTHER
007019,000101: ??????? V(CSM) CHECK= V-OTHER
007020,000102: ??????? DOWNTORK CHECK= POSTORKP
007021,000103: ??????? DCDU CHECK= CDUXD
007022,000104: ??????? DELVLVC CHECK= DELVSLV
007023,000105: ??????? MARKCTR CHECK= TRKMKCNT
007024,000106: ??????? VGPREV CHECK= VGTIG
007025,000107: ??????? CH6MASK CHECK= CH5MASK +1
End of include-file CHECK_EQUALS_LIST.agc. Parent file is MAIN.agc