Source Code
|
These source-code files are part of a reconstructed copy of Artemis 071, the
first release of the Apollo 15 through 17 Command Module (CM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with source code of Artemis 072 previously transcribed from a digitized copy of that program. The code was then updated by undoing changes between the two versions. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021154-. Note that page numbers in the reconstructed code match those on the Artemis 072 printout, although the changed code would likely have changed page numbers for a real Artemis 071 listing. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
005883,000002: ## Copyright: Public domain.
005884,000003: ## Filename: CHECK_EQUALS_LIST.agc
005885,000004: ## Purpose: A section of Artemis revision 071.
005886,000005: ## It is part of the reconstructed source code for the first
005887,000006: ## release of the flight software for the Command Module's
005888,000007: ## (CM) Apollo Guidance Computer (AGC) for Apollo 15 through
005889,000008: ## 17. The code has been recreated from a copy of Artemis 072.
005890,000009: ## It has been adapted such that the resulting bugger words
005891,000010: ## exactly match those specified for Artemis 071 in NASA
005892,000011: ## drawing 2021154-, which gives relatively high confidence
005893,000012: ## that the reconstruction is correct.
005894,000013: ## Reference: 135
005895,000014: ## Assembler: yaYUL
005896,000015: ## Contact: Ron Burkey <info@sandroid.org>.
005897,000016: ## Website: www.ibiblio.org/apollo/index.html
005898,000017: ## Mod history: 2019-08-14 MAS Created from Artemis 072.
005899,000018:
|
Page 135 |
005901,000020: # ********** CHECK EQUALS LIST **********
005902,000021:
005903,000022: # THIS LIST IS MAINTAINED TO ENSURE THAT CERTAIN ERASABLE LOCATIONS
005904,000023: # ARE LOCATED AT A SPECIFIED DISTANCE FROM ANOTHER ERASABLE LOCATION
005905,000024: # AS REQUIRED BY THE STRUCTURE OF THE DOWNLINK LISTS:
005906,000025: # 1. IF A LOCATION IS THE SECOND PART OF A DOWNLINK WORD, IT MUST
005907,000026: # BE CONTIGUOUS TO THE LOCATION THAT IS THE FIRST PART.
005908,000027: # 2. IF A LOCATION IS NOT THE FIRST WORD OF AN NDNADR IT
005909,000028: # MUST BE AT A SPECIFIC NUMBER OF LOCATIONS FROM THE FIRST
005910,000029: # LOCATION IN THE INSTRUCTION.
005911,000030: # 3. OTHER NAMES MAY BE GIVEN TO LOCATIONS IN THE DOWNLINK LISTS
005912,000031: # THAT ARE NOT REFERENCED IN THE LISTS.THESE MUST NOT BE MOVED.
005913,000032: # THIS IS ACCOMPLISHED USING THE INSTRUCTION CHECK= .
005914,000033: # THIS INSTRUCTION GIVES A CUSS IN THE ASSEMBLY IF THE LOCATION OF THE
005915,000034: # FIRST TAG FIELD IS NOT EQUAL TO THE LOCATION OF THE SECOND TAG FIELD.
005916,000035: # THE INSTRUCTION HAS NO OTHER EFFECT ON THE ASSEMBLY OR CODE.
005917,000036:
005918,000037: # THIS LIST SHOULD BE UPDATED FOR ANY CHANGES TO THE DOWNLINK LISTS.
005919,000038:
005920,000039: # THIS LIST IS MAINTAINED BY SUMNER ROSENBERG
005921,000040:
005922,000041:
005923,000042: E7,1426 TIME1 CHECK= TIME2 +1
005924,000043: ??????? CDUY CHECK= CDUX +1
005925,000044: ??????? CDUT CHECK= CDUZ +1
005926,000045: ??????? PIPAX CHECK= CDUS +1
005927,000046: ??????? PIPAY CHECK= PIPAX +1
005928,000047: ??????? PIPAZ CHECK= PIPAY +1
005929,000048: ??????? UPOLDMOD CHECK= COMPNUMB +1
005930,000049: ??????? UPVERB CHECK= UPOLDMOD +1
005931,000050: ??????? UPCOUNT CHECK= UPVERB +1
005932,000051: ??????? BESTJ CHECK= BESTI +1
005933,000052: ??????? FAILREG CHECK= C31FLWRD +1
005934,000053: ??????? TRKMKCNT CHECK= VHFCNT +1
005935,000054: ??????? OPTION2 CHECK= OPTION1 +1
005936,000055: ??????? THETAD CHECK= REDOCTR +1
005937,000056: ??????? IMODES33 CHECK= IMODES30 +1
005938,000057: ??????? HOLDFLAG CHECK= OPTMODES +1
005939,000058: ??????? RRATE CHECK= RANGE +2
005940,000059: ??????? HPERX CHECK= HAPOX +2
005941,000060: ??????? TCSI CHECK= TCDH +2
005942,000061: ??????? IGC CHECK= OGC +2
005943,000062: ??????? MGC CHECK= IGC +2
005944,000063: ??????? YACTOFF CHECK= PACTOFF +1
005945,000064: ??????? DAPDATR2 CHECK= DAPDATR1 +1
005946,000065: ??????? CSMMASS CHECK= LEMMASS +1
005947,000066: ??????? AK1 CHECK= AK +1
005948,000067: ??????? AK2 CHECK= AK1 +1
005949,000068: ??????? RCSFLAGS CHECK= AK2 +1
005950,000069:
|
Page 136 |
005952,000071: ??????? WBODY CHECK= OMEGAC
005953,000072: ??????? ADOT CHECK= OGARATE
005954,000073: ??????? ADOT1 CHECK= ADOT +2
005955,000074: ??????? ADOT2 CHECK= ADOT1 +2
005956,000075: ??????? ERRORY CHECK= ERRORX +1
005957,000076: ??????? ERRORZ CHECK= ERRORY +1
005958,000077: ??????? THETADX CHECK= ERRORZ +1
005959,000078: ??????? THETADY CHECK= THETADX +1
005960,000079: ??????? THETADZ CHECK= THETADY +1
005961,000080: ??????? YCMD CHECK= PCMD +1
005962,000081: ??????? BETA/180 CHECK= ALFA/180 +1
005963,000082: ??????? PREL CHECK= CMDAPMOD +1
005964,000083: ??????? QREL CHECK= PREL +1
005965,000084: ??????? RREL CHECK= QREL +1
005966,000085: ??????? ROLLTM CHECK= PAXERR1 +1
005967,000086: ??????? ROLLC CHECK= ROLLTM +1
005968,000087: ??????? LNG(SPL) CHECK= LAT(SPL) +2
005969,000088: ??????? RM CHECK= MARKDOWN +7
005970,000089: ??????? RDOT CHECK= LATANG +2
005971,000090: ??????? THETAH CHECK= RDOT +2
005972,000091: ??????? GAMMAEI CHECK= VPRED +2
005973,000092: ??????? STATE CHECK= FLAGWRD0
005974,000093: ??????? CMTMTIME CHECK= UPBUFF
005975,000094: ??????? SW/NDX CHECK= UPBUFF +1
005976,000095: ??????? ENDBUF CHECK= UPBUFF +16D
005977,000096: ??????? V1 CHECK= UPBUFF +17D
005978,000097: ??????? A0 CHECK= UPBUFF +19D
005979,000098: ??????? DNLSTADR CHECK= DNLSTCOD
005980,000099: ??????? CTLIST CHECK= DNLSTCOD +1
005981,000100: ??????? TEMPFLSH CHECK= CADRFLSH +2
005982,000101: ??????? LANDLAT CHECK= LAT
005983,000102: ??????? TLIFTOFF CHECK= TEVENT
005984,000103: ??????? CPHI CHECK= THETAD
005985,000104: ??????? RDOTREF CHECK= THETAD
005986,000105: ??????? CTHETA CHECK= THETAD +1
005987,000106: ??????? CPSI CHECK= THETAD +2
005988,000107: ??????? VREF CHECK= THETAD +2
005989,000108: ??????? DELVX CHECK= DELV
005990,000109: ??????? DELVY CHECK= DELV +2
005991,000110: ??????? DELVZ CHECK= DELV +4
005992,000111: ??????? TETLEM CHECK= T-OTHER
005993,000112: ??????? TETOTHER CHECK= T-OTHER
005994,000113: ??????? RRATE2 CHECK= RTHETA
005995,000114: ??????? PAXERR CHECK= AK
005996,000115: ??????? OMEGAXC CHECK= OMEGAC
005997,000116: ??????? TVCRCS CHECK= OMEGAC
005998,000117: ??????? ASPS(TM) CHECK= WBODY
005999,000118: ??????? OMEGAYC CHECK= OMEGAC +2
006000,000119: ??????? WBODY1 CHECK= WBODY +2
006001,000120: ??????? WBODY2 CHECK= WBODY1 +2
006002,000121:
|
Page 137 |
006004,000123: ??????? OMEGAZC CHECK= OMEGAC +4
006005,000124: ??????? OGARATE CHECK= OMEGAB
006006,000125: ??????? OMEGAXB CHECK= OMEGAB
006007,000126: ??????? XPIPBUF CHECK= ADOT
006008,000127: ??????? YPIPBUF CHECK= XPIPBUF +1
006009,000128: ??????? ZPIPBUF CHECK= YPIPBUF +1
006010,000129: ??????? XOLDBUF CHECK= ZPIPBUF +1
006011,000130: ??????? YOLDBUF CHECK= XOLDBUF +1
006012,000131: ??????? ZOLDBUF CHECK= YOLDBUF +1
006013,000132: ??????? OMEGAYB CHECK= OMEGAB +2
006014,000133: ??????? OMEGAZB CHECK= OMEGAB +4
006015,000134: ??????? VDT/180 CHECK= ERRORX
006016,000135: ??????? -VT/180E CHECK= ERRORY
006017,000136: ??????? QAXERR CHECK= THETADX
006018,000137: ??????? RAXERR CHECK= THETADY
006019,000138: ??????? Q7 CHECK= THETADZ
006020,000139: ??????? DELVLVC CHECK= DELVSLV
006021,000140: ??????? SPRTETIG CHECK= TIG
006022,000141: ??????? DELVSIN CHECK= DELVEET3
006023,000142: ??????? VGTEMP CHECK= DELVEET3
006024,000143: ??????? VGPREV CHECK= VGTIG
006025,000144: ??????? LEWD CHECK= VIO
006026,000145: ??????? L/DCALC CHECK= TTE
006027,000146: ??????? VL CHECK= VPRED
006028,000147: ??????? GAMMAL CHECK= GAMMAEI
006029,000148: ??????? PREDANG CHECK= GAMMAEI
006030,000149: ??????? JJ CHECK= GAMMAEI +1
006031,000150: ??????? VTEMP CHECK= MARKTIME +2
006032,000151: ??????? VMAGI CHECK= VGTIG +2
006033,000152: ??????? VGTLI CHECK= VMAGI +2
006034,000153:
|
Page 138 |
006036,000155: ??????? ASKEP CHECK= ASPS
006037,000156: ??????? ASP1 CHECK= ASPS +1
006038,000157: ??????? ASPUP CHECK= ASPS +2
006039,000158: ??????? ASPDWN CHECK= ASPS +3
006040,000159: ??????? ASP3 CHECK= ASPS +4
006041,000160: ??????? DUMMYAD CHECK= ROO +3
End of include-file CHECK_EQUALS_LIST.agc. Parent file is MAIN.agc