Source Code

These source-code files were derived originally from the scan from MIT's Dibner Institute's now-discontinued website titled "History of Recent Science and Technology", which in turn was originally created by Gary Neff, though his high-quality scans were unfortunately reduced in legibility when presented online. The markings on the front of the printout imply that it was the original AGC developer Norm Brodeur's copy. A scan by Ron Burkey has superceded it, made from a more-legible copy from the collection of original AGC developer Fred Martin. The source code was transcribed from those images by Ron Burkey. Note that the page images presented online are of reduced quality, and that higher-quality images are available. Report any conversion errors or legibility problems in page images to info@sandroid.org. Notations on the program listing read, in part:

	ASSEMBLE REVISION 249 OF AGC PROGRAM COLOSSUS BY NASA 2021111-041
	20'35 OCT. 28,1968
Note that the date is the date of the printout, not the date of the program revision.

016628,000002:                                                                                                  ## Copyright:   Public domain.
016629,000003:                                                                                                  ## Filename:    R60_62.agc
016630,000004:                                                                                                  ## Purpose:     Part of the source code for Colossus, build 249.
016631,000005:                                                                                                  ##              It is part of the source code for the Command Module's (CM)
016632,000006:                                                                                                  ##              Apollo Guidance Computer (AGC), possibly for Apollo 8 and 9.
016633,000007:                                                                                                  ## Assembler:   yaYUL
016634,000008:                                                                                                  ## Reference:   pp. 385-393 of 1701.pdf.
016635,000009:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
016636,000010:                                                                                                  ## Website:     www.ibiblio.org/apollo.
016637,000011:                                                                                                  ## Mod history: 08/10/04 RSB.   Began adapting from corresponding Luminary131
016638,000012:                                                                                                  ##                              source file.
016639,000013:                                                                                                  ##
016640,000014:                                                                                                  ## The contents of the "Colossus249" files, in general, are transcribed 
016641,000015:                                                                                                  ## from a scanned document obtained from MIT's website,
016642,000016:                                                                                                  ## http://hrst.mit.edu/hrs/apollo/public/archive/1701.pdf.  Notations on this
016643,000017:                                                                                                  ## document read, in part:
016644,000018:                                                                                                  ##
016645,000019:                                                                                                  ##      Assemble revision 249 of AGC program Colossus by NASA
016646,000020:                                                                                                  ##      2021111-041.  October 28, 1968.  
016647,000021:                                                                                                  ##
016648,000022:                                                                                                  ##      This AGC program shall also be referred to as
016649,000023:                                                                                                  ##                              Colossus 1A
016650,000024:                                                                                                  ##
016651,000025:                                                                                                  ##      Prepared by
016652,000026:                                                                                                  ##                      Massachusetts Institute of Technology
016653,000027:                                                                                                  ##                      75 Cambridge Parkway
016654,000028:                                                                                                  ##                      Cambridge, Massachusetts
016655,000029:                                                                                                  ##      under NASA contract NAS 9-4065.
016656,000030:                                                                                                  ##
016657,000031:                                                                                                  ## Refer directly to the online document mentioned above for further information.
016658,000032:                                                                                                  ## Please report any errors (relative to 1701.pdf) to info@sandroid.org.
016659,000033:                                                                                                  ##
016660,000034:                                                                                                  ## In some cases, where the source code for Luminary 131 overlaps that of 
016661,000035:                                                                                                  ## Colossus 249, this code is instead copied from the corresponding Luminary 131
016662,000036:                                                                                                  ## source file, and then is proofed to incorporate any changes.
016663,000037: 

Page 385

016665,000039: 34,2002                                           BANK     34                                    
016666,000040: 27,2000                                           SETLOC   MANUVER                               
016667,000041: 27,2000                                           BANK                                           
016668,000042: 
016669,000043: 27,2000     1146                                  EBANK=   TEMPR60                               
016670,000044: 
016671,000045: 27,2000                                           COUNT    27/R60                                
016672,000046: 
016673,000047:                                                                                                  #  CONFORMS TO GSOP CHAPTER FOUR REVISION LOGIC 09       JAN 18, 1968
016674,000048: 
016675,000049: 27,2000           04604        R60CSM             TC       MAKECADR                              
016676,000050: 27,2001           55146                           TS       TEMPR60                               
016677,000051: 
016678,000052:                                                                                                  #  INSERT PRIODSP CHECK WITH R22 (V06N49) WITH JENNINGS BRODEUR          
016679,000053: 
016680,000054: 27,2002           34705        REDOMANN           CAF      BIT6                                  
016681,000055: 27,2003           70101                           MASK     FLAGWRD5                              #  IS 3-AXIS FLAG SET
016682,000056: 27,2004           10000                           CCS      A                                     
016683,000057: 27,2005           12013                           TCF      TOBALL                                #  YES
016684,000058: 27,2006           06006                           TC       INTPRET                               
016685,000059: 27,2007           77624                           CALL                                           
016686,000060: 27,2010           56126                                    VECPOINT                              #  TO COMPUTE FINAL ANGLES
016687,000061: 27,2011           01156                           STORE    CPHI                                  #  STORE FINAL ANGLES -- CPHI, CTHETA, CPSI
016688,000062: 27,2012           77776                           EXIT                                           
016689,000063: 
016690,000064: 27,2013           32125        TOBALL             CAF      V06N18                                
016691,000065: 27,2014           04555                           TC       BANKCALL                              
016692,000066: 27,2015           21036                           CADR     GOPERF2R                              #  DISPLAY PLEASE PERFORM AUTO MANEUVER
016693,000067: 27,2016           02114                           TC       R61TEST                               
016694,000068: 27,2017           02023                           TC       REDOMANC                              #  PROCEED
016695,000069: 27,2020           12052                           TCF      ENDMANU1                              #  ENTER I.E., FINISHED WITH R60
016696,000070: 27,2021           02056                           TC       CHKLINUS                              #  TO CHECK FOR PRIORITY DISPLAYS
016697,000071: 27,2022           05112                           TC       ENDOFJOB                              
016698,000072: 
016699,000073: 27,2023           34705        REDOMANC           CAF      BIT6                                  
016700,000074: 27,2024           70101                           MASK     FLAGWRD5                              #  IS 3-AXIS FLAG SET
016701,000075: 27,2025           10000                           CCS      A                                     
016702,000076: 27,2026           12034                           TCF      TOBALLC                               #  YES
016703,000077: 27,2027           06006                           TC       INTPRET                               
016704,000078: 27,2030           77624                           CALL                                           
016705,000079: 27,2031           56126                                    VECPOINT                              #  TO COMPUTE FINAL ANGLES
016706,000080: 27,2032           01156                           STORE    CPHI                                  #  STORE ANGLES
016707,000081: 27,2033           77776                           EXIT                                           
016708,000082: 
016709,000083: 27,2034           34371        TOBALLC            CAF      PRIO30                                #  IS MODE AUTO AND CTL GNC

Page 386

016711,000085: 27,2035           00006                           EXTEND                                         
016712,000086: 27,2036           06031                           RXOR     CHAN31                                
016713,000087: 27,2037           77707                           MASK     13,14,15                              
016714,000088: 27,2040           00006                           EXTEND                                         
016715,000089: 27,2041           12043                           BZF      +2                                    #  AUTO, NON-FLASH N16
016716,000090: 27,2042           12013                           TCF      TOBALL                                #  NOT AUTO
016717,000091: 
016718,000092: 27,2043           32125                           CAF      V06N18                                #  STATIC DISPLAY DURING AUTO MANEUVER
016719,000093: 27,2044           04555                           TC       BANKCALL                              
016720,000094: 27,2045           20602                           CADR     GODSPR                                
016721,000095: 27,2046           02056                           TC       CHKLINUS                              #  TO CHECK FOR PRIORITY DISPLAYS
016722,000096: 
016723,000097: 27,2047           04555        STARTMNV           TC       BANKCALL                              #  PERFORM MANEUVER VIA KALCMANU
016724,000098: 27,2050           17547                           CADR     GOMANUR                               
016725,000099: 27,2051           12013        ENDMANUV           TCF      TOBALL                                #  FINISHED MANEUVER.
016726,000100: 
016727,000101: 27,2052           05447        ENDMANU1           TC       DOWNFLAG                              #  RESET 3-AXIS FLAG
016728,000102: 27,2053           00124                           ADRES    3AXISFLG                              #  BIT 6 FLAG 5
016729,000103: 27,2054           31146                           CAE      TEMPR60                               
016730,000104: 27,2055           04577                           TC       BANKJUMP                              
016731,000105: 
016732,000106: 27,2056           40100        CHKLINUS           CS       FLAGWRD4                              
016733,000107: 27,2057           74677                           MASK     BIT12                                 #  IS PRIORITY DISPLAY FLAG SET?
016734,000108: 27,2060           10000                           CCS      A                                     
016735,000109: 27,2061           00002                           TC       Q                                     #  NO -- EXIT
016736,000110: 27,2062           30002                           CA       Q                                     
016737,000111: 27,2063           54156                           TS       MPAC       +2                         #  SAVE RETURN
016738,000112: 27,2064           46214                           CS       THREE                                 #  OBTAIN LOCATION FOR RESTART
016739,000113: 27,2065           60133                           AD       BUF2                                  #  HOLD Q OF LAST DISPLAY
016740,000114: 27,2066           55053                           TS       TBASE1                                
016741,000115: 
016742,000116: 27,2067           05301                           TC       PHASCHNG                              
016743,000117: 27,2070           00071                           OCT      71                                    
016744,000118: 27,2071           34704                           CAF      BIT7                                  
016745,000119: 27,2072           05415                           TC       LINUS                                 #  GO SET BITS FOR PRIORITY DISPLAY
016746,000120: 27,2073           00156                           TC       MPAC       +2                         
016747,000121: 
016748,000122: 27,2074           34706        RELINUS            CAF      BIT5                                  #  RESTORE ORIGINAL PRIORITY
016749,000123: 27,2075           70075                           MASK     FLAGWRD1                              
016750,000124: 27,2076           00006                           EXTEND                                         
016751,000125: 27,2077           12111                           BZF      GOREDO20                              #  NO
016752,000126: 
016753,000127: 27,2100           05435                           TC       UPFLAG                                
016754,000128: 27,2101           00077                           ADRES    PDSPFLAG                              #  R60 PRIODSP FLAG
016755,000129: 
016756,000130: 27,2102           05435                           TC       UPFLAG                                
016757,000131: 27,2103           00024                           ADRES    TARG1FLG                              #  FOR R52
016758,000132: 
016759,000133: 27,2104           34714                           CAF      ZERO                                  #  RESET TO ZERO, SINCE

Page 387

016761,000135: 27,2105           55303                           TS       OPTIND                                #  OPTIND WAS SET TO -1 BY V379
016762,000136: 
016763,000137: 27,2106           34761                           CAF      PRIO14                                #  RESTORE ORIGINAL PRIORITY
016764,000138: 27,2107           05103                           TC       PRIOCHNG                              
016765,000139: 
016766,000140: 27,2110           01053                           TC       TBASE1                                
016767,000141: 
016768,000142: 27,2111           05301        GOREDO20           TC       PHASCHNG                              
016769,000143: 27,2112           00111                           OCT      111                                   #  1.11 FOR PIKUP20
016770,000144: 
016771,000145: 27,2113           05112                           TC       ENDOFJOB                              
016772,000146: 
016773,000147: 27,2114           31011        R61TEST            CA       MODREG                                #  ARE WE IN P00.  IF YES THIS MUST BE
016774,000148: 27,2115           00006                           EXTEND                                         #        VERB49 OR VERB89 SO DO ENDEXT.
016775,000149: 27,2116           12052                           BZF      ENDMANU1                              #  RESET 3-AXIS & RETURN.  USER DOES ENDEXT
016776,000150: 27,2117           30100                           CA       FLAGWRD4                              #  ARE WE IN R61 (P20)
016777,000151: 27,2120           74677                           MASK     BIT12                                 
016778,000152: 27,2121           00006                           EXTEND                                         
016779,000153: 27,2122           14106                           BZF      GOTOP00H                              #  NO
016780,000154: 27,2123           04550                           TC       GOTOV56                               #  YES
016781,000155: 
016782,000156: 27,2124           20100        BIT14+7            OCT      20100                                 
016783,000157: 27,2125           01422        V06N18             VN       0618                                  
016784,000158: 

Page 388

016786,000160:                                                                                                  #  PROGRAM DESCRIPTION -- VECPOINT
016787,000161: 
016788,000162:                                                                                                  #  THIS INTERPRETIVE SUBROUTINE MAY BE USED TO POINT A SPACECRAFT AXIS IN A DESIRED DIRECTION.  THE AXIS
016789,000163:                                                                                                  #  TO BE POINTED MUST APPEAR AS A HALF UNIT DOUBLE PRECISION VECTOR IN SUCCESSIVE LOCATIONS OF ERASABLE MEMORY
016790,000164:                                                                                                  #  BEGINNING WITH THE LOCATION CALLED SCAXIS.  THE COMPONENTS OF THIS VECTOR ARE GIVEN IN SPACECRAFT COORDINATES.
016791,000165:                                                                                                  #  THE DIRECTION IN WHICH THIS AXIS IS TO BE POINTED MUST APPEAR AS A HALF UNIT DOUBLE PRECISION VECTOR IN
016792,000166:                                                                                                  #  SUCCESSIVE LOCATIONS OF ERASABLE MEMORY BEGINNING WITH THE ADDRESS CALLED POINTVSM.  THE COMPONENTS OF THIS
016793,000167:                                                                                                  #  VECTOR ARE GIVEN IN STABLE MEMBER COORDINATES.  WITH THIS INFORMTION VECPOINT COMPUTES A SET OF THREE GIMBAL
016794,000168:                                                                                                  #  ANGLES (2'S COMPLEMENT) CORRESPONDING TO THE CROSS-PRODUCT ROTATION BETWEEN SCAXIS AND POINTVSM AND STORES THEM
016795,000169:                                                                                                  #  IN T(MPAC) BEFORE RETURNING TO THE CALLER.
016796,000170: 
016797,000171:                                                                                                  #  THIS ROTATION, HOWEVER, MAY BRING THE S/C INTO GIMBAL LOCK.  WHEN POINTING A VECTOR IN THE Y-Z PLANE,
016798,000172:                                                                                                  #  THE TRANSPONDER AXIS, OR THE AOT FOR THE LEM, THE PROGRAM WILL CORRECT THIS PROGLEM BY ROTATING THE CROSS-
016799,000173:                                                                                                  #  PRODUCT ATTITUDE ABOUT POINTVSM BY A FIXED AMOUNT SUFFICIENT TO ROTATE THE DESIRED S/C ATTITUDE OUT OF GIMBAL
016800,000174:                                                                                                  #  LOCK.  IF THE AXIS TO BE POINTED IS MORE THAN 40.6 DEGREES BUT LESS THAN 60.5 DEG FROM THE +X (OR -X) AXIS,
016801,000175:                                                                                                  #  THE ADDITIONAL ROTATION TO AVOID GIMBAL LOCK IS 35 DEGREES.  IF THE AXIS IS MORE THAN 60.5 DEGREES FROM +X (OR -X)
016802,000176:                                                                                                  #  THE ADDITIONAL ROTATION IS 35 DEGREES.  THE GIMBAL ANGLES CORRESPONDING TO THIS ATTITUDE ARE THEN COMPUTED AND
016803,000177:                                                                                                  #  STORED AS 2'S COMPLEMENT ANGLES N T(MPAC) BEFORE RETURNING TO THE CALLER.
016804,000178: 
016805,000179:                                                                                                  #  WHEN POINTING THE X-AXIS, OR THE THRUST VECTOR, OR ANY VECTOR WITHIN 40.6 DEG OF THE X-AXIS, VECPOINT
016806,000180:                                                                                                  #  CANNOT CORRECT FOR A CROSS-PRODUCT ROTATION INTO GIMBAL LOCK.  IN THIS CASE A PLATFORM REALIGNMENT WOULD BE
016807,000181:                                                                                                  #  REQUIRED TO POINT THE VECTOR IN THE DESIRED DIRECTION.  AT PRESENT NO INDICATION IS GIVEN FOR THIS SITUATION
016808,000182:                                                                                                  #  EXCEPT THAT THE FINAL MIDDLE GIMBAL ANGLE IN MPAC +2 IS GREATER THAN 59 DEGREES.
016809,000183: 
016810,000184:                                                                                                  #  CALLING SEQUENCE
016811,000185: 
016812,000186:                                                                                                  #        1)      LOAD SCAXIS, POINTVSM
016813,000187:                                                                                                  #        2)      CALL
016814,000188:                                                                                                  #                        VECPOINT
016815,000189: 
016816,000190:                                                                                                  #  RETURNS WITH
016817,000191: 
016818,000192:                                                                                                  #        1)      DESIRED OUTER GIMBAL ANGLE IN MPAC
016819,000193:                                                                                                  #        2)      DESIRED INNER GIMBAL ANGLE IN MPAC +1
016820,000194:                                                                                                  #        3)      DESIRED MIDDLE GIMBAL ANGLE IN MPAC +2
016821,000195: 
016822,000196:                                                                                                  #  ERASABLES USED --
016823,000197: 
016824,000198:                                                                                                  #        1)      SCAXIS          6
016825,000199:                                                                                                  #        2)      POINTVSM        6
016826,000200:                                                                                                  #        3)      MIS             18
016827,000201:                                                                                                  #        4)      DEL             18
016828,000202:                                                                                                  #        5)      COF             6
016829,000203:                                                                                                  #        6)      VECQTEMP        1
016830,000204:                                                                                                  #        7)      ALL OF VAC AREA 43
016831,000205: 
016832,000206:                                                                                                  #                        TOTAL   99
016833,000207: 
016834,000208: 27,2000                                           SETLOC   VECPT                                 
016835,000209: 27,2000                                           BANK                                           

Page 389

016837,000211: 27,2126  E6,1661                                  EBANK=   BCDU                                  
016838,000212: 27,2126                                           COUNT    27/VECPT                              
016839,000213: 
016840,000214: 27,2126           40020        VECPOINT           STQ      BOV                                   #  SAVE RETURN ADDRESS
016841,000215: 27,2127           03310                                    VECQTEMP                              
016842,000216: 27,2130           56131                                    VECLEAR                               #  AND CLEAR OVFIND
016843,000217: 27,2131           47164        VECLEAR            AXC,2    RTB                                   
016844,000218: 27,2132           03320                                    MIS                                   #  READ THE PRESENT CDU ANGLES AND
016845,000219: 27,2133           44376                                    READCDUK                              #  STORE THEM IN PD25, 26, 27
016846,000220: 27,2134           34032        STORANG            STCALL   25D                                   
016847,000221: 27,2135           44405                                    CDUTODCM                              #  S/C AXES TO STABLE MEMBER AXES (MIS)
016848,000222: 27,2136           61375                           VLOAD    VXM                                   
016849,000223: 27,2137           03357                                    POINTVSM                              #  RESOLVE THE POINTING DIRECTION VF INTO
016850,000224: 27,2140           03321                                    MIS                                   #  INITIAL S/C AXES (VF = POINTVSM)
016851,000225: 27,2141           77656                           UNIT                                           
016852,000226: 27,2142           00035                           STORE    28D                                   
016853,000227:                                                                                                  #  PD 28 29 30 31 32 33
016854,000228: 27,2143           53435                           VXV      UNIT                                  #  TAKE THE CROSS PRODUCT VF X VI
016855,000229: 27,2144           03351                                    SCAXIS                                #  WHERE VI = SCAXIS
016856,000230: 27,2145           57400                           BOV      VCOMP                                 
016857,000231: 27,2146           56256                                    PICKAXIS                              
016858,000232: 27,2147           17343                           STODL    COF                                   #  CHECK MAGNITUDE
016859,000233: 27,2150           00045                                    36D                                   #  OF CROSS PRODUCT
016860,000234: 27,2151           50025                           DSU      BMN                                   #  VECTOR, IF LESS
016861,000235: 27,2152           16327                                    DPB-14                                #  THAN B-14 ASSUME
016862,000236: 27,2153           56256                                    PICKAXIS                              #  UNIT OPERATION
016863,000237: 27,2154           50375                           VLOAD    DOT                                   #  INVALID.
016864,000238: 27,2155           03351                                    SCAXIS                                
016865,000239: 27,2156           00035                                    28D                                   
016866,000240: 27,2157           65552                           SL1      ARCCOS                                
016867,000241: 27,2160           77624        COMPMATX           CALL                                           #  NO COMPUTE THE TRANSFORMATION FROM
016868,000242: 27,2161           44530                                    DELCOMP                               #  FINAL S/C AXES TO INITIAL S/C AXES MFI
016869,000243: 27,2162           75160                           AXC,1    AXC,2                                 
016870,000244: 27,2163           03320                                    MIS                                   #  COMPUTE THE TRANSFORMATION FROM FINAL
016871,000245: 27,2164           03425                                    DEL                                   #  S/C AXES TO STABLE MEMBER AXES
016872,000246: 27,2165           77624                           CALL                                           #  MFS = MIS MFI
016873,000247: 27,2166           44304                                    MXM3                                  #  (IN PD LIST)
016874,000248: 
016875,000249: 27,2167           51545                           DLOAD    ABS                                   
016876,000250: 27,2170           00007                                    6                                     #  MFS6 = SIN(CPSI)
016877,000251: 27,2171           50025                           DSU      BMN                                   
016878,000252: 27,2172           16314                                    SINGIMLC                              #  = SIN(59 DEGS)
016879,000253: 27,2173           56246                                    FINDGIMB                              #  /CPSI/ LESS THAN 59 DEGS.
016880,000254:                                                                                                  #  I.E., DESIRED ATTITUDE NOT IN GIMBAL LOCK
016881,000255: 
016882,000256: 27,2174           51545                           DLOAD    ABS                                   #  CHECK TO SEE IF WE ARE POINTING
016883,000257: 27,2175           03351                                    SCAXIS                                #  THE THRUST AXIS
016884,000258: 27,2176           51025                           DSU      BPL                                   
016885,000259: 27,2177           16316                                    SINVEC1                               #  SIN 49.4 DEGS

Page 390

016887,000261: 27,2200           56246                                    FINDGIMB                              #  IF SO, WE ARE TRYING TO POINT IT INTO
016888,000262: 27,2201           77775                           VLOAD                                          #  GIMBAL LOCK, ABORT COULD GO HERE
016889,000263: 27,2202           77626                           STADR                                          
016890,000264: 27,2203           50442                           STOVL    MIS        +12D                       
016891,000265: 27,2204           77626                           STADR                                          #  STORE MFS (IN PD LIST) IN MIS
016892,000266: 27,2205           50450                           STOVL    MIS        +6                         
016893,000267: 27,2206           77626                           STADR                                          
016894,000268: 27,2207           50456                           STOVL    MIS                                   
016895,000269: 27,2210           03327                                    MIS        +6                         #  INNER GIMBAL AXIS IN FINAL S/C AXES
016896,000270: 27,2211           57444                           BPL      VCOMP                                 #  LOCATE THE IG AXIS DIRECTION CLOSEST TO
016897,000271: 27,2212           56213                                    IGSAMEX                               #  FINAL X S/C AXIS
016898,000272: 
016899,000273: 27,2213           50035        IGSAMEX            VXV      BMN                                   #  FIND THE SHORTEST WAY OF ROTATING THE 
016900,000274: 27,2214           03351                                    SCAXIS                                #  S/C OUT OF GIMBAL LOCK BY A ROTATION 
016901,000275: 27,2215           56222                                    U=SCAXIS                              #  ABOUT +- SCAXIS, I.E., IF  (IG (SGN MFS3)
016902,000276:                                                                                                  #  X SCAXIS . XF) LESS THAN Q, U = SCAXIS
016903,000277:                                                                                                  #  OTHERWISE U = -SCAXIS.
016904,000278: 
016905,000279: 27,2216           57575                           VLOAD    VCOMP                                 
016906,000280: 27,2217           03351                                    SCAXIS                                
016907,000281: 27,2220           37343                           STCALL   COF                                   #  ROTATE ABOUT -SCAXIS
016908,000282: 27,2221           56225                                    CHEKAXIS                              
016909,000283: 27,2222           77775        U=SCAXIS           VLOAD                                          
016910,000284: 27,2223           03351                                    SCAXIS                                
016911,000285: 27,2224           03343                           STORE    COF                                   #  ROTATE ABOUT + SCAXIS
016912,000286: 27,2225           51545        CHEKAXIS           DLOAD    ABS                                   
016913,000287: 27,2226           03351                                    SCAXIS                                #  SEE IF WE ARE POINTING THE AOT
016914,000288: 27,2227           51025                           DSU      BPL                                   
016915,000289: 27,2230           16320                                    SINVEC2                               #  SIN 29.5 DEGS
016916,000290: 27,2231           56235                                    PICKANG1                              #  IF SO, ROTATE 50 DEGS ABOUT +- SCAXIS
016917,000291: 27,2232           52145                           DLOAD    GOTO                                  #  IF NOT, MUST BE POINTING THE TRANSPONDER
016918,000292: 27,2233           16324                                    VECANG2                               #  OR SOME VECTOR IN THE Y, OR Z PLANE
016919,000293: 27,2234           56237                                    COMPMFSN                              #  IN THIS CASE ROTATE 35 DEGS TO GET OUT
016920,000294:                                                                                                  #  OF GIMBAL LOCK (VECANG2 garbled)
016921,000295: 27,2235           77745        PICKANG1           DLOAD                                          
016922,000296: 27,2236           16322                                    VECANG1                               #  =.50 DEGS.
016923,000297: 27,2237           77624        COMPMFSN           CALL                                           
016924,000298: 27,2240           44530                                    DELCOMP                               #  COMPUTE THE ROTATION ABOUT SCAXIS TO
016925,000299: 27,2241           75160                           AXC,1    AXC,2                                 #  BRING MFS OUT OF GIMBAL LOCK
016926,000300: 27,2242           03320                                    MIS                                   
016927,000301: 27,2243           03425                                    DEL                                   
016928,000302: 27,2244           77624                           CALL                                           #  COMPUTE THE NEW TRANSFORMATION FROM
016929,000303: 27,2245           44304                                    MXM3                                  #  DESIRED S/C AXES TO STABLE MEMBER AXES
016930,000304:                                                                                                  #  WHICH WILL ALIGN VI WITH VF AND AVOID
016931,000305:                                                                                                  #  GIMBAL LOCK
016932,000306: 27,2246           45160        FINDGIMB           AXC,1    CALL                                  
016933,000307: 27,2247           00000                                    0                                     #  EXTRACT THE COMMANDED CDU ANGLES FROM
016934,000308: 27,2250           44655                                    DCMTOCDU                              #  THIS MATRIX
016935,000309: 27,2251           40234                           RTB      SETPD                                 
016936,000310: 27,2252           45547                                    V1STO2S                               #  CONVERT TO 2'S COMPLEMENT

Page 391

016938,000312: 27,2253           00001                                    0                                     
016939,000313: 27,2254           77650                           GOTO                                           
016940,000314: 27,2255           03310                                    VECQTEMP                              #  RETURN TO CALLER
016941,000315: 
016942,000316: 27,2256           50375        PICKAXIS           VLOAD    DOT                                   #  IF VF X VI = 0, FIND VF, VI
016943,000317: 27,2257           00035                                    28D                                   
016944,000318: 27,2260           03351                                    SCAXIS                                
016945,000319: 27,2261           72240                           BMN      TLOAD                                 
016946,000320: 27,2262           56266                                    ROT180                                
016947,000321: 27,2263           00032                                    25D                                   
016948,000322: 27,2264           77650                           GOTO                                           #  IF VF = VI, CDU DESIRED = PRESENT CDU
016949,000323: 27,2265           03310                                    VECQTEMP                              #  PRESETN CDU ANGLES
016950,000324: 
016951,000325: 27,2266           47375        ROT180             VLOAD    VXV                                   #  IF VF, VI ANTI-PARALLEL, 180 DEG ROTATION
016952,000326: 27,2267           03327                                    MIS        +6                         #  IS REQUIRED.  Y STABLE MEMBER AXIS IN
016953,000327: 27,2270           15330                                    HIUNITX                               #  INITIAL S/C AXES.
016954,000328: 27,2271           47256                           UNIT     VXV                                   #  FIND Y(SM) X X(I)
016955,000329: 27,2272           03351                                    SCAXIS                                #  FIND UNIT(VI X UNIT(Y(SM) X X(I)))
016956,000330: 27,2273           40056                           UNIT     BOV                                   #  I.E., PICK A VECTOR IN THE PLANE OF X(I),
016957,000331: 27,2274           56310                                    PICKX                                 #  Y(SM) PERPENDICULAR TO VI
016958,000332: 27,2275           17343                           STODL    COF                                   
016959,000333: 27,2276           00045                                    36D                                   #  CHECK MAGNITUDE
016960,000334: 27,2277           50025                           DSU      BMN                                   #  OF THIS VECTOR.
016961,000335: 27,2300           16327                                    DPB-14                                #  IF LESS THAN B-14,
016962,000336: 27,2301           56310                                    PICKX                                 #  PICK X-AXIS.
016963,000337: 27,2302           77775                           VLOAD                                          
016964,000338: 27,2303           03343                                    COF                                   
016965,000339: 27,2304           17343        XROT               STODL    COF                                   
016966,000340: 27,2305           15330                                    HIDPHALF                              
016967,000341: 27,2306           77650                           GOTO                                           
016968,000342: 27,2307           56160                                    COMPMATX                              
016969,000343: 27,2310           52175        PICKX              VLOAD    GOTO                                  #  PICK THE XAXIS IN THIS CASE
016970,000344: 27,2311           15330                                    HIUNITX                               
016971,000345: 27,2312           56304                                    XROT                                  
016972,000346: 35,2000                                           BANK     35                                    
016973,000347: 27,2000                                           SETLOC   MANUVER1                              
016974,000348: 27,2000                                           BANK                                           
016975,000349: 
016976,000350: 27,2313           15555 35172  SINGIMLC           2DEC     .4285836003                            #  = SIN(59)
016977,000351: 27,2315           14113 36326  SINVEC1            2DEC     .3796356537                            #  = SIN(49.4)
016978,000352: 27,2317           07701 35703  SINVEC2            2DEC     .2462117800                            #  = SIN(29.5)
016979,000353: 27,2321           04343 21616  VECANG1            2DEC     .1388888889                            #  = 50 DEGREES
016980,000354: 27,2323           03070 34344  VECANG2            2DEC     .09722222222                            #  = 35 DEGREES
016981,000355: 
016982,000356: 27,2325           00000        1BITDP             OCT      0                                     #  KEEP THIS BEFORE DPB(-14)
016983,000357: 27,2326           00001        DPB-14             OCT      00001                                 

Page 392

016985,000359: 27,2327           00000                           OCT      00000                                 
016986,000360: 34,2002                                           BANK     34                                    
016987,000361: 27,2000                                           SETLOC   MANUVER                               
016988,000362: 27,2000                                           BANK                                           
016989,000363: 

Page 393

016991,000365:                                                                                                  #  ROUTINE FOR INITIATING AUTOMATIC MANEUVER VIA KEYBOARD (V49)
016992,000366: 
016993,000367: 27,2330     1155                                  EBANK=   CPHI                                  
016994,000368: 
016995,000369: 27,2330                                           COUNT    27/R62                                
016996,000370: 
016997,000371: 27,2330           34745        R62DISP            CAF      V06N22                                #  DISPLAY COMMAND ICDUS CPHI, CTHETA, CPHI
016998,000372: 27,2331           04555                           TC       BANKCALL                              
016999,000373: 27,2332           20624                           CADR     GOFLASH                               
017000,000374: 27,2333           15423                           TCF      ENDEXT                                
017001,000375: 27,2334           12336                           TCF      GOMOVE                                #  PROCEED
017002,000376: 27,2335           12330                           TCF      R62DISP                               #  ENTER
017003,000377: 
017004,000378:                                                                                                  #  ASTRONAUT MAY LOAD NEW ICDUS AT THIS
017005,000379:                                                                                                  #  POINT.
017006,000380: 27,2336           05435        GOMOVE             TC       UPFLAG                                #  SET FOR 3-AXIS MANEUVER
017007,000381: 27,2337           00124                           ADRES    3AXISFLG                              
017008,000382: 
017009,000383: 27,2340           04555                           TC       BANKCALL                              
017010,000384: 27,2341           56000                           CADR     R60CSM                                
017011,000385: 27,2342           15423                           TCF      ENDEXT                                
017012,000386: 

End of include-file R60_62.agc.  Parent file is MAIN.agc