Source Code
029692,000001: # Copyright: Public domain.
029693,000002: # Filename: P76.agc
029694,000003: # Purpose: A section of Luminary 1C, revision 131.
029695,000004: # It is part of the source code for the Lunar Module's (LM)
029696,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14.
029697,000006: # This file is intended to be a faithful transcription, except
029698,000007: # that the code format has been changed to conform to the
029699,000008: # requirements of the yaYUL assembler rather than the
029700,000009: # original YUL assembler.
029701,000010: # Reference: pp. 716-718 of 1729.pdf.
029702,000011: # Contact: Ron Burkey <info@sandroid.org>.
029703,000012: # Website: www.ibiblio.org/apollo
029704,000013: # Mod history: 05/24/03 RSB. Began transcribing.
029705,000014:
029706,000015: # Page 716
029707,000016: # 1) PROGRAM NAME -- TARGET DELTA V PROGRAM (P76).
029708,000017: # 2) FUNCTIONAL DESCRIPTION -- UPON ENTRY BY ASTRONAUT ACTION, P76 FLASHES DSKY REQUESTS TO THE ASTRONAUT
029709,000018: # TO PROVIDE VIA DSKY (1) THE DELTA V TO BE APPLIED TO THE OTHER VEHICLE STATE VECTOR AND (2) THE
029710,000019: # TIME (TIG) AT WHICH THE OTHER VEHICLE VELOCITY WAS CHANGED BY EXECUTION OF A THRUSTING MANEUVER. THE
029711,000020: # OTHER VEHICLE STATE VECTOR IS INTEGRATED TO TIG AND UPDATED BY THE ADDITION OF DELTA V (DELTA V HAVING
029712,000021: # BEEN TRANSFORMED FROM LV TO REF COSYS). USING INTEGRVS, THE PROGRAM THEN INTEGRATES THE OTHER
029713,000022: # VEHICLE STATE VECTOR TO THE STATE VECTOR OF THIS VEHICLE, THUS INSURING THAT THE W-MATRIX AND BOTH VEHICLE
029714,000023: # STATES CORRESPOND TO THE SAME TIME.
029715,000024: # 3) ERASABLE INIITIALIZATION REQUIRED -- NONE.
029716,000025: # 4) CALLING SEQUENCES AND EXIT MODES -- CALLED BY ASTRONAUT REQUEST THRU DSKY V 37 E 76E.
029717,000026: # EXITS BY TCF ENDOFJOB.
029718,000027: # 5) OUTPUT -- OTHER VEHICLE STATE VECTOR INTEGRATED TO TIG AND INCREMENTED BY DELTA V IN REF COSYS.
029719,000028: # THE PUSHLIST CONTAINS THE MATRIX BY WHICH THE INPUT DELTA V MUST BE POST-MULTIPLIED TO CONVERT FROM LV
029720,000029: # TO REF COSYS.
029721,000030: # 6) DEBRIS -- OTHER VEHICLE STATE VECTOR.
029722,000031: # 7) SUBROUTINES CALLED -- BANKCALL, GOXDSPF, CSMPREC (OR LEMPREC), ATOPCSM (OR ATOPLEM), INTSTALL, INTWAKE, PHASCHNG
029723,000032: # INTPRET, INTEGRVS, AND MINIRECT.
029724,000033: # 8) FLAG USE -- MOONFLAG, CMOONFLG, INTYPFLG, RASFLAG, AND MARKCT.
029725,000034:
029726,000035: 30,2061 BANK 30
029727,000036: 13,2000 SETLOC P76LOC
029728,000037: 13,2000 BANK
029729,000038:
029730,000039: 13,2207 COUNT* $$/P76
029731,000040:
029732,000041: 13,2207 E7,1441 EBANK= TIG
029733,000042:
029734,000043: 13,2207 05504 P76 TC UPFLAG
029735,000044: 13,2210 00031 ADRES TRACKFLG
029736,000045:
029737,000046: 13,2211 06042 TC INTPRET
029738,000047: 13,2212 77775 VLOAD
029739,000048: 13,2213 03434 DELVLVC
029740,000049: 13,2214 02223 STORE DELVOV
029741,000050: 13,2215 77776 EXIT
029742,000051:
029743,000052: 13,2216 32335 CAF V06N84 +1 # FLASH VERB 06 NOUN 33, DISPLAY LAST TIG,
029744,000053: 13,2217 04616 TC BANKCALL # AND WAIT FOR KEYBOARD ACTION.
029745,000054: 13,2220 20477 CADR GOFLASH
029746,000055: 13,2221 12331 TCF ENDP76
029747,000056: 13,2222 02224 TC +2 # PROCEED
029748,000057: 13,2223 02216 TC -5 # STORE DATA AND REPEAT FLASHING
029749,000058: 13,2224 32334 CAF V06N84 # FLASH LAST DELTA V,
029750,000059: 13,2225 04616 TC BANKCALL # AND WAIT FOR KEYBOARD ACTION.
029751,000060: 13,2226 20477 CADR GOFLASH
029752,000061: 13,2227 12331 TCF ENDP76
029753,000062: 13,2230 02232 TC +2
029754,000063: 13,2231 02224 TC -5
029755,000064: 13,2232 06042 TC INTPRET # RETURN TO INTERPRETIVE CODE
029756,000065: # Page 717
029757,000066: 13,2233 43145 DLOAD SET
029758,000067: 13,2234 03442 TIG
029759,000068: 13,2235 01076 NODOFLAG
029760,000069: 13,2236 34041 STCALL TDEC1 # SET TDEC1=TIG FOR ORBITAL INTEGRATION
029761,000070: 13,2237 27042 OTHPREC
029762,000071: 13,2240 53575 COMPMAT VLOAD UNIT
029763,000072: 13,2241 00001 RATT
029764,000073: 13,2242 77676 VCOMP # U(-R)
029765,000074: 13,2243 00031 STORE 24D # U(-R) TO 24D
029766,000075: 13,2244 53435 VXV UNIT # U(-R) X V = U(V X R)
029767,000076: 13,2245 00007 VATT
029768,000077: 13,2246 00023 STORE 18D
029769,000078: 13,2247 53435 VXV UNIT # U(V X R) X U(-R) = U((R X V) X R)
029770,000079: 13,2250 00031 24D
029771,000080: 13,2251 24015 STOVL 12D
029772,000081: 13,2252 02223 DELVOV
029773,000082: 13,2253 76505 VXM VSL1 # V(MPAC)=DELTA V IN REFCOSYS
029774,000083: 13,2254 00015 12D
029775,000084: 13,2255 77655 VAD
029776,000085: 13,2256 00007 VATT
029777,000086: 13,2257 00007 STORE 6 # V(PD6)=VATT + DELTA V
029778,000087: 13,2260 77624 CALL # PRESENT WOULD-BE USER OF ORBITAL
029779,000088: 13,2261 27410 INTSTALL # INTEG FROM INTERFERING WITH UPDATING
029780,000089: 13,2262 77624 CALL
029781,000090: 13,2263 26336 P76SUB1
029782,000091: 13,2264 53775 VLOAD VSR*
029783,000092: 13,2265 00007 6
029784,000093: 13,2266 57176 0,2
029785,000094: 13,2267 25543 STOVL VCV
029786,000095: 13,2270 00001 RATT
029787,000096: 13,2271 77657 VSR*
029788,000097: 13,2272 57176 0,2
029789,000098: 13,2273 15535 STODL RCV
029790,000099: 13,2274 03442 TIG
029791,000100: 13,2275 01517 STORE TET
029792,000101: 13,2276 71214 CLEAR DLOAD
029793,000102: 13,2277 01673 INTYPFLG
029794,000103: 13,2300 01643 TETTHIS
029795,000104: 13,2301 34041 INTOTHIS STCALL TDEC1
029796,000105: 13,2302 27106 INTEGRVS
029797,000106: 13,2303 77624 CALL
029798,000107: 13,2304 27410 INTSTALL
029799,000108: 13,2305 77775 VLOAD
029800,000109: 13,2306 00017 RATT1
029801,000110: 13,2307 01503 STORE RRECT
029802,000111: 13,2310 15535 STODL RCV
029803,000112: 13,2311 00015 TAT
029804,000113: 13,2312 25517 STOVL TET
029805,000114: 13,2313 00025 VATT1
029806,000115: 13,2314 77624 CALL
029807,000116: # Page 718
029808,000117: 13,2315 27705 MINIRECT
029809,000118: 13,2316 77776 EXIT
029810,000119: 13,2317 05353 TC PHASCHNG
029811,000120: 13,2320 04024 OCT 04024
029812,000121:
029813,000122: 13,2321 06042 TC INTPRET
029814,000123: 13,2322 45014 SET CALL
029815,000124: 13,2323 05070 REINTFLG
029816,000125: 13,2324 26660 ATOPOTH
029817,000126: 13,2325 77624 CALL
029818,000127: 13,2326 27417 INTWAKE0
029819,000128: 13,2327 77414 OUT CLEAR EXIT # ALLOW V37. NO NEED TO CLEAR NODOFLAG AT
029820,000129: 13,2330 01276 NODOFLAG # ENDP76 SINCE FLAG NOT SET WHEN DISPLAY
029821,000130: # RESPONSES TRANSFER THERE FROM P76+.
029822,000131: 13,2331 34755 ENDP76 CAF ZERO
029823,000132: 13,2332 55462 TS MARKCTR # CLEAR RR TRACKING MARK COUNTER
029824,000133: 13,2333 16001 TCF GOTOP00H
029825,000134:
029826,000135: 13,2334 01524 V06N84 NV 0684
029827,000136: 13,2335 01441 NV 0633
029828,000137: 13,2336 43174 P76SUB1 AXT,2 SET
029829,000138: 13,2337 00002 2
029830,000139: 13,2340 00063 MOONFLAG # SET MEANS MOON IS SPHERE OF INFLUENCE.
029831,000140: 13,2341 77014 BON AXT,2
029832,000141: 13,2342 04303 CMOONFLG # SET MEANS PERM CM STATE IN LUNAR SPHERE.
029833,000142: 13,2343 00052 QPRET
029834,000143: 13,2344 00000 0
029835,000144: 13,2345 43414 CLEAR RVQ
029836,000145: 13,2346 00263 MOONFLAG
029837,000146:
029838,000147:
029839,000148:
End of include-file P76.agc. Parent file is MAIN.agc