https://github.com/virtualagc/virtualagc
Revision 078c79d8734a9ed2860303a7c1662004284fe853 authored by Ron Burkey on 07 August 2022, 15:04:04 UTC, committed by Ron Burkey on 07 August 2022, 15:04:04 UTC
assembly listings from yaASM and yaLEMAP. Added some debugging messages to 'make install'. Tweaked debugging messages that VirtualAGC embeds in 'simulate'. Verified buildability in Mint 21, 20, 19, 17, and verified buildability using clang in Mint 17.
1 parent 6bb1acc
Tip revision: 078c79d8734a9ed2860303a7c1662004284fe853 authored by Ron Burkey on 07 August 2022, 15:04:04 UTC
Fixed a potential string-overflow bug in yaASM. Removed timestamps from
Fixed a potential string-overflow bug in yaASM. Removed timestamps from
Tip revision: 078c79d
GIMBAL_LOCK_AVOIDANCE.agc
### FILE="Main.annotation"
## Copyright: Public domain.
## Filename: GIMBAL_LOCK_AVOIDANCE.agc
## Purpose: A section of Luminary revision 173.
## It is part of the reconstructed source code for the second
## (unflown) release of the flight software for the Lunar
## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
## The code has been recreated from a reconstructed copy of
## Luminary 178, as well as Luminary memo 167 (revision 1).
## It has been adapted such that the resulting bugger words
## exactly match those specified for Luminary 173 in NASA
## drawing 2021152N, which gives relatively high confidence
## that the reconstruction is correct.
## Reference: p. 369
## Assembler: yaYUL
## Contact: Ron Burkey <info@sandroid.org>.
## Website: www.ibiblio.org/apollo/index.html
## Mod history: 2019-09-18 MAS Created from Luminary 178.
## Page 369
BANK 15
SETLOC KALCMON1
BANK
# DETECTING GIMBAL LOCK
LOCSKIRT EQUALS NOGIMLOC
NOGIMLOC SET
CALCMAN3
WCALC LXC,1 DLOAD*
RATEINDX # CHOOSE THE DESIRED MANEUVER RATE
ARATE,1 # FROM A LIST OF FOUR
SR4 CALL # COMPUTE THE INCREMENTAL ROTATION MATRIX
DELCOMP # DEL CORRESPONDING TO A 1 SEC ROTATION
# ABOUT COF
DLOAD* VXSC
ARATE,1
COF
STODL BRATE # COMPONENT MANEUVER RATES 45 DEG/SEC
AM
DMP DDV*
ANGLTIME
ARATE,1
SR
5
STORE TM # MANEUVER EXECUTION TIME SCALED AS T2
SETGO
CALCMAN2 # 0(OFF) = CONTINUE MANEUVER
NEWANGL +1 # 1(ON) = START MANEUVER
# THE FOUR SELECTABLE FREE FALL MANEUVER RATES SELECTED BY
# LOADING RATEINDX WITH 0,2,4,6, RESPECTIVELY
ARATE 2DEC .0088888888 # = 0.2 DEG/SEC $ 22.5 DEG/SEC
2DEC .0222222222 # = 0.5 DEG/SEC $ 22.5 DEG/SEC
2DEC .0888888888 # = 2.0 DEG/SEC $ 22.5 DEG/SEC
2DEC .4444444444 # = 10.0 DEG/SEC $ 22.5 DEG/SEC
ANGLTIME 2DEC .0001907349 # = 100B-19 FUDGE FACTOR TO CONVERT
# MANEUVER ANGLE TO MANEUVER TIME
Computing file changes ...