Source Code

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