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,1968Note that the date is the date of the printout, not the date of the program revision. |
027932,000002: ## Copyright: Public domain.
027933,000003: ## Filename: P30-P37.agc
027934,000004: ## Purpose: Part of the source code for Colossus, build 249.
027935,000005: ## It is part of the source code for the Command Module's (CM)
027936,000006: ## Apollo Guidance Computer (AGC), for Apollo 9.
027937,000007: ## Assembler: yaYUL
027938,000008: ## Reference: pp. 626-639.
027939,000009: ## Contact: Ron Burkey <info@sandroid.org>.
027940,000010: ## Website: www.ibiblio.org/apollo.
027941,000011: ## Mod history: 08/15/04 RSB. Began transcribing. (A little comes from the
027942,000012: ## corresponding Luminary131 file.)
027943,000013: ## 2010-10-24 JL Fixed page numbers.
027944,000014: ## 2017-01-06 RSB Page numbers now agree with those on the
027945,000015: ## original harcopy, as opposed to the PDF page
027946,000016: ## numbers in 1701.pdf.
027947,000017: ## 2017-01-17 RSB Cross-diff'd comment text (not whitespace)
027948,000018: ## vs the already-proofed corresponding Colossus
027949,000019: ## 237 and Comanche 55 source-code files
027950,000020: ## and corrected errors found.
027951,000021: ##
027952,000022: ## The contents of the "Colossus249" files, in general, are transcribed
027953,000023: ## from a scanned copy of the program listing. Notations on this
027954,000024: ## document read, in part:
027955,000025: ##
027956,000026: ## Assemble revision 249 of AGC program Colossus by NASA
027957,000027: ## 2021111-041. October 28, 1968.
027958,000028: ##
027959,000029: ## This AGC program shall also be referred to as
027960,000030: ## Colossus 1A
027961,000031: ##
027962,000032: ## Prepared by
027963,000033: ## Massachusetts Institute of Technology
027964,000034: ## 75 Cambridge Parkway
027965,000035: ## Cambridge, Massachusetts
027966,000036: ## under NASA contract NAS 9-4065.
027967,000037: ##
027968,000038: ## Refer directly to the online document mentioned above for further information.
027969,000039: ## Please report any errors (relative to the scanned pages) to info@sandroid.org.
027970,000040: ##
027971,000041: ## In some cases, where the source code for Luminary 131 overlaps that of
027972,000042: ## Colossus 249, this code is instead copied from the corresponding Luminary 131
027973,000043: ## source file, and then is proofed to incorporate any changes.
027974,000044:
![]() |
Page 626 |
027976,000046: 32,2017 BANK 32
027977,000047:
027978,000048: 35,2000 SETLOC P30S1
027979,000049: 35,2000 BANK
027980,000050:
027981,000051: 35,3544 E7,1625 EBANK= +MGA
027982,000052:
027983,000053: 35,3544 COUNT 35/P34
027984,000054:
027985,000055: 35,3544 77420 DISPMGA STQ EXIT # USED IN P30
027986,000056: 35,3545 02370 RGEXIT
027987,000057: 35,3546 03564 TC COMPTGO
027988,000058:
027989,000059: 35,3547 33132 DISP45 CAF V16N45
027990,000060: 35,3550 04555 TC BANKCALL
027991,000061: 35,3551 20763 CADR GOFLASHR
027992,000062: 35,3552 04106 TC GOTOPOOH
027993,000063: 35,3553 03560 TC END45
027994,000064: 35,3554 03547 TC DISP45
027995,000065: 35,3555 05301 P30PHSI TC PHASCHNG
027996,000066: 35,3556 00014 OCT 14
027997,000067: 35,3557 05112 TCR ENDOFJOB
027998,000068: 35,3560 06006 END45 TC INTPRET
027999,000069: 35,3561 52014 CLEAR GOTO
028000,000070: 35,3562 03664 TIMRFLAG
028001,000071: 35,3563 02370 RGEXIT
028002,000072:
028003,000073: 35,3564 00006 COMPTGO EXTEND # USED TO COMPUTE TTOGO
028004,000074: 35,3565 23066 QXCH PHSPRDT6 # ** GROUP 6 TEMPORARY USED ,, BEWARE **
028005,000075: 35,3566 05435 TC UPFLAG # SET TIMRFLAG
028006,000076: 35,3567 00155 ADRES TIMRFLAG # BIT 11 FLAG 7
028007,000077: 35,3570 34714 CAF ZERO
028008,000078: 35,3571 55145 TS NVWORD1
028009,000079: 35,3572 00004 INHINT
028010,000080: 35,3573 34712 CAF ONE
028011,000081: 35,3574 05140 TC WAITLIST
028012,000082: 35,3575 E7,1412 EBANK= TIG
028013,000083: 35,3575 03172 50067 2CADR CLOKTASK
028014,000084:
028015,000085: 35,3577 05261 TC 2PHSCHNG
028016,000086: 35,3600 40036 OCT 40036 # 6.3SPOT FOR CLOKTASK
028017,000087: 35,3601 05024 OCT 05024 # GROUP 4 CONTINUES HERE
028018,000088: 35,3602 13000 OCT 13000
028019,000089: 35,3603 01066 TC PHSPRDT6
![]() |
Page 627 |
028021,000091: # PROGRAM DESCRIPTION P30 DATE 3-6-67
028022,000092: # MOD. I BY S. ZELDIN- TO ADD P31 AND AD APT P30 FOR P31 USE. 22DEC67
028023,000093:
028024,000094: # FUNCTIONAL DESCRIPTION
028025,000095: # +30 (EXTERNAL DELTA-V TARGETTING PROGRAM)
028026,000096: # ACCEPTS ASTRONAUT INPUTS OF TIG,DELV(LV) AND COMPUTES, FOR DISPLAY,
028027,000097: # APOGEE, PERIGEE, DELV(MAG), MGA ASSOCIATED WITH DESIRED MANEUVER
028028,000098: # P31 (GENERAL LAMBERT AIMPOINT GUIDANCE)
028029,000099: # A GROUND RULE FOR P31 IS THE ANGLE BETWEEN THE TARGET VECTOR AND
028030,000100: # POSITION VECTOR AT TIG IS NOT 165-195 DEGREES APART
028031,000101: # BASED ON STORED INPUT OF OFFSET TARGET(B+29) AND DELTA T TRANS, AND
028032,000102: # ASTRONAUT ENTRY OF TIG,P31 COMPUTES REQUIRED VELOCITY FOR MANEUVER
028033,000103: # AND, FOR DISPLAY, APOGEE, PERIGEE, DELV(7AG), +MGA ASSOCIATED WITH
028034,000104: # DESIRED MANEUVER
028035,000105:
028036,000106: # THE FOLLOWING SUBROUTINES ARE USED IN P30 AND P31
028037,000107: # S30.1 (P30 ONLY)
028038,000108: # S31.1 (P31 ONLY)
028039,000109: # P30/P31 - DISPLAYS TIG
028040,000110: # CNTUP30 - DISPLAYS DELV(LV)
028041,000111: # PARAM30 - DISPLAYS APOGEE, PERIGEE, DELV(MAG), MGA, TIME FROM TIG,
028042,000112: # MARKS SINCE LAST THRUSTING MANEUVER
028043,000113:
028044,000114: # CALLING SEQUENCE VIA JOB FROM V37
028045,000115:
028046,000116: # EXIT VIA V37 CALL OR GOTOPOOH
028047,000117:
028048,000118: # OUTPUT FOR POWERED FLIGHT
028049,000119: # VTIG X
028050,000120: # RTIG X SEE S30.1
028051,000121: # DELVSIN X
028052,000122: # VGDISP
028053,000123: # RTARG X
028054,000124: # TPASS4 X SEE S31.1
028055,000125: # X
028056,000126:
028057,000127: 35,3604 COUNT 35/P30
028058,000128:
028059,000129: 35,3604 03636 P30 TC P30/P31
028060,000130: 35,3605 03655 TC CNTNUP30
028061,000131: 35,3606 05447 TC DOWNFLAG # RESET UPDATFLG
028062,000132: 35,3607 00027 ADRES UPDATFLG # BIT 7 FLAG 1
028063,000133: 35,3610 06006 TC INTPRET
028064,000134: 35,3611 77624 CALL
028065,000135: 35,3612 63102 S30.1
028066,000136: 35,3613 77776 EXIT
028067,000137: 35,3614 03665 TC PARAM30
028068,000138: 35,3615 05435 TC UPFLAG
![]() |
Page 628 |
028070,000140: 35,3616 00045 ADRES XDELVFLG # SET XDELVFLG BIT 8 FLAG 2
028071,000141: 35,3617 14106 TCF GOTOPOOH
028072,000142:
028073,000143: 35,3620 03636 P31 TC P30/P31
028074,000144: 35,3621 05447 TC DOWNFLAG
028075,000145: 35,3622 00027 ADRES UPDATFLG # RESET UPDATFLG BIT 7 FLAG 1
028076,000146: 35,3623 05447 TC DOWNFLAG
028077,000147: 35,3624 00156 ADRES NORMSW # RESET NORMSW BIT 10 FLAG 7
028078,000148: 35,3625 06006 TC INTPRET
028079,000149: 35,3626 77624 CALL
028080,000150: 35,3627 63154 S31.1
028081,000151: 35,3630 77776 EXIT
028082,000152: 35,3631 03655 TC CNTNUP30
028083,000153: 35,3632 03665 TC PARAM30
028084,000154: 35,3633 05447 TC DOWNFLAG
028085,000155: 35,3634 00045 ADRES XDELVFLG # BIT 8 FLAG 2
028086,000156: 35,3635 14106 TCF GOTOPOOH
028087,000157:
028088,000158: 35,3636 56002 P30/P31 XCH Q
028089,000159: 35,3637 55664 TS P30/31RT
028090,000160: 35,3640 05435 TC UPFLAG
028091,000161: 35,3641 00027 ADRES UPDATFLG # SET UPDATFLG BIT 7 FLAG 1
028092,000162: 35,3642 05435 TC UPFLAG
028093,000163: 35,3643 00031 ADRES TRACKFLG # SET TRACKFLG BIT 5 FLAG 1
028094,000164: 35,3644 33722 CAF V06N33 # T OF IGN
028095,000165: 35,3645 04555 TC BANKCALL
028096,000166: 35,3646 20763 CADR GOFLASHR
028097,000167: 35,3647 14106 TCF GOTOPOOH
028098,000168: 35,3650 01664 TC P30/31RT
028099,000169: 35,3651 13642 TCF P30/P31 +4
028100,000170: 35,3652 05301 TC PHASCHNG
028101,000171: 35,3653 00014 OCT 00014
028102,000172: 35,3654 05112 TC ENDOFJOB
028103,000173: 35,3655 56002 CNTNUP30 XCH Q
028104,000174: 35,3656 55127 TS P30/RET
028105,000175: 35,3657 33131 CAF V06N81
028106,000176: 35,3660 04555 TC BANKCALL
028107,000177: 35,3661 20624 CADR GOFLASH
028108,000178: 35,3662 14106 TCF GOTOPOOH
028109,000179: 35,3663 01127 TC P30/RET
028110,000180: 35,3664 13657 TCF CNTNUP30 +2
028111,000181: 35,3665 56002 PARAM30 XCH Q
028112,000182: 35,3666 55664 TS P30/31RT
028113,000183: 35,3667 33723 CAF V06N42
028114,000184: 35,3670 04555 TC BANKCALL
028115,000185: 35,3671 20624 CADR GOFLASH
028116,000186: 35,3672 04106 TC GOTOPOOH # ON TERMINATION GOTOPOOH
028117,000187: 35,3673 13675 TCF REFTEST # ON PROCEED GO DO REFTEST
![]() |
Page 629 |
028119,000189: 35,3674 13667 TCF PARAM30 +2
028120,000190: 35,3675 34676 REFTEST CAF BIT13
028121,000191: 35,3676 70077 MASK STATE +3 # REFSMFLAG
028122,000192: 35,3677 00006 EXTEND
028123,000193: 35,3700 13710 BZF NOTSET # REFSMFLAG =0, THEN BRANCH TO NOTSET
028124,000194: 35,3701 06006 TC INTPRET
028125,000195: 35,3702 41575 VLOAD PUSH
028126,000196: 35,3703 03646 DELVSIN
028127,000197: 35,3704 77624 CALL
028128,000198: 35,3705 10660 GET+MGA
028129,000199: 35,3706 77650 GOTO
028130,000200: 35,3707 73714 FLASHMGA
028131,000201: 35,3710 00006 NOTSET EXTEND
028132,000202: 35,3711 43721 DCS MARSDP
028133,000203: 35,3712 53626 DXCH +MGA # +MGA, +MGA+1 CONTAINS (-00001)
028134,000204: 35,3713 06006 TC INTPRET
028135,000205: 35,3714 77624 FLASHMGA CALL
028136,000206: 35,3715 73544 DISPMGA
028137,000207: 35,3716 77776 EXIT
028138,000208: 35,3717 01664 TC P30/31RT
028139,000209: 35,3720 00000 MARSDP OCT 00000 # (00000) (16440) = (+00001)
028140,000210: 35,3721 35100 OCT 35100
028141,000211: # ( .01 ) DEGREES IN THE LOW ORDER REGISTE
028142,000212:
028143,000213: 35,3722 01441 V06N33 VN 0633
028144,000214: 35,3723 01452 V06N42 VN 0642
028145,000215: 35,3724 04043 V16N35 VN 1635
028146,000216: 35,3725 01455 V06N45 VN 0645
028147,000217:
![]() |
Page 630 |
028149,000219: # PROGRAM DESCRIPTION S30.1 DATE 9NOV66
028150,000220: # MOD NO 1 LOG SECTION P30,P37
028151,000221: # MOD BY RAMA AIYAWAR **
028152,000222: # MOD.2 BY S.ZELDIN - TO CORRECT MOD.1 FOR COLOSSUS 29DEC67
028153,000223:
028154,000224: # FUNCTIONAL DESCRIPTION
028155,000225: # BASED ON STORED TARGET PARAMETERS (R OF IGNITION (RTIG), V OF
028156,000226: # IGNITION (VTIG), TIME OF IGNITION (TIG), DELV(LV), COMPUTE PERIGEE ALTITUDE
028157,000227: # A+OGEE ALTITUDE AND DELTA-V REQUIRED IN REF. COORDS. (DELVSIN)
028158,000228:
028159,000229: # CALLING SEQUENCE
028160,000230: # L CALL
028161,000231: # L+1 S30.1
028162,000232:
028163,000233: # NORMAL EXIT MODE
028164,000234: # AT L+2 OR CALLING SEQUENCE (GOTO L+2)
028165,000235:
028166,000236: # SUBROUTINES CALLED
028167,000237: # THISPREC
028168,000238: # PERIAPO
028169,000239:
028170,000240: # ALARM OR ABORT EXIT MODES
028171,000241: # NONE
028172,000242:
028173,000243: # ERASABLE INITIALIZATION REQUIRED
028174,000244: # TIG TIME OF IGNITION DP B28CS
028175,000245: # DELVSLV SPECIFIED DELTA-V INLOCAL VERT.
028176,000246: # COORDS. OF ACTIVE VEHICLE AT
028177,000247: # TIME OF IGNITION VCT. B+7 M/CS
028178,000248:
028179,000249: # OUTPUT
028180,000250: # RTIG POSITION AT TIG VCT. B+29 M
028181,000251: # VTIG VELOCITY AT TIG VCT. B+7 M
028182,000252: # HAPO APOGEE ALT. DP B+29 M
028183,000253: # HPER PERIGEE ALT. DP B+29 M
028184,000254: # DELVSIN DELVSLV IN REF COORDS VCT. B+7 M/CS
028185,000255: # VGDISP MAG. OF DELVSIN DP B+7 M/CS
028186,000256:
028187,000257: # DEBRIS QTEMP TEMP.ERASABLE
028188,000258: # QPRET, MPAC
028189,000259: # PUSHLIST
028190,000260:
028191,000261: 31,2000 SETLOC P30S1A
028192,000262: 31,2000 BANK
028193,000263:
028194,000264: 31,3102 COUNT 35/S30S
028195,000265:
028196,000266: 31,3102 71220 S30.1 STQ DLOAD
028197,000267: 31,3103 03657 QTEMP
028198,000268: 31,3104 03413 TIG # TIME IGNITION SCALED AT 2(+28)CS
028199,000269: 31,3105 34041 STCALL TDEC1
028200,000270: 31,3106 27022 THISPREC # ENCKE ROUTINE FOR
028201,000271:
028202,000272: 31,3107 67175 VLOAD SXA,2
028203,000273: 31,3110 00007 VATT
028204,000274: 31,3111 03746 RTX2
028205,000275: 31,3112 27640 STOVL VTIG
![]() |
Page 631 |
028207,000277: 31,3113 00001 RATT
028208,000278: 31,3114 03632 STORE RTIG
028209,000279: 31,3115 03540 STORE RACT3
028210,000280: 31,3116 53435 VXV UNIT
028211,000281: 31,3117 03640 VTIG
028212,000282: 31,3120 36617 STCALL UNRM
028213,000283: 31,3121 72667 LOMAT
028214,000284: 31,3122 61375 VLOAD VXM
028215,000285: 31,3123 03405 DELVSLV
028216,000286: 31,3124 00001 0
028217,000287: 31,3125 66172 VSL1 SXA,1
028218,000288: 31,3126 03745 RTX1
028219,000289: 31,3127 03646 STORE DELVSIN
028220,000290: 31,3130 77646 ABVAL
028221,000291: 31,3131 27654 STOVL VGDISP # MAG DELV
028222,000292: 31,3132 03632 RTIG
028223,000293: 31,3133 53315 PDVL VAD
028224,000294: 31,3134 03646 DELVSIN
028225,000295: 31,3135 03640 VTIG
028226,000296: 31,3136 77624 CALL
028227,000297: 31,3137 45312 PERIAPO1
028228,000298: 31,3140 77624 CALL
028229,000299: 31,3141 45422 SHIFTR1
028230,000300: 31,3142 77624 CALL
028231,000301: 31,3143 46754 MAXCHK
028232,000302: 31,3144 16366 STODL HPER # PERIGEE ALT B+29
028233,000303: 31,3145 00005 4D
028234,000304: 31,3146 77624 CALL
028235,000305: 31,3147 45422 SHIFTR1
028236,000306: 31,3150 77624 CALL
028237,000307: 31,3151 46754 MAXCHK
028238,000308: 31,3152 36364 STCALL HAPO # APOGEE ALT B+29
028239,000309: 31,3153 03657 QTEMP
028240,000310:
![]() |
Page 632 |
028242,000312: # S31.1 PROGRAM DESCRIPTION 28DEC67
028243,000313: # MOD.1 BY S.ZELDIN
028244,000314:
028245,000315: # S31.1 COMPUTES DELV IN REF AND LV COORDS,MAG OF DELV,INTERCEPT TIME,
028246,000316: # APOGEE AND PERIGEE ALT FOR REQUIRED MANEUVER
028247,000317:
028248,000318: # CALLING SEQUENCE
028249,000319: # L CALL
028250,000320: # L+1 S31.1
028251,000321:
028252,000322: # NORMAL EXIT MODE
028253,000323: # AT L +2 OF CALLING SEQUENCE (GOTO L+2)
028254,000324:
028255,000325: # SUBROUTINES CALLED
028256,000326: # AGAIN
028257,000327: # PERIAPO1
028258,000328: # SHIFTR1
028259,000329: # MIDGIM
028260,000330:
028261,000331: # NO ALARM OR ABORT MODES
028262,000332:
028263,000333: # INPUT
028264,000334: # DELLT4 DP +28
028265,000335: # TIG DP +28
028266,000336: # RTARG VCT +29
028267,000337:
028268,000338: # OUTPUT
028269,000339: # DELVLVC VCT +7
028270,000340: # VGDISP DP +7
028271,000341: # HAPO DP +29
028272,000342: # HPER DP +29
028273,000343: # TPASS4 DP +28
028274,000344:
028275,000345: # DEBRIS - QTEMP
028276,000346:
028277,000347: 31,3154 71220 S31.1 STQ DLOAD
028278,000348: 31,3155 03657 QTEMP
028279,000349: 31,3156 03413 TIG
028280,000350: 31,3157 34041 STCALL TDEC1
028281,000351: 31,3160 61663 AGAIN # RETURNS RTX2,RTX1,RATT,VATT,VIPRIME
028282,000352: 31,3161 63375 VLOAD PDVL # DELUEET3
028283,000353: 31,3162 03632 RTIG
028284,000354: 31,3163 03612 VIPRIME
028285,000355: 31,3164 77624 CALL
028286,000356: 31,3165 45312 PERIAPO1
028287,000357: 31,3166 77624 CALL
028288,000358: 31,3167 45422 SHIFTR1
028289,000359: 31,3170 77624 CALL
028290,000360: 31,3171 46754 MAXCHK
028291,000361: 31,3172 16366 STODL HPER # B29
028292,000362: 31,3173 00005 4D
028293,000363: 31,3174 77624 CALL
028294,000364: 31,3175 45422 SHIFTR1
028295,000365: 31,3176 77624 CALL
028296,000366: 31,3177 46754 MAXCHK
028297,000367: 31,3200 26364 STOVL HAPO # B29
![]() |
Page 633 |
028299,000369: 31,3201 03646 DELVEET3
028300,000370: 31,3202 00001 STORE 0
028301,000371: 31,3203 45014 SET CALL
028302,000372: 31,3204 01072 AVFLAG
028303,000373: 31,3205 10653 MIDGIM # GET DELVLVC B7 FOR DISPLAY
028304,000374: 31,3206 77646 ABVAL
028305,000375: 31,3207 17654 STODL VGDISP # B+7 FOR DISPLAY
028306,000376: 31,3210 03423 DELLT4
028307,000377: 31,3211 77615 DAD
028308,000378: 31,3212 03413 TIG
028309,000379: 31,3213 37656 STCALL TPASS4 # FOR S40.1
028310,000380: 31,3214 03657 QTEMP
028311,000381:
![]() |
Page 634 |
028313,000383: # SUBROUTINE NAME: DELRSPL (CONTINUATION OF V 82 IN CSM IF P11 ACTI
028314,000384: # TRANSFERRED COMPLETELY FROM SUNDISK, P30S REV 33. 9 SEPT 67.
028315,000385: # MOD NO: 0 MOD BY: ZELDIN DATE:
028316,000386: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 11 APR 67
028317,000387: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 12 MAY 67 ADD UR.RT CALC WHEN BELOW 300K FT
028318,000388: # MOD NO: 2.1 MOD BY: RR BAIRNSFATHER DATE: 5 JULY 67 FIX ERROR IN MOD. 2.
028319,000389: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 12 JUL 67 CHANGE SIGN OF DISPLAYED ERROR.
028320,000390: # MOD 4 MOD BY S.ZELDIN DATE 3 APRIL 68 CHANGE EQUATIONS FOR L/D=.18 WHICH REPLA
028321,000391:
028322,000392: # FUNCTION: CALCULATE (FOR DISPLAY ON CALL) AN APPROXIMATE MEASURE OF IN-PLANE SPLASH DOWN
028323,000393: # ERROR. IF THE FREE-FALL TRANSFER ANGLE TO 300K FT ABOVE PAD RADIUS IS POSITIVE:
028324,000394: # SPLASH ERROR= -RANGE TO TARGET + FREE-FALL TRANSFER ANGLE + ESTIMATED ENTRY ANGLE.
028325,000395: # THE TARGET LOCATION AT ESTIMATED TIME OF IMPACT IS USED. IF THE FREE-FALL TRANSFER
028326,000396: # ANGLE IS NEGATIVE: SPLASH ERROR= -RANGE TO TARGET
028327,000397: # THE PRESENT TARGET LOCATION IS USED.
028328,000398:
028329,000399: # CALLING SEQUENCE CALLED AFTER SR30.1 IF IN CSM AND IF P11 OPERATING (UNDER CONTROL OF V82)
028330,000400:
028331,000401: # SUBROUTINES CALLED: VGAMCALC, TFF/TRIG, LALOTORV.
028332,000402:
028333,000403: # EXIT RETURN DIRECTLY TO V 82 PROG. AT SPLRET
028334,000404:
028335,000405: # ERASABLE INITIALIZATION LEFT BY SR30.1 AND V82GON1
028336,000406:
028337,000407: # OUTPUT: RSP-RREC RANGE IN REVOLUTIONS DSKY DISPLAY IN N. MI.
028338,000408:
028339,000409: # DEBRIS: QPRET, PDL0 ... PDL7, PDL10
028340,000410:
028341,000411: # THETA(1)
028342,000412:
028343,000413: 32,2017 BANK 32
028344,000414: 32,2000 SETLOC DELRSPL1
028345,000415: 32,2000 BANK
028346,000416: 32,2017 COUNT* $$/P30 # PROGRAMS: P30 EXTERNAL DELTA V
028347,000417:
028348,000418: 32,2017 00011 DELRSPL STORE 8D
028349,000419: 32,2020 45244 BPL DSU
028350,000420: 32,2021 64067 CANTDO # GONE PAST 300K FT ALT
028351,000421: 32,2022 16326 1BITDP
028352,000422: 32,2023 45000 BOV CALL
028353,000423: 32,2024 64067 CANTDO # POSMAX INDICATES NO 300K FT SOLUTION.
028354,000424: 32,2025 55050 VGAMCALC # +GAMMA(REV) IN PMAC,V300 MAG(B-7)=PDL 0
028355,000425: 32,2026 45006 PUSH CALL
028356,000426: 32,2027 56573 TFF/TRIG
028357,000427: 32,2030 77624 CALL
028358,000428: 32,2031 64075 AUGEKUGL
028359,000429: 32,2032 65525 PDDL ACOS # T ENTRY PDL 6
028360,000430: 32,2033 00017 CDELF/2
028361,000431: 32,2034 77615 DAD
028362,000432: 32,2035 00005 4
028363,000433: 32,2036 26350 GETARG STOVL THETA(1)
028364,000434: 32,2037 03401 LAT(SPL)
028365,000435: 32,2040 15104 STODL LAT
028366,000436: 32,2041 15332 HI6ZEROS
028367,000437: 32,2042 15110 STODL ALT # ALT=0 = LAT +4
028368,000438: 32,2043 01205 PIPTIME
![]() |
Page 635 |
028370,000440: 32,2044 71214 BON DLOAD
028371,000441: 32,2045 03711 V37FLAG
028372,000442: 32,2046 64050 +2
028373,000443: 32,2047 02325 TSTART82
028374,000444: 32,2050 43225 DSU DAD
028375,000445: 32,2051 00011 8D
028376,000446: 32,2052 45014 CLEAR CALL
028377,000447: 32,2053 00662 ERADFLAG
028378,000448: 32,2054 26373 LALOTORV # R RECOV. IN ALPHAV AND MPAC
028379,000449:
028380,000450: 32,2055 63256 UNIT PDVL
028381,000451: 32,2056 02327 RONE
028382,000452: 32,2057 50256 UNIT DOT
028383,000453: 32,2060 65552 SL1 ARCCOS
028384,000454: 32,2061 77621 BDSU # ERROR = THETA EST - THETA TARG
028385,000455: # NEGATIVE NUMBER SIGNIFIES THAT WILL FALL SHORT.
028386,000456: # POSITIVE NUMBER SIGNIFIES THAT WILL OVERSHOOT.
028387,000457: 32,2062 02350 THETA(1)
028388,000458: 32,2063 36356 DELRDONE STCALL RSP-RREC # DOWNRANGE RECOVERY RANGE ERROR /360
028389,000459: 32,2064 27404 INTWAKE0
028390,000460: 32,2065 77624 CALL
028391,000461: 32,2066 46653 SPLRET
028392,000462: 32,2067 65345 CANTDO DLOAD PDDL # INITIALIZE ERASE TO DOT TARGET AND UR
028393,000463: # FOR RANGE ANGLE.
028394,000464: 32,2070 15330 HIDPHALF # TO PDL 0 FOR DEN INDDV.
028395,000465: 32,2071 15332 HI6ZEROS
028396,000466: 32,2072 77606 PUSH # ZERO TO PDL 2 FOR PHI ENTRY
028397,000467: 32,2073 34011 STCALL 8D
028398,000468: 32,2074 64036 GETARG # GO SET RSP-RREC =0
028399,000469:
028400,000470: 32,2075 77775 AUGEKUGL VLOAD
028401,000471: 32,2076 24251 X1CON -2
028402,000472: 32,2077 14045 STODL X1 -2
028403,000473: 32,2100 00001 0
028404,000474: 32,2101 50025 DSU BMN
028405,000475: 32,2102 24243 V(21K)
028406,000476: 32,2103 64130 LOOPSET
028407,000477: 32,2104 65060 XSU,1 XCHX,2
028408,000478: 32,2105 00050 S1
028409,000479: 32,2106 00046 X1
028410,000480: 32,2107 45324 XCHX,2 DSU
028411,000481: 32,2110 00050 S1
028412,000482: 32,2111 24231 V(3K)
028413,000483: 32,2112 65040 BMN XCHX,2
028414,000484: 32,2113 64130 LOOPSET
028415,000485: 32,2114 00050 S1
028416,000486: 32,2115 50025 DSU BMN
028417,000487: 32,2116 24241 V(4K)
028418,000488: 32,2117 64130 LOOPSET
028419,000489: 32,2120 65124 XCHX,2 XCHX,2
![]() |
Page 636 |
028421,000491: 32,2121 00050 S1
028422,000492: 32,2122 00046 X1
028423,000493: 32,2123 50025 DSU BMN
028424,000494: 32,2124 24225 V(400)
028425,000495: 32,2125 64130 LOOPSET
028426,000496: 32,2126 77730 SXA,1
028427,000497: 32,2127 00050 S1
028428,000498: 32,2130 52110 LOOPSET INCR,1 GOTO
028429,000499: 32,2131 00001 DEC 1 B-14
028430,000500: 32,2132 64135 K1K2LOOP
028431,000501: 32,2133 77730 K2CALC SXA,1
028432,000502: 32,2134 00050 S1
028433,000503: 32,2135 44745 K1K2LOOP DLOAD DSU*
028434,000504: 32,2136 00001 0
028435,000505: 32,2137 24240 V(32K) +1,1
028436,000506: 32,2140 42603 DMP* DAD*
028437,000507: 32,2141 24224 YK1K2 +1,1
028438,000508: 32,2142 24210 CK1K2 +1,1
028439,000509: 32,2143 60125 PDDL TIX,1
028440,000510: 32,2144 00003 2
028441,000511: 32,2145 64133 K2CALC
028442,000512: 32,2146 55225 DSU BDDV
028443,000513: 32,2147 50000 BOV BMN
028444,000514: 32,2150 64167 MAXPHI
028445,000515: 32,2151 64167 MAXPHI
028446,000516: 32,2152 45325 PHICALC PDDL DSU # PHI ENTRY PDL 4D
028447,000517: 32,2153 00001 0
028448,000518: 32,2154 24251 V(26K)
028449,000519: 32,2155 71244 BPL DLOAD
028450,000520: 32,2156 64164 TGR26
028451,000521: 32,2157 24245 TLESS26
028452,000522: 32,2160 77671 DDV
028453,000523: 32,2161 00001 0
028454,000524: 32,2162 43405 TENT DMP RVQ
028455,000525: 32,2163 00005 4D
028456,000526: 32,2164 52145 TGR26 DLOAD GOTO
028457,000527: 32,2165 24247 TGR26CON
028458,000528: 32,2166 64162 TENT
028459,000529: 32,2167 52145 MAXPHI DLOAD GOTO
028460,000530: 32,2170 24173 MAXPHIC
028461,000531: 32,2171 64152 PHICALC
028462,000532: 32,2172 02755 01307 MAXPHIC 2DEC .09259298 # 2000 NM FOR MAXIMUM PHI ENTRY
028463,000533:
028464,000534: 32,2174 COUNT* $$/P30
028465,000535:
028466,000536: # BELOW
028467,000537: # <<<< TABLE IS INDEXED. KEEP IN ORDER >>>
![]() |
Page 637 |
028469,000539: 32,2174 00013 22652 2DEC 7.07304526 E-4 # 5500
028470,000540: 32,2176 00005 01642 2DEC 3.08641975 E-4 # 2400
028471,000541: 32,2200 00005 01642 2DEC 3.08641975 E-4 # 2400
028472,000542: 32,2202 77556 53522 2DEC -8.8888888 E-3 # -3.2
028473,000543: 32,2204 00055 20266 2DEC 2.7777777 E-3 # 1
028474,000544: 32,2206 00155 07202 CK1K2 2DEC 6.6666666 E-3 # 2.4
028475,000545: 32,2210 00000 00000 2DEC 0 B-28 # 0
028476,000546: 32,2212 77730 71525 2DEC* -1.86909989 E-5 B7* # -.443
028477,000547: 32,2214 00000 00000 2DEC 0 B-28
028478,000548: 32,2216 04445 10102 2DEC* 1.11639691 E-3 B7* # .001225
028479,000549: 32,2220 03726 31201 2DEC* 9.56911636 E-4 B7* # .00105
028480,000550: 32,2222 01040 26313 YK1K2 2DEC* 2.59733157 E-4 B7* # .000285
028481,000551: 32,2224 00234 01660 V(400) 2DEC 1.2192 B-7
028482,000552: 32,2226 25254 01014 V(28K) 2DEC 85.344 B-7
028483,000553: 32,2230 02222 15646 V(3K) 2DEC 9.144 B-7
028484,000554: 32,2232 22223 16457 V(24K) 2DEC 73.152 B-7
028485,000555: 32,2234 25254 01014 2DEC 85.344 B-7
028486,000556: 32,2236 30304 23351 V(32K) 2DEC 97.536 B-7
028487,000557: 32,2240 03030 22335 V(4K) 2DEC 12.192 B-7
028488,000558: 32,2242 20000 00000 V(21K) 2DEC 64.000 B-7
028489,000559: 32,2244 00033 05763 TLESS26 2DEC* 5.70146688 E7 B-35* # 8660PHI/V
028490,000560: 32,2246 00053 36200 TGR26CON 2DEC 7.2 E5 B-28 # PHI/3
028491,000561: 32,2250 23637 27636 V(26K) 2DEC 79.248 B-7 # 26000
028492,000562: 32,2252 00012 X1CON DEC 10 B-14
028493,000563: 32,2253 00010 DEC 8 B-14
028494,000564: 32,2254 00006 DEC 6 B-14
028495,000565: # <<<< TABLE IS INDEXED. KEEP IN ORDER >>>
![]() |
Page 638 |
028497,000567: # ABOVE
![]() |
Page 639 |
028499,000569: # ..... AVFLAGA/P .....
028500,000570:
028501,000571: # SUBROUTINES USED
028502,000572:
028503,000573: # UPFLAG
028504,000574: # DOWNFLAG
028505,000575:
028506,000576: 35,2000 SETLOC P30S1
028507,000577: 35,2000 BANK
028508,000578: 35,3726 E4,1770 EBANK= SUBEXIT
028509,000579:
028510,000580:
028511,000581: 35,3726 00006 AVFLAGA EXTEND # AVFLAG = CSM
028512,000582: 35,3727 23770 QXCH SUBEXIT
028513,000583: 35,3730 05447 TC DOWNFLAG
028514,000584: 35,3731 00050 ADRES AVFLAG # BIT 5 FLAG 2
028515,000585: 35,3732 34753 CAF EBANK7
028516,000586: 35,3733 54003 TS EBANK
028517,000587: 35,3734 E7,1424 EBANK= ECSTEER
028518,000588: 35,3734 34676 CAF BIT13
028519,000589: 35,3735 55424 TS ECSTEER # SET ECSTEER = 1
028520,000590: 35,3736 34700 CAF EBANK4
028521,000591: 35,3737 54003 TS EBANK
028522,000592: 35,3740 E4,1770 EBANK= SUBEXIT
028523,000593: 35,3740 01770 TC SUBEXIT
028524,000594: 35,3741 00006 AVFLAGP EXTEND # AVFLAG = LEM
028525,000595: 35,3742 23770 QXCH SUBEXIT
028526,000596: 35,3743 05435 TC UPFLAG
028527,000597: 35,3744 00050 ADRES AVFLAG # BIT 5 FLAG 2
028528,000598: 35,3745 01770 TC SUBEXIT
028529,000599: 35,3746 00006 P20FLGON EXTEND
028530,000600: 35,3747 23770 QXCH SUBEXIT
028531,000601: 35,3750 05435 TC UPFLAG
028532,000602: 35,3751 00031 ADRES TRACKFLG
028533,000603: 35,3752 05435 TC UPFLAG
028534,000604: 35,3753 00027 ADRES UPDATFLG
028535,000605: 35,3754 01770 TC SUBEXIT
028536,000606:
028537,000607:
End of include-file P30,P37.agc. Parent file is MAIN.agc