Reorganized files to separate Luminary099 source code from Comanche055 source code
This commit is contained in:
92
Comanche055/MYSUBS.s
Normal file
92
Comanche055/MYSUBS.s
Normal file
@ -0,0 +1,92 @@
|
||||
# Copyright: Public domain.
|
||||
# Filename: MYSUBS.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: Ron Burkey <info@sandroid.org>.
|
||||
# Website: www.ibiblio.org/apollo.
|
||||
# Pages: 999-1001
|
||||
# Mod history: 2009-05-13 RSB Adapted from the Colossus249/ file of the
|
||||
# same name, using Comanche055 page images.
|
||||
# 2009-05-20 RSB Corrections: EBANK= changed from MPAC to KMPAC.
|
||||
#
|
||||
# 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 999
|
||||
BANK 20
|
||||
SETLOC MYSUBS
|
||||
BANK
|
||||
|
||||
EBANK= KMPAC
|
||||
SPCOS1 EQUALS SPCOS
|
||||
SPSIN1 EQUALS SPSIN
|
||||
SPCOS2 EQUALS SPCOS
|
||||
SPSIN2 EQUALS SPSIN
|
||||
|
||||
COUNT 21/DAPMS
|
||||
|
||||
# ONE AND ONE HALF PRECISION MULTIPLICATION ROUTINE
|
||||
|
||||
SMALLMP TS KMPTEMP # A(X+Y)
|
||||
EXTEND
|
||||
MP KMPAC +1
|
||||
TS KMPAC +1 # AY
|
||||
CAF ZERO
|
||||
XCH KMPAC
|
||||
EXTEND
|
||||
MP KMPTEMP # AX
|
||||
DAS KMPAC # AX+AY
|
||||
TC Q
|
||||
|
||||
# SUBROUTINE FOR DOUBLE PRECISION ADDITIONS OF ANGLES
|
||||
# A AND L CONTAIN A DP(1S) ANGLE SCALED BY 180 DEGS TO BE ADDED TO KMPAC.
|
||||
# RESULT IS PLACED IN KMPAC. TIMING = 6 MCT (22 MCT ON OVERFLOW)
|
||||
|
||||
DPADD DAS KMPAC
|
||||
EXTEND
|
||||
BZF TSK +1 # NO OVERFLOW
|
||||
CCS KMPAC
|
||||
TCF DPADD+ # + OVERFLOW
|
||||
TCF +2
|
||||
TCF DPADD- # - OVERFLOW
|
||||
CCS KMPAC +1
|
||||
TCF DPADD2+ # UPPER = 0, LOWER +
|
||||
TCF +2
|
||||
COM # UPPER = 0, LOWER -
|
||||
AD POSMAX # LOWER = 0, A = 0
|
||||
TS KMPAC +1 # CAN NOT OVERFLOW
|
||||
CA POSMAX # UPPER WAS = 0
|
||||
TSK TS KMPAC
|
||||
TC Q
|
||||
|
||||
DPADD+ AD NEGMAX # KMPAC GREATER THAN 0
|
||||
TCF TSK
|
||||
|
||||
# Page 1000
|
||||
DPADD- COM
|
||||
AD POSMAX # KMPAC LESS THAN 0
|
||||
TCF TSK
|
||||
|
||||
DPADD2+ AD NEGMAX # CAN NOT OVERFLOW
|
||||
TS KMPAC +1
|
||||
CA NEGMAX # UPPER WAS = 0
|
||||
TCF TSK
|
||||
|
||||
# Page 1001 (empty page)
|
||||
|
Reference in New Issue
Block a user