https://github.com/virtualagc/virtualagc
Tip revision: a8d66c8ae3c4d967053e2bfb4298e90182cbeff2 authored by Ron Burkey on 06 March 2024, 12:40:55 UTC
Minor tweaks associated with supporting Skylark 48.
Minor tweaks associated with supporting Skylark 48.
Tip revision: a8d66c8
P76.agc
### FILE="Main.annotation"
## 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 <hgutsche@xplornet.com>.
## 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.
## 2016-12-10 RSB Proofed comments with octopus/ProoferComments
## and fixed the errors found.
## 2016-12-10 RSB All of the GOTOPOOH's should have been
## GOTOPOOH, and I've changed them back.
## 2017-01-18 RSB Fixed comment-text errors noted while diff'ing
## vs Colossus 249.
##
## 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 76E.
# 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, CMOONFLAG, 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