Source Code

023192,000001: # Copyright: Public domain. 023193,000002: # Filename: P11.agc 023194,000003: # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055. 023195,000004: # It is part of the source code for the Command Module's (CM) 023196,000005: # Apollo Guidance Computer (AGC), for Apollo 11. 023197,000006: # Assembler: yaYUL 023198,000007: # Contact: Hartmuth Gutsche <hgutsche@xplornet.com>. 023199,000008: # Website: www.ibiblio.org/apollo. 023200,000009: # Pages: 533-550 023201,000010: # Mod history: 2009-05-13 HG Started adapting from the Colossus249/ file 023202,000011: # of the same name, using Comanche055 page 023203,000012: # images 0533.jpg - 0550.jpg. 023204,000013: # 2009-05-20 RSB Corrections: ERTHALT -> EARTHALT, 023205,000014: # STATSW -> SATSW. 023206,000015: # 2009-05-23 RSB At end of RESCALES, corrected TC 0 to TC Q. 023207,000016: # Added an SBANK= prior to a 2CADR. 023208,000017: 023209,000018: # This source code has been transcribed or otherwise adapted from digitized 023210,000019: # images of a hardcopy from the MIT Museum. The digitization was performed 023211,000020: # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many 023212,000021: # thanks to both. The images (with suitable reduction in storage size and 023213,000022: # consequent reduction in image quality as well) are available online at 023214,000023: # www.ibiblio.org/apollo. If for some reason you find that the images are 023215,000024: # illegible, contact me at info@sandroid.org about getting access to the 023216,000025: # (much) higher-quality images which Paul actually created. 023217,000026: 023218,000027: # Notations on the hardcopy document read, in part: 023219,000028: 023220,000029: # Assemble revision 055 of AGC program Comanche by NASA 023221,000030: # 2021113-051. 10:28 APR. 1, 1969 023222,000031: 023223,000032: # This AGC program shall also be referred to as 023224,000033: # Colossus 2A 023225,000034: # Page 533 023226,000035: # EARTH ORBIT INSERTION MONITOR PROGRAM 023227,000036: # ************************************* 023228,000037: 023229,000038: # PROGRAM DESCRIPTION -P11- 023230,000039: 023231,000040: # MOD NO. 1 023232,000041: # MOD BY ELIASSEN 023233,000042: 023234,000043: # FUNCTIONAL DESCRIPTION 023235,000044: 023236,000045: # P11 IS INITIATED BY 023237,000046: 023238,000047: # A) GYROCOMPASS PRG P02 WHEN LIFTOFF DISCRETE IS RECEIVED OR 023239,000048: # B) BACKUP THRU VERB 75 ENTER 023240,000049: 023241,000050: # PROGRAM WILL 023242,000051: # 1. ZERO CMC CLOCK AT LIFTOFF (OR UPON RECEIPT OF BACKUP) 023243,000052: # 2. UPDATE TEPHEM TO TIME CMC CLOCK WAS ZEROED 023244,000053: # 3. INITIATE SERVICER AT PREREAD1 023245,000054: # 4. CHANGE MAJOR MODE TO 11 023246,000055: # 5. CLEAR DSKY IN CASE OF V 75 023247,000056: # 6. STORE LIFTOFF IMU-CDU ANGLES FOR ATT. ERROR DISPLAY 023248,000057: # 7. TERMINATE GYROCOMPASSING __ __ 023249,000058: # 8. COMPUTE INITIAL VECTORS RN, VN _ _ _ 023250,000059: # 9. COMPUTE REFSMMAT FOR PRELAUNCH ALIGNMENT WHERE U ,U ,U ARE 023251,000060: # _ _ X Y Z 023252,000061: # U =(UNIT(-R) LOCAL VERTICAL AT TIME OF LIFTOFF 023253,000062: # _Z _ _ 023254,000063: # U =UNIT(A), A=HOR VECTOR AT LAUNCH AZIMUTH 023255,000064: # _X _ _ 023256,000065: # U =U * U 023257,000066: # U Z X 023258,000067: # 10. SET REFSMMAT KNOWN FLAG 023259,000068: # 11. SET AVGEXIT IN SERVICER TO VHHDOT TO 023260,000069: # COMPUTE AND DISPLAY NOUN 62 EVERY 2 SECONDS 023261,000070: 023262,000071: # R1 V1 -- INERTIAL VELOCITY MAGNITUDE IN FPS 023263,000072: # R2 HDOT -- RATE OF CHANGE OF VEHICLE VEL IN FPS 023264,000073: # R3 H -- VEHICLE ALTITUDE ABOVE PAD IN NM 023265,000074: # 023266,000075: # 12. DISPLAY BODY AXES ATT. ERRORS ON FDAI NEEDLES 023267,000076: 023268,000077: # A) FROM L.O. TO RPSTART (APPROX. 0 TO +10SECS AFTER L.O.) 023269,000078: # DESIRED ATTITUDE IS AS STORED AT L.O. 023270,000079: # B) FROM RPSTART TO POLYSTOP (APPROX. +10 TO +133SECS AFTER LO) 023271,000080: # DESIRED ATTITUDE IS SPECIFIED BY CMC PITCH AND ROLL 023272,000081: # POLYNOMIALS DURING SATURN ROLLOUT AND PITCHOVER 023273,000082: # Page 534 023274,000083: # THE DISPLAY IS RUN AS LOW PRIORITY JOB APPROX. 023275,000084: # EVERY 1/2 SEC OR LESS AND IS DISABLED UPON OVFLO OF TIME1 023276,000085: 023277,000086: # SUBROUTINES CALLED 023278,000087: 023279,000088: # 2PHSCHNG BANKCALL CALCGRA CDUTRIG CLEANDSP DANZIG 023280,000089: # DELAYJOB EARTHR ENDOFJOB FINDVAC IBNKCALL 023281,000090: # INTPRET LALOTORV NEEDLER NEWMODEX PHASCHNG 023282,000091: # POSTJUMP POWRSERS PREREAD1 REGODSPR S11.1 023283,000092: # SERVEXIT TASKOVER TCDANZIG V1STO2S WAITLIST 023284,000093: 023285,000094: # ASTRONAUT REQUESTS (IF ALTITUDE ABOVE 300,000 FT) 023286,000095: 023287,000096: # DSKY -- 023288,000097: # MONITOR DISPLAY OF TIME TO PERIGEE R1 HOURS 023289,000098: # R2 MINUTES 023290,000099: 023291,000100: # DSKY -- 023292,000101: # MONITOR DISPLAY OF R1 APOGEE ALTITUDE IN NAUTICAL MILES 023293,000102: # R2 PERIGEE ALTITUDE IN NAUTICAL MILES 023294,000103: # R3 TFF IN MINUTES/SECS 023295,000104: 023296,000105: # IF ASTRONAUT HAS REQUESTED ANY OF THESE DISPLAYS HE MUST 023297,000106: # HIT PROCEED TO RETURN TO NORMAL NOUN 62 DISPLAY. 023298,000107: # NORMAL EXIT MODE 023299,000108: 023300,000109: # ASTRONAUT VERB 37 ENTER 00 ENTER 023301,000110: 023302,000111: # ALARM MODES -- NONE 023303,000112: 023304,000113: # ABORT EXIT MODES -- 023305,000114: 023306,000115: # OUTPUT 023307,000116: 023308,000117: # TLIFTOFF (DP) TEPHEM (TP) 023309,000118: # REFSMMAT 023310,000119: # DSKY DISPLAY 023311,000120: # FDAI DISPLAY 023312,000121: 023313,000122: # ERASABLE INITIALIZATION 023314,000123: 023315,000124: # AZO, AXO, -AYO 023316,000125: # LATITUDE 023317,000126: # PADLONG 023318,000127: # TEPHEM 023319,000128: # PGNCSALT 023320,000129: # POLYNUM THRU POLYNUM +14D 023321,000130: # RPSTART 023322,000131: # POLYSTOP 023323,000132: # FLAGS SET OR RESET 023324,000133: # Page 535 023325,000134: # SET REFSMFLG 023326,000135: # SET DVMON IDLE FLAG 023327,000136: # CLEAR ERADFLAG 023328,000137: 023329,000138: # DEBRIS 023330,000139: 023331,000140: # LIFTTEMP 023332,000141: # POLYNUM THRU POLYNUM +7 023333,000142: # SPOLYARG 023334,000143: # BODY1, BODY2, BODY3 023335,000144: # VMAG2, ALTI, HDOT 023336,000145: # CENTRALS, CORE SET, AND VAC AREAS 023337,000146: 023338,000147: 04,3303 COUNT 34/P11 023339,000148: 023340,000149: 04,3303 5035 BITS5-6 = SUPER011 023341,000150: 42,3606 BANK 42 023342,000151: 34,2000 SETLOC P11ONE 023343,000152: 34,2000 BANK 023344,000153: 023345,000154: 34,2002 E3,1706 EBANK= TEPHEM 023346,000155: 34,2002 35051 P11 CA EBANK3 023347,000156: 34,2003 54003 TS EBANK 023348,000157: 023349,000158: 34,2004 00006 EXTEND 023350,000159: 34,2005 32277 DCA REP11S # DIRECT RESTARTS TO REP11 023351,000160: 34,2006 52757 DXCH -PHASE3 023352,000161: 34,2007 45021 CS ZERO 023353,000162: 34,2010 22007 ZL 023354,000163: 34,2011 55265 TS LIFTTEMP 023355,000164: 34,2012 52763 DXCH -PHASE5 # INACTIVE GROUP 5, PRELAUNCH PROTECTION 023356,000165: 34,2013 00006 P11+7 EXTEND 023357,000166: 34,2014 32301 DCA REP11SA 023358,000167: 34,2015 53337 DXCH TLIFTOFF 023359,000168: 023360,000169: 34,2016 00006 EXTEND 023361,000170: 34,2017 30025 DCA TIME2 023362,000171: 34,2020 53266 DXCH LIFTTEMP # FORE RESTARTS 023363,000172: 023364,000173: 34,2021 35021 CA ZERO 023365,000174: 34,2022 22007 ZL 023366,000175: 34,2023 52025 DXCH TIME2 023367,000176: 34,2024 53337 REP11A-2 DXCH TLIFTOFF 023368,000177: 34,2025 52757 REP11A-1 DXCH -PHASE3 # RESET PHASE 023369,000178: 023370,000179: 34,2026 00004 REP11A INHINT 023371,000180: 34,2027 00006 EXTEND 023372,000181: 34,2030 31710 DCA TEPHEM +1 023373,000182: 34,2031 53271 DXCH TEPHEM1 +1 023374,000183: 34,2032 31706 CA TEPHEM 023375,000184: # Page 536 023376,000185: 34,2033 57267 XCH TEPHEM1 023377,000186: 023378,000187: 34,2034 00006 EXTEND 023379,000188: 34,2035 31337 DCA TLIFTOFF 023380,000189: 34,2036 21271 DAS TEPHEM1 +1 023381,000190: 34,2037 27267 ADS TEPHEM1 # CORRECT FOR OVERFLOW 023382,000191: 023383,000192: 34,2040 05412 TC PHASCHNG 023384,000193: 34,2041 05023 OCT 05023 023385,000194: 34,2042 22000 OCT 22000 023386,000195: 023387,000196: 34,2043 00004 INHINT 023388,000197: 34,2044 00006 EXTEND 023389,000198: 34,2045 31270 DCA TEPHEM1 023390,000199: 34,2046 53707 DXCH TEPHEM 023391,000200: 34,2047 31271 CA TEPHEM1 +2 023392,000201: 34,2050 57710 XCH TEPHEM +2 023393,000202: 023394,000203: 34,2051 32000 CAF EBDVCNT 023395,000204: 34,2052 54003 TS EBANK 023396,000205: 34,2053 E7,1431 EBANK= DVCNTR 023397,000206: 34,2053 04740 TC IBNKCALL 023398,000207: 34,2054 76722 CADR PREREAD1 # ZERO PIPS AND INITIALIZE AVERAGEG 023399,000208: 023400,000209: 34,2055 05412 TC PHASCHNG 023401,000210: 34,2056 05023 OCT 05023 # CONTINUE HERE ON RESTART 023402,000211: 34,2057 22000 OCT 22000 023403,000212: 023404,000213: 34,2060 35036 CAF .5SEC # START ATT ERROR DISPLAY 023405,000214: 34,2061 05245 TC WAITLIST # IN .5 SEC 023406,000215: 34,2062 E6,1704 EBANK= BODY3 023407,000216: 34,2062 02320 70066 2CADR ATERTASK 023408,000217: 023409,000218: 34,2064 05354 TC NEWMODEX # DISPLAY MM 11 023410,000219: 34,2065 00013 MM 11 B-14 023411,000220: 023412,000221: 34,2066 05546 TC UPFLAG 023413,000222: 34,2067 00022 ADRES NODOP01 023414,000223: 023415,000224: 34,2070 36214 CA POWDNCOD # SWITCH TO POWERED FLIGHT DOWNLIST 023416,000225: 34,2071 54332 TS DNLSTCOD 023417,000226: 023418,000227: 34,2072 04662 TC BANKCALL 023419,000228: 34,2073 20703 CADR CLEANDSP # CLEAR DSKY IN CASE OF V75 023420,000229: 023421,000230: 34,2074 05372 TC 2PHSCHNG 023422,000231: 34,2075 40514 OCT 40514 # PROTECT ATERTASK 023423,000232: 34,2076 00073 OCT 00073 023424,000233: 34,2077 32001 CAF EBQPLACE 023425,000234: # Page 537 023426,000235: 34,2100 54003 TS EBANK 023427,000236: 023428,000237: 34,2101 E5,1426 EBANK= QPLACES 023429,000238: 34,2101 32302 CA P11XIT # SET EXIT FROM PROUT IN EARTHR 023430,000239: 34,2102 55426 TS QPLACES 023431,000240: 34,2103 06006 TC INTPRET 023432,000241: 34,2104 64375 VLOAD MXV 023433,000242: 34,2105 02467 THETAN 023434,000243: 34,2106 02672 XSM 023435,000244: 34,2107 53372 VSL1 VAD 023436,000245: 34,2110 02650 ERCOMP 023437,000246: 34,2111 16650 STODL ERCOMP 023438,000247: 34,2112 01337 TLIFTOFF 023439,000248: 34,2113 52131 SSP GOTO 023440,000249: 34,2114 00052 S2 023441,000250: 34,2115 66424 CADR PROUT # RETURN FROM EARTHR 023442,000251: 34,2116 66373 EARTHR +3 023443,000252: 34,2117 22007 MATRXJOB ZL # STORE DP GIMBAL ANGLES FOR ATTITUDE 023444,000253: 34,2120 30032 CA CDUX # ERROR DISPLAY AFTER LIFTOFF 023445,000254: 34,2121 53760 DXCH OGC 023446,000255: 34,2122 22007 ZL 023447,000256: 34,2123 30033 CA CDUY 023448,000257: 34,2124 53762 DXCH IGC 023449,000258: 34,2125 22007 ZL 023450,000259: 34,2126 30034 CA CDUZ 023451,000260: 34,2127 53764 DXCH MGC 023452,000261: 34,2130 06006 TC INTPRET _ 023453,000262: 34,2131 74575 VLOAD VSR1 # SCALE OGC B-1 023454,000263: 34,2132 02760 OGC 023455,000264: 34,2133 02760 STORE OGC 023456,000265: 34,2134 77731 SSP # ZERO RTX2 023457,000266: 34,2135 03747 RTX2 # FOR 023458,000267: 34,2136 00000 0 # EARTH 023459,000268: 34,2137 65345 DLOAD PDDL 023460,000269: 34,2140 01273 PGNCSALT # ALTITUDE OF PGNCS 023461,000270: 34,2141 01264 PADLONG # LONGITUDE 023462,000271: 34,2142 55525 PDDL VDEF 023463,000272: 34,2143 02403 LATITUDE # GEODETIC LATITUDE 023464,000273: 34,2144 15104 STODL LAT # LAT,LONG,ALT ARE CONSECUTIVE 023465,000274: 34,2145 15335 HI6ZEROS # TIME = 0 023466,000275: 34,2146 45014 CLEAR CALL 023467,000276: 34,2147 00662 ERADFLAG 023468,000277: 34,2150 26441 LALOTORV # CONVERT TO POSITION VECTOR IN REF. COORDS. 023469,000278: 023470,000279: 34,2151 35232 STCALL RN1 # _ 023471,000280: 34,2152 70334 GETDOWN # RETURN WITH VECTOR FOR DOWN DIRECTION 023472,000281: 34,2153 53476 VCOMP UNIT 023473,000282: 34,2154 25752 STOVL REFSMMAT +12D # UNITZ = UNIT(GRAV) 023474,000283: 34,2155 01232 RN1 023475,000284: 34,2156 74235 VXV VXSC 023476,000285: # Page 538 023477,000286: 34,2157 01714 UNITW # SCALED AT 1 023478,000287: 34,2160 30304 -ERTHRAT # V = EARTHRATE X R 023479,000288: 34,2161 77712 VSL4 # SCALE TO 2(7) M/CS 023480,000289: 34,2162 25240 STOVL VN1 023481,000290: 34,2163 01752 REFSMMAT +12D 023482,000291: 34,2164 53435 VXV UNIT 023483,000292: 34,2165 01714 UNITW # (REF3 X UNITW) = EAST 023484,000293: 34,2166 47206 PUSH VXV 023485,000294: 34,2167 01752 REFSMMAT +12D # (EAST X REF3) = -SOUTH 023486,000295: 34,2170 65256 UNIT PDDL 023487,000296: 34,2171 02634 LAUNCHAZ # COS(AZ)*SOUTH 023488,000297: 34,2172 74346 COS VXSC 023489,000298: 34,2173 77626 STADR 023490,000299: 34,2174 62041 STODL REFSMMAT # TEMPORARY STORAGE 023491,000300: 34,2175 02634 LAUNCHAZ 023492,000301: 34,2176 74356 SIN VXSC # SIN(AZ)*EAST 023493,000302: 34,2177 53455 VAD UNIT # SIN(AZ)*EAST - COS(AZ)*SOUTH = REF1 023494,000303: 34,2200 01736 REFSMMAT 023495,000304: 34,2201 01736 STORE REFSMMAT 023496,000305: 023497,000306: 34,2202 53435 VXV UNIT # (REF1 X REF3) = -REF3 023498,000307: 34,2203 01752 REFSMMAT +12D 023499,000308: 34,2204 77676 VCOMP 023500,000309: 34,2205 01744 STORE REFSMMAT +6 023501,000310: 34,2206 45345 DLOAD DSU 023502,000311: 34,2207 15333 DPHALF # 1/2 REV 023503,000312: 34,2210 02634 LAUNCHAZ 023504,000313: 34,2211 65215 DAD PDDL 023505,000314: 34,2212 02401 AZIMUTH 023506,000315: 34,2213 03301 SATRLRT # SET SATRLRT = -SATRLRT IF 023507,000316: 34,2214 45565 SIGN STADR # (1/2REV -LAVNCHAZ +AZIMUTH) IS NEGATIVE 023508,000317: 34,2215 74476 STORE SATRLRT # FOR ROLL CALC IN FDAI ATT. ERROR DISPLAY 023509,000318: 34,2216 77414 SET EXIT 023510,000319: 34,2217 01462 REFSMFLG # SET REFSMMAT KNOWN FLAG 023511,000320: 023512,000321: 34,2220 05412 TC PHASCHNG 023513,000322: 34,2221 04023 OCT 04023 023514,000323: 023515,000324: 34,2222 00006 EXTEND 023516,000325: 34,2223 32306 DCA P11SCADR 023517,000326: 34,2224 53223 DXCH AVGEXIT # SET AVGEXIT 023518,000327: 023519,000328: 34,2225 37665 CA PRIO31 # 2 SECONDS AT 2(+8) 023520,000329: 34,2226 55074 TS 1/PIPADT 023521,000330: 023522,000331: 34,2227 E6,1501 EBANK= RCSFLAGS 023523,000332: 34,2227 35057 CA EBANK6 023524,000333: 34,2230 54003 TS EBANK 023525,000334: 023526,000335: 34,2231 00004 INHINT 023527,000336: # Page 539 023528,000337: 34,2232 45021 CS ZERO 023529,000338: 34,2233 55063 TS TBASE5 # RESTART READACCS 2 SECONDS AFTER LIFTOFF 023530,000339: 023531,000340: 34,2234 40025 CS TIME1 023532,000341: 34,2235 65042 AD 2SECS # DO READACCS 2 SECONDS AFTER LIFTOFF 023533,000342: 023534,000343: 34,2236 10000 CCS A # CHECK TO INSURE DT IS POSITIVE 023535,000344: 34,2237 12242 TCF +3 # TIME POSITIVE 023536,000345: 34,2240 12242 TCF +2 # CANNOT GET HERE 023537,000346: 34,2241 35021 CA ZERO # TIME NEGATIVE -- SET TO 1 023538,000347: 34,2242 65017 AD ONE # RESTORE TIME -- OR MAKE POSITIVE 023539,000348: 023540,000349: 34,2243 05245 TC WAITLIST 023541,000350: 34,2244 E6,1661 EBANK= AOG 023542,000351: 34,2244 02744 76066 2CADR READACCS 023543,000352: 023544,000353: 34,2246 05372 TC 2PHSCHNG 023545,000354: 34,2247 00003 OCT 00003 # TURN OFF GROUP 3 023546,000355: 34,2250 00025 OCT 00025 # PROTECT NORMLIZE AND READACCS 023547,000356: 023548,000357: 34,2251 04701 TC POSTJUMP 023549,000358: 34,2252 77236 CADR NORMLIZE # DO NORMLIZE AND ENDOFJOB 023550,000359: 023551,000360: 023552,000361: 34,2253 E3,1706 EBANK= TEPHEM 023553,000362: 34,2253 00004 REP11 INHINT 023554,000363: 34,2254 10763 CCS PHASE5 023555,000364: 34,2255 05217 TC ENDOFJOB 023556,000365: 023557,000366: 34,2256 11265 CCS LIFTTEMP 023558,000367: 34,2257 12263 TCF +4 023559,000368: 34,2260 12263 TCF +3 023560,000369: 34,2261 12263 TCF +2 023561,000370: 34,2262 12013 TCF P11+7 023562,000371: 023563,000372: 34,2263 41336 CS TLIFTOFF 023564,000373: 34,2264 00006 EXTEND 023565,000374: 34,2265 62273 BZMF ENDREP11 023566,000375: 023567,000376: 34,2266 10024 CCS TIME2 # ** TIME2 MUST BE NON-ZERO AT LIFTOFF ** 023568,000377: 34,2267 12021 TCF REP11A -5 # T2,T1 NOT YET ZEROED, GO AND DO IT 023569,000378: 023570,000379: 34,2270 00006 EXTEND # T2,T1 ZEROED, SET TLIFTOFF 023571,000380: 34,2271 31266 DCA LIFTTEMP 023572,000381: 34,2272 12024 TCF REP11A-2 023573,000382: 023574,000383: 34,2273 00006 ENDREP11 EXTEND 023575,000384: 34,2274 32301 DCA REP11SA 023576,000385: 34,2275 12025 TCF REP11A-1 023577,000386: # Page 540 023578,000387: 34,2276 77766 00011 REP11S 2OCT 7776600011 023579,000388: 023580,000389: 34,2300 77764 00013 REP11SA 2OCT 7776400013 023581,000390: 023582,000391: 34,2302 02451 P11XIT GENADR P11OUT 023583,000392: 34,2303 71704 41735 -ERTHRAT 2DEC* -7.292115138 E-7 B18* # - EARTH RATE AT 2(18) 023584,000393: 023585,000394: 34,2305 E6,1704 EBANK= BODY3 023586,000395: 34,2305 02307 70066 P11SCADR 2CADR VHHDOT 023587,000396: 023588,000397: 34,2307 6214 POWDNCOD EQUALS THREE 023589,000398: 023590,000399: 34,2307 E6,1704 EBANK= BODY3 023591,000400: # VHHDOT IS EXECUTED EVERY 2 SECONDS TO DISPLAY ON DSKY 023592,000401: # VI INERTIAL VELOCITY MAGNITUDE 023593,000402: # HDOT RATE OF CHANGE OF ALT ABOVE L PAD RADIUS 023594,000403: # H ALTITUDE ABOVE L PAD RADIUS 023595,000404: 023596,000405: 34,2307 06006 VHHDOT TC INTPRET 023597,000406: 34,2310 77624 CALL # LOAD VMAGI, ALTI, 023598,000407: 34,2311 70542 S11.1 # HDOT FOR DISPLAY 023599,000408: 34,2312 77776 EXIT 023600,000409: 34,2313 05412 TC PHASCHNG 023601,000410: 34,2314 00035 OCT 00035 023602,000411: 023603,000412: 34,2315 32622 CAF V06N62 # DISPLAY IN R1 R2 R3 023604,000413: 34,2316 04662 TC BANKCALL # VI HDOT H 023605,000414: 34,2317 20707 CADR REGODSP 023606,000415: 023607,000416: 34,2320 35006 ATERTASK CAF PRIO1 # ESTABLISH JOB TO DISPLAY ATT ERRORS 023608,000417: 34,2321 05147 TC FINDVAC # COMES HERE AT L.O. + .33 SEC 023609,000418: 34,2322 E6,1704 EBANK= BODY3 023610,000419: 34,2322 02345 70066 2CADR ATERJOB 023611,000420: 023612,000421: 34,2324 41501 CS RCSFLAGS # SET BIT3 FOR 023613,000422: 34,2325 75015 MASK BIT3 # NEEDLER 023614,000423: 34,2326 27501 ADS RCSFLAGS # INITIALIZATION PASS 023615,000424: 34,2327 04740 TC IBNKCALL # AND GO 023616,000425: 34,2330 42420 CADR NEEDLER # DO IT 023617,000426: 34,2331 35017 CA BIT1 # SET SW 023618,000427: 34,2332 55725 TS SATSW # FOR DISPLAY 023619,000428: 34,2333 05324 TC TASKOVER 023620,000429: 34,2334 40220 GETDOWN STQ SETPD 023621,000430: 34,2335 02242 INCORPEX 023622,000431: 34,2336 00001 0D 023623,000432: 34,2337 77745 DLOAD 023624,000433: 34,2340 15335 HI6ZEROS 023625,000434: # Page 541 023626,000435: 34,2341 14007 STODL 6D 023627,000436: 34,2342 15333 DPHALF 023628,000437: 34,2343 34011 STCALL 8D 023629,000438: 34,2344 26446 LALOTORV +5 023630,000439: # THIS SECTION PROVIDES ATTITUDE ERROR DISPLAYS TO THE FDAI DURING SONE BOOST 023631,000440: 023632,000441: # COMPUTE DESIRED PITCH W.R.T. PAD LOCAL VERTICAL AT LIFTOFF 023633,000442: # 2 3 4 5 6 023634,000443: # PITCH = A0+A1T+A2T +A3T +A4T +A5T +A6T 023635,000444: # SCALED TO 32 REVS. -14 023636,000445: # IF TL = TIME IN SECS FROM L.O., THEN T = 100(TL-RPSTART0)2 023637,000446: # WHERE TL GE RPSTART 023638,000447: # TL LE (-POLYSTOP + RPSTART) 023639,000448: # COMPUTE DESIRED ROLL WEHRE ROLL EQUALS ANGLE FROM 023640,000449: # LAUNCHAZ TO -Z(S/C) AS SEEN FROM X(S/C). 023641,000450: # ROLL = LAUNCHAZ-AZIMUTH-.5+SATRLRT*T IN REV 023642,000451: # SATRLRT = RATE OF ROLL IN REV/CENTI-SEC 023643,000452: # T, IN CENTI-SEC, IS DEFINED AS ABOVE, INCLUSIVE OF TIME RESTRICTIONS 023644,000453: 023645,000454: # FOR SIMPLICITY, LET P = 2*PI*PITCH 023646,000455: # R = 2*PI*ROLL 023647,000456: 023648,000457: # CONSTRUCT THE TRANSFORMATION MATRIX, TSMV, GIVING DESIRED S/C AXES IN 023649,000458: # TERMS OF SM COORDINATES. LET THE RESULTING ROWS EQUAL THE VECTORS XDC, 023650,000459: # YDC, AND ZDC. 023651,000460: 023652,000461: # * ( SIN(P) 0 -COS(P) ) (XDC) 023653,000462: # TSMV = (-SIN(R)*COS(P) -COS(R) -SIN(R)*SIN(P)) = (YDC) 023654,000463: # (-COS(R)*COS(P) SIN(R) -COS(R)*SIN(P)) (ZDC) 023655,000464: 023656,000465: # XDC,YDC,ZDC ARE USED AS INPUT TO CALCGTA FOR THE EXTRACTION OF THE 023657,000466: # EULER SET OF ANGLES WHICH WILL BRING THE SM INTO THE DESIRED 023658,000467: # ORIENTATION. THIS EULER SET, OGC, IGC, AND MGC, MAY BE IDENTIFIED 023659,000468: # AS THE DESIRED CDU ANGLES. 023660,000469: 023661,000470: # (XDC) (OGC) 023662,000471: # (YDC) ---) CALCGTA ---) (IGC) 023663,000472: # (ZDC) (MGC) 023664,000473: # _ 023665,000474: # DEFINE THE VECTOR DELTACDU. 023666,000475: 023667,000476: # _ (OGC) (CDUX) 023668,000477: # DELTACDU = (IGC) - (CDUY) 023669,000478: # (MGC) (CDUZ) 023670,000479: # _ _ * _ 023671,000480: # COMPUTE ATTITUDE ERRORS, A, WHERE A = TGSC*DELTACDU 023672,000481: 023673,000482: # * (1 SIN(CDUZ) 0 ) THE GIMBAL ANGLES 023674,000483: # Page 542 023675,000484: # TGSC = (0 COS(CDUX)*COS(CDUZ) SIN(CDUX)) = TO SPACECRAFT AXES 023676,000485: # (0 -SIN(CDUX)*COS(CDUZ) COS(CDUX)) CONVERSION MATRIX 023677,000486: # _ 023678,000487: # THE ATTITUDE ERRORS, A, ARE STORED ONE HALF SINGLE PRECISION IN 023679,000488: # THE REGISTERS AK, AK1, AK2 AS INPUT TO NEEDLER, THE FDAI ATTITUDE 023680,000489: # ERROR DISPLAY ROUTINE. 023681,000490: 023682,000491: 34,2345 30102 ATERJOB CAE FLAGWRD6 # CHECK FLAGWRD6 023683,000492: 34,2346 74105 MASK OCT60000 # BITS 14, 15 023684,000493: 34,2347 00006 EXTEND 023685,000494: 34,2350 12352 BZF +2 # OK -- CONTINUE 023686,000495: 34,2351 05217 TC ENDOFJOB # STAURN STICK ON -- KILL JOB 023687,000496: 34,2352 35006 CAF BIT10 # CHECK IF S/C CONTROL 023688,000497: 34,2353 00006 EXTEND # OF SATURN PANEL 023689,000498: 34,2354 02030 RAND CHAN30 # SWITCH IS ON 023690,000499: 34,2355 00006 EXTEND 023691,000500: 34,2356 12510 BZF STRSAT # IT IS -- GO STEER 023692,000501: 34,2357 11725 CCS SATSW # IT IS NOT -- WAS IT ON LAST CYCLE 023693,000502: 34,2360 02363 TC ATTDISP # NO -- CONTINUE 023694,000503: 34,2361 02513 TC ATRESET # YES -- REINITIALIZE NEEDLER 023695,000504: 34,2362 02513 TC ATRESET # YES -- REINITIALIZE NEEDLER 023696,000505: 34,2363 41702 ATTDISP CS RPSTART # PITCH/ROLL START TIME 023697,000506: 34,2364 60025 AD TIME1 023698,000507: 34,2365 00006 EXTEND 023699,000508: 34,2366 62615 BZMF NOPOLY # IF MINUS THEN ATTITUDE HOLD 023700,000509: 34,2367 54154 TS MPAC # MPAC = TIME1 - RPSTART 023701,000510: 34,2370 55707 TS SPOLYARG # SAVE FOR USE IN ROLL CALCULATION 023702,000511: 34,2371 61703 AD POLYSTOP # NEG PITCHOVER TIME IN CSECS 023703,000512: 34,2372 00006 EXTEND 023704,000513: 34,2373 62375 BZMF +2 023705,000514: 34,2374 02615 TC NOPOLY # GO TO ATTITUDE HOLD 023706,000515: 34,2375 30024 CA TIME2 023707,000516: 34,2376 00006 EXTEND 023708,000517: 34,2377 62401 BZMF +2 023709,000518: 34,2400 02615 TC NOPOLY # GO TO ATTITUDE HOLD 023710,000519: 34,2401 31661 CAE POLYNUM 023711,000520: 34,2402 54001 TS L 023712,000521: 34,2403 32621 CAF COEFPOLY # EVALUATE PITCH POLYNOMIAL 023713,000522: 34,2404 07164 TC POWRSERS # SCALED TO 32 REVOLUTIONS 023714,000523: 34,2405 35021 CA ZERO # RETURN WITH PITCH(32REV) 023715,000524: 34,2406 54163 TS MODE # STORED MPAC, MPAC +1 023716,000525: 34,2407 06006 TC INTPRET 023717,000526: 34,2410 54201 SETPD SL # 32(PITCH(32REV)) = PITCH(REV) 023718,000527: 34,2411 00001 0 023719,000528: 34,2412 20206 5 023720,000529: 34,2413 77606 PUSH # LET P(RAD) = 2*PI*PITCH(REV) 023721,000530: 34,2414 77650 GOTO 023722,000531: 34,2415 76155 ATTDISP1 # AROUND SETLOC 023723,000532: # Page 543 023724,000533: # * 023725,000534: # CONSTRUCT SM TO S/C MATRIX, TSMV 023726,000535: 023727,000536: 37,2000 SETLOC P11TWO 023728,000537: 37,2000 BANK # 36 IN COL., 34 IN DISK 023729,000538: 023730,000539: 37,2155 COUNT 36/P11 023731,000540: 023732,000541: 37,2155 57546 ATTDISP1 COS DCOMP 023733,000542: 37,2156 14017 STODL 14D # -.5*COS(P) 023734,000543: 37,2157 77756 SIN 023735,000544: 37,2160 14013 STODL 10D # .5*SIN(P) 023736,000545: 37,2161 15335 ZEROVECS 023737,000546: 37,2162 00015 STORE 12D # 0 023738,000547: 023739,000548: # EVALUATE ROLL = LAUNCHAZ-AZIMUTH-.5+SATRLRT*T 023740,000549: 37,2163 41335 SLOAD DMP 023741,000550: 37,2164 03310 SPOLYARG # TIME1 - RSPSTART, CSECS B-14. 023742,000551: 37,2165 03301 SATRLRT 023743,000552: 37,2166 45261 SL DSU 023744,000553: 37,2167 20217 14D 023745,000554: 37,2170 15333 DPHALF 023746,000555: 37,2171 45215 DAD DSU # ASSUMING X(SM) ALONG LAUNCH AZIMUTH, 023747,000556: 37,2172 02634 LAUNCHAZ # LAUNCHAZ = ANGLE FROM NORTH TO X(SM). 023748,000557: 37,2173 02401 AZIMUTH # AZIMUTH = -ANGLE FROM NORTH TO Z(S/C) 023749,000558: 37,2174 77634 RTB # DETERMINE IF ROLLOUT 023750,000559: 37,2175 70604 RLTST # IS COMPLETED 023751,000560: 37,2176 71406 ATTDISPR PUSH COS # CONTINUE COMPUTING TSMV 023752,000561: 37,2177 77606 PUSH # LET R(RAD) = 2*PI*ROLL(REV) 023753,000562: 37,2200 72405 DMP SL1 023754,000563: 37,2201 00017 14D 023755,000564: 37,2202 14027 STODL 22D # -.5*COS(R)*COS(P) 023756,000565: 37,2203 77676 DCOMP 023757,000566: 37,2204 00023 STORE 18D # -.5*COS(R) 023758,000567: 37,2205 72405 DMP SL1 023759,000568: 37,2206 00013 10D 023760,000569: 37,2207 14033 STODL 26D # -.5*COS(R)*SIN(P) 023761,000570: 37,2210 41556 SIN PUSH 023762,000571: 37,2211 00031 STORE 24D # .5*SIN(R) 023763,000572: 37,2212 72405 DMP SL1 023764,000573: 37,2213 00017 14D 023765,000574: 37,2214 14021 STODL 16D # -.5*SIN(R)*COS(P) 023766,000575: 37,2215 77676 DCOMP 023767,000576: 37,2216 72405 DMP SL1 023768,000577: 37,2217 00013 10D 023769,000578: 37,2220 24025 STOVL 20D # -.5*SIN(R)*SIN(P) 023770,000579: 37,2221 00013 10D 023771,000580: 023772,000581: # FROM TSMV FIND THE HALF UNIT VECTORS XDC,YDC,ZDC = INPUT TO CALCGTA 023773,000582: # Page 544 023774,000583: 37,2222 77656 UNIT 023775,000584: 37,2223 26714 STOVL XDC # XDC = .5*UNIT(SIN(P),0,-COS(P)) 023776,000585: 37,2224 00021 16D 023777,000586: 37,2225 77656 UNIT 023778,000587: 37,2226 26722 STOVL YDC # YDC = .5*UNIT(-SIN(R)*COS(P),-COS(R), 023779,000588: 37,2227 00027 22D # -SIN(R)*SIN(P)) 023780,000589: 37,2230 77656 UNIT 023781,000590: 37,2231 36730 STCALL ZDC # ZDC = .5*UNIT(-COS(R)*COS(P),SIN(R), 023782,000591: 37,2232 47205 CALCGTA # -COS(R)*SIN(P)) 023783,000592: 023784,000593: # CALL CALCGTA TO COMPUTE DESIRED SM ORIENTATION OGC,IGC, AND MGC 023785,000594: # _ _ _ 023786,000595: # FIND DIFFERENCE VECTOR DELTACDU = OGC-CDUX 023787,000596: # 023788,000597: # ENTER HERE IF ATTITUDE HOLD 023789,000598: 023790,000599: 37,2233 41575 NOPOLYM VLOAD PUSH # OGC IGC 023791,000600: 37,2234 02760 OGC # CHANGE IGC TO MGC FOR COMPATIBILITY 023792,000601: 37,2235 45006 PUSH CALL # MGC OGC 023793,000602: 37,2236 47477 CDUTRIG # WITH Y,Z,X ORDER OF CDUSPOT 023794,000603: 37,2237 47175 VLOAD RTB # _ DPHI OGC-CDUX , PD4 023795,000604: 37,2240 00003 2 # DELTACDU = DTHETA = IGC-CDUY , 0 023796,000605: 37,2241 45552 V1STO2S # DPSI MGC-CDUZ , 2 023797,000606: 37,2242 27317 STOVL BOOSTEMP 023798,000607: 37,2243 15335 ZEROVECS 023799,000608: 37,2244 24001 STOVL 0 023800,000609: 37,2245 00767 CDUSPOT 023801,000610: 37,2246 47034 RTB RTB 023802,000611: 37,2247 45552 V1STO2S 023803,000612: 37,2250 70564 DELSTOR 023804,000613: 37,2251 14013 STODL 10D 023805,000614: 37,2252 00741 SINCDUZ 023806,000615: 37,2253 72405 DMP SL1 023807,000616: 37,2254 00001 0 023808,000617: 37,2255 60415 DAD SR2 # CHANGE SCALE OF AK TO 2REVS 023809,000618: 37,2256 00005 4 023810,000619: 37,2257 77650 GOTO 023811,000620: 37,2260 70416 ATTDISP2 023812,000621: 023813,000622: 34,2000 SETLOC P11ONE 023814,000623: 34,2000 BANK 023815,000624: 34,2416 COUNT 34/P11 023816,000625: 023817,000626: 34,2416 14021 ATTDISP2 STODL 16D # 16D, .5(DPHI + DTHETA*SIN(CDUZ)) 023818,000627: 34,2417 00747 COSCDUZ 023819,000628: 34,2420 41405 DMP PUSH 023820,000629: 34,2421 00001 0 023821,000630: 34,2422 72405 DMP SL1 023822,000631: 34,2423 00751 COSCDUX 023823,000632: 34,2424 41325 PDDL DMP 023824,000633: # Page 545 023825,000634: 34,2425 00743 SINCDUX 023826,000635: 34,2426 00003 2 023827,000636: 34,2427 72415 DAD SL1 023828,000637: 34,2430 77626 STADR 023829,000638: 34,2431 63755 STODL 17D # 17D, .5(DTHETA*COS(CDUX)*COS(CDUZ) 023830,000639: 34,2432 72405 DMP SL1 # +DPSI*SIN(CDUX)) 023831,000640: 34,2433 00743 SINCDUX 023832,000641: 34,2434 41325 PDDL DMP 023833,000642: 34,2435 00751 COSCDUX 023834,000643: 34,2436 00003 2 023835,000644: 34,2437 72425 DSU SL1 023836,000645: 34,2440 77626 STADR 023837,000646: 34,2441 77754 STORE 18D # 18D, .5(-DTHETA*SIN(CDUX)*COS(CDUZ) 023838,000647: 34,2442 77751 TLOAD # +DPSI*COS(CDUX)) 023839,000648: 34,2443 00021 16D 023840,000649: 34,2444 03077 STORE AK # STORE ATTITUDE ERRORS IN AK,AK1,AK2 023841,000650: 34,2445 77776 EXIT 023842,000651: 023843,000652: 34,2446 31725 CA SATSW 023844,000653: 34,2447 10000 CCS A # CHK TAKEOVER STATUS 023845,000654: 34,2450 02471 TC SATOUT # POS -- DISPLAY ONLY 023846,000655: 34,2451 02477 TC AKLOAD # 0 STORE BIAS 023847,000656: 34,2452 06006 STEERSAT TC INTPRET # NEG STEER L/V 023848,000657: 34,2453 76351 TLOAD TAD 023849,000658: 34,2454 03327 BIASAK 023850,000659: 34,2455 03077 AK 023851,000660: 34,2456 03077 STORE AK # AKS = AKS - STORED BIAS 023852,000661: 34,2457 77776 EXIT 023853,000662: 34,2460 31476 CA AK 023854,000663: 34,2461 02623 TC RESCALES 023855,000664: 34,2462 55476 TS AK 023856,000665: 34,2463 31477 CA AK1 023857,000666: 34,2464 02623 TC RESCALES 023858,000667: 34,2465 55477 TS AK1 023859,000668: 34,2466 31500 CA AK2 023860,000669: 34,2467 02623 TC RESCALES 023861,000670: 34,2470 55500 TS AK2 023862,000671: # DISPLAY ATTITUDE ERRORS ON FDAI VIA NEEDLER 023863,000672: 023864,000673: 34,2471 04662 SATOUT TC BANKCALL 023865,000674: 34,2472 42420 CADR NEEDLER 023866,000675: 34,2473 34113 ATERSET CAF OCT31 # DELAY .25 SEC 023867,000676: 34,2474 04662 TC BANKCALL # EXECUTION + DELAY = .56SEC APPROX 023868,000677: 34,2475 01732 CADR DELAYJOB 023869,000678: 34,2476 02345 TC ATERJOB # END OF ATT ERROR DISPLAY CYCLE 023870,000679: 023871,000680: 34,2477 41476 AKLOAD CS AK # STORE AKS 023872,000681: 34,2500 55726 TS BIASAK # INTO BIAS 023873,000682: 34,2501 41477 CS AK1 # COMPLEMENTED 023874,000683: 34,2502 55727 TS BIASAK +1 023875,000684: # Page 546 023876,000685: 34,2503 41500 CS AK2 023877,000686: 34,2504 55730 TS BIASAK +2 023878,000687: 34,2505 45017 CS BIT1 # SET SW 023879,000688: 34,2506 55725 TS SATSW # TO STEER 023880,000689: 34,2507 02452 TC STEERSAT # GO STEER 023881,000690: 34,2510 31725 STRSAT CA SATSW # CHECK IF NEDLER 023882,000691: 34,2511 00006 EXTEND # HAS BEEN INITIALIZED 023883,000692: 34,2512 62363 BZMF ATTDISP # YES -- CONTINUE 023884,000693: 34,2513 41501 ATRESET CS RCSFLAGS # NO -- SET 023885,000694: 34,2514 75015 MASK BIT3 # INITIALIZATION SW 023886,000695: 34,2515 27501 ADS RCSFLAGS # FOR NEDLER 023887,000696: 34,2516 04662 TC BANKCALL # AND GO 023888,000697: 34,2517 42420 CADR NEEDLER # DO IT 023889,000698: 34,2520 36211 CAF REVCNT # OCT 6 023890,000699: 34,2521 04662 TC BANKCALL # DELAY JOB 023891,000700: 34,2522 01732 CADR DELAYJOB # 60 MS --WAIT TILL IMUERRCNTR ZEROED 023892,000701: 34,2523 11725 CCS SATSW # CHECK SW STATUS 023893,000702: 34,2524 02534 TC TAKEON # POS STEER INIT. 023894,000703: 34,2525 02526 TC +1 # 0 RETURN TO DISPLAY 023895,000704: 34,2526 35017 CA BIT1 # NEG RETURN TO DISPLAY 023896,000705: 34,2527 55725 TS SATSW # SW = DISPLAY ON 023897,000706: 34,2530 45007 CS BIT9 # DISABLE 023898,000707: 34,2531 00006 EXTEND # SIVB 023899,000708: 34,2532 03012 WAND CHAN12 # TAKEOVER 023900,000709: 34,2533 02471 TC SATOUT # DISPLAY 023901,000710: 34,2534 35007 TAKEON CAF BIT9 # ENABLE 023902,000711: 34,2535 00006 EXTEND # SIVB 023903,000712: 34,2536 05012 WOR CHAN12 # TAKEOVER 023904,000713: 34,2537 35021 CA ZERO # INDICATE NEEDLER 023905,000714: 34,2540 55725 TS SATSW # WAS INITIALIZED 023906,000715: 34,2541 02471 TC SATOUT 023907,000716: 34,2542 51575 S11.1 VLOAD ABVAL 023908,000717: 34,2543 01177 VN 023909,000718: 34,2544 27723 STOVL VMAGI # VI SCALED 2(7) IN METERS/CSEC 023910,000719: 34,2545 01171 RN 023911,000720: 34,2546 50256 UNIT DOT 023912,000721: 34,2547 01177 VN 023913,000722: 34,2550 77752 SL1 023914,000723: 34,2551 17737 STODL HDOT 023915,000724: 34,2552 05152 RPAD 023916,000725: 34,2553 77214 BOF VLOAD 023917,000726: 34,2554 00355 AMOONFLG 023918,000727: 34,2555 70560 EARTHALT 023919,000728: 34,2556 02026 RLS 023920,000729: 34,2557 60446 ABVAL SR2 023921,000730: 34,2560 77621 EARTHALT BDSU 023922,000731: 34,2561 00045 36D 023923,000732: 34,2562 03735 STORE ALTI 023924,000733: 34,2563 77616 RVQ 023925,000734: 34,2564 31716 DELSTOR CA BOOSTEMP 023926,000735: # Page 547 023927,000736: 34,2565 00006 EXTEND # STORE DELTACDU INTO PDL 0,2,4 023928,000737: 34,2566 20154 MSU MPAC 023929,000738: 34,2567 50120 INDEX FIXLOC 023930,000739: 34,2570 54000 TS 0 023931,000740: 34,2571 31717 CA BOOSTEMP +1 023932,000741: 34,2572 00006 EXTEND 023933,000742: 34,2573 20155 MSU MPAC +1 023934,000743: 34,2574 50120 INDEX FIXLOC 023935,000744: 34,2575 54002 TS 2 023936,000745: 34,2576 31720 CA BOOSTEMP +2 023937,000746: 34,2577 00006 EXTEND 023938,000747: 34,2600 20156 MSU MPAC +2 023939,000748: 34,2601 50120 INDEX FIXLOC 023940,000749: 34,2602 54004 TS 4 023941,000750: 34,2603 16030 TCF DANZIG 023942,000751: 34,2604 30154 RLTST CA MPAC # DETERMINE IF ROLLOUT 023943,000752: 34,2605 00006 EXTEND # IS COMPLETED 023944,000753: 34,2606 71701 MP SATRLRT +1 023945,000754: 34,2607 00006 EXTEND 023946,000755: 34,2610 66030 BZMF DANZIG # UNLIKE SIGNS STILL ROLLING 023947,000756: 34,2611 00006 EXTEND # ROLLOUT COMPLETED 023948,000757: 34,2612 33672 DCA MBDYTCTL +2 # ZERO OUT ROLL CONTRIBUTION 023949,000758: 34,2613 52155 DXCH MPAC 023950,000759: 34,2614 06030 TC DANZIG 023951,000760: 34,2615 06006 NOPOLY TC INTPRET # COMES HERE IF 023952,000761: 34,2616 52001 SETPD GOTO # ATTITUDE HOLD 023953,000762: 34,2617 00001 0 023954,000763: 34,2620 76233 NOPOLYM 023955,000764: 34,2621 01673 COEFPOLY ADRES POLYLOC 023956,000765: 34,2622 01476 V06N62 VN 0662 023957,000766: 34,2623 00006 RESCALES EXTEND # RESCALE AK S FOR 023958,000767: 34,2624 71731 MP SATSCALE # NEW HARDWARE 023959,000768: 34,2625 20001 DDOUBL # SCALING FOR 023960,000769: 34,2626 20001 DDOUBL # STEERING 023961,000770: 34,2627 00002 TC Q # SATURN 023962,000771: 023963,000772: # SATURN TAKEOVER FUNCTION 023964,000773: # ************************ 023965,000774: # 023966,000775: # PROGRAM DESCRIPTION 023967,000776: 023968,000777: # MOD NUMBER 1 023969,000778: # MOD BY ELIASSEN 023970,000779: 023971,000780: # FUNCTIONAL DESCRIPTION 023972,000781: 023973,000782: # DURING THE COASTING PHASE OF SIVB ATTACHED, THE 023974,000783: # ASTRONAUT MAY REQUEST SATURN TAKEOVER THROUGH 023975,000784: # EXTENDED VERB 46 (BITS 13,14 OF DAPDATR1 SET ). 023976,000785: # THE CMC REGARDS RHC COMMANDS AS BODY-AXES RATE 023977,000786: # COMMANDS AND IT TRANSMITS THESE TO SATURN AS DC 023978,000787: # Page 548 023979,000788: # VOLTAGES. THE VALUE OF THE CONSTANT RATE COMMAND 023980,000789: # IS 0.5 DEG/SEC. AN ABSENCE OF RHC ACTIVITY RE- 023981,000790: # SULTS IN A ZERO RATE COMMAND. 023982,000791: 023983,000792: # THE FDAI ERROR NEEDLES WILL INDICATE THE VALUE 023984,000793: # OF THE RATE COMMAND. 023985,000794: 023986,000795: # CALLING SEQUENCE 023987,000796: 023988,000797: # DAPFIG +9D TC POSTJUMP 023989,000798: # CADR SATSTKON 023990,000799: 023991,000800: # SUBROUTINES CALLED 023992,000801: 023993,000802: # ENDEXT 023994,000803: # IBNKCALL 023995,000804: # STICKCHK 023996,000805: # NEEDLER 023997,000806: # T5RUPT 023998,000807: # RESUME 023999,000808: 024000,000809: # ASTRONAUT REQUESTS 024001,000810: 024002,000811: # ENTRY -- VERB 46 ENTER 024003,000812: # (CONDITION -- BITS 13, 14 OF DAPDATR1 SET) 024004,000813: 024005,000814: # EXIT -- VERB 48 ENTER (FLASH V06N46) 024006,000815: # VERB 21 ENTER AXXXX ENTER WHERE A=0 OR 1 024007,000816: # VERB 34 ENTER 024008,000817: # VERB 46 ENTER 024009,000818: 024010,000819: # NORMAL EXIT MODE 024011,000820: 024012,000821: # VERB 46 ENTER (SEE ASTRONAUT ABOVE) 024013,000822: 024014,000823: # ALARM OR ABORT EXIT MODES 024015,000824: 024016,000825: # NONE 024017,000826: 024018,000827: # OUTPUT 024019,000828: 024020,000829: # SATURN RATES IN CDUXCMD, CDUYCMD, CDUZCMD 024021,000830: 024022,000831: # ERASABLE INITIALIZATION 024023,000832: 024024,000833: # DAPDATR1 (BITS 13, 14 MUST BE SET) 024025,000834: 024026,000835: # DEBRIS 024027,000836: 024028,000837: # CENTRALS 024029,000838: # Page 549 024030,000839: # CDUXCMD, CDUYCMD, CDUZCMD 024031,000840: 024032,000841: 43,3215 BANK 43 024033,000842: 43,2000 SETLOC EXTVERBS 024034,000843: 43,2000 BANK 024035,000844: 024036,000845: 43,3215 COUNT 23/STTKE 024037,000846: 43,3215 00006 SATSTKON EXTEND 024038,000847: 43,3216 33233 DCA 2REDOSAT 024039,000848: 43,3217 00004 INHINT 024040,000849: 43,3220 53313 DXCH T5LOC 024041,000850: 43,3221 34777 CAF POSMAX 024042,000851: 43,3222 54030 TS TIME5 024043,000852: 43,3223 40102 CS FLAGWRD6 # TURN ON BITS 15,14 OF 024044,000853: 43,3224 74105 MASK RELTAB11 # FLAGWRD6 024045,000854: 43,3225 26102 ADS FLAGWRD6 # SATSTICK CONTROL OF T5 024046,000855: 43,3226 04740 TC IBNKCALL # ZERO JET CHANNELS IN 14 MS AND THEN 024047,000856: 43,3227 42632 CADR ZEROJET # LEAVE THE T6 CLOCK DISABLED 024048,000857: 43,3230 00003 RELINT 024049,000858: 43,3231 02121 TC GOPIN # EXIT THUS BECAUSE WE CAME VIA V46 024050,000859: 024051,000860: 43,3232 40,2000 SBANK= PINSUPER # Added RSB 2009 024052,000861: 43,3232 E6,1704 EBANK= BODY3 024053,000862: 43,3232 02765 46106 2REDOSAT 2CADR REDOSAT 024054,000863: 024055,000864: 024056,000865: 43,3234 30,2000 SBANK= LOWSUPER 024057,000866: 32,2017 BANK 32 024058,000867: 23,2000 SETLOC P11FOUR 024059,000868: 23,2000 BANK 024060,000869: 024061,000870: 23,2765 22016 REDOSAT LXCH BANKRUPT # ALSO COMES HERE FOR RESTARTS 024062,000871: 23,2766 00006 EXTEND 024063,000872: 23,2767 22012 QXCH QRUPT 024064,000873: 23,2770 41501 CS RCSFLAGS # TURN ON BIT3 OF RCSFLAGX 024065,000874: 23,2771 75015 MASK BIT3 # FOR 024066,000875: 23,2772 27501 ADS RCSFLAGS # NEEDLER INITIALIZATION 024067,000876: 23,2773 04740 TC IBNKCALL 024068,000877: 23,2774 42420 CADR NEEDLER # DISABLE IMU ERR COUNTERS ETC. 024069,000878: 23,2775 35007 CAF BIT9 # SIVB 024070,000879: 23,2776 00006 EXTEND # TAKEOVER 024071,000880: 23,2777 05012 WOR CHAN12 # ENABLE 024072,000881: 23,3000 00006 EXTEND # SET UP T5 CYCLE 024073,000882: 23,3001 33042 DCA 2SATSTCK 024074,000883: 23,3002 53313 DXCH T5LOC 024075,000884: 23,3003 33040 CAF 100MST5 # IN 100 MSECS 024076,000885: 23,3004 54030 TS TIME5 024077,000886: 23,3005 15333 TCF RESUME # END OF SATURN STICK INITIALIZATION 024078,000887: 024079,000888: # THIS SECTION IS EXECUTED EVERY 100 MSECS. 024080,000889: # Page 550 024081,000890: 23,3006 22016 SATSTICK LXCH BANKRUPT 024082,000891: 23,3007 00006 EXTEND 024083,000892: 23,3010 22012 QXCH QRUPT 024084,000893: 024085,000894: 23,3011 33041 CAF 2SATSTCK # SET UP RUPT 024086,000895: 23,3012 55312 TS T5LOC # LO ORDER LOC SET 024087,000896: 23,3013 33040 CAF 100MST5 # 100 MSECS 024088,000897: 23,3014 54030 TS TIME5 024089,000898: 23,3015 33037 CAF STIKBITS 024090,000899: 23,3016 00006 EXTEND 024091,000900: 23,3017 06031 RXOR CHAN31 # CHECK IF MAN ROT BITS SAME 024092,000901: 23,3020 73037 MASK STIKBITS 024093,000902: 23,3021 04740 TC IBNKCALL # SET RATE INDICES 024094,000903: 23,3022 43130 CADR STICKCHK # FOR PITCH YAW AND ROLL 024095,000904: 024096,000905: 23,3023 51656 INDEX RMANNDX # SET SATURN RATES 024097,000906: 23,3024 31721 CA SATRATE 024098,000907: 23,3025 55476 TS AK # ROLL 024099,000908: 23,3026 51657 INDEX PMANNDX 024100,000909: 23,3027 31721 CA SATRATE 024101,000910: 23,3030 55477 TS AK1 # PITCH 024102,000911: 23,3031 51660 INDEX YMANNDX 024103,000912: 23,3032 31721 CA SATRATE 024104,000913: 23,3033 55500 TS AK2 # YAW 024105,000914: 024106,000915: 23,3034 04740 TC IBNKCALL # FOR SATURN INTERFACE AND FDAI DISPLAY 024107,000916: 23,3035 42420 CADR NEEDLER 024108,000917: 23,3036 15333 TCF RESUME # END OF SATURN STICK CONTROL 024109,000918: 024110,000919: 23,3037 00077 STIKBITS OCT 00077 024111,000920: 23,3040 37766 100MST5 DEC 16374 B-14 024112,000921: 23,3041 E6,1704 EBANK= BODY3 024113,000922: 23,3041 03006 46066 2SATSTCK 2CADR SATSTICK End of include-file P11.agc. Parent file is MAIN.agc