Source Code
![]() |
These source-code files were obtained by digitally photographing
an Artemis 72 program listing from a private collection and then
modifying pre-existing Comanche 55 (Apollo 11) source files to
incorporate changes. Note that the page images
presented online are of reduced quality, and that additional images
may be available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 072 OF AGC PROGRAM ARTEMIS BY NASA 2021114-011 11:40 FEB. 26, 1971 THIS AGC PROGRAM SHALL ALSO BE REFERRED TO AS COLOSSUS 3 THIS PROGRAM IS INTENDED FOR USE IN THE CM AS SPECIFIED IN REPORT R-577. THIS PROGRAM WAS PREPARED UNDER OSR PROJECT 55-23890, SPONSORED BY THE MANNED SPACECRAFT CENTER OF THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION THROUGH CONTRACT NAS 9-4065 WITH THE CHARLES STARK DRAPER LABORATORY, MASSACHUSETTS INSTITUTE OF TECHNOLOGY, CAMBRIDGE, MASS. |
041948,000002: # Copyright: Public domain.
041949,000003: # Filename: TVCMASSPROP.agc
041950,000004: # Purpose: Part of the source code for Artemis (i.e., Colossus 3),
041951,000005: # build 072. This is for the Command Module's (CM)
041952,000006: # Apollo Guidance Computer (AGC), we believe for
041953,000007: # Apollo 15-17.
041954,000008: # Assembler: yaYUL
041955,000009: # Contact: Steve Case <case1780@adelphia.net>
041956,000010: # Website: www.ibiblio.org/apollo/index.html
041957,000011: # Page scans: www.ibiblio.org/apollo/ScansForConversion/Artemis072/
041958,000012: # Mod history: 2009-09-13 SMC Adapted from Comanche055 files.
041959,000013: # 2009-09-14 JL Fix typos. Fix page numbers. Remove change comments. Restore hard tabs.
041960,000014: # 2010-02-20 RSB Un-##'d this header.
041961,000015:
041962,000016: # # Page 954
041963,000017:
041964,000018: # PROGRAM NAME....MASSPROP
041965,000019: # LOG SECTION....TVCMASSPROP PROGRAMMER...MELANSON (ENGEL, SCHLUNDT)
041966,000020:
041967,000021:
041968,000022: # FUNCTIONAL DESCRIPTION:
041969,000023:
041970,000024: # MASSPROP OPERATES IN TWO MODES:(1)IF LEM MASS OR CONFIGURATION ARE UPDATED (MASSPROP DOES NOT TEST
041971,000025: # FOR THIS) THE ENTIRE PROGRAM MUST BE RUN THROUGH, BREAKPOINT VALUES AND DERIVATIVES OF THE OUTPUTS WITH
041972,000026: # RESPECT TO CSM MASS BEING CALCULATED PRIOR TO CALCULATION OF THE OUTPUTS. (2)OTHERWISE, THE OUTPUTS CAN BE
041973,000027: # CALCULATED USING PREVIOUSLY COMPUTED BREAKPOINT VALUES AND DERIVATIVES.
041974,000028:
041975,000029: # CALLING SEQUENCES
041976,000030:
041977,000031: # IF LEM MASS OR CONFIGURATION HAS BEEN UPDATED, TRANSFER TO MASSPROP, OTHERWISE TRANSFER TO FIXCW.
041978,000032: # L TC BANKCALL OR IBNKCALL
041979,000033: # L+1 CADR MASSPROP
041980,000034: # OR
041981,000035: # L+1 CADR FIXCW
041982,000036:
041983,000037: # L+2 RETURNS VIA Q
041984,000038:
041985,000039: # CALLED IN PARTICULAR BY DONOUN47 (JOB) AND TVCEXECUTIVE (TASK)
041986,000040:
041987,000041: # JOBS OR TASKS INITIATED - NONE
041988,000042:
041989,000043: # SUBROUTINES CALLED - NONE
041990,000044:
041991,000045: # ERASABLE INITIALIZATION REQUIRED
041992,000046:
041993,000047: # LEMMASS MUST CONTAIN LEM MASS SCALED AT B+16 IN KILOGRAMS
041994,000048: # CSMMASS MUST CONTAIN CSM MASS SCALED AT B+16 IN KILOGRAMS
041995,000049:
041996,000050: # DAPDATR1 MUST BE SET TO INDICATE VEHICLE CONFIGURATION.
041997,000051: # BITS (15,14,13) = ( 0 , 0 , 1 ) LEM OFF
041998,000052: # ( 0 , 1 , 0 ) LEM ON (ASCNT,DSCNT)
041999,000053: # ( 1 , 1 , 0 ) LEM ON (ASCNT ONLY)
042000,000054:
042001,000055:
042002,000056: # ALARMS - NONE
042003,000057:
042004,000058: # EXIT - TC Q
042005,000059:
042006,000060: # OUTPUTS:
042007,000061:
042008,000062: # (1)IXX, SINGLE PRECISION SCALED AT B+20 IN KG-M SQ.
042009,000063: # (2)IAVG, SINGLE PRECISION SCALED AT B+20 IN KG-M SQ.
042010,000064: # (3)IAVG/TLX, SINGLE PRECISION, SCALED AT B+2 SEC-SQD
042011,000065: # THEY ARE STORED IN CONSECUTIVE REGISTERS IXX0, IXX1, IXX2
042012,000066:
042013,000067: # CONVERSION FACTOR: (SLUG-FTSQ) = 0.737562 (KG-MSQ)
042014,000068:
042015,000069: # # Page 955
042016,000070:
042017,000071: # OUTPUTS ARE CALCULATED AS FOLLOWS :
042018,000072:
042019,000073: # (1) IF LEM DOCKED, LEMMASS IS FIRST ELIMINATED AS A PARAMETER
042020,000074:
042021,000075: # VARST0 = INTVALUE0 + LEMMASS(SLOPEVAL0) IXX BREAKPOINT VALUE
042022,000076: # VARST1 = INTVALUE1 + LEMMASS(SLOPEVAL1) IAVG BREAKPOINT VALUE
042023,000077: # VARST2 = INTVALUE2 + LEMMASS(SLOPEVAL2) IAVG/TLX BREAKPOINT VALUE
042024,000078:
042025,000079: # VARST3 = INTVALUE3 + LEMMASS(SLOPEVAL3) IAVG/TLX SLOPE FOR CSMMASS > 33956 LBS ( SPS > 10000 LBS)
042026,000080: # VARST4 = INTVALUE4 + LEMMASS(SLOPEVAL4) IAVG SLOPE FOR CSMMASS > 33956 LBS ( SPS > 10000 LBS)
042027,000081:
042028,000082: # VARST5 = INTVALUE5 + LEMMASS(SLOPEVAL5) IXX SLOPE FOR ALL VALUES OF CSMMASS
042029,000083:
042030,000084: # VARST6 = INTVALUE6 + LEMMASS(SLOPEVAL6) IAVG SLOPE FOR CSMMASS < 33956 LBS ( SPS < 10000 LBS)
042031,000085: # VARST7 = INTVALUE7 + LEMMASS(SLOPEVAL7) IAVG/TLX SLOPE FOR CSMMASS < 33956 LBS ( SPS < 10000 LBS)
042032,000086:
042033,000087: # VARST8 = INTVALUE8 + LEMMASS(SLOPEVAL8) IAVG DECREMENT TO BRKPT VALUE WHEN LEM DSCNT STAGE OFF
042034,000088: # VARST9 = INTVALUE9 + LEMMASS(SLOPEVAL9) IAVG/TLX DECREMENT TO BRKPT VALUE WHEN LEM DSCNT STAGE OFF
042035,000089:
042036,000090: # (2) IF LEM NOT DOCKED
042037,000091:
042038,000092: # VARST0 = NOLEMVAL0 WHERE THE MEANING AND SCALING OF VARST0
042039,000093: # . . TO VARST9 ARE THE SAME AS GIVEN ABOVE
042040,000094: # . .
042041,000095: # . . NOTE... FOR THIS CASE, VARST8,9 HAVE NO
042042,000096: # VARST9 = NOLEMVAL9 MEANING (THEY ARE COMPUTED BUT NOT USED)
042043,000097:
042044,000098: # (3) THE FINAL OUTPUT CALCULATIONS ARE THEN DONE
042045,000099:
042046,000100: # IXX0 = VARST0 + (CSMMASS + NEGBPW)VARST5 IXX
042047,000101:
042048,000102: # IXX1 = VARST1 + (CSMMASS + NEGBPW)VARST(4 OR 6) IAVG
042049,000103:
042050,000104: # IXX2 = VARST2 + (CSMMASS + NEGBPW)VARST(3 OR 7) IAVG/TLX
042051,000105:
042052,000106: # THE DATA USED CAME FROM CSM/LM SPACECRAFT OPERATIONAL DATA BOOK.
042053,000107: # VOL. 3, NASA DOCUMENT SNA-8-D-027 (MARCH 1968)
042054,000108:
042055,000109: # PERTINENT MASS DATA : CSM WEIGHT (FULL) 64100 LBS
042056,000110: # (EMPTY) 23956 LBS
042057,000111: # LEM WEIGHT (FULL) 32000 LBS
042058,000112: # (EMPTY) 14116 LBS
042059,000113:
042060,000114: # (WEIGHTS ARE FROM AMENDMENT #1 (APRIL 24,1968) TO ABOVE DATA BOOK)
042061,000115:
042062,000116: # # Page 956
042063,000117: 05,2000 SETLOC DAPMASS
042064,000118: 05,2000 BANK
042065,000119: 05,3313 E6,1446 EBANK= CNTR
042066,000120: 05,3313 COUNT* $$/MASP
042067,000121:
042068,000122:
042069,000123: 05,3313 34322 MASSPROP CAF NINE # MASSPROP USES TVC/RCS INTERRUPT TEMPS
042070,000124: 05,3314 55506 +1 TS PHI333 # SET UP TEN PASSES
042071,000125: 05,3315 31465 LEMTEST CAE DAPDATR1 # DETERMINE LEM STATUS
042072,000126: 05,3316 74754 MASK BIT13
042073,000127: 05,3317 00006 EXTEND
042074,000128: 05,3320 13324 BZF LEMYES
042075,000129:
042076,000130: 05,3321 51506 LEMNO INDEX PHI333 # LEM NOT ATTACHED
042077,000131: 05,3322 33410 CAF NOLEMVAL
042078,000132: 05,3323 13334 TCF STOINST
042079,000133:
042080,000134: 05,3324 31472 LEMYES CAE LEMMASS # LEM IS ATTACHED
042081,000135: 05,3325 60000 DOUBLE
042082,000136: 05,3326 00006 EXTEND
042083,000137: 05,3327 51506 INDEX PHI333
042084,000138: 05,3330 73432 MP SLOPEVAL
042085,000139: 05,3331 20001 DDOUBL
042086,000140: 05,3332 51506 INDEX PHI333
042087,000141: 05,3333 63420 AD INTVALUE
042088,000142:
042089,000143: 05,3334 51506 STOINST INDEX PHI333 # STORAGE INST BEGIN HERE
042090,000144: 05,3335 55511 TS VARST0
042091,000145: 05,3336 11506 CCS PHI333 # ARE ALL TEN PASSES COMPLETED
042092,000146: 05,3337 13314 TCF MASSPROP +1 # NO - GO DECREMENT PHI333
042093,000147:
042094,000148: 05,3340 11465 DXTEST CCS DAPDATR1 # IF NEG, BIT15 IS 1, LEM DSCNT STAGE OFF
042095,000149: 05,3341 13347 TCF FIXCW
042096,000150: 05,3342 13347 TCF FIXCW
042097,000151: 05,3343 53522 DXCH VARST0 +8D
042098,000152: 05,3344 21513 DAS VARST0 +1
042099,000153: 05,3345 33445 CA DXITFIX
042100,000154: 05,3346 27520 ADS VARST0 +7
042101,000155:
042102,000156: 05,3347 34767 FIXCW CAF BIT2 # COMPUTATION PHASE BEGINS HERE. SET UP
042103,000157: 05,3350 55506 TS PHI333 # THREE PASSES
042104,000158: 05,3351 55507 TS PSI333
042105,000159:
042106,000160: 05,3352 31473 CAE CSMMASS # GET DELTA CSM WEIGHT - SIGN DETERMINES
042107,000161: 05,3353 63444 AD NEGBPW # SLOPE LOCATIONS.
042108,000162: 05,3354 60000 DOUBLE
042109,000163: 05,3355 55510 TS TEMP333
042110,000164:
042111,000165: 05,3356 00006 EXTEND
042112,000166: 05,3357 63362 BZMF PEGGY # DETERMINE CORRECT SLOPE
042113,000167: # # Page 957
042114,000168: 05,3360 37701 CAF NEG2
042115,000169: 05,3361 55506 TS PHI333
042116,000170:
042117,000171: 05,3362 51506 PEGGY INDEX PHI333 # ALL IS READY - CALCULATE OUTPUTS NOW
042118,000172: 05,3363 31516 CAE VARST5 # GET SLOPE
042119,000173: 05,3364 00006 EXTEND
042120,000174: 05,3365 71510 MP TEMP333 # MULT BY DELTA CSM WEIGHT
042121,000175: 05,3366 60000 DOUBLE
042122,000176: 05,3367 51507 INDEX PSI333
042123,000177: 05,3370 61511 AD VARST0 # ADD BREAKPOINT VALUE
042124,000178: 05,3371 51507 INDEX PSI333
042125,000179: 05,3372 55467 TS IXX # ****** OUTPUTS (IXX0, IXX1, IXX2) ******
042126,000180:
042127,000181:
042128,000182: 05,3373 11507 CCS PSI333 # BOOKKEEPING - MASSPROP FINISHED OR NOT
042129,000183: 05,3374 13404 TCF BOKKEP2 # NO - GO TAKE CARE OF INDEXING REGISTERS
042130,000184:
042131,000185: 05,3375 31465 CAE DAPDATR1 # UPDATE WEIGHT/G
042132,000186: 05,3376 74753 MASK BIT14
042133,000187: 05,3377 10000 CCS A
042134,000188: 05,3400 31472 CA LEMMASS
042135,000189: 05,3401 61473 AD CSMMASS
042136,000190: 05,3402 55475 TS WEIGHT/G # SCALED AT B+16 IN KILOGRAMS
042137,000191: 05,3403 00002 ENDMASSP TC Q
042138,000192:
042139,000193: 05,3404 55507 BOKKEP2 TS PSI333 # REDUCE PSI BY ONE
042140,000194: 05,3405 00006 EXTEND
042141,000195: 05,3406 27506 DIM PHI333
042142,000196: 05,3407 13362 TCF PEGGY
042143,000197:
042144,000198: # # Page 958
042145,000199:
042146,000200: 05,3410 00616 NOLEMVAL DEC 25445. B-20
042147,000201: 05,3411 02526 DEC 87450. B-20
042148,000202: 05,3412 02352 DEC .30715 B-2
042149,000203: 05,3413 01471 DEC 1.22877 E-5 B+12
042150,000204: 05,3414 00634 DEC 1.6096 B-6
042151,000205: 05,3415 00612 DEC 1.54 B-6
042152,000206: 05,3416 03706 DEC 7.77177 B-6
042153,000207: 05,3417 04425 DEC 3.46458 E-5 B+12
042154,000208:
042155,000209: 05,3420 00644 INTVALUE DEC 26850 B-20
042156,000210: 05,3421 03710 DEC 127518 B-20
042157,000211: 05,3422 04246 DEC .54059 B-2
042158,000212: 05,3423 02011 DEC .153964 E-4 B+12
042159,000213: 05,3424 77501 DEC -.742923 B-6
042160,000214: 05,3425 00612 DEC 1.5398 B-6
042161,000215: 05,3426 04656 DEC 9.68 B-6
042162,000216: 05,3427 10372 DEC .647625 E-4 B+12
042163,000217: 05,3430 77126 DEC -27228. B-20
042164,000218: 05,3431 76261 DEC -.206476 B-2
042165,000219:
042166,000220: 05,3432 00767 SLOPEVAL DEC 1.96307 B-6
042167,000221: 05,3433 15624 DEC 27.5774 B-6
042168,000222: 05,3434 03054 DEC 2.3548 E-5 B+12
042169,000223: 05,3435 04532 DEC 2.1777 E-9 B+26
042170,000224: 05,3436 10433 DEC 1.044 E-3 B+8
042171,000225: 05,3437 00000 DEC 0 B-14
042172,000226: 05,3440 22070 DEC 2.21068 E-3 B+8
042173,000227: 05,3441 03204 DEC 1.5166 E-9 B+26
042174,000228: 05,3442 77266 DEC -1.284 B-6
042175,000229: 05,3443 02476 DEC 2. E-5 B+12
042176,000230:
042177,000231: 05,3444 70364 NEGBPW DEC -15402.17 B-16
042178,000232: 05,3445 75420 DXITFIX DEC* -1.88275 E-5 B+12*
End of include-file TVCMASSPROP.agc. Parent file is MAIN.agc