Source Code

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