Pre-launch Review
SYSTEM TEST STANDARD LEAD INS
Scanned pages: 370-372
# Copyright: Public domain.# Filename: SYSTEM_TEST_STANDARD_LEAD_INS.agc# Purpose: Part of the source code for Luminary 1A build 099.# It is part of the source code for the Lunar Module's (LM)# Apollo Guidance Computer (AGC), for Apollo 11.# Assembler: yaYUL# Contact: Ron Burkey <info@sandroid.org>.# Website: www.ibiblio.org/apollo.# Pages: 370-372# Mod history: 2009-05-17 RSB Adapted from the corresponding# Luminary131 file, using page# images from Luminary 1A.## 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 001 of AGC program LMY99 by NASA 2021112-061# 16:27 JULY 14, 1969
# Page 370 EBANK= XSM
BANK 33 SETLOC E/PROG BANK
COUNT* $$/P07
# SPECIAL PROGRAMS TO EASE THE PANGS OF ERASABLE MEMORY PROGRAMS.## E/BKCALL FOR DOING BANKCALLS FROM AND RETURNING TO ERASABLE.## THIS ROUTINE IS CALLABLE FROM ERASABLE OR FIXED. LIKE BANKCALL, HOWEVER, SWITCHING BETWEEN S3 AND S4# IS NOT POSSIBLE.## THE CALLING SEQUENCE IS:## TC BANKCALL# CADR E/BKCALL# CADR ROUTINE # WHERE TO WANT TO GO IN FIXED.# RETURN HERE FROM DISPLAY TERMINATE, BAD STALL OR TC Q.# RETURN HERE FROM DISPLAY PROCEED OR GOOD RETURN FROM STALL.# RETURN HERE FROM DISPLAY ENTER OR RECYCLE.## THIS ROUTINE REQUIRES TWO ERASABLES (EBUF2, +1) IN UNSWITCHED WHICH ARE UNSHARED BY INTERRUPTS AND# OTHER EMEMORY PROGRAMS.## A + L ARE PRESERVED THROUGH BANKCALL AND E/BKCALL.
E/BKCALL DXCH BUF2 # SAVE A,L AND GET DP RETURN. DXCH EBUF2 # SAVE DP RETURN. INCR EBUF2 # RETURN +1 BECAUSE DOUBLE CADR. CA BBANK MASK LOW10 # GET CURRENT EBANK. (SBANK SOMEDAY) ADS EBUF2 +1 # FORM BBCON. (WAS FBANK) NDX EBUF2 CA 0 -1 # GET CADR OF ROUTINE. TC SWCALL # GO TO ROUTINE, SETTING Q TO SWRETURN # AND RESTORING A + L. TC +4 # TX Q, V34, OR BAD STALL RETURN. TC +2 # PROCEED OR GOOD STALL RETURN. INCR EBUF2 # ENTER OR RECYCLE RETURN. INCR EBUF2E/SWITCH DXCH EBUF2 DTCB
# Page 371# E/CALL FOR CALLING A FIXED MEMORY INTERPRETIVE SUBROUTINE FROM ERASABLE AND RETURNING TO ERASABLE.## THE CALLING SEQUENCE IS...## RTB# E/CALL# CADR ROUTINE # THE INTERPRETIVE SUBROUTINE YOU WANT.# # RETURNS HERE IN INTERPRETIVE.
E/CALL LXCH LOC # ADRES -1 OF CADR. INDEX L CA L # CADR IN A. INCR L INCR L # RETURN ADRES IN L. DXCH EBUF2 # STORE CADR AND RETURN TC INTPRET CALL EBUF2 # INDIRECTLY EXECUTE ROUTINE. IT MUST EXIT # LEAVE VIA RVQ OR EQUIVALENT. LXCH EBUF2 +1 # PICK UP RETURN. TCF INTPRET +2 # SET LOC AND RETURN TO CALLER.
# Page 372# E/JOBWAK FOR WAKING UP ERASABLE MEMORY JOBS.## THIS ROUTINE MUST BE CALLED IN INTERRUPT OR WITH INTERRUPTS INHIBITED.## THE CALLING SEQUENCE IS:## INHINT# ...# CA WAKEADR # ADDRESS OF SLEEPING JOB# TC IBNKCALL# CADR E/JOBWAK# ... # RETURNS HERE# RELINT # IF YOU DID AND INHINT.
BANK 33 SETLOC E/PROG BANK
COUNT* $$/P07
E/JOBWAK TC JOBWAKE # ARRIVE IWTH ADRES IN A. CS BIT11 NDX LOCCTR ADS LOC # KNOCK FIXED MEMORY BIT OUT OF ADRES. TC RUPTREG3 # RETURN