Source Code

These source-code files were transcribed from a printout in Don Eyles's personal collection, scanned by archive.org, and financially sponsored by Peter McDermott. A team of volunteers performed the transcription and proof-reading. The scanned page images are available at the Virtual AGC Project website, as well as higher-quality (but much larger) images at the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository.

Notations on the program listing read, in part:

	YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES
	DEC 13, 1966

	THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 
        OF PROGRAM SUNBURST BY LEM GROUP
Note that the date is the date of the printout, not the date of the program revision.

039106,000002:                                                                                                  ## Copyright:   Public domain.
039107,000003:                                                                                                  ## Filename:    THRUST_MAGNITUDE_FILTER.agc
039108,000004:                                                                                                  ## Purpose:     A section of Sunburst revision 37, or Shepatin revision 0.
039109,000005:                                                                                                  ##              It is part of an early development version of the software
039110,000006:                                                                                                  ##              for Apollo Guidance Computer (AGC) on the unmanned Lunar
039111,000007:                                                                                                  ##              Module (LM) flight Apollo 5. Sunburst 37 was the program
039112,000008:                                                                                                  ##              upon which Don Eyles's offline development program Shepatin
039113,000009:                                                                                                  ##              was based; the listing herein transcribed was actually for
039114,000010:                                                                                                  ##              the equivalent revision 0 of Shepatin.
039115,000011:                                                                                                  ##              This file is intended to be a faithful transcription, except
039116,000012:                                                                                                  ##              that the code format has been changed to conform to the
039117,000013:                                                                                                  ##              requirements of the yaYUL assembler rather than the
039118,000014:                                                                                                  ##              original YUL assembler.
039119,000015:                                                                                                  ## Reference:   pp. 862-863
039120,000016:                                                                                                  ## Assembler:   yaYUL
039121,000017:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
039122,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
039123,000019:                                                                                                  ## Mod history: 2017-05-24 MAS  Created from Sunburst 120.
039124,000020:                                                                                                  ##              2017-06-08 HG   Transcribed
039125,000021:                                                                                                  ##              2017-06-23 RSB  Proofed comment text with
039126,000022:                                                                                                  ##                              octopus/ProoferComments.
039127,000023: 

Page 862

039129,000025:                                                                                                  #  PROGRAM NAME - ATMAG
039130,000026: 
039131,000027:                                                                                                  #  MODIFICATION BY - BERMAN AND CATTANACH
039132,000028: 
039133,000029:                                                                                                  #  FUNCTIONAL DESCRIPTION -
039134,000030: 
039135,000031:                                                                                                  #      THE THRUST MAGNITUDE FILTER CONVERTS ABDELV TO M/CS, INVERTS AND COMBINES IT WITH TWO PRECEDING
039136,000032:                                                                                                  #  INPUTS TO PRODUCE THE INVERTED EXHAUST VELOCITY, BURN UP TIME, AND ANTICIPATED THRUST ACCELERATION FOR
039137,000033:                                                                                                  #  THE NEXT TIME INCREMENT.  THRUST MAGNITUDE FILTER IS BYPASSED UNTIL AFTER THE MAIN ENGINE GOES ON.
039138,000034: 
039139,000035:                                                                                                  #  CALLING SEQUENCE - ATMAG IS ENTERED BY EXTEND                AND        EXTEND
039140,000036:                                                                                                  #                                        DCA     ATMAGAD                   DCA     ATMAG4
039141,000037:                                                                                                  #                                        DXCH    AVGEXIT                   DXCH    AVGEXIT
039142,000038:                                                                                                  #  NORMAL EXIT - FROM ATMAG BY GOTO
039143,000039: 
039144,000040:                                                                                                  #                                    ASCENT
039145,000041: 
039146,000042:                                                                                                  #  OUTPUT - INVERTED EXHAUST VELOCITY, BURN UP TIME, AND ANTICIPATED THRUST ACCELERATION
039147,000043: 
039148,000044:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED - THIS IS DONE BY PRE-APS PROGRAMS
039149,000045: 
039150,000046:                                                                                                  #  DEBRIS - ABDVCONV, 1/DV1, 1/DV2, 1/VE, TBUP, AT.
039151,000047: 
039152,000048:                                                                                                  #  ALARM OR ABORT EXIT MODES -
039153,000049: 
039154,000050:                                                                                                  #  SUBROUTINES CALLED - NONE
039155,000051: 
039156,000052: 32,2713                                           BANK     32                                    
039157,000053: 
039158,000054: 32,2713  E4,1452                                  EBANK=   TCO                                   #  EBANK4
039159,000055: 
039160,000056: 32,2713           06103        ATMAG              TC       INTPRET                               
039161,000057: 32,2714           45345                           DLOAD    DSU                                   
039162,000058: 32,2715           02165                                    ABDVCONV                              #  ABDVCONV (PIPA READING CONVERTED TO
039163,000059: 32,2716           24766                                    DVMIN                                 #  M/CS) IS INVERTED AND SCALED AT 2**-5
039164,000060: 32,2717           67240                           BMN      SLOAD                                 #  AS INPUT TO FILTER
039165,000061: 32,2720           64762                                    FILTEND                               
039166,000062: 32,2721           24765                                    BIT6H                                 
039167,000063: 
039168,000064: 32,2722           77471                           DDV      EXIT                                  
039169,000065: 32,2723           02165                                    ABDVCONV                              
039170,000066: 
039171,000067: 32,2724           52145                           DXCH     MPAC                                  
039172,000068: 32,2725           53563                           DXCH     1/DV2                                 
039173,000069: 32,2726           53561                           DXCH     1/DV1                                 
039174,000070: 32,2727           52145                           DXCH     MPAC                                  #  MPAC=1/DV0*2**-5
039175,000071: 
039176,000072: 32,2730           06103                           TC       INTPRET                               
039177,000073: 32,2731           45206                           PUSH     DSU                                   #  PUSH DOWN 1/DVO                       2
039178,000074: 
039179,000075: 32,2732           02163                                    1/DV2                                 #  MPAC = (1/DV0-1/DV2)*2**-5
039180,000076: 32,2733           54206                           PUSH     SLR                                   #                                        4
039181,000077: 32,2734           21211                                    8D                                    #  MPAC = (1/DV0-1/DV2)*2**3 = 1/VE*2**4
039182,000078: 

Page 863

039184,000080: 32,2735           16025                           STODL    1/VE                                  #  INVERTED EXHAUST VELOCITY              2
039185,000081: 
039186,000082: 32,2736           43342                           SR1      DAD                                   #  MPAC = (1/DV0-1/DV2)*2**-6
039187,000083: 32,2737           02161                                    1/DV1                                 #  MPAC = (1/DV0+2/DV1-1/DV2)*2**-6
039188,000084: 32,2740           43362                           SR1R     DAD                                   #  MPAC = (5/DV0+2/DV1-1/DV2)*2**-7       0
039189,000085: 32,2741           41205                           DMP      DMP                                   
039190,000086: 
039191,000087: 32,2742           24665                                    DP2/3H                                #  (5/6DV0+1/3DV1-1/6DV2)*2**-5
039192,000088: 32,2743           24770                                    DTASC1                                #  MPAC = (1/DV3*2**-5) * (DELTAT*2**-8) =
039193,000089:                                                                                                  #         DELTAT/DV3*2**-13
039194,000090: 32,2744           77671                           DDV                                            
039195,000091: 32,2745           02025                                    1/VE                                  #  (TBUP/VE*2**-13)/(1/VE*2**4)=TBUP*2**-17
039196,000092: 32,2746           16027                           STODL    TBUP                                  #  BURN UP TIME
039197,000093: 
039198,000094: 32,2747           02161                                    1/DV1                                 #  MPAC = 2**-5/DV1
039199,000095: 32,2750           45342                           SR1      DSU                                   #  MPAC = 2**-6/DV1
039200,000096: 32,2751           00001                                    00D                                   #  MPAC = (-2/DV0+1/DV1)*2**-6
039201,000097: 32,2752           43342                           SR1      DAD                                   #  MPAC = (-2/DV0+1/DV1)*2**-7
039202,000098: 32,2753           02163                                    1/DV2                                 #  MPAC = (-2/DV0+1/DV1+4/DV2)*2**-7
039203,000099: 
039204,000100: 32,2754           41205                           DMP      DMP                                   #  MPAC = (-2/3DV0+1/3DV1+4/3DV2)*2**-6 =
039205,000101: 32,2755           24665                                    DP2/3H                                #         1/DV3*2**-6
039206,000102: 32,2756           24770                                    DTASC1                                #  MPAC = (1/DV3*2**-6)*(DELTAT*2**-8) =
039207,000103:                                                                                                  #  DELTA/DV3*2**-14 = 1/AT*2**-14
039208,000104: 32,2757           77665                           BDDV                                           
039209,000105: 32,2760           35445                                    D1/32                                 #  MPAC = 2**-5/(1/AT*2**-14) = AT*2**9
039210,000106: 32,2761           02023                           STORE    AT                                    #  ANTICIPATED THRUST ACCELERATION
039211,000107: 
039212,000108: 32,2762           77650        FILTEND            GOTO                                           
039213,000109: 32,2763           64120                                    ASCENT                                
039214,000110: 
039215,000111: 32,2764           00040        BIT6H              OCT      40                                    
039216,000112: 32,2765           00017 13412  DVMIN              2DEC     .03                                   
039217,000113: 32,2767           31000 00000  DTASC1             2DEC     200        B-28                       

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