Source Code

039041,000001: # Copyright: Public domain. 039042,000002: # Filename: Template.agc 039043,000003: # Purpose: Part of the source code for Colossus, build 249. 039044,000004: # It is part of the source code for the Command Module's (CM) 039045,000005: # Apollo Guidance Computer (AGC), possibly for Apollo 8 and 9. 039046,000006: # Assembler: yaYUL 039047,000007: # Reference: pp. 891-892 of 1701.pdf. 039048,000008: # Contact: Ron Burkey <info@sandroid.org>. 039049,000009: # Website: www.ibiblio.org/apollo. 039050,000010: # Mod history: 08/22/04 RSB. Began transcribing. 039051,000011: 039052,000012: # The contents of the "Colossus249" files, in general, are transcribed 039053,000013: # from a scanned document obtained from MIT's website, 039054,000014: # http://hrst.mit.edu/hrs/apollo/public/archive/1701.pdf. Notations on this 039055,000015: # document read, in part: 039056,000016: 039057,000017: # Assemble revision 249 of AGC program Colossus by NASA 039058,000018: # 2021111-041. October 28, 1968. 039059,000019: 039060,000020: # This AGC program shall also be referred to as 039061,000021: # Colossus 1A 039062,000022: 039063,000023: # Prepared by 039064,000024: # Massachussets Institute of Technology 039065,000025: # 75 Cambridge Parkway 039066,000026: # Cambridge, Massachusetts 039067,000027: # under NASA contract NAS 9-4065. 039068,000028: 039069,000029: # Refer directly to the online document mentioned above for further information. 039070,000030: # Please report any errors (relative to 1701.pdf) to info@sandroid.org. 039071,000031: 039072,000032: # In some cases, where the source code for Luminary 131 overlaps that of 039073,000033: # Colossus 249, this code is instead copied from the corresponding Luminary 131 039074,000034: # source file, and then is proofed to incorporate any changes. 039075,000035: 039076,000036: # Page 891 039077,000037: # S-BAND ANTENNA FOR CM 039078,000038: 039079,000039: 23,3140 BANK 23 039080,000040: 42,2000 SETLOC SBAND 039081,000041: 42,2000 BANK 039082,000042: 039083,000043: 42,3565 COUNT* $$/R05 039084,000044: 42,3565 E4,1417 EBANK= EMSALT 039085,000045: 039086,000046: 42,3565 04555 SBANDANT TC BANKCALL # V 64 E GETS US HERE 039087,000047: 42,3566 17573 CADR R02BOTH # CHECK IF IMU IS ON AND ALIGNED 039088,000048: 42,3567 06006 TC INTPRET 039089,000049: 42,3570 45034 RTB CALL 039090,000050: 42,3571 45505 LOADTIME # PICKUP CURRENT TIME SCALED B-28 039091,000051: 42,3572 47432 CDUTRIG # COMPUTE SINES AND COSINES OF CDU ANGLES 039092,000052: 42,3573 34041 STCALL TDEC1 # ADVANCE INTEGRATION TO TIME IN TDEC1 039093,000053: 42,3574 27045 CSMCONIC # USING CONIC INTEGRATION 039094,000054: 42,3575 46135 SLOAD BHIZ # ORIGIN OF REFERENCE INERTIAL SYSTEM IS 039095,000055: 42,3576 00050 X2 # EARTH = 0, MOON = 2 039096,000056: 42,3577 65612 EISOI 039097,000057: 42,3600 77775 VLOAD 039098,000058: 42,3601 00001 RATT 039099,000059: 42,3602 00003 STORE RCM # MOVE RATT TO PREVENT WIPEOUT 039100,000060: 42,3603 45145 DLOAD CALL # MOON, PUSH ON 039101,000061: 42,3604 00015 TAT # GET ORIGINAL TIME 039102,000062: 42,3605 54115 LUNPOS # COMPUTE POSITION VECTOR OF MOON 039103,000063: 42,3606 57455 VAD VCOMP # R= -(REM+RCM) = NEG. OF S/C POS. VEC 039104,000064: 42,3607 00003 RCM 039105,000065: 42,3610 77650 GOTO 039106,000066: 42,3611 65614 EISOI +2 039107,000067: 42,3612 57575 EISOI VLOAD VCOMP # EARTH, R= -RCM 039108,000068: 42,3613 00001 RATT 039109,000069: 42,3614 64201 SETPD MXV # RCS TO STABLE MEMBER: B-1X B-29X B+1 039110,000070: 42,3615 00003 2D # 2D 039111,000071: 42,3616 01736 REFSMMAT # STABLE MEMBER. B-1X B-29X B+1= B-29 039112,000072: 42,3617 65372 VSL1 PDDL # 8D 039113,000073: 42,3620 15332 HI6ZEROS 039114,000074: 42,3621 24025 STOVL YAWANG # ZERO OUT YAWANG, SET UP FOR SMNB 039115,000075: 42,3622 00003 RCM # TRANSFORMATION. SM COORD. SCALED B-29 039116,000076: 42,3623 77624 CALL 039117,000077: 42,3624 47577 *SMNB* 039118,000078: 42,3625 00003 STORE R # SAVE NAV. BASE COORDINATES 039119,000079: 42,3626 63256 UNIT PDVL # 14D 039120,000080: 42,3627 00003 R 039121,000081: 42,3630 72431 VPROJ VSL2 # COMPUTE PROJECTION OF VECTOR INTO CM 039122,000082: 42,3631 15324 HIUNITZ # XY-PLANE, R-(R.UZ)UZ 039123,000083: 42,3632 40045 BVSU BOV # CLEAR OVERFLOW INDICATOR IF SET 039124,000084: 42,3633 00003 R 039125,000085: 42,3634 65635 COVCNV 039126,000086: 42,3635 40056 COVCNV UNIT BOV # TEST OVERFLOW FOR INDICATION OF NULL 039127,000087: 42,3636 65652 NOADJUST # VECTOR 039128,000088: 42,3637 50206 PUSH DOT # 20D 039129,000089: # Page 892 039130,000090: 42,3640 15330 HIUNITX # COMPUTE YAW ANGLE = ACOS (URP.UX) 039131,000091: 42,3641 65552 SL1 ACOS # REVOLUTIONS SCALED B0 039132,000092: 42,3642 50315 PDVL DOT # 22D YAWANG 039133,000093: 42,3643 00017 URP 039134,000094: 42,3644 15326 HIUNITY # COMPUTE FOLLOWING: URP.UY 039135,000095: 42,3645 51152 SL1 BPL # POSITIVE 039136,000096: 42,3646 65652 NOADJUST # YES, 0-180 DEGREES 039137,000097: 42,3647 45345 DLOAD DSU # NO, 181-360 DEGREES 20D 039138,000098: 42,3650 15340 DPPOSMAX # COMPUTE 2 PI MINUS YAW ANGLE 039139,000099: 42,3651 77606 PUSH # 22D YAWANG 039140,000100: 42,3652 50375 NOADJUST VLOAD DOT # COMPUTE PITCH ANGLE 039141,000101: 42,3653 00011 UR # ACOS (UR.UZ) - PI/2 039142,000102: 42,3654 15324 HIUNITZ 039143,000103: 42,3655 65552 SL1 ACOS # REVOLUTIONS B0 039144,000104: 42,3656 77625 DSU 039145,000105: 42,3657 15322 HIDP1/4 039146,000106: 42,3660 16321 STODL RHOSB 039147,000107: 42,3661 00025 YAWANG 039148,000108: 42,3662 02323 STORE GAMMASB # PATCH FOR CHECKOUT 039149,000109: 42,3663 77776 EXIT 039150,000110: 42,3664 31044 CA EXTVBACT # IS BIT 5 STILL ON 039151,000111: 42,3665 74706 MASK BIT5 039152,000112: 42,3666 00006 EXTEND 039153,000113: 42,3667 15423 BZF ENDEXT # NO, WE HAVE BEEN ANSWERED 039154,000114: 42,3670 33704 CAF V06N51 # DISPLAY ANGLES 039155,000115: 42,3671 04555 TC BANKCALL 039156,000116: 42,3672 20504 CADR GOMARKFR 039157,000117: 42,3673 05514 TC B5OFF # TERMINATE 039158,000118: 42,3674 05514 TC B5OFF 039159,000119: 42,3675 05112 TC ENDOFJOB # RECYCLE 039160,000120: 42,3676 34710 CAF BIT3 # IMMEDIATE RETURN 039161,000121: 42,3677 05415 TC BLANKET # BLANK R3 039162,000122: 42,3700 34712 CAF BIT1 # DELAY MINIMUM TIME TO ALLOW DISPLAY N 039163,000123: 42,3701 04555 TC BANKCALL 039164,000124: 42,3702 01732 CADR DELAYJOB 039165,000125: 42,3703 13567 TCF SBANDANT +2 039166,000126: 42,3704 01463 V06N51 VN 0651 039167,000127: 42,3705 RCM EQUALS 2D 039168,000128: 42,3705 UR EQUALS 8D 039169,000129: 42,3705 URP EQUALS 14D 039170,000130: 42,3705 YAWANG EQUALS 20D 039171,000131: 42,3705 PITCHANG EQUALS 22D 039172,000132: 42,3705 0000002 R EQUALS RCM 039173,000133: End of include-file S-BAND_ANTENNA_FOR_CM.agc. Parent file is MAIN.agc