Source Code
These source-code files were obtained by digitally photographing
a Solarium 55 (Apollo 6) program listing from the American Computer Museum in
Bozeman, Montana. Photography was by Ron Burkey, with assistance from
museum curator George Keremedjiev and Montana
State University curator Kim Scott. The listing originally belonged to Eldon C. Hall,
who donated it to the museum. Volunteers then manually typed in the
source code or else modified similar pre-existing Colossus 249
(Apollo 9) source files to incorporate changes, although this transcription was
principally done by Jim Lawton and corrected by Ron Burkey.
Notations on the program listing read, in part:YUL SYSTEM FOR AGC4: REVISION 0 OF PROGRAM SOLRUM55 BY NASA 1021108-021 DEC. 4, 1966Note that the date is the date of the printout, not the date of the program revision. Due to statements by Jay Sampson, the original contractor from AC Electronics who created Solarium 54 (Apollo 4) from the earlier Corona (AS-202 mission) program, it is believed that Solarium 54 and Solarium 55 (Apollo 6) are actually identical programs. The change in numbering, from 54 to 55, is believed to be for some administrative purpose. Thus, it is believed that the source-code represented here is equally appropriate for both Apollo 4 and Apollo 6 missions. |
017327,000002: ## Copyright: Public domain.
017328,000003: ## Filename: INFLIGHT_ALIGNMENT_SUBROUTINES.agc
017329,000004: ## Purpose: Part of the source code for Solarium build 55. This
017330,000005: ## is for the Command Module's (CM) Apollo Guidance
017331,000006: ## Computer (AGC), for Apollo 6.
017332,000007: ## Assembler: yaYUL --block1
017333,000008: ## Contact: Jim Lawton <jim DOT lawton AT gmail DOT com>
017334,000009: ## Website: www.ibiblio.org/apollo/index.html
017335,000010: ## Page Scans: www.ibiblio.org/apollo/ScansForConversion/Solarium055/
017336,000011: ## Mod history: 2009-10-04 JL Created.
017337,000012: ## 2016-12-28 RSB Proofed comment text using octopus/ProoferComments,
017338,000013: ## and fixed errors found.
017339,000014:
Page 461 |
017341,000016:
017342,000017: # CALGTA GIVEN THE DESIRED XD,YD AND ZD UNIT VECTORS REFERED TO
017343,000018: # -------- PRESENT STABLE MEMBER ORIENTATION, THIS SUBROUTINE FINDS
017344,000019: # THETAY, THETAZ, AND THETAX, THE REQUIRED GYRO TORQUE
017345,000020: # ANGLES IN THE ORDER TO BE APPLIED TO BRING THE STABLE
017346,000021: # MEMBER INTO THE DESIRED ORIENTATION.
017347,000022:
017348,000023:
017349,000024:
017350,000025: 22,6352 BANK 22
017351,000026: 22,6352 45575 CALCGTA ITA 1 # DEFINE THE VECTOR ZPRIME WHICH IS THE
017352,000027: 22,6353 45176 DMOVE
017353,000028: 22,6354 00052 S2 # IMAGE OF Z UNDER THE ROTATION ABOUT Y
017354,000029: 22,6355 01477 XDSMPR
017355,000030:
017356,000031: 22,6356 45176 DMOVE 0 # ZPRIME =(-XD ,0 , XD )
017357,000032: 22,6357 05174 ZERODP # 2 0
017358,000033:
017359,000034: 22,6360 47175 COMP 1
017360,000035: 22,6361 41153 VDEF UNIT
017361,000036: 22,6362 01503 XDSMPR +4
017362,000037: 22,6363 32027 STORE ZPRIME
017363,000038:
017364,000039: 22,6364 56776 TSRT 0 # SET UP COSTH AND SINTH TO ENTER
017365,000040: 22,6365 00027 ZPRIME # ARCTRIG FOR COMPUTATION OF THETA-Y
017366,000041: 22,6366 00002 1
017367,000042: 22,6367 32023 STORE SINTH
017368,000043:
017369,000044: 22,6370 56776 TSRT 0
017370,000045: 22,6371 00033 ZPRIME +4D
017371,000046: 22,6372 00002 1
017372,000047: 22,6373 32021 STORE COSTH
017373,000048:
017374,000049: 22,6374 76776 ITC 0
017375,000050: 22,6375 04437 ARCTRIG
017376,000051:
017377,000052: 22,6376 47576 NOLOD 0
017378,000053: 22,6377 33523 STORE IGC
017379,000054:
017380,000055: 22,6400 56776 TSRT 0
017381,000056: 22,6401 01501 XDSMPR +2
017382,000057: 22,6402 00002 1
017383,000058: 22,6403 32023 STORE SINTH
017384,000059:
017385,000060: 22,6404 64776 DMP 0
017386,000061: 22,6405 00027 ZPRIME
017387,000062: 22,6406 01503 XDSMPR +4
017388,000063:
017389,000064: 22,6407 64775 DMP 1
017390,000065: 22,6410 66776 DSU
017391,000066: 22,6411 00033 ZPRIME +4
Page 462 |
017393,000068: 22,6412 01477 XDSMPR
017394,000069: 22,6413 32021 STORE COSTH
017395,000070:
017396,000071: 22,6414 76776 ITC 0
017397,000072: 22,6415 04437 ARCTRIG
017398,000073:
017399,000074: 22,6416 47576 NOLOD 0
017400,000075: 22,6417 33525 STORE MGC
017401,000076:
017402,000077: 22,6420 42776 DOT 0
017403,000078: 22,6421 00027 ZPRIME
017404,000079: 22,6422 01513 ZDSMPR
017405,000080: 22,6423 32021 STORE COSTH
017406,000081:
017407,000082: 22,6424 42776 DOT 0
017408,000083: 22,6425 00027 ZPRIME
017409,000084: 22,6426 01505 YDSMPR
017410,000085: 22,6427 32023 STORE SINTH
017411,000086:
017412,000087: 22,6430 76776 ITC 0
017413,000088: 22,6431 04437 ARCTRIG
017414,000089:
017415,000090: 22,6432 47576 NOLOD 0
017416,000091: 22,6433 33521 STORE OGC
017417,000092:
017418,000093: 22,6434 44576 ITCI 0
017419,000094: 22,6435 00052 S2
017420,000095:
Page 463 |
017422,000097:
017423,000098: 22,6436 65175 ARCTRIG ABS 1 # GIVEN SINTH AND COSTH SCALED X1/4 FIND
017424,000099: 22,6437 66756 DSU BMN # THETA IN THE RANGE -PI TO +PI SCALED-
017425,000100: 22,6440 00023 SINTH # TEMPORARY FOR SINTH XPI/2
017426,000101: 22,6441 05170 QTSN45 # CONSTANT=0.1768
017427,000102: 22,6442 04453 TRIG1
017428,000103:
017429,000104: 22,6443 63775 TSLT 1
017430,000105: 22,6444 61056 ACOS SIGN
017431,000106: 22,6445 00021 COSTH # TEMPORARY FOR COSTH
017432,000107: 22,6446 00002 1
017433,000108: 22,6447 00023 SINTH # TEMPORARY FOR SINTH
017434,000109: 22,6450 32025 STORE THETA
017435,000110:
017436,000111: 22,6451 40576 ITCQ 0 # RETURN TO MAIN PROGRAM
017437,000112:
017438,000113: 22,6452 63775 TRIG1 TSLT 1 # SINTH LESS THAN QTSN45
017439,000114: 22,6453 63176 ASIN
017440,000115: 22,6454 00023 SINTH # TEMPORARY FOR SINTH
017441,000116: 22,6455 00002 1
017442,000117: 22,6456 32025 STORE THETA
017443,000118:
017444,000119: 22,6457 73776 BMN 0
017445,000120: 22,6460 00021 COSTH
017446,000121: 22,6461 04466 TRIG2
017447,000122:
017448,000123: 22,6462 45175 DMOVE 1
017449,000124: 22,6463 40576 ITCQ
017450,000125: 22,6464 00025 THETA
017451,000126: 22,6465 53775 TRIG2 SIGN 1 # COSTH NEGATIVE
017452,000127: 22,6466 66776 DSU
017453,000128: 22,6467 05200 HALFDP
017454,000129: 22,6470 00023 SINTH # WITH ASIN
017455,000130: 22,6471 00025 THETA
017456,000131: 22,6472 32025 STORE THETA
017457,000132:
017458,000133: 22,6473 40576 ITCQ 0 # RETURN
017459,000134:
Page 464 |
017461,000136:
017462,000137: # THIS PROGRAM COMPUTES SXT ANGLES SAC AND
017463,000138: # PAC IN HALF AND EIGHT REVOLUTIONS RESPEC
017464,000139: # GO IN WITH S1=BASE ADDRESS OF CDU;S
017465,000140:
017466,000141: 22,6474 45575 SMNB ITA 1 # CHECK THAT NBSMBIT IS OFF,IF IT ISGO TO
017467,000142: 22,6475 43411 TEST SWITCH # NBSM1,OTHERWISE SWITCH IT OFF
017468,000143: 22,6476 00052 S2
017469,000144: 22,6477 00006 NBSMBIT
017470,000145: 22,6500 04503 SMNB1
017471,000146: 22,6501 00006 NBSMBIT
017472,000147:
017473,000148: 22,6502 75575 SMNB1 AXT,1 1 # NBSMBIT IS OFF
017474,000149: 22,6503 74572 AXT,2 ITC # SET INDECES TO ROTATE X,Z ABOUT Y
017475,000150: 22,6504 00005 4
017476,000151: 22,6505 00001 0
017477,000152: 22,6506 04556 AXISROT # DO AXIS ROTATION
017478,000153:
017479,000154: 22,6507 75575 AXT,1 1 # SET INDECES TO ROTATE Y,X ABOUT Z
017480,000155: 22,6510 74572 AXT,2 ITC
017481,000156: 22,6511 00003 2
017482,000157: 22,6512 00005 4
017483,000158: 22,6513 04556 AXISROT # DO AXIS ROTATION
017484,000159:
017485,000160: 22,6514 75575 AXT,1 1 # SET INDECES TO ROTATE Z,Y ABOUT X
017486,000161: 22,6515 74572 AXT,2 ITC
017487,000162: 22,6516 00001 0
017488,000163: 22,6517 00003 2
017489,000164: 22,6520 04556 AXISROT # DO AXIS ROTATION
017490,000165:
017491,000166: 22,6521 44576 ITCI 0 # RETURN
017492,000167: 22,6522 00052 S2
017493,000168:
Page 465 |
017495,000170:
017496,000171: 22,6523 45575 NBSM ITA 1 # CHECK THAT NBSMBIT IS ON,IF IT IS NOT GO
017497,000172: 22,6524 43576 TEST # TO NBSM1 AND SWITCH IT ON
017498,000173: 22,6525 00052 S2
017499,000174: 22,6526 00006 NBSMBIT
017500,000175: 22,6527 04552 NBSM1
017501,000176:
017502,000177: 22,6530 75575 NBSM2 AXT,1 1 # ROTATE Z,Y ABOUT X
017503,000178: 22,6531 74572 AXT,2 ITC
017504,000179: 22,6532 00001 0
017505,000180: 22,6533 00003 2
017506,000181: 22,6534 04556 AXISROT
017507,000182:
017508,000183: 22,6535 75575 AXT,1 1 # ROTATE Y,X ABOUT Z
017509,000184: 22,6536 74572 AXT,2 ITC
017510,000185: 22,6537 00003 2
017511,000186: 22,6540 00005 4
017512,000187: 22,6541 04556 AXISROT
017513,000188:
017514,000189: 22,6542 75575 AXT,1 1 # ROTATE X,Z ABOUT Y
017515,000190: 22,6543 74572 AXT,2 ITC
017516,000191: 22,6544 00005 4
017517,000192: 22,6545 00001 0
017518,000193: 22,6546 04556 AXISROT
017519,000194:
017520,000195: 22,6547 44576 ITCI 0 # RETURN
017521,000196: 22,6550 00052 S2
017522,000197:
017523,000198: 22,6551 42575 NBSM1 SWITCH 1
017524,000199: 22,6552 76776 ITC
017525,000200: 22,6553 00006 NBSMBIT
017526,000201: 22,6554 04531 NBSM2
017527,000202:
Page 466 |
017529,000204:
017530,000205: 22,6555 57574 AXISROT XSU,1 2 # ROUTINE FOR SINGLE AXIS ROTATIONS
017531,000206: 22,6556 42171 SMOVE* RTB
017532,000207: 22,6557 61576 XAD,1 # REMARKS ARE FOR ROTATING Z,Y ABOUT X
017533,000208: 22,6560 00051 S1
017534,000209: 22,6561 00011 4,1 # INDEX1=0,INDEX2=2
017535,000210: 22,6562 20304 CDULOGIC # ANGLES ARE STORED IN THE ORDER IGA,MGA,
017536,000211: 22,6563 00051 S1
017537,000212: 22,6564 32037 STORE 30D # OGA,SO WE PICK UP OGZ
017538,000213:
017539,000214: 22,6565 55176 ACCUROT COS 0
017540,000215: 22,6566 00037 30D
017541,000216: 22,6567 34021 STORE 8D,1 # STORE COS(OGA) IN 8
017542,000217:
017543,000218: 22,6570 57176 SIN 0
017544,000219: 22,6571 00037 30D
017545,000220: 22,6572 34025 STORE 10D,1 # STORE SIN(OGA) IN 10D
017546,000221:
017547,000222: 22,6573 64375 DMP* 1
017548,000223: 22,6574 63776 TSLT
017549,000224: 22,6575 00025 10D,1
017550,000225: 22,6576 00112 VAC +4,2 # PUSH DOWN (VAC +2)SIN(OGA)
017551,000226: 22,6577 00002 1
017552,000227:
017553,000228: 22,6600 64375 DMP* 1
017554,000229: 22,6601 63776 TSLT
017555,000230: 22,6602 00021 8D,1
017556,000231: 22,6603 00112 VAC +4,2 # PUSH DOWN (VAC +2)COS(OGA)
017557,000232: 22,6604 00002 1
017558,000233:
017559,000234: 22,6605 64374 DMP* 2
017560,000235: 22,6606 63615 TSLT TEST
017561,000236: 22,6607 65776 BDSU
017562,000237: 22,6610 00025 10D,1
017563,000238: 22,6611 00111 VAC +4,1
017564,000239: 22,6612 00002 1
017565,000240: 22,6613 00006 NBSMBIT
017566,000241: 22,6614 04630 AXISROT1
017567,000242: 22,6615 34112 STORE VAC +4,2 # VAC+2=(VAC+2)COS(OGA)-(VAC+4)SIN(OGA)
017568,000243:
017569,000244: 22,6616 64375 DMP* 1
017570,000245: 22,6617 63742 TSLT DAD
017571,000246: 22,6620 00021 8D,1
017572,000247: 22,6621 00111 VAC +4,1
017573,000248: 22,6622 00002 1
017574,000249: 22,6623 34111 STORE VAC +4,1 # VAC+4=(VAC+2)SIN(OGA)+(VAC+4)COS(OGA)
017575,000250:
017576,000251: 22,6624 75175 VMOVE 1
017577,000252: 22,6625 40576 ITCQ
017578,000253: 22,6626 00041 VAC
Page 467 |
017580,000255:
017581,000256: 22,6627 47575 AXISROT1 NOLOD 1 # TEST WAS 0 FOR SMNB
017582,000257: 22,6630 70776 DAD
017583,000258: 22,6631 34112 STORE VAC +4,2 # VAC+2=(VAC+2)COS(OGA)+(VAC+4)SIN(OGA)
017584,000259:
017585,000260: 22,6632 64375 DMP* 1
017586,000261: 22,6633 63732 TSLT DSU
017587,000262: 22,6634 00021 8D,1
017588,000263: 22,6635 00111 VAC +4,1
017589,000264: 22,6636 00002 1
017590,000265: 22,6637 34111 STORE VAC +4,1 # VAC+4=-(VAC+2)SIN(OGA)+(VAC+4)COS(OGA)
017591,000266:
017592,000267: 22,6640 75175 VMOVE 1
017593,000268: 22,6641 40576 ITCQ
017594,000269: 22,6642 00041 VAC
017595,000270:
Page 468 |
017597,000272:
017598,000273: 22,6643 41775 CALCGA VXV 1 # CALCULATE GIMBAL ANGLES GIVEN THE X,Y,Z-
017599,000274: 22,6644 73176 UNIT
017600,000275: 22,6645 01477 XNB
017601,000276: 22,6646 01433 YSM
017602,000277:
017603,000278: 22,6647 47575 NOLOD 1
017604,000279: 22,6650 42625 DOT ITA
017605,000280: 22,6651 01513 ZNB
017606,000281: 22,6652 00052 S2
017607,000282: 22,6653 32021 STORE COSTH # TEMPORARY FOR COSTH
017608,000283:
017609,000284: 22,6654 47575 NOLOD 1
017610,000285: 22,6655 42776 DOT
017611,000286: 22,6656 01505 YNB
017612,000287: 22,6657 32023 STORE SINTH
017613,000288:
017614,000289: 22,6660 76776 ITC 0
017615,000290: 22,6661 04437 ARCTRIG
017616,000291:
017617,000292: 22,6662 47576 NOLOD 0
017618,000293: 22,6663 33521 STORE OGC
017619,000294:
017620,000295: 22,6664 42774 DOT 2
017621,000296: 22,6665 63746 TSLT BOV
017622,000297: 22,6666 56713 TSRT ASIN
017623,000298: 22,6667 01433 YSM
017624,000299: 22,6670 01477 XNB
017625,000300: 22,6671 00003 2
017626,000301: 22,6672 04725 GIMLOCK1 # LOOK FOR EXCESSIVE MGC
017627,000302: 22,6673 00002 1
017628,000303: 22,6674 33525 STORE MGC
017629,000304:
017630,000305: 22,6675 65175 ABS 1
017631,000306: 22,6676 66616 DSU BPL
017632,000307: 22,6677 01525 MGC
017633,000308: 22,6700 05202 .333...
017634,000309: 22,6701 04725 GIMLOCK1
017635,000310:
017636,000311: 22,6702 42776 CALCGA1 DOT 0
017637,000312: 22,6703 01441 ZSM
017638,000313: 22,6704 00001 0 # CONTAINS AMG
017639,000314: 22,6705 32021 STORE COSTH
017640,000315:
017641,000316: 22,6706 42776 DOT 0
017642,000317: 22,6707 01425 XSM
017643,000318: 22,6710 32023 STORE SINTH
017644,000319:
017645,000320: 22,6711 76776 ITC 0
017646,000321: 22,6712 04437 ARCTRIG
Page 469 |
017648,000323: 22,6713 47576 NOLOD 0
017649,000324: 22,6714 33523 STORE IGC
017650,000325:
017651,000326: 22,6715 75175 VMOVE 1 # OP COUNT BY UNEEDA DEBUGGING SERVICE INC
017652,000327: 22,6716 76576 RTB
017653,000328: 22,6717 01521 OGC
017654,000329: 22,6720 20624 V1STO2S
017655,000330: 22,6721 32701 STORE THETAD # *** BEWARE *** MODE IS NOW DP ***
017656,000331:
017657,000332: 22,6722 44576 ITCI 0
017658,000333: 22,6723 00052 S2
017659,000334:
017660,000335: 22,6724 77576 GIMLOCK1 EXIT 0
017661,000336:
017662,000337: 22,6725 03007 TC ALARM
017663,000338: 22,6726 00401 OCT 00401
017664,000339: 22,6727 04000 TC INTPRET # RESUME ROUTINE.
017665,000340:
017666,000341: 22,6730 76776 ITC 0
017667,000342: 22,6731 04703 CALCGA1
017668,000343:
Page 470 |
017670,000345:
017671,000346: 22,6732 42175 SXTNB SMOVE* 1 # THIS PROGRAM COMPUTES COMPONENTS OF
017672,000347: 22,6733 76571 RTB RTB # THE STAR HALF UNIT VECTOR,STARM, GIVEN
017673,000348: 22,6734 00013 5,1 # THE MEASURED SXT ANGLES PAM AND SAM.
017674,000349: 22,6735 20304 CDULOGIC
017675,000350: 22,6736 20407 TRUNLOG
017676,000351:
017677,000352: 22,6737 47575 NOLOD 1
017678,000353: 22,6740 57116 SIN TSLT
017679,000354: 22,6741 00002 1 # STORE A=SIN(PAM.PI/4)
017680,000355:
017681,000356: 22,6742 42175 SMOVE* 1
017682,000357: 22,6743 76576 RTB
017683,000358: 22,6744 00007 3,1
017684,000359: 22,6745 20304 CDULOGIC # STORE SAM/2 IN PD 4,RESOLVES +/- ZERO
017685,000360:
017686,000361: 22,6746 47575 NOLOD 1
017687,000362: 22,6747 55122 COS DMP
017688,000363: 22,6750 00003 2
017689,000364: 22,6751 32041 STORE STARM # STARM +0=(A.COS(PI.SAM))/2
017690,000365:
017691,000366: 22,6752 57175 SIN 1 # SIN(2PI.PD4).PD2
017692,000367: 22,6753 64776 DMP
017693,000368: 22,6754 32043 STORE STARM +2 # STARM +2=(A.SIN(PI.SAM))/2
017694,000369:
017695,000370: 22,6755 55176 COS 0
017696,000371: 22,6756 32045 STORE STARM +4 # STARM +4=0.5.COS(PAM.PI/4)
017697,000372:
017698,000373: 22,6757 40576 ITCQ 0
017699,000374:
Page 471 |
017701,000376:
017702,000377: # AXISGEN GIVEN TWO STAR VECTORS - -
017703,000378: # ------- STARA AND STARB WRITTEN IN TWO
017704,000379: # COORDINATE SYSTEMS, THE D AND C SYSTEMS SO THAT WE
017705,000380: # HAVE - - - -
017706,000381: # STARA STARB AND STARB , STARA
017707,000382: # D D C C
017708,000383: # THIS PROGRAM COMPUTES THE HALF UNIT AXES
017709,000384: # - - -
017710,000385: # XD YD ZD
017711,000386: # C C C
017712,000387: # THAT IS THE D COORDINATE SYSTEM AXES REFERRED TO THE C
017713,000388: # COORDINATE SYSTEM
017714,000389: # THE INPUTS ARE STORED AS FOLLOWS
017715,000390: # -
017716,000391: # C(STARAD) - C(STARAD +5) = STARA
017717,000392: # D
017718,000393: # -
017719,000394: # C(STARAD+6)-C(STARAD+11D)= STARB
017720,000395: # D
017721,000396: # -
017722,000397: # C(6D) - C(11D) = STARA
017723,000398: # C
017724,000399: # -
017725,000400: # C(12D) - C(17D) = STARB
017726,000401: # C
017727,000402: # RESULTS ARE LEFT IN XDC TO XDC +17D
017728,000403: # THE RETUTINE DESTROYS THE INPUTS AND USES LOCATIONS
017729,000404: # STARAD+12D TO STARAD+17D AND 18D - 23D +30D
017730,000405: 22,6760 75575 AXISGEN AXT,1 1
017731,000406: 22,6761 55576 AST,1
017732,000407: 22,6762 01411 STARAD +6
017733,000408: 22,6763 01375 STARAD -6
017734,000409: 22,6764 41375 AXISGEN1 VXV* 1
017735,000410: 22,6765 73176 UNIT
017736,000411: 22,6766 03035 STARAD +12D,1
017737,000412: 22,6767 03051 STARAD +18D,1
017738,000413: 22,6770 37051 STORE STARAD +18D,1
017739,000414:
017740,000415: 22,6771 41375 VXV* 1
017741,000416: 22,6772 44776 VSLT
017742,000417: 22,6773 03035 STARAD +12D,1
017743,000418: 22,6774 03051 STARAD +18D,1
017744,000419: 22,6775 00002 1
017745,000420: 22,6776 37065 STORE STARAD +24D,1
017746,000421:
017747,000422: 22,6777 51576 TIX,1 0
017748,000423: 22,7000 04765 AXISGEN1
017749,000424:
017750,000425: 22,7001 53573 AXC,1 3
017751,000426: 22,7002 67565 SXA,1 AXT,1
Page 472 |
017753,000428: 22,7003 55561 AST,1 AXT,2
017754,000429: 22,7004 54576 AST,2
017755,000430: 22,7005 00007 6
017756,000431: 22,7006 00037 30D
017757,000432: 22,7007 00023 18D
017758,000433: 22,7010 00007 6
017759,000434: 22,7011 00007 6
017760,000435: 22,7012 00003 2
017761,000436:
017762,000437: 22,7013 65576 AXISGEN2 XCHX,1 0
017763,000438: 22,7014 00037 30D
017764,000439:
017765,000440: 22,7015 75376 VXSC* 0
017766,000441: 22,7016 00001 0,1
017767,000442: 22,7017 03022 STARAD +6,2
017768,000443:
017769,000444: 22,7020 75376 VXSC* 0
017770,000445: 22,7021 00015 6,1
017771,000446: 22,7022 03036 STARAD +12D,2
017772,000447: 22,7023 32031 STORE 24D
017773,000448:
017774,000449: 22,7024 75374 VXSC* 2
017775,000450: 22,7025 50642 VAD VAD
017776,000451: 22,7026 44725 VSLT XCHX,1
017777,000452: 22,7027 00031 12D,1
017778,000453: 22,7030 03052 STARAD +18D,2
017779,000454: 22,7031 77777 -
017780,000455: 22,7032 00031 24D
017781,000456: 22,7033 00002 1
017782,000457: 22,7034 00037 30D
017783,000458: 22,7035 37241 STORE XDC +18D,1
017784,000459:
017785,000460: 22,7036 51576 TIX,1 0
017786,000461: 22,7037 05041 AXISGEN3
017787,000462:
017788,000463: 22,7040 50576 AXISGEN3 TIX,2 0
017789,000464: 22,7041 05014 AXISGEN2
017790,000465:
017791,000466: 22,7042 40576 ITCQ 0
017792,000467:
Page 473 |
017794,000469:
017795,000470: 22,7043 75175 CALCSXA VMOVE 1 # THIS PROGRAM COMPUTES THE SXT ANGLES SAC
017796,000471: 22,7044 45572 ITA ITC # AND PAC GIVEN THE STAR VECTOR IN SM AXES
017797,000472: 22,7045 01417 STAR
017798,000473: 22,7046 00052 S2 # HALF UNIT VECTOR
017799,000474: 22,7047 04475 SMNB
017800,000475:
017801,000476: 22,7050 47576 NOLOD 0
017802,000477: 22,7051 32007 STORE 6 # STORE (STARM0,STARM1,STARM2)
017803,000478:
017804,000479: 22,7052 45176 DMOVE 0
017805,000480: 22,7053 05174 ZERODP
017806,000481: 22,7054 32045 STORE VAC +4 # SET VAC TO (STARM0,STARM1,0)
017807,000482:
017808,000483: 22,7055 47575 NOLOD 1 # UNIT VAC TO (S0,S1,0)
017809,000484: 22,7056 73072 UNIT TSRT
017810,000485: 22,7057 00003 2
017811,000486: 22,7060 32001 STORE 0 # STORE COS/4 =S0/4 , SIN/4 = S1/4 ,0
017812,000487:
017813,000488: 22,7061 45176 DMOVE 0
017814,000489: 22,7062 00001 0
017815,000490: 22,7063 00021 COSTH
017816,000491:
017817,000492: 22,7064 45176 DMOVE 0
017818,000493: 22,7065 00003 2
017819,000494: 22,7066 00023 SINTH
017820,000495:
017821,000496: 22,7067 76776 ITC 0
017822,000497: 22,7070 04437 ARCTRIG # USES THE COS/SIN STORED ABOVE
017823,000498:
017824,000499: 22,7071 76576 RTB 0
017825,000500: 22,7072 20325 1STO2S
017826,000501: 22,7073 33521 STORE SAC
017827,000502:
017828,000503: 22,7074 42773 DOT 3
017829,000504: 22,7075 63713 TSLT ASIN
017830,000505: 22,7076 63746 TSLT BOV
017831,000506: 22,7077 73771 BMN RTB
017832,000507: 22,7100 00001 0 # 1/4 UNIT (STARM0,STARM1,0)
017833,000508: 22,7101 00007 6 # STARM-1/2 UNIT VECTOR
017834,000509: 22,7102 00004 3
017835,000510: 22,7103 00004 3
017836,000511: 22,7104 05113 CALCSXA1
017837,000512: 22,7105 05113 CALCSXA1
017838,000513: 22,7106 20325 1STO2S
017839,000514: 22,7107 33523 STORE PAC
017840,000515:
017841,000516: 22,7110 44576 ITCI 0
017842,000517: 22,7111 00052 S2
017843,000518:
017844,000519: 22,7112 77576 CALCSXA1 EXIT 0 # PROGRAM ERROR,STAR OUT OF FIELD OF VIEW
Page 474 |
017846,000521: 22,7113 03007 TC ALARM
017847,000522: 22,7114 00402 OCT 00402
017848,000523: 22,7115 02124 TC ENDOFJOB
017849,000524:
Page 475 |
017851,000526:
017852,000527: 22,7116 41775 SXTANG VXV 1 # TIVELY FROM INPUTS STAR AND XNB,YNB,ZNB
017853,000528: 22,7117 73026 UNIT VSRT # THE HALF UNIT STAR VECTOR AND THE NAV
017854,000529: 22,7120 01513 ZNB # BASE HALF AXES.
017855,000530: 22,7121 01417 STAR
017856,000531: 22,7122 00002 1
017857,000532: 22,7123 32027 STORE PDA # DEFINES PROJECTION OF STAR IN XY PLANE
017858,000533:
017859,000534: 22,7124 42775 DOT 1
017860,000535: 22,7125 47025 COMP ITA # COMPUTE SIN(PI.SAC)/4
017861,000536: 22,7126 00027 PDA
017862,000537: 22,7127 01477 XNB
017863,000538: 22,7130 00052 S2
017864,000539: 22,7131 32023 STORE SINTH
017865,000540:
017866,000541: 22,7132 42776 DOT 0 # COMPUTE COS(PI.SAC)/4
017867,000542: 22,7133 00027 PDA
017868,000543: 22,7134 01505 YNB
017869,000544: 22,7135 32021 STORE COSTH
017870,000545:
017871,000546: 22,7136 76776 ITC 0 # COMPUTE SAC
017872,000547: 22,7137 04437 ARCTRIG
017873,000548:
017874,000549: 22,7140 76576 RTB 0
017875,000550: 22,7141 20325 1STO2S
017876,000551: 22,7142 33521 STORE SAC
017877,000552:
017878,000553: 22,7143 41772 VXV 4
017879,000554: 22,7144 42716 DOT TSLT
017880,000555: 22,7145 63116 ASIN TSLT # COMPUTE PAC
017881,000556: 22,7146 71756 BOV BMN
017882,000557: 22,7147 76576 RTB
017883,000558: 22,7150 00027 PDA
017884,000559: 22,7151 01513 ZNB
017885,000560: 22,7152 01417 STAR
017886,000561: 22,7153 00003 2
017887,000562: 22,7154 00004 3
017888,000563: 22,7155 05164 SXTALARM
017889,000564: 22,7156 05164 SXTALARM # WE NOW HAVE PRECISION ANGLE
017890,000565: 22,7157 20325 1STO2S
017891,000566: 22,7160 33523 STORE PAC
017892,000567:
017893,000568: 22,7161 44576 ITCI 0 # JOB IS DONE
017894,000569: 22,7162 00052 S2
017895,000570:
017896,000571: 22,7163 77576 SXTALARM EXIT 0 # BRANCH TO RESTART SEQUENCE
017897,000572:
017898,000573: 22,7164 03007 TC ALARM
017899,000574: 22,7165 00403 OCT 00403
017900,000575: 22,7166 02124 TC ENDOFJOB
017901,000576:
Page 476 |
017903,000578:
017904,000579: 22,7167 05520 26075 QTSN45 2DEC .1768
017905,000580: 22,7171 05260 04061 THIRD 2DEC .167
017906,000581: 22,7173 ZPRIME = 22D
017907,000582: 22,7173 PDA = 22D
017908,000583: 22,7173 COSTH = 16D
017909,000584: 22,7173 SINTH = 18D
017910,000585: 22,7173 THETA = 20D
017911,000586: 22,7173 0000040 STARM = VAC
017912,000587: 22,7173 00000 00000 ZERODP 2DEC 0 B-28
017913,000588: 22,7175 37777 POSMAXDP OCT 37777
017914,000589: 22,7176 37777 OCT 37777
017915,000590: 22,7177 20000 00000 HALFDP 2DEC .5
017916,000591: 22,7201 12525 12525 .333... 2DEC .3333333333
End of include-file INFLIGHT_ALIGNMENT_SUBROUTINES.agc. Parent file is MAIN.agc