Source Code

This is the source-code for the Apollo 9 Command Module's Guidance Computer. These 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.

022078,000002:                                                                                                  ## Copyright:   Public domain.
022079,000003:                                                                                                  ## Filename:    R30.agc
022080,000004:                                                                                                  ## Purpose:     Part of the source code for Colossus, build 249.
022081,000005:                                                                                                  ##              It is part of the source code for the Command Module's (CM)
022082,000006:                                                                                                  ##              Apollo Guidance Computer (AGC), for Apollo 9.
022083,000007:                                                                                                  ## Assembler:   yaYUL
022084,000008:                                                                                                  ## Reference:   pp. 505-515.
022085,000009:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
022086,000010:                                                                                                  ## Website:     www.ibiblio.org/apollo.
022087,000011:                                                                                                  ## Mod history: 08/02/04 RSB.   Adapted from corresponding Luminary131 file.
022088,000012:                                                                                                  ##              2017-01-06 RSB  Page numbers now agree with those on the
022089,000013:                                                                                                  ##                              original harcopy, as opposed to the PDF page
022090,000014:                                                                                                  ##                              numbers in 1701.pdf.
022091,000015:                                                                                                  ##              2017-01-18 RSB  Cross-diff'd comment text (not whitespace)
022092,000016:                                                                                                  ##                              vs the already-proofed corresponding Colossus
022093,000017:                                                                                                  ##                              237 and Comanche 55 source-code files
022094,000018:                                                                                                  ##                              and corrected errors found.
022095,000019:                                                                                                  ##              2017-02-08 RSB  Comment-text fixes discovered while proofing Artemis 72.
022096,000020:                                                                                                  ##
022097,000021:                                                                                                  ## The contents of the "Colossus249" files, in general, are transcribed 
022098,000022:                                                                                                  ## from a scanned copy of the program listing.  Notations on this
022099,000023:                                                                                                  ## document read, in part:
022100,000024:                                                                                                  ##
022101,000025:                                                                                                  ##      Assemble revision 249 of AGC program Colossus by NASA
022102,000026:                                                                                                  ##      2021111-041.  October 28, 1968.  
022103,000027:                                                                                                  ##
022104,000028:                                                                                                  ##      This AGC program shall also be referred to as
022105,000029:                                                                                                  ##                              Colossus 1A
022106,000030:                                                                                                  ##
022107,000031:                                                                                                  ##      Prepared by
022108,000032:                                                                                                  ##                      Massachusetts Institute of Technology
022109,000033:                                                                                                  ##                      75 Cambridge Parkway
022110,000034:                                                                                                  ##                      Cambridge, Massachusetts
022111,000035:                                                                                                  ##      under NASA contract NAS 9-4065.
022112,000036:                                                                                                  ##
022113,000037:                                                                                                  ## Refer directly to the online document mentioned above for further information.
022114,000038:                                                                                                  ## Please report any errors (relative to the scanned pages) to info@sandroid.org.
022115,000039:                                                                                                  ##
022116,000040:                                                                                                  ## In some cases, where the source code for Luminary 131 overlaps that of 
022117,000041:                                                                                                  ## Colossus 249, this code is instead copied from the corresponding Luminary 131
022118,000042:                                                                                                  ## source file, and then is proofed to incorporate any changes.
022119,000043: 

Page 505

022121,000045:                                                                                                  #  SUBROUTINE NAME:  V82CALL
022122,000046:                                                                                                  #  MOD NO: 0                                     DATE: 16 FEB 67
022123,000047:                                                                                                  #  MOD BY: RR BAIRNSFATHER                       LOG SECTION:  R30
022124,000048:                                                                                                  #  MOD NO: 1     MOD BY:  RR BAIRNSFATHER        DATE: 11 APR 67         SR30.1 CHANGED TO ALLOW MONITOR OPERN
022125,000049:                                                                                                  #  MOD NO: 2     MOD BY  ALONSO                  DATE: 11 DEC 67         VB82 PROGRAM REWRITTEN
022126,000050:                                                                                                  #  MOD NO: 3     MOD BY  ALONSO                  DATE: 26 MAR 68         PROG MOD TO HANDLE DIF EARTH/MOON SCALE
022127,000051: 
022128,000052:                                                                                                  #  NEW FUNCTIONAL DESCRIPTION:   CALLED BY VERB 82 ENTER.  PRIORITY 10
022129,000053:                                                                                                  #  USED THROUGHOUT.              CALCULATE AND DISPLAY ORBITAL PARAMETERS
022130,000054: 
022131,000055:                                                                                                  #  1.    IF AVERAGE G IS OFF:
022132,000056:                                                                                                  #                FLASH DISPLAY V04N06.  R2 INDICATES WHICH SHIP'S STATE VECTOR IS
022133,000057:                                                                                                  #                        TO BE UPDATED.  INITIAL CHOICE IS THIS SHIP (R2=1).  ASTRONAUT
022134,000058:                                                                                                  #                        CAN CHANGE TO OTHER SHIP BY V22EXE, WHERE X NOT EQ 1.
022135,000059:                                                                                                  #                SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC).
022136,000060:                                                                                                  #                CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE
022137,000061:                                                                                                  #                        RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
022138,000062:                                                                                                  #                        HEIGHT ABOVE LAUNCH PAD OR LUNAR LANDING SITE), HAPO (APOGEE
022139,000063:                                                                                                  #                        HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
022140,000064:                                                                                                  #                        INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
022141,000065:                                                                                                  #                FLASH MONITOR V16N44 (HAPO, HPER, TFF).  TFF IS -59M59S IF IT WAS
022142,000066:                                                                                                  #                        NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
022143,000067:                                                                                                  #                        ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E.
022144,000068:                                                                                                  #                        DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
022145,000069:                                                                                                  #                        ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
022146,000070:                                                                                                  #        2.      IF AVERAGE G IS ON:
022147,000071:                                                                                                  #                        CALLS SR30.1 APPROX EVERY TWO SECS.  STATE VECTOR IS ALWAYS
022148,000072:                                                                                                  #                                FOR THIS VEHICLE.  V82 DOES NOT DISTURB STATE VECTOR.  RESULTS
022149,000073:                                                                                                  #                                OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
022150,000074:                                                                                                  #                        FLASH MONITOR V16N44 (HAPO, HPER, TFF).
022151,000075:                                                                                                  #                        IF MODE IS P11, THEN CALL DELRSPL SO ASTRONAUT CAN MONITOR
022152,000076:                                                                                                  #                                RESULTS BY N50E.  SPLASH COMPUTATION DONE ONCE PER TWO SECS.
022153,000077:                                                                                                  #        ADDENDUM:  HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
022154,000078:                                                                                                  #                ABOVE REMARKS.
022155,000079: 
022156,000080:                                                                                                  #  CALLING SEQUENCE: VERB 82 ENTER.
022157,000081: 
022158,000082:                                                                                                  #  SUBROUTINES CALLED:   SR30.1, GOXDSPF
022159,000083:                                                                                                  #                        MAYBE - THISPREC, OTHPREC, LOADTIME, DELRSPL
022160,000084: 
022161,000085:                                                                                                  #  NORMAL EXIT MODES:  TC ENDEXT
022162,000086: 
022163,000087:                                                                                                  #  ALARMS:  NONE
022164,000088: 
022165,000089:                                                                                                  #  OUTPUT:       HAPOX   (-29) M
022166,000090:                                                                                                  #                HPERX   (-29) M
022167,000091:                                                                                                  #                RAPO    (-29) M EARTH
022168,000092:                                                                                                  #                        (-27) M MOON

Page 506

022170,000094:                                                                                                  #                RPER    (-29) M EARTH
022171,000095:                                                                                                  #                        (-27) M MOON
022172,000096:                                                                                                  #                TFF     (-28) CS        CONTAINS NEGATIVE QUANTITY
022173,000097:                                                                                                  #                -TPER   (-28) CS        CONTAINS NEGATIVE QUANTITY
022174,000098:                                                                                                  #                RSP-RREC(-29) M         IF DELRSPL CALLED
022175,000099: 
022176,000100:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:  STATE VECTOR.
022177,000101: 
022178,000102:                                                                                                  #  DEBRIS:       QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
022179,000103:                                                                                                  #                MAYBE:  TSTART82, V82FLAGS, TDEC1.
022180,000104: 
022181,000105: 13,2176  E4,1751                                  EBANK=   HAPOX                                 
022182,000106: 31,2021                                           BANK     31                                    
022183,000107: 23,2000                                           SETLOC   R30LOC                                
022184,000108: 23,2000                                           BANK                                           
022185,000109: 23,2332                                           COUNT*   $$/R30                                
022186,000110: 
022187,000111: 23,2332           06006        V82CALL            TC       INTPRET                               
022188,000112: 23,2333           52014                           BON      GOTO                                  
022189,000113: 23,2334           00716                                    AVEGFLAG                              
022190,000114: 23,2335           46566                                    V82GON                                #  IF AVERAGE G ON
022191,000115: 23,2336           46337                                    V82GOFF                               #  IF AVERAGE G OFF
022192,000116: 
022193,000117: 23,2337           77776        V82GOFF            EXIT                                           #  ALLOW ASTRONAUT TO SELECT VEHICLE
022194,000118: 23,2340           34711                           CAF      TWO                                   #  DESIRED FOR ORBITAL PARAMETERS
022195,000119: 23,2341           55051                           TS       OPTIONX                               
022196,000120: 23,2342           34712                           CAF      ONE                                   
022197,000121: 23,2343           55052                           TS       OPTIONX    +1                         
022198,000122: 23,2344           32406                           CAF      OPTIONVN                              #  V 04 N 06
022199,000123: 23,2345           04555                           TC       BANKCALL                              
022200,000124: 23,2346           20465                           CADR     GOXDSPF                               
022201,000125: 23,2347           05423                           TC       ENDEXT                                #  TERMINATE
022202,000126: 23,2350           02352                           TC       +2                                    #  PROCEED
022203,000127: 23,2351           02344                           TC       -5                                    #  DATA IN.  OPTIONX+1 = 1 FOR THIS VEHIC.
022204,000128:                                                                                                  #                UNEQ 1 FOR OTHER VEHICLE.
022205,000129: 23,2352           34707                           CAF      BIT4                                  #  80 MS
022206,000130: 23,2353           05140                           TC       WAITLIST                              
022207,000131: 23,2354  E4,1743                                  EBANK=   TFF                                   
022208,000132: 23,2354           02531 46064                     2CADR    TICKTEST                              
022209,000133: 
022210,000134: 23,2356           00003                           RELINT                                         
022211,000135: 23,2357           32410        V82GOFLP           CAF      TFFBANK                               #  MAJOR RECYCLE LOOP ENTRY
022212,000136: 23,2360           54003                           TS       EBANK                                 
022213,000137: 23,2361           34714                           CAF      ZERO                                  
022214,000138: 23,2362           55742                           TS       V82FLAGS                              #  ZERO FLAGS FOR TICKTEST. INHIBITS
022215,000139:                                                                                                  #  DECREMENTING OF TFF AND -TPER.
022216,000140: 23,2363           34756                           CAF      PRIO7                                 
022217,000141: 23,2364           05042                           TC       FINDVAC                               #  V82GOFF1 WILL EXECUTE STATE VECTOR

Page 507

022219,000143: 23,2365  E4,1743                                  EBANK=   TFF                                   #  UPDATE AND ORBIT CALCULATIONS FOR
022220,000144: 23,2365           02411 46064                     2CADR    V82GOFF1                              #  SELECTED VEHICLE ABOUT PROPER BODY.
022221,000145: 
022222,000146: 23,2367           00003                           RELINT                                         
022223,000147: 23,2370           36214        V82STALL           CAF      THREE                                 #  STALL IN THIS LOOP AND WITHOLD V 16 N 44
022224,000148: 23,2371           71742                           MASK     V82FLAGS                              #  UNTIL STATE VECTOR UPDATE SETS ONE OF
022225,000149: 23,2372           10000                           CCS      A                                     #  OUR FLAG BITS.
022226,000150: 23,2373           02400                           TC       FLAGGON                               #  EXIT FROM STALL LOOP.
022227,000151: 23,2374           34734                           CAF      1SEC                                  
022228,000152: 23,2375           04555                           TC       BANKCALL                              
022229,000153: 23,2376           01732                           CADR     DELAYJOB                              
022230,000154: 23,2377           02370                           TC       V82STALL                              
022231,000155: 
022232,000156: 23,2400           32407        FLAGGON            CAF      V16N44                                #  MONITOR HAPO,HPER,TFF.
022233,000157: 23,2401           04555                           TC       BANKCALL                              
022234,000158: 23,2402           20465                           CADR     GOXDSPF                               
022235,000159: 23,2403           05514                           TC       B5OFF                                 #  TERM  THIS TELLS TICKTEST TO KILL ITSELF
022236,000160: 23,2404           05514                           TC       B5OFF                                 #  PROCEED   DITTO
022237,000161: 23,2405           02357                           TC       V82GOFLP                              #  RECYCLE   RECOMPUTE STATE VECT + DISPLAY
022238,000162: 
022239,000163: 23,2406           01014        OPTIONVN           VN       0412                                  
022240,000164: 23,2407           04054        V16N44             VN       1644                                  
022241,000165: 23,2410           02343        TFFBANK            ECADR    TFF                                   
022242,000166: 
022243,000167: 23,2411           06006        V82GOFF1           TC       INTPRET                               
022244,000168: 23,2412           77634                           RTB                                            
022245,000169: 23,2413           45505                                    LOADTIME                              
022246,000170: 23,2414           00041                           STORE    TDEC1                                 #  TIME FOR STATE VECTOR UPDATE.
022247,000171: 23,2415           02325                           STORE    TSTART82                              #  TIME FOR INTERNAL USE.
022248,000172: 23,2416           77776                           EXIT                                           
022249,000173: 23,2417           41052                           CS       OPTIONX    +1                         #  1 FOR THIS VEHICLE, NOT 1 FOR OTHER
022250,000174: 23,2420           64712                           AD       ONE                                   
022251,000175: 23,2421           00006                           EXTEND                                         
022252,000176: 23,2422           12446                           BZF      THISSHIP                              
022253,000177: 23,2423           06006        OTHSHIP            TC       INTPRET                               
022254,000178: 23,2424           77624                           CALL                                           #  CALL STATE VECTOR UPDATE FOR OTHER SHIP.
022255,000179: 23,2425           27036                                    OTHPREC                               
022256,000180: 23,2426           77775        BOTHSHIP           VLOAD                                          #  MOVE RESULTS INTO TFFCONIC STORAGE AREAS
022257,000181: 23,2427           00001                                    RATT                                  #  TO BE CALLED BY SR30.1.
022258,000182: 23,2430           26327                           STOVL    RONE                                  #  RATT AT (-29)M FOR EARTH OR MOON
022259,000183: 23,2431           00007                                    VATT                                  
022260,000184: 23,2432           02335                           STORE    VONE                                  #  VATT AT (-7)M/CS FOR EARTH OR MOON
022261,000185: 23,2433           77743                           DLOAD*                                         
022262,000186: 23,2434           71321                                    1/RTMUE,2                             #  X2 IS 0 FOR EARTH CENTERED STATE VEC
022263,000187: 23,2435           00037                           STORE    TFF/RTMU                              #  X2 IS 2 FOR MOON
022264,000188: 23,2436           77743                           DLOAD*                                         #  AS LEFT BY THISPREC OR OTHPREC.
022265,000189: 23,2437           71315                                    MINPERE,2                             
022266,000190: 23,2440           02321                           STORE    HPERMIN                               #  TFFRTMU, HPERMIN AND RPADTEM ARE ALL
022267,000191: 23,2441           46135                           SLOAD    BHIZ                                  #  EARTH/MOON PARAMETERS AS SET HERE.

Page 508

022269,000193: 23,2442           00050                                    X2                                    
022270,000194: 23,2443           46463                                    EARTHPAD                              
022271,000195: 23,2444           77650                           GOTO                                           
022272,000196: 23,2445           46467                                    MOONPAD                               
022273,000197: 23,2446           06006        THISSHIP           TC       INTPRET                               
022274,000198: 23,2447           77624                           CALL                                           #  CALL STATE VECTOR UPDATE FOR THIS SHIP.
022275,000199: 23,2450           27022                                    THISPREC                              
022276,000200: 23,2451           77650                           GOTO                                           
022277,000201: 23,2452           46426                                    BOTHSHIP                              
022278,000202: 
022279,000203:                                                                                                  #  THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED.  DO NOT SEPARATE PAIRS.
022280,000204: 
022281,000205: 23,2453           27533 07571  1/RTMUM            2DEC*    .45162595  E-4        B14*            
022282,000206: 23,2455           25004 06702  1/RTMUE            2DEC*    .50087529  E-5        B17*            
022283,000207: 
022284,000208: 23,2457           00001 11530  MINPERM            2DEC     10668      B-27                       #  35 KFT MIN PERIGEE HEIGHT FOR MOON(-27)M
022285,000209: 23,2461           00002 31230  MINPERE            2DEC     91440      B-29                       #  300 KFT (-29)M FOR EARTH
022286,000210: 
022287,000211: 23,2463           43145        EARTHPAD           DLOAD    CLRGO                                 #  PAD 37-B RADIUS.  SCALED AT (-29)M.
022288,000212: 23,2464           05311                                    RPAD                                  
022289,000213: 23,2465           04622                                    V82EMFLG                              #  INDICATE EARTH SCALING FOR SR30.1
022290,000214: 23,2466           46473                                    BOTHPAD                               
022291,000215: 
022292,000216: 23,2467           51575        MOONPAD            VLOAD    ABVAL                                 #  COMPUTE MOON PAD RADIUS FROM RLS VECTOR.
022293,000217: 23,2470           02026                                    RLS                                   #  SCALED AT (-27)M.
022294,000218: 23,2471           77614                           SET                                            
022295,000219: 23,2472           04462                                    V82EMFLG                              #  INDICATE MOON SCALING FOR SR30.1
022296,000220: 23,2473           36323        BOTHPAD            STCALL   RPADTEM                               
022297,000221: 23,2474           46667                                    SR30.1                                #  CALCULATE ORBITAL PARAMETERS
022298,000222: 23,2475           77776                           EXIT                                           
022299,000223: 23,2476           31011                           CA       MODREG                                #  ARE WE IN POO
022300,000224: 23,2477           00006                           EXTEND                                         
022301,000225: 23,2500           12645                           BZF      CANDEL                                #  YES, DO DELRSPL
022302,000226: 23,2501           06006        SPLRET1            TC       INTPRET                               
022303,000227: 23,2502           45234                           RTB      DSU                                   
022304,000228: 23,2503           45505                                    LOADTIME                              
022305,000229: 23,2504           02325                                    TSTART82                              #  PRESENT TIME - TIME V82GOFF1 BEGAN
022306,000230: 23,2505           02325                           STORE    TSTART82                              #                 SAVE IT
022307,000231: 23,2506           53145                           DLOAD    BZE                                   #  SR30.1 SETS -TPER=0 IF HPER L/
022308,000232: 23,2507           02346                                    -TPER                                 #  HPERMIN (300 OR 35) KFT.
022309,000233: 23,2510           46521                                    TICKTFF                               #  (-TPER = 0)
022310,000234: 23,2511           43345        TICKTPER           DLOAD    DAD                                   #  (-TPER NON ZERO) TFF WAS NOT COMPUTED,
022311,000235: 23,2512           02346                                    -TPER                                 #  BUT WAS SET TO 59M59S.  DONT TICK TFF, DO
022312,000236: 23,2513           02325                                    TSTART82                              #  TICK -TPER.  DISPLAY BOTH.
022313,000237: 23,2514           02346                           STORE    -TPER                                 #  -TPER CORRECTED FOR TIME SINCE V82GOFF1
022314,000238: 23,2515           77776                           EXIT                                           #  BEGAN.
022315,000239: 

Page 509

022317,000241: 23,2516           34712                           CAF      BIT1                                  
022318,000242: 23,2517           55742                           TS       V82FLAGS                              #  INFORMS TICKTEST TO INCREMENT ONLY -TPER
022319,000243: 23,2520           05112                           TC       ENDOFJOB                              
022320,000244: 
022321,000245: 23,2521           43345        TICKTFF            DLOAD    DAD                                   #  (-TPER=0) TFF WAS COMPUTED.  TICK TFF.
022322,000246: 23,2522           02344                                    TFF                                   #  DO NOT TICK -TPER.  DISPLAY TFF, BUT NOT
022323,000247: 23,2523           02325                                    TSTART82                              #  -TPER.
022324,000248: 23,2524           02344                           STORE    TFF                                   #  TFF CORRECTED FOR TIME SINCE V82GOFF1
022325,000249: 23,2525           77776                           EXIT                                           #  BEGAN.
022326,000250: 23,2526           34711                           CAF      BIT2                                  
022327,000251: 23,2527           55742                           TS       V82FLAGS                              #  INFORMS TICKTEST TO INCREMENT ONLY TFF.
022328,000252: 23,2530           05112                           TC       ENDOFJOB                              
022329,000253: 
022330,000254: 23,2531           34706        TICKTEST           CAF      BIT5                                  #  THIS WAITLIST PROGRAM PERPETUATES ITSELF
022331,000255: 23,2532           71044                           MASK     EXTVBACT                              #  ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
022332,000256: 23,2533           10000                           CCS      A                                     
022333,000257: 23,2534           02542                           TC       DOTICK                                
022334,000258: 23,2535           37662                           CAF      PRIO25                                
022335,000259: 23,2536           05027                           TC       NOVAC                                 #  TERMINATE V 82.  CANT CALL ENDEXT IN RUPT.
022336,000260: 23,2537     1044                                  EBANK=   EXTVBACT                              
022337,000261: 23,2537           05423 04062                     2CADR    ENDEXT                                
022338,000262: 
022339,000263: 23,2541           05213                           TC       TASKOVER                              
022340,000264: 23,2542           34734        DOTICK             CAF      1SEC                                  #  RE-REQUEST TICKTEST.
022341,000265: 23,2543           05140                           TC       WAITLIST                              
022342,000266: 23,2544  E4,1743                                  EBANK=   TFF                                   
022343,000267: 23,2544           02531 46064                     2CADR    TICKTEST                              
022344,000268: 
022345,000269: 23,2546           36214                           CAF      THREE                                 
022346,000270: 23,2547           71742                           MASK     V82FLAGS                              
022347,000271: 23,2550           50000                           INDEX    A                                     
022348,000272: 23,2551           02552                           TC       +1                                    
022349,000273: 23,2552           05213                           TC       TASKOVER                              #  IF NO FLAGBITS SET DONT CHANGE TFF OR
022350,000274:                                                                                                  #  -TPER, BUT CONTINUE LOOP.
022351,000275: 23,2553           02561                           TC       TPERTICK                              #  ONLY BIT 1 SET.  INCR -TPER BY 1 SEC.
022352,000276: 23,2554           34734        TFFTICK            CAF      1SEC                                  #  ONLY BIT 2 SET.  INCR TFF BY 1 SEC.
022353,000277: 23,2555           54001                           TS       L                                     
022354,000278: 23,2556           34714                           CAF      ZERO                                  
022355,000279: 23,2557           21744                           DAS      TFF                                   
022356,000280: 23,2560           05213                           TC       TASKOVER                              
022357,000281: 23,2561           34734        TPERTICK           CAF      1SEC                                  
022358,000282: 23,2562           54001                           TS       L                                     
022359,000283: 23,2563           34714                           CAF      ZERO                                  
022360,000284: 23,2564           21746                           DAS      -TPER                                 
022361,000285: 23,2565           05213                           TC       TASKOVER                              
022362,000286: 

Page 510

022364,000288: 23,2566           77776        V82GON             EXIT                                           #  AVERAGE G ON.  USE CURRENT STATE VECTOR
022365,000289:                                                                                                  #  FOR ORBITAL PARAMETER CALCULATIONS.
022366,000290: 23,2567           34756                           CAF      PRIO7                                 #  LESS THAN LAMBERT
022367,000291: 23,2570           05042                           TC       FINDVAC                               #  V82GON1 WILL PERFORM ORBIT CALCULATIONS
022368,000292: 23,2571  E4,1743                                  EBANK=   TFF                                   #  ABOUT PROPER BODY APPROX ONCE PER SEC.
022369,000293: 23,2571           02604 46064                     2CADR    V82GON1                               
022370,000294: 
022371,000295: 23,2573           00003                           RELINT                                         
022372,000296: 23,2574           10067                           CCS      NEWJOB                                #  WITHOLD V16 N44 UNTIL FIRST ORBIT CALC
022373,000297: 23,2575           05057                           TC       CHANG1                                #  IS DONE.  NOTE:  V82GON1 (PRIO7, FINDVAC
022374,000298:                                                                                                  #  JOB) IS COMPLETED BEFORE V82GON (PRIO7,
022375,000299:                                                                                                  #  NOVAC JOB).
022376,000300: 23,2576           32407        V82REDSP           CAF      V16N44                                #  MONITOR HAPO, HPER, TFF
022377,000301: 23,2577           04555                           TC       BANKCALL                              
022378,000302: 23,2600           20465                           CADR     GOXDSPF                               
022379,000303: 23,2601           05514                           TC       B5OFF                                 #  TERM THIS TELLS V82GON1 TO KILL ITSELF.
022380,000304: 23,2602           05514                           TC       B5OFF                                 #  PROC DITTO.
022381,000305: 23,2603           02576                           TC       V82REDSP                              #  RECYCLE
022382,000306: 
022383,000307: 23,2604           06006        V82GON1            TC       INTPRET                               #  THIS EXEC PROGRAM PERPETUATES ITSELF
022384,000308:                                                                                                  #  ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
022385,000309: 23,2605           52175                           VLOAD    GOTO                                  #  HOLDS OFF CCS NEWJOB BETWEEN RN AND
022386,000310: 23,2606           01171                                    RN                                    #  VN FETCH SO RN, VN ARE FROM SAME
022387,000311: 23,2607           46610                                    NEXTLINE                              #  STATE VECTOR UPDATE.
022388,000312: 23,2610           26327        NEXTLINE           STOVL    RONE                                  #  RN AT (-29)M FOR EARTH OR MOON
022389,000313: 23,2611           01177                                    VN                                    
022390,000314: 23,2612           02335                           STORE    VONE                                  #  VN AT (-7)M/CS FOR EARTH OR MOON
022391,000315: 23,2613           52014                           BON      GOTO                                  
022392,000316: 23,2614           04303                                    MOONTHIS                              #  FLAG INDICATES BODY ABOUT WHICH ORBITAL
022393,000317: 23,2615           46617                                    MOONGON                               #  CALCULATIONS ARE TO BE PERFORMED.
022394,000318: 23,2616           46630                                    EARTHGON                              #  IF SET - MOON, IF RESET - EARTH.
022395,000319: 
022396,000320: 23,2617           71214        MOONGON            SET      DLOAD                                 
022397,000321: 23,2620           04462                                    V82EMFLG                              #  INDICATE MOON SCALING FOR SR30.1
022398,000322: 23,2621           06454                                    1/RTMUM                               #  LUNAR PARAMETERS LOADED HERE FOR SR30.1
022399,000323: 23,2622           14037                           STODL    TFF/RTMU                              
022400,000324: 23,2623           06460                                    MINPERM                               
022401,000325: 23,2624           26321                           STOVL    HPERMIN                               
022402,000326: 23,2625           02026                                    RLS                                   #  SCALED AT (-27)M.
022403,000327: 23,2626           52046                           ABVAL    GOTO                                  
022404,000328: 23,2627           46637                                    V82GON2                               
022405,000329: 23,2630           71214        EARTHGON           CLEAR    DLOAD                                 
022406,000330: 23,2631           04662                                    V82EMFLG                              #  INDICATE EARTH SCALING FOR SR30.1
022407,000331: 23,2632           06456                                    1/RTMUE                               #  EARTH PARAMETERS LOADED HERE FOR SR30.1
022408,000332: 23,2633           14037                           STODL    TFF/RTMU                              
022409,000333: 23,2634           06462                                    MINPERE                               
022410,000334: 23,2635           16321                           STODL    HPERMIN                               
022411,000335: 23,2636           05311                                    RPAD                                  
022412,000336: 23,2637           36323        V82GON2            STCALL   RPADTEM                               #  COMMON CODE FOR EARTH & MOON.
022413,000337: 23,2640           46667                                    SR30.1                                

Page 511

022415,000339: 23,2641           77776                           EXIT                                           
022416,000340: 23,2642           05253                           TC       CHECKMM                               
022417,000341: 23,2643           00013                           DEC      11         B-14                       
022418,000342: 23,2644           02657                           TC       V82GON3                               #  NOT IN MODE 11.
022419,000343: 23,2645           06006        CANDEL             TC       INTPRET                               #  IN MODE 11 OR 00
022420,000344: 23,2646           77624                           CALL                                           
022421,000345: 23,2647           27371                                    INTSTALL                              #  DELRSPL DOES INTWAKE
022422,000346: 23,2650           45145                           DLOAD    CALL                                  
022423,000347: 23,2651           02344                                    TFF                                   
022424,000348: 23,2652           64017                                    DELRSPL                               #  RETURN IS TO NEXT LINE (SPLRET).
022425,000349: 23,2653           77776        SPLRET             EXIT                                           
022426,000350: 
022427,000351: 23,2654           31011                           CA       MODREG                                
022428,000352: 23,2655           00006                           EXTEND                                         
022429,000353: 23,2656           12501                           BZF      SPLRET1                               
022430,000354: 23,2657           34706        V82GON3            CAF      BIT5                                  
022431,000355: 23,2660           71044                           MASK     EXTVBACT                              #  SEE IF ASTRONAUT HAS SIGNALLED TERMINATE
022432,000356: 23,2661           00006                           EXTEND                                         
022433,000357: 23,2662           15423                           BZF      ENDEXT                                #  YES, TERMINATE VB 82 LOOP
022434,000358: 23,2663           34734                           CAF      1SEC                                  
022435,000359: 23,2664           04555                           TC       BANKCALL                              #  WAIT ONE SECOND BEFORE REPEATING
022436,000360: 23,2665           01732                           CADR     DELAYJOB                              #  ORBITAL PARAMETER COMPUTATION.
022437,000361: 23,2666           02604                           TC       V82GON1                               
022438,000362: 

Page 512

022440,000364:                                                                                                  #  SUBROUTINE NAME: SR30.1
022441,000365:                                                                                                  #  MOD NO: 0                                                             DATE: 16 FEB 67
022442,000366:                                                                                                  #  MOD BY: RR BAIRNSFATHER                                               LOG SECTION: R32
022443,000367:                                                                                                  #  MOD NO: 1     MOD BY: RR BAIRNSFATHER DATE: 11 APR 67                 SR30.1 CHANGED TO ALLOW MONITOR OPERN
022444,000368:                                                                                                  #  MOD NO: 2     MOD BY: RR BAIRNSFATHER DATE: 14 APR 67                 ADD OVFL CK FOR RAPO
022445,000369:                                                                                                  #  MOD NO: 3     MOD BY ALONSO                   DATE: 11 DEC 67         SUBROUTINE REWRITTEN
022446,000370:                                                                                                  #  MOD NO: 4     MOD BY ALONSO                   DATE: 26 MAR 68         PROG MOD TO HANDLE DIF EARTH/MOON SCALE
022447,000371:                                                                                                  #  MOD NO: 5     MOD BY: RR BAIRNSFATHER DATE: 6 AUG 68                  OVFL CK FOR HAPO & HPER. VOIDS MOD #2.
022448,000372: 
022449,000373:                                                                                                  #  NEW FUNCTIONAL DESCRIPTION:  ORBITAL PARAMETERS DISPLAY FOR NOUNS 32 AND 44.
022450,000374:                                                                                                  #  SR30.1 CALLS TFFCONMU AND TFFRP/RA TO CALCULATE RPER (PERIGEE RADIUS),
022451,000375:                                                                                                  #  RAPO (APOGEE RADIUS), HPER (PERIGEE HEIGHT ABOVE LAUNCH PAD OR LUNAR
022452,000376:                                                                                                  #  LANDING SITE), HAPO (APOGEE HEIGHT AS ABOVE), TPER (TIME TO PERIGEE),
022453,000377:                                                                                                  #  TFF (TIME TO INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
022454,000378:                                                                                                  #  IF HPER IS GREATER THAN OR EQUAL TO HPERMIN, CALCULATES TPER AND STORES
022455,000379:                                                                                                  #  NEGATIVE IN -TPER.  OTHERWISE STORES +0 IN -TPER.  WHENEVER TPER IS
022456,000380:                                                                                                  #  CALCULATED, TFF IS NOT COMPUTABLE AND DEFAULTS TO -59MIN 59SEC.  IF HAPO
022457,000381:                                                                                                  #  WOULD EXCEED 9999.9 NM, IT IS LIMITED TO THAT VALUE FOR DISPLAY.
022458,000382: 
022459,000383:                                                                                                  #  ADDENDUM:     HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
022460,000384:                                                                                                  #                ABOVE REMARKS.
022461,000385: 
022462,000386:                                                                                                  #  CALLING SEQUENCE:     CALL
022463,000387:                                                                                                  #                                SR30.1
022464,000388: 
022465,000389:                                                                                                  #  SUBROUTINES CALLED:   TFFCONMU, TFFRP/RA, CALCTPER, CALCTFF
022466,000390: 
022467,000391:                                                                                                  #  NORMAL EXIT MODE:     CALLING LINE +1 (STILL IN INTERPRETIVE MODE)
022468,000392: 
022469,000393:                                                                                                  #  ALARMS:       NONE
022470,000394: 
022471,000395:                                                                                                  #  OUTPUT:       RAPO    (-29) M EARTH   APOGEE RADIUS   EARTH CENTERED COORD.
022472,000396:                                                                                                  #                        (-27) M MOON                    MOON CENTERED COORD.
022473,000397:                                                                                                  #                RPER    (-29) M EARTH   PERIGEE RADIUS  EARTH CENTERED COORD.
022474,000398:                                                                                                  #                        (-27) M MOON                    MOON CENTERED COORD.
022475,000399:                                                                                                  #                HAPOX   (-29) M         APOGEE ALTITUDE ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
022476,000400:                                                                                                  #                HPERX   (-29) M         PERIGEE ALT. ABOVE PAD OR LAND. SITE    MAX VALUE LIMITED TO 9999.9 NM.
022477,000401:                                                                                                  #                TFF     (-28) CS        TIME TO 300KFT OR 35KFT ALTITUDE
022478,000402:                                                                                                  #                -TPER   (-28) CS        TIME TO PERIGEE
022479,000403: 
022480,000404:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED -
022481,000405:                                                                                                  #        TFF/RTMU        (+17) EARTH     RECIPROCAL OF PROPER GRAV CONSTANT FOR
022482,000406:                                                                                                  #                        (+14) MOON      EARTH OR MOON = 1/SQRT(MU).
022483,000407:                                                                                                  #        RONE            (-29) M         STATE VECTOR
022484,000408:                                                                                                  #        VONE            (-7) M/CS       STATE VECTOR
022485,000409:                                                                                                  #        RPADTEM         (-29) M EARTH   RADIUS OF LAUNCH PAD OR LUNAR LANDING
022486,000410:                                                                                                  #                        (-27) M MOON    SITE.
022487,000411:                                                                                                  #        HPERMIN         (-29) M EARTH   (300 OR 35) KFT MINIMUM PERIGEE ALTITUDE
022488,000412:                                                                                                  #                        (-27) M MOON    ABOVE LAUNCH PAD OR LUNAR LANDING SITE.
022489,000413:                                                                                                  #        V82EMFLG        (INT SW BIT)    RESET FOR EARTH, SET FOR MOON.
022490,000414: 
022491,000415:                                                                                                  #  DEBRIS:       QPRET, PDL, S2
022492,000416: 

Page 513

022494,000418: 23,2667                                           COUNT*   $$/SR30S                              
022495,000419: 
022496,000420: 23,2667           44001        SR30.1             SETPD    STQ                                   #  INITIALIZE PUSHDOWN LIST.
022497,000421: 23,2670           00001                                    0                                     
022498,000422: 23,2671           00051                                    S2                                    
022499,000423:                                                                                                  #  SR30.1 INPUT: RONE AT (-29)M EARTH/MOON
022500,000424:                                                                                                  #                VONE AT (-7)M/CS
022501,000425:                                                                                                  #  TFFCONMU, TFFRP/RA, CALCTPER AND CALCTFF
022502,000426:                                                                                                  #  CALLS REQUIRE:
022503,000427:                                                                                                  #  EARTH CENTERED (NO RESCALING REQUIRED)
022504,000428:                                                                                                  #        RONE SCALED TO B-29 M
022505,000429:                                                                                                  #        VONE SCALED TO B-7 M/CS
022506,000430:                                                                                                  #  MOON CENTERED (RESCALING REQUIRED)
022507,000431:                                                                                                  #        RONE SCALED TO B-27 M
022508,000432:                                                                                                  #        VONE SCALED TO B-5 M/CS
022509,000433: 23,2672           77214                           BOFF     VLOAD                                 
022510,000434: 23,2673           04742                                    V82EMFLG                              #  OFF FOR EARTH, ON FOR MOON.
022511,000435: 23,2674           46703                                    TFFCALLS                              
022512,000436: 23,2675           02327                                    RONE                                  
022513,000437: 23,2676           77752                           VSL2                                           
022514,000438: 23,2677           26327                           STOVL    RONE                                  
022515,000439: 23,2700           02335                                    VONE                                  
022516,000440: 23,2701           77752                           VSL2                                           
022517,000441: 23,2702           02335                           STORE    VONE                                  
022518,000442: 23,2703           77624        TFFCALLS           CALL                                           
022519,000443: 23,2704           56751                                    TFFCONMU                              
022520,000444: 23,2705           77624                           CALL                                           #  TFFRP/RA COMPUTES RAPO,RPER.
022521,000445: 23,2706           57017                                    TFFRP/RA                              
022522,000446:                                                                                                  #  RETURNS WITH RAPO IN D(MPAC).
022523,000447: 23,2707           77625                           DSU                                            
022524,000448: 23,2710           02323                                    RPADTEM                               
022525,000449: 23,2711           64414                           BOFF     SR2R                                  #  NEED HAPO AT (-29)M FOR DISPLAY.
022526,000450:                                                                                                  #  IF MOON CENTERED, RESCALE FROM (-27)M.
022527,000451:                                                                                                  #  IF EARTH CENTERED ALREADY AT (-29)M.
022528,000452: 23,2712           04742                                    V82EMFLG                              #  OFF FOR EARTH , ON FOR MOON.
022529,000453: 23,2713           46714                                    +1                                    
022530,000454: 23,2714           77624                           CALL                                           #  IF HAPO > MAXNM, SET HAPO =9999.9 NM.
022531,000455: 23,2715           46754                                    MAXCHK                                #  OTHERWISE STORE (RAPO-RPADTEM) IN HAPO.
022532,000456: 23,2716           16352        STORHAPO           STODL    HAPOX                                 
022533,000457: 23,2717           00017                                    RPER                                  
022534,000458: 23,2720           77625                           DSU                                            
022535,000459: 23,2721           02323                                    RPADTEM                               #  GIVES HPER AT (-29)M EARTH, (-27)M MOON.
022536,000460: 23,2722           00161                           STORE    MPAC       +4                         #  SAVE THIS FOR COMPARISON TO HPERMIN.
022537,000461: 23,2723           64414                           BOFF     SR2R                                  #  NEED HPER AT (-29)M FOR DISPLAY.
022538,000462:                                                                                                  #  IF MOON CENTERED, RESCALE FROM (-27)M.
022539,000463:                                                                                                  #  IF EARTH CENTERED ALREADY AT (-29)M.
022540,000464: 23,2724           04742                                    V82EMFLG                              #  OFF FOR EARTH, ON FOR MOON.
022541,000465: 23,2725           46726                                    +1                                    
022542,000466: 23,2726           77624                           CALL                                           #  IF HPER > MAXNM, SET HPER = 9999.9 NM.
022543,000467: 23,2727           46754                                    MAXCHK                                

Page 514

022545,000469: 23,2730           16354        STORHPER           STODL    HPERX                                 #  STORE (RPER - RPADTEM) INTO HPERX.
022546,000470: 23,2731           00161                                    MPAC       +4                         
022547,000471: 23,2732           51025                           DSU      BPL                                   #  HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
022548,000472: 23,2733           02321                                    HPERMIN                               #  IF HPER L/ HPERMIN (300 OR 35) KFT,
022549,000473: 23,2734           46740                                    DOTPER                                #  THEN ZERO INTO -TPER.
022550,000474: 23,2735           52145                           DLOAD    GOTO                                  #  OTHERWISE CALCULATE TPER.
022551,000475: 23,2736           15332                                    HI6ZEROS                              
022552,000476: 23,2737           46744                                    SKIPTPER                              
022553,000477: 23,2740           45145        DOTPER             DLOAD    CALL                                  
022554,000478: 23,2741           00017                                    RPER                                  
022555,000479: 23,2742           57055                                    CALCTPER                              
022556,000480: 23,2743           77676                           DCOMP                                          #  TPER IS PUT NEG INTO -TPER.
022557,000481: 23,2744           16346        SKIPTPER           STODL    -TPER                                 
022558,000482: 23,2745           02321                                    HPERMIN                               #  HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
022559,000483: 23,2746           45015                           DAD      CALL                                  
022560,000484: 23,2747           02323                                    RPADTEM                               #  RPADTEM AT (-29)M FOR EARTH, (-27)M MOON
022561,000485: 23,2750           57060                                    CALCTFF                               #  GIVES 59M59S FOR TFF IF RPER G/
022562,000486: 23,2751           77676                           DCOMP                                          #  HPERMIN + RPADTEM.  (TPER WAS NON ZERO)
022563,000487: 23,2752           36344                           STCALL   TFF                                   #  OTHERWISE COMPUTES TFF.       (GOTO)
022564,000488: 23,2753           00051                                    S2                                    
022565,000489: 
022566,000490: 23,2754           51025        MAXCHK             DSU      BPL                                   #  IF C(MPAC) > 9999.9 NM, MPAC = 9999.9 NM
022567,000491: 23,2755           06764                                    MAXNM                                 
022568,000492: 23,2756           46761                                    +3                                    #  OTHERWISE C(MPAC) = B(MPAC).
022569,000493: 23,2757           43415                           DAD      RVQ                                   
022570,000494: 23,2760           06764                                    MAXNM                                 
022571,000495: 23,2761           43545                 +3        DLOAD    RVQ                                   #  (USED BY P30 - P37 ALSO)
022572,000496: 23,2762           06764                                    MAXNM                                 
022573,000497: 
022574,000498: 23,2763           01065 05603  MAXNM              2OCT     0106505603                            
022575,000499: 

Page 515

022577,000501: 

There is no source code on this page — RSB 2004

022579,000503: 
022580,000504: 
022581,000505: 
022582,000506: 

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