https://github.com/virtualagc/virtualagc
Revision 4e5d304eb7cd5589b924ffb8b423b6f15511b35d authored by Ron Burkey on 20 October 2018, 17:47:00 UTC, committed by Ron Burkey on 20 October 2018, 17:47:00 UTC
the recently-added documents about YUL, was transcribed.  Because the
original program contained a deliberate error in YUL (as well as some
constructs that have unintentionally become errors in yaYUL), I've
provided it in two forms:  TRIVIUM (which matches the original scan,
to the extent feasible) and TRIVIUM-repaired (which has the deliberate
and unintentional errors fixed, but otherwise retains the identical
functionality of the original).
1 parent c6c292e
Raw File
Tip revision: 4e5d304eb7cd5589b924ffb8b423b6f15511b35d authored by Ron Burkey on 20 October 2018, 17:47:00 UTC
The sample Block I AGC program TRIVIUM, found at the very end of one of
Tip revision: 4e5d304
ASSEMBLY_AND_OPERATION_INFORMATION.agc
### FILE="Main.annotation"
## Copyright:	Public domain.
## Filename:	ASSEMBLY_AND_OPERATION_INFORMATION.agc
## Purpose:	Part of the source code for Solarium build 55. This
##		is for the Command Module's (CM) Apollo Guidance
##		Computer (AGC), for Apollo 6.
## Assembler:	yaYUL --block1
## Contact:	Jim Lawton <jim DOT lawton AT gmail DOT com>
## Website:	www.ibiblio.org/apollo/index.html
## Page Scans:	www.ibiblio.org/apollo/ScansForConversion/Solarium055/
## Mod history:	2009-09-11 JL	Created.
## 		2016-12-28 RSB	Proofed comment text using octopus/ProoferComments,
##				and fixed errors found.

## Page 1

# TABLE OF LOG CARDS		(ALL LOG CARDS ARE TWO SPACED)

# ASSEMBLY AND OPERATION INFORMATION
# ERASABLE ASSIGNMENTS
# INTERRUPT TRANSFER ROUTINES
# FIXED-FIXED INTERPRETER SECTION
# BANK 03 INTERPRETER SECTION
# EXECUTIVE
# WAITLIST
# RESTART CONTROL
# 501 RESTART TABLES AND ROUTINES
# FRESH START AND RESTART
# DOWN-TELEMETRY PROGRAM
# T4RUPT OUTPUT CONTROL PROGRAMS
# MODE SWITCHING AND MARK ROUTINES
# IMU COMPENSATION PACKAGE
# IRIG PULSE-TORQUING ROUTINES
# EXTENDED VERBS FOR MODING
# AGC SELF-CHECK
# INTER-BANK COMMUNICATION
# ALARM AND DISPLAY PROCEDURES
# ORBITAL INTEGRATION PROGRAM
# ORBITAL INTEGRATION FOR 501
# PRELAUNCH ALIGNMENT PROGRAM
# INFLIGHT ALIGNMENT PROGRAM
# RTB OP CODES
# IMU PERFORMANCE TESTS 1
# IMU PERFORMANCE TESTS 2
# INFLIGHT ALIGNMENT SUBROUTINES
# KEYRUPT, UPRUPT, FRESH START
# PINBALL GAME  BUTTONS AND LIGHTS
# 501 MISSION CONTROL PROGRAM
# POWERED FLIGHT SUBROUTINES
# TIME OF FREE-FALL CALCULATIONS
# DUMMY 501 INITIALISATION
# RE-ENTRY CONTROL
# AVERAGE G INTEGRATOR
# VERIFICATION ASSISTANCE PROGRAMS
# SUM-CHECK END OF RECORD MARKS

## Page 2

# TABLE OF ERROR CODES


# OPTICS SUB-SYSTEM
#
# 00101    ZERO CDU SWITCH ALTERED BEFORE EXPIRATION OF 30 SECOND WAIT
# 00102    COMPUTER UNABLE TO ACHIEVE DESIRED OPTICS MODE
# 00103    SXT-ON SWITCH TURNED ON WITH OPTICS NOT IN ZERO CDU MODE
# 00104    NO VAC AREA AVAILABLE FOR MARKS
# 00105    INTERNAL MARKS REQUEST WITH MARK SYSTEM BUSY
# 00106    SXT-ON SWITCH NOT IN DESIRED STATE AT MARK TIME OR MARK WITH ALL REQUESTED MARKS ACCEPTED
# 00107    MARK ACCEPT WITH MARK SYSTEM NOT IN USE
# 00110    MARK ACCEPT WITH ALL REQUESTED MARKS ACCEPTED, OR NO MARKS SINCE INITIALIZATION OR LAST MARK ACCEPT

# IMU SUB-SYSTEM
#
# 00201    CDU ZERO SWITCH ALTERED BEFORE EXPIRATION OF 30 SECOND WAIT
# 00202    COMPUTER UNABLE TO ACHIEVE DESIRED MODE
# 00203    NO IMU MODE INDICATED TO COMPUTER
# 00204    MODE SWITCH WITH TRNSW IN COMPUTER CONTROL, BUT COMPUTER NOT COMMANDING

# GENERAL MISSION PROGRAM ERRORS (ERROR RETURN ON IMUSTALL, ETC.)
#
# 00301    CURTAINS PROGRAM

# PROCEDURAL DIFFICULTY
#
# 00401    DESIRED GIMBAL ANGLES YIELD GIMBAL LOCK (MGA GREATER THAN 60 DEGREES).
# 00402    STAR OUT OF FIELD OF VIEW
# 00403    STAR OUT OF FIELD OF VIEW

# COMPUTER HARDWARE MALFUNCTIONS
#
# 01101    RUPT2 OCCURRED
# 01102    AGC SELF TEST ERROR (Q IN SFAIL)
# 01103    UNUSED CCS BRANCH EXECUTED
# 01104    C-RELAY FAILED DURING C-RELAY TEST

# LIST OVERFLOWS (ALL ABORTS)
#
# 01201    EXECUTIVE OVERFLOW - NO VAC AREAS
# 01202    EXECUTIVE OVERFLOW - NO CORE SETS
# 01203    WAITLIST OVERFLOW - TOO MANY TASKS
# 01204    SLIGHT VARIATION OF 01203
# 01205    MASTER CONTROL OVERFLOW - TOO MANY JOBS WAITING
# 01206    KEYBOARD + DISPLAY WAITING LINE OVERFLOW
# 01207    NO VAC AREA FOR MARKS
# 01210    SOMETHING ALREADY WAITING IN IMUSTALL

# INTERPRETER ERRORS
#
# 01301    ARCCOS-ARCSIN INPUT ANGLE TOO LARGE
# 01302    SQRT CALLED WITH NEGATIVE ARGUMENT

# DISPLAY ALARMS
#
# 01401    (VG) INCREASING - LOSS OF CONTROL
## Page 3
# 01402    (DELV) TOO LOW - ENGINE NOT ON
# 01403    501 ABORT, WILL OVERSHOOT TARGET.
# 01404    501 ABORT, PRESENT SMA LESS THAN RE/2
# 01405    501 ABORT, COT SQ(GAMMA E) NEGATIVE.
# 01406    501 ABORT, FREE-FALL ANGLE EXEEDS ---
# 01407    COMMANDED CDUZ EXCEEDS 60 DEGREES
# 01411    TIME TO INCORPORATE AVE G UPDATE ALREADY PAST

# KEYBOARD AND DISPLAY PROGRAM
#
# 01501    KEYBOARD AND DISPLAY ALARM DURING INTERNAL USE (NVSUB). ABORT

## Page 4

# VERB DEFINITIONS



#  REGULAR VERBS
# 01  DISPLAY OCTAL COMP 1 (R1)
# 02  DISPLAY OCTAL COMP 2 (R1)
# 03  DISPLAY OCTAL COMP 3 (R1)
# 04  DISPLAY OCTAL COMP 1,2 (R1,R2)
# 05  DISPLAY OCTAL COMP 1,2,3 (R1,R2,R3)
# 06  DECIMAL DISPLAY
# 07  DP DECIMAL DISPLAY (R1,R2)
# 10  REQUEST WAITLIST
# 11  MONITOR OCT COMP 1 (R1)
# 12  MONITOR OCT COMP 2 (R1)
# 13  MONITOR OCT COMP 3 (R1)
# 14  MONITOR OCT COMP 1,2 (R1)
# 15  MONITOR OCT COMP 1,2,3 (R1,R2,R3)
# 16  MONITOR DECIMAL
# 17  MONITOR DP DECIMAL (R1,R2)
# 20  REQUEST EXECUTIVE
# 21  LOAD COMP 1  (R1)
# 22  LOAD COMP 2  (R2)
# 23  LOAD COMP 3  (R3)
# 24  LOAD COMP 1,2 (R1,R2)
# 25  LOAD COMP 1,2,3 (R1,R2,R3)
# 26  SPARE
# 27  SPARE
# 30  SPARE
# 31  BANK DISPLAY
# 32  C(R2) INTO R3, C(R1) INTO R2
# 33  PROCEED WITHOUT DATA
# 34  TERMINATE CURRENT TEST OR LOAD REQUEST
# 35  RELEASE DISPLAY SYSTEM
# 36  FRESH START
# 37  CHANGE MAJOR MODE
# END OF REGULAR VERBS



# EXTENDED VERBS
# 40  ZERO (USED WITH NOUN ICDU OR OCDU)
# 41  COARSE ALIGN (USED WITH NOUN ICDU OR OCDU)
# 42  FINE ALIGN IMU
# 43  LOCK IMU
# 44  SET IMU TO ATTITUDE CONTROL
# 45  SET IMU TO RE-ENTRY CONTROL
# 46  RETURN IMU TO COARSE ALIGN
# 47  OPTICAL TRACKER ON (NOT IN USE YET)
# 50  PLEASE PERFORM
## Page 5
# 51  PLEASE MARK
# 52  MARK REJECT (UNTIL BUTTON AVAILABLE)
# 53  FREE (USED WITH NOUN ICDU OR OCDU)
# 54  PULSE TORQUE GYROS
# 55  ALIGN TIME
# 56  PERFORM BANKSUM
# 57  DO SYSTEM TEST
# 60  PREPARE FOR STANDBY
# 61  RECOVER FROM STANDBY
# 62  ILLEGAL VERB
# 63  ILLEGAL VERB
# 64  ILLEGAL VERB
# 65  ILLEGAL VERB
# 66  ILLEGAL VERB
# 67  ILLEGAL VERB
# 70  ILLEGAL VERB
# 71  DO TFFMIN UPDATE
# 72  ABORT
# 73  ILLEGAL VERB
# 74  ILLEGAL VERB
# 75  MANUAL I/O FOR FLIGHTS
# 76  DO RVT UPDATE
# 77  DO L/O TIME UPDATE

## Page 6

# NORMAL NOUNS						SCALE AND DECIMAL POINT
# 00  NOT IN USE
# 01  SPECIFY MACHINE ADDRESS (FRACTIONAL)		(.XXXXX)
# 02  SPECIFY MACHINE ADDRESS (WHOLE)			(XXXXX.)
# 03  SPECIFY MACHINE ADDRESS (DEGREES)			(XXX.XXDEGREES)
# 04  SPECIFY MACHINE ADDRESS (HOURS)			(XXX.XXHOURS)
# 05  SPECIFY MACHINE ADDRESS (SECONDS)			(XXX.XXSECONDS)
# 06  SPECIFY MACHINE ADDRESS (GYRO DEGREES)		(XX.XXXDEGREES)
# 07  SPECIFY MACHINE ADDRESS (Y OPT DEGREES)		(XXX.XXDEG OR XX.XXXDEG)
# 10  SPARE
# 11  SPARE
# 12  SPARE
# 13  SPARE
# 14  SPARE
# 15  INCREMENT MACHINE ADDRESS				(OCTAL ONLY)
# 16  TIME SECONDS					(XXX.XXSECONDS)
# 17  TIME HOURS					(XXX.XXHOURS)
# 20  ICDU						(XXX.XXDEGREES)
# 21  PIPAS						(XXXXX.PULSES)
# 22  NEW ANGLES I					(XXX.XXDEGREES)
# 23  DELTA ANGLES I					(XXX.XXDEGREES)
# 24  DELTA TIME (SECONDS)				(XXX.XXSECONDS)
# 25  CHECKLIST						(XXXXX.)
# 26  PRIO/DELAY					(XXXXX.)
# 27  SELF TEST ON/OFF SWITCH				(XXXXX.)
# 30  STAR NUMBERS					(XXXXX.)
# 31  FAILREG, SFAIL, ERCOUNT				(OCTAL ONLY)
# 32  DECISION TIME (MIDCOURSE)				(XXX.XXHOURS (INTERNAL UNITS = WEEKS))
# 33  EPHEMERIS TIME (MIDCOURSE)			(XXX.XXHOURS (INTERNAL UNITS = WEEKS))
# 34  MEASURED QUANTITY (MIDCOURSE)			(XXXX.XKILOMETERS)
# 35  ROLL, PITCH, YAW					(XXX.XXDEGREES)
# 36  LANDMARK DATA 1					(OCTAL ONLY)
# 37  LANDMARK DATA 2					(OCTAL ONLY)
# 40  VG FOR 501					(XXXX.X METERS/SEC)
# 41  SPARE
# 42  SPARE
# 43  SPARE
# 44  SPARE
# 45  SPARE
# 46  SPARE
# 47  SPARE
# 50  SPARE
# 51  SPARE
# 52  GYRO BIAS DRIFT					(.BBXXXXXMILLIRAD/SEC)
# 53  GYRO INPUT AXIS ACCELERATION DRIFT		(.BBXXXXX(MILLIRAD/SEC)/(CM/SEC SEC))
# 54  GYRO SPIN AXIS ACCELERATION DRIFT			(.BBXXXXX(MILLIRAD/SEC)/(CM/SEC SEC))
# END OF NORMAL NOUNS

## Page 7

# MIXED NOUNS						SCALE AND DECIMAL POINT
# 55  OCDU						(XXX.XXDEG, XXX.XXDEG OR XX.XXXDEG)
# 56  UNCALLED MARK DATA (OCDU & TIME(SECONDS))		(XXX.XXDEG, XXX.XXDEG OR XX.XXXDEG, XXX.XXSEC)
# 57  NEW ANGLES OCDU					(XXX.XXDEG, XXX.XXDEG OR XX.XXXDEG)
# 60  IMU MODE STATUS (IN3, WASKSET, OLDERR)		(OCTAL ONLY)
# 61  TARGET AZIMUTH AND ELEVATION			(XXX.XXDEG, XX.XXXDEG)
# 62  RE-ENTRY VARIABLES				(XXX.XXSEC, XXXXX., XXXXX.)
# 63  OCDUX AND TIME					(XXX.XXDEG, XXX.XXSEC)
# 64  OCDUY AND TIME					(XXX.XXDEG OR XX.XXXDEG, XXX.XXSEC)
# 65  SAMPLED TIME (HOURS AND SECONDS)			(XXX.XXHOURS, XXX.XXSEC)
#         (FETCHED IN INTERRUPT)
# 66  SYSTEM TEST RESULTS				(XXXXX., .XXXXX, XXXXX.)
# 67  DELTA GYRO ANGLES					(XX.XXXDEG  FOR EACH)
# 70  PIPA BIAS						(X.XXXXCM/SEC SEC  FOR EACH)
# 71  PIPA SCALE FACTOR ERROR				(XXXXX.PARTS/MILLION  FOR EACH)
# 72  DELTA POSITION					(XXXX.XKILOMETERS  FOR EACH)
# 73  DELTA VELOCITY					(XXXX.XMETERS/SEC  FOR EACH)
# 74  MEASUREMENT DATA (MIDCOURSE)			(XXX.XXHOURS (INTERNAL UNITS=WEEKS), XXXX.XKILOMETERS, XXXXX.
# 75  MEASUREMENT DEVIATIONS (MIDCOURSE)		(XXXX.XKILOMETERS, XXXX,XMETERS/SEC, XXXX.XKILOMETERS)
# 76  POSITION VECTOR					(XXXX.XKILOMETERS  FOR EACH)
# 77  VELOCITY VECTOR					(XXXX.XMETERS/SEC  FOR EACH)

## Page 8

# MAJOR MODES FOR FLIGHT 501



#	00	IDLING
#
#
#
#	0X	PRELAUNCH
#
#	01	INITIALIZATION
#	02	GYROCOMPASSING
#	03	OPTICAL VERIFICATION
#	04	INERTIAL REFERENCE
#	05	VERTICAL ERECT.  (COUNTING)
#	06	VERTICAL ERECT.  (UNCONDITIONAL)
#
#	07	SYSTEM TEST
#
#
#
#	1X	BOOSTER MONITOR
#
#	11	FIRST STAGE BOOSTER MONITORING
#
#	14	SIV-B BOOSTER MONITOR WITH TUMBLE MON. ON
#
#
#
#	2X	COASTING PHASE
#
#	21	MANEUVER TO COLDSOAK ATTITUDE
#	22	HOLD ATTITUDE DURING ORBITAL INTEGRATION
#	23	HOLD ATTITUDE
#	24	HOLD ATTITUDE WITH STATE VECTOR UPDATE ALLOWED.
#
#	26	HOLD SPS2 ATTITUDE AND WAIT FOR TFF = TFFMIN
#	27	R, V, T UPDATING
#
#
#
#	3X	PRE-THRUSTING PHASES
#
#	31	PRE-SPS1
#	32	PRE-SPS2
#
#
#
#	4X	THRUSTING PHASES
#
## Page 9
#	41	SPS1
#	42	SPS2
#
#
#
#	5X	ALIGNMENT
#
#
#
#	6X	ENTRY
#
#	61	CM/SM SEPARATION MANEUVER
#	62	PRE-ENTRY MANEUVER
#	63	INITIATE ENTRY STEERING
#	64	.05 G INDICATION
#	65	UP-CONTROL PHASE
#	66	BALLISTIC PHASE
#	67	FINAL PHASE
#
#
#
#	7X	ABORT PHASES
#
#	71	POST-TUMBLE ATTITUDE RECOVERY
#	72	FREE-FALL ENTRY ABORT
#	73	ABORT BURN
#	74	TUMBLE ARREST BURN
#
#	77	G+N FLUSHED

## Page 10

# JOB PRIORITIES FOR 501

# PRIO37 = DOALARM
# PRIO36 = NWJOB
# PRIO35 = BIASONLY
#        = 1/GYRO
#        = ENEMA
#        = MODE32
#        = MODE26
# PRIO33 = POSTBY3
#        = CHARIN
# PRIO32 = MKVB50
#        = MKVB51
#        = REMKVB51
# PRIO31 = SPITGYRO
#        = MONDO
#        = FREDSPDO
# PRIO27 = SPITGYRO
#        = ENEMA
#        = S4BSMSEP
# PRIO25 = ABORTEST
#        = REDO4.21
#        = BEGIN501
# PRIO24 = LIFTOFF
# PRIO23 = MANUJOB
# PRIO22 = TUMBJOB1
#        = TUMBJOB
# PRIO21 = CGJOB
# PRIO20 = TOP1
#        = TSELECT
#        = PRAWAKE
#        = STARTPL2
#        = GYRDRFT2
#        = CDUXJOB
# PRIO16 = SERVICER
#        = ENTRYTOP
# PRIO15 = SMOOTHER
# PRIO14 = CHKOPT
#        = UPTHETA1
# PRIO13 = SOAKJOB
# PRIO12 = TARGJOB
#        = SOAKINIT
#        = ATTIJOB
#        = ATTIJOB1 -1
#        = ATTIJOB2
#        = SEPMANU
#        = ENTAJOB
# PRIO10 = ROLLJOB
# PRIO7  = MODE23
#        = MODE44
## Page 11
# PRIO6  = UPJOB
# PRIO5  = MONITJOB
#        = MARKDISP
# PRIO2  = FXFXCHK
back to top