# Copyright: Public domain. # Filename: P76.agc # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055. # It is part of the source code for the Command Module's (CM) # Apollo Guidance Computer (AGC), for Apollo 11. # Assembler: yaYUL # Contact: Hartmuth Gutsche . # Website: www.ibiblio.org/apollo. # Pages: pp 511-513 # Mod history: 2009-05-08 HG Adapting from the Luminary131/ file # of the same name, using Comanche055 page # images 0511.jpg - 0513.jpg. # # This source code has been transcribed or otherwise adapted from digitized # images of a hardcopy from the MIT Museum. The digitization was performed # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many # thanks to both. The images (with suitable reduction in storage size and # consequent reduction in image quality as well) are available online at # www.ibiblio.org/apollo. If for some reason you find that the images are # illegible, contact me at info@sandroid.org about getting access to the # (much) higher-quality images which Paul actually created. # # Notations on the hardcopy document read, in part: # # Assemble revision 055 of AGC program Comanche by NASA # 2021113-051. 10:28 APR. 1, 1969 # # This AGC program shall also be referred to as # Colossus 2A # Page 511 # 1) PROGRAM NAME - TARGET DELTA V PROGRAM (P76). # 2) FUNCTIONAL DESCRIPTION - UPON ENTRY BY ASTRONAUT ACTION, P76 FLASHES DSKY REQUESTS TO THE ASTRONAUT # TO PROVIDE VIA DSKY (1) THE DELTA V TO BE APPLIED TO THE OTHER VEHICLE STATE VECTOR AND (2) THE # TIME (TIG) AT WHICH THE OTHER VEHICLE VELOCITY WAS CHANGED BY EXECUTION OF A THRUSTING MANEUVER. THE # OTHER VEHICLE STATE VECTOR IS INTEGRATED TO TIG AND UPDATED BY THE ADDITION OF DELTA V (DELTA V HAVING # BEEN TRANSFORMED FROM LV TO REF COSYS). USING INTEGRVS, THE PROGRAM THEN INTEGRATES THE OTHER # VEHICLE STATE VECTOR TO THE STATE VECTOR OF THIS VEHICLE, THUS INSURING THAT THE W-MATRIX AND BOTH VEHICLE # STATES CORRESPOND TO THE SAME TIME. # 3) ERASABLE INITIALIZATION REQUIRED - NONE. # 4) CALLING SEQUENCES AND EXIT MODES - CALLED BY ASTRONAUT REQUEST THRU DSKY V 37 E 76 E. # EXITS BY TCF ENDOFJOB. # 5) OUTPUT - OTHER VEHICLE STATE VECTOR INTEGRATED TO TIG AND INCREMENTED BY DELTA V IN REF COSYS. # THE PUSHLIST CONTAINS THE MATRIX BY WHICH THE INPUT DELTA V MUST BE POST-MULTIPLIED TO CONVERT FROM LV # TO REF COSYS. # 6) DEBRIS - OTHER VEHICLE STATE VECTOR. # 7) SUBROUTINES CALLED - BANKCALL,GOXDSPF,CSMPREC (OR LEMPREC),ATOPCSM (OR ATOPLEM),INTSTALL,INTWAKE, PHASCHNG # INTPRET, INTEGRVS, AND MINIRECT. # 8) FLAG USE - MOONFLAG,CMOONFLG,INTYPFLG,RASFLAG, AND MARKCTR. BANK 30 SETLOC P76LOC BANK COUNT* $$/P76 EBANK= TIG P76 TC UPFLAG ADRES TRACKFLG CAF V06N84 # FLASH LAST DELTA V. TC BANKCALL # AND WAIT FOR KEYBOARD ACTION. CADR GOFLASH TCF ENDP76 TC +2 # PROCEED TC -5 # STORE DATA AND REPEAT FLASHING CAF V06N84 +1 # FLASH VERB 06 NOUN 33, DISPLAY LAST TIG, TC BANKCALL # AND WAIT FOR KEYBOARD ACTION. CADR GOFLASH TCF ENDP76 TC +2 TC -5 TC INTPRET # RETURN TO INTERPRETIVE CODE DLOAD # SET D(MPAC)=TIG IN CSEC B28 TIG STCALL TDEC1 # SET TDEC1=TIG FOR ORBITAL INTEGRATION OTHPREC COMPMAT VLOAD UNIT RATT # Page 512 VCOMP # U(-R) STORE 24D # U(-R) TO 24D VXV UNIT # U(-R) X V = U(V X R) VATT STORE 18D VXV UNIT # U(V X R) X U(-R) = U((R X V) X R) 24D STOVL 12D DELVOV VXM VSL1 # V(MPAC)=DELTA V IN REFCOSYS 12D VAD VATT STORE 6 # V(PD6)=VATT + DELTA V CALL # PREVENT WOULD-BE USER OF ORBITAL INTSTALL # INTEG FROM INTERFERING WITH UPDATING CALL P76SUB1 VLOAD VSR* 6 0,2 STOVL VCV RATT VSR* 0,2 STODL RCV TIG STORE TET CLEAR DLOAD INTYPFLG TETTHIS INTOTHIS STCALL TDEC1 INTEGRVS CALL INTSTALL CALL P76SUB1 # SET/CLEAR MOONFLAG VLOAD RATT1 STORE RRECT STODL RCV TAT STOVL TET VATT1 CALL MINIRECT EXIT TC PHASCHNG OCT 04024 # Page 513 TC UPFLAG ADRES REINTFLG TC INTPRET CALL ATOPOTH SSP EXIT QPRET OUT TC BANKCALL # PERMIT USE OF ORBITAL INTEGRATION CADR INTWAKE1 OUT EXIT ENDP76 CAF ZERO TS MARKCTR # CLEAR RR TRACKING MARK COUNTER TS VHFCNT CAF NEGONE TS MRKBUF2 # INVALIDATE MARK BUFFER TCF GOTOPOOH V06N84 NV 0684 NV 0633 P76SUB1 CLEAR SLOAD MOONFLAG X2 BHIZ SET # X2=0...CLEAR MOONFLAG +2 # =2.....SET MOONFLAG MOONFLAG RVQ