Proof DISPLAY_INTERFACE_ROUTINES #200 (#377)

* Proof DISPLAY_INTERFACE_ROUTINES #200 11/34

* 24/33

* done DISPLAY_INTERFACE_ROUTINES
This commit is contained in:
cai 2019-04-16 04:30:28 +08:00 committed by James Harris
parent df1dd7cf58
commit 20fcfb0938

View File

@ -32,28 +32,28 @@
# information. Please report any errors to info@sandroid.org.
# Page 1452
# DISPLAYS CAN BE CLASSIFIED INTO THE FOLLOWING CATEGORIES --
# 1. PRIORITY DISPLAYS -- DISPLAYS WHICH TAKE PRIORITY OVER ALL OTHER DISPLAYS. USUALLY THESE DISPLAYS ARE SENT
# DISPLAYS CAN BE CLASSIFIED INTO THE FOLLOWING CATEGORIES-
# 1. PRIORITY DISPLAYS- DISPLAYS WHICH TAKE PRIORITY OVER ALL OTHER DISPLAYS. USUALLY THESE DISPLAYS ARE SENT
# OUT UNDER CRITICAL ALARM CONDITIONS.
# 2. EXTENDED VERB DISPLAYS -- ALL EXTENDED VERBS AND MARK ROUTINES SHOULD USE EXTENDED VERB (MARK) DISPLAYS.
# 3. NORMAL DISPLAYS -- ALL MISSION PROGRAM DISPLAYS WHICH INTERFACE WITH THE ASTRONAUT DURING THE NORMAL
# 2. EXTENDED VERB DISPLAYS- ALL EXTENDED VERBS AND MARK ROUTINES SHOULD USE EXTENDED VERB (MARK) DISPLAYS.
# 3. NORMAL DISPLAYS- ALL MISSION PROGRAM DISPLAYS WHICH INTERFACE WITH THE ASTRONAUT DURING THE NORMAL
# SEQUENCE OF EVENTS.
# 4. MISC. DISPLAYS -- ALL DISPLAYS NOT HANDLED BY THE DISPLAY INTERFACE ROUTINES. THESE INCLUDE SUCH DISPLAYS AS
# 4. MISC. DISPLAYS- ALL DISPLAYS NOT HANDLED BY THE DISPLAY INTERFACEROUTINES. THESE INCLUDE SUCH DISPLAYS AS
# MM DISPLAYS AND SPECIAL PURPOSE DISPLAYS HANDLED BY PINBALL.
# 5. ASTRONAUT INITIATED DISPLAYS -- ALL DISPLAYS INITIATED EXTERNALLY.
# 5. ASTRONAUT INITIATED DISPLAYS- ALL DISPLAYS INITIATED EXTERNALLY.
#
# THE FOLLOWING TERMS ARE USED TO DESCRIBE THE STATUS OF DISPLAYS --
# 1. ACTIVE -- THE DISPLAY WHICH IS (1) BEING DISPLAYED TO THE ASTRONAUT AND WAITING FOR A RESPONSE OR
# THE FOLLOWING TERMS ARE USED TO DESCRIBE THE STATUS OF DISPLAYS-
# 1. ACTIVE-THE DISPLAY WHICH IS (1) BEING DISPLAYED TO THE ASTRONAUT AND WAITING FOR A RESPONSE OR
# (2) WAITING FIRST IN LINE FOR THE ASTRONAUT TO FINISH USING THE DSKY OR (3) BEING DISPLAYED ON THE DSKY
# BUT NOT WAITING FOR A RESPONSE.
# 2. INACTIVE -- A DISPLAY WHICH HAS (1) BEEN ACTIVE BUT WAS INTERRUPTED BY A DISPLAY OF HIGHER PRIORITY,
# 2. INACTIVE -A DISPLAY WHICH HAS (1) BEEN ACTIVE BUT WAS INTERRUPTED BY A DISPLAY OF HIGHER PRIORITY,
# (2) BEEN PUT INTO THE WAITING LIST AT TIME IT WAS REQUESTED DUE TO THE FACT A HIGHER PRIORITY DISPLAY
# WAS ALREADY DOING, (3) BEEN INTERRUPTED BY THE ASTRONAUT (CALLED A PINBRANCH CONDITION, SINCE THIS TYPE
# WAS ALREADY GOING, (3) BEEN INTERRUPTED BY THE ASTRONAUT (CALLED A PINBRANCH CONDITION, SINCE THIS TYPE
# OF INACTIVE DISPLAY IS USUALLY REACTIVATED ONLY BY PINBALL) OR (4) A DISPLAY WHICH HAS FINISHED BUT STILL
# HAS INFO SAVED FOR RESTART PURPOSES.
#
# DISPLAY PRIORITIES WORK AS FOLLOWS --
# INTERRUPTS --
# DISPLAY PRIORITIES WORK AS FOLLOWS-
# INTERRUPTS-
# 1. THE ASTRONAUT CAN INTERRUPT ANY DISPLAY WITH AN EXTERNAL DISPLAY REQUEST.
# 2. INTERNAL DISPLAYS CAN NOT BE SENT OUT WHEN THE ASTRONAUT IS USING THE DSKY.
# 3. PRIORITY DISPLAYS INTERRUPT ALL OTHER TYPES OF INTERNAL DISPLAYS. A PRIORITY DISPLAY INTERRUPTING ANOTHER
@ -61,8 +61,8 @@
# 4. A MARK DISPLAY INTERRUPTS ANY NORMAL DISPLAY.
# 5. A MARK THAT INTERRUPTS A MARK COMPLETELY REPLACES IT.
#
# ORDER OF WAITING DISPLAYS --
# 1. ASTRONAUT
# ORDER OF WAITING DISPLAYS-
# 1. ASTRONAUT EXTERNAL USE
# 2. PRIORITY
# 3. INTERRUPTED MARK
# 4. INTERRUPTED NORMAL
@ -75,22 +75,21 @@
# FOLLOWING STATEMENTS CAN BE MADE ABOUT NORMAL DISPLAYS AND PRIORITY DISPLAYS (A DESCRIPTION OF MARK ROUTINES
# WILL FOLLOW LATER):
# 1. ALL ROUTINES THAT END IN R HAVE AN IMMEDIATE RETURN TO THE USER. FOR ALL FLASHING DISPLAYS THIS RETURN
# IS TO THE USER'S CALL CADR +4. FOR THE ONLY NON-FLASHING IMMEDIATE RETURN DISPLAY (GODSPR) THIS RETURN
# IS TO THE USER'S CALLING LOC +1.
# IS TO THE USERS CALL CADR +4. FOR THE ONLY NON FLASHING IMMEDIATE RETURN DISPLAY (GODSPR) THIS RETURN
# IS TO THE USERS CALLING LOC +1.
# 2. ALL ROUTINES NOT ENDING IN R DO NOT DO AN IMMEDIATE RETURN TO THE USER.
# 3. ALL ROUTINES THAT END IN R START A SEPARATE JOB (MAKEPLAY) WITH USER'S JOB PRIORITY.
# 3. ALL ROUTINES THAT END IN R START A SEPARATE JOB (MAKEPLAY) WITH USERS JOB PRIORITY.
# 4. ALL ROUTINES NOT ENDING IN R BRANCH DIRECTLY TO MAKEPLAY WHICH MAKES THESE DISPLAYS A PART OF THE
# USER'S JOB.
# USERS JOB.
# 5. ALL DISPLAY ROUTINES ARE CALLED VIA BANKCALL.
# 6. TO RESTART A DISPLAY THE USER WILL GENERALLY USE A PHASE OF ONE WITH DESIRED RESTART GROUP (SEE
# DESCRIPTION OF RESTARTS).
# 7. ALL FLASHING DISPLAYS HAVE 3 RETURNS TO THE USER FROM ASTRONAUT RESPONSES. A TERMINATE (V34) BRANCHES
# TO THE USER'S CALL CADR +1. A PROCEED (V33) BRANCHES TO THE USER'S CALL CADR +2. AN ENTER OR RECYCLE
# (V32) BRANCHES TO THE USER'S CALL CADR +3.
# 8. ALL ROUTINES MUST BE USED UNDER EXECUTIVE CONTROL
# TO THE USERS CALL CADR +1. A PROCEED (V33) BRANCHES TO THE USERS CALL CADR +2. AN ENTER OR RECYCLE
# (V32) BRANCHES TO THE USERS CALL CADR +3.
# 8. ALL ROUTINES MUST BE USED UNDER EXECUTIVE CONTROL.
#
# A DESCRIPTION OF EACH ROUTINE WITH AN EXAMPLE FOLLOWS:
# GODSP IS USED TO DISPLAY A VERB NOUN ARRIVING IN A. NO RETURN IS MADE TO THE USER.
# 1. GODSP IS NOT RESTARTABLE
# 2. A VERB PASTE WITH GODSP ALWAYS TURNS ON THE FLASH.
@ -129,7 +128,7 @@
# REQUESTED NOUN BY MEANS OF A V01NYY OR A V00NYY. PLEASE PERFORM ON NOUN (V50 NYY) THEN BECOMES A FLASHING
# DISPLAY. NO IMMEDIATE RETURN IS MADE TO THE USER (SEE NO. 7 ABOVE).
# GOPERF2 DOES NOT BLANK ANY REGISTERS
# CAF VXXNYY # VARIABLE NOUN YY. XX=0 OR 01.
# CAF VXXNYY # VARIABLE NOUN YY. XX=00 OR 01.
# TC BANKCALL
# CADR GOPERF2
# ... ... # TERMINATE RETURN
@ -155,7 +154,7 @@
# ... ... # TERMINATE RETURN
# ... ... # PROCEED RETURN
# ... ... # ENTER RETURN
# GOPERF4 BLANKS REGISTER R3.
# GOPERF4 BLANKS REGISTER R3
#
# Page 1455
# GODSPRET IS USED TO DISPLAY A VERB NOUN ARRIVING IN A WITH A RETURN TO THE USER AFTER THE DISPLAY HAS BEEN SENT
@ -163,9 +162,9 @@
# CAF VXXXNYY
# TC BANKCALL
# CADR GODSPRET
# ... ... # RETURN TO USER.
# ... ... # RETURN TO USER
# REGODSP IS USED TO DISPLAY A VERB NOUN ARRIVING IN A. REGODSP IS THE SAME AS GODSP ONLY REGODSP REPLACES AND
# REGODSP IS USED TO DISPLAY A VERB NOUN ARRIVING IN A. REGODSP IS THE SAME AS GODSP ONLY REGODSP REPLACES ANY
# ACTIVE NORMAL DISPLAY IF ONE WAS ACTIVE.
# CAF VXXNYY
# TC BANKCALL
@ -179,7 +178,7 @@
# ... ... # PROCEED RETURN
# ... ... # ENTER RETURN
# GOFLASHR IF SAME AS GOFLASH ONLY AN IMMEDIATE RETURN IS MADE TO THE USER'S CALL CADR +4.
# GOFLASHR IF SAME AS GOFLASH ONLY AN IMMEDIATE RETURN IS MADE TO THE USERS CALL CADR +4.
# CAF VXXNYY
# TC BANKCALL
# CADR GOFLASHR
@ -188,7 +187,7 @@
# ... ... # ENTER OR RECYCLE RETURN
# ... ... # IMMEDIATE RETURN FROM GOFLASHR
# GOPERF1R IS THE SAME AS GOPERF1 ONLY GOPERF1R HAS AN IMMEDIATE RETURN TO USER'S CALL CADR +4.
# GOPERF1R IS THE SAME AS GOPERF1 ONLY GOPERF1R HAS AN IMMEDIATE RETURN TO USERS CALL CADR +4.
# GOPERF1R BLANKS REGISTERS R2 AND R3
# CAF OCTXX # CODE FOR CHECKLIST VALUE XX.
# TC BANKCALL
@ -198,10 +197,10 @@
# ... ... # ENTER RETURN
# ... ... # IMMEDIATE RETURN FROM GOPERF1R
# GOPERF2R IS THE SAME AS GOPERF2 ONLY AN IMMEDIATE RETURN IS MADE TO USER'S CALL CADR +4.
# GOPERF2R IS THE SAME AS GOPERF2 ONLY AN IMMEDIATE RETURN IS MADE TO USERS CALL CADR +4.
# Page 1456
# GOPERF2R DOES NOT BLANK ANY REGISTERS
# CAF VXXXNYY # VARIABLE NOUN YY REQUESTED. XX=00 OR 01
# CAF VXXNYY # VARIABLE NOUN YY REQUESTED. XX=00 OR 01
# TC BANKCALL
# CADR GOPERF2R
# ... ... # TERMINATE RETURN
@ -209,7 +208,7 @@
# ... ... # ENTER RETURN
# ... ... # IMMEDIATE RETURN HERE FROM GOPERF2R
# GOPERF3R IS THE SAME AS GOPERF3 ONLY AN IMMEDIATE RETURN IS MADE TO USER'S CALL CADR +4.
# GOPERF3R IS THE SAME AS GOPERF3 ONLY AN IMMEDIATE RETURN IS MADE TO USERS CALL CADR +4.
# GOPERF3R BLANKS REGISTERS R2 AND R3
# CAF PROGXX # PERFORM PROGRAM XX
# TC BANKCALL
@ -219,7 +218,7 @@
# ... ... # ENTER RETURN
# ... ... # GOPERF3R IMMEDIATELY RETURNS HERE
# GOPERF4R IS THE SAME AS GOPERF4 ONLY AN IMMEDIATE RETURN IS MADE TO USER'S CALL CADR +4.
# GOPERF4R IS THE SAME AS GOPERF4 ONLY AN IMMEDIATE RETURN IS MADE TO USERS CALL CADR +4.
# CAF OCTXX # REQUEST PERFORM ON OPTIONXX
# TC BANKCALL
# CADR GOPERF4R
@ -227,9 +226,9 @@
# ... ... # PROCEED RETURN
# ... ... # ENTER RETURN
# ... ... # IMMEDIATE RETURN TO USER
# GOPERF4R BLANKS REGISTER R3.
# GOPERF4R BLANKS REGISTER R3
#
# REFLASHR IS THE SAME AS REFLASH ONLY AN IMMEDIATE RETURN IS MADE TO THE USER'S CALL CADR +4.
# REFLASHR IS THE SAME AS REFLASH ONLY AN IMMEDIATE RETURN IS MADE TO THE USERS CALL CADR +4.
# CAF VXXNYY # VXX NYY WILL BE A FLASHING VERB NOUN
# TC BANKCALL
# CADR REFLASHR
@ -268,7 +267,6 @@
# ... ... # TERMINATE RETURN
# ... ... # PROCEED RETURN
# ... ... # ENTER OR RECYCLE RETURN
# ... ... # IMMEDIATE RETURN TO THE USER
# GOMARKFR IS THE SAME AS GOMARKF ONLY AN IMMEDIATE RETURN IS MADE TO THE USER CALL CADR +4.
# GOXDSPFR = GOMARKFR
@ -278,7 +276,6 @@
# ... ... # TERMINATE RETURN
# ... ... # PROCEED RETURN
# ... ... # ENTER OR RECYCLE RETURN
#
# ... ... # IMMEDIATE RETURN TO THE USER
# GOMARK1 IS USED FOR A PLEASE PERFORM ON A MARK REQUEST WITH ONLY 1 ASTRONAUT RETURN TO THE USER. NO IMMEDIATE
@ -291,9 +288,9 @@
# CADR GOMARK1
# ... ... # ENTER RETURN
# *** IF BLANKING DESIRED ON NON-R ROUTINES, NOTIFY DISPLAYER.
# *** IF BLANKING DESIRED ON NON R ROUTINES, NOTIFY DISPLAYER.
#
# GOMARK1R IS THE SAME AS A GOMARK1 ONLY AN IMMEDIATE RETURN IS MADE TO THE USER'S CALL CADR +2.
# GOMARK1R IS THE SAME AS A GOMARK1 ONLY AN IMMEDIATE RETURN IS MADE TO THE USERS CALL CADR +2.
# CAF V5XNYY # X=1,2,3,4 YY = NOUN
# TC BANKCALL
# CADR GOMARK1R
@ -311,11 +308,11 @@
# GOMARK2R IS THE SAME AS GOMARK1R ONLY 3 ASTRONAUT RETURNS ARE MADE TO THE USER.
# CAF V5XNYY # X=0,1,2,3,4 YY=NOUN
# TCF BANKCALL
# CADR GOMARK24
# CADR GOMARK2R
# ... ... # TERMINATE RETURN
# ... ... # PROCEED RETURN
# ... ... # ENTER RETURN
# ... ... # IMMEDIATE RETURN TO THE USER.
# ... ... # IMMEDIATE RETURN TO THE USER
# GOMARK3 IS USED FOR A PLEASE PERFORM ON A MARK REQUEST WITH A 3 COMP. DEC DISPLAY. THE DESIRED MARK PLEASE
# PERFORM VERB AND NOUN ARE ENTERED IN A. GOMARK3 DISPLAYS R1, R2, R3 BY MEANS OF A V06NYY FOLLOWED BY A FLASHING
@ -337,7 +334,7 @@
# ... ... # ENTER RETURN
# EXDSPRET IS USED TO DISPLAY A VERB NOUN ARRIVING IN A WITH A RETURN MADE TO THE USER AFTER THE DISPLAY HAS BEEN
# SENT OUT.
# CAF VXNYY
# CAF VXXNYY
# TC BANKCALL
# CADR EXDSPRET
# ... ... # RETURN TO USER
@ -368,7 +365,7 @@
# IS RESPONDED TO BY THE ASTRONAUT.
#
# THE FORMER DISPLAY IS RESTORED BY AN AUTOMATIC BRANCH TO WAKE UP THE DISPLAY THAT WAS INTERRUPTED BY THE
# PRIO DISPLAY
# PRIO DISPLAY.
# CAF VXXNYY # VXXNYY WILL BE A FLASHING VERB NOUN
# TC BANKCALL
# CADR PRIODSP
@ -377,7 +374,7 @@
# Page 1461
# ... ... # ENTER OR RECYCLE RETURN
# PRIODSPR IS THE SAME AS PRIODSP ONLY AN IMMEDIATE RETURN IS MADE TO THE USER'S CALL CADR +4.
# PRIODSPR IS THE SAME AS PRIODSP ONLY AN IMMEDIATE RETURN IS MADE TO THE USERS CALL CADR +4.
# CAF VXXNYY # VXXNYY WILL BE A FLASHING VERB NOUN
# TC BANKCALL
# CADR PRIODSPR
@ -387,7 +384,6 @@
# ... ... # IMMEDIATE RETURN
# PRIOLARM DOES A V05N09 PRIODSPR.
#
# CLEANDSP CLEANS OUT ALL NORMAL DISPLAYS (ACTIVE AND INACTIVE). A RETURN IS MADE TO THE USER AFTER NORMAL
# DISPLAYS ARE CLEANED OUT.
# TC BANKCALL
@ -398,16 +394,16 @@
# GENERAL INFORMATION
# -------------------
#
# ALARM OR ABORT EXIT MODE --
# ALARM OR ABORT EXIT MODES--
# PRIOBORT TC ABORT
# OCT 1502
#
# PRIOBORT IS BRANCHED TO WHEN (1) A NORMAL DISPLAY IS REQUESTED AND ANOTHER NORMAL DISPLAY IS ALREADY ACTIVE
# PRIOBORT IS BRANCED TO WHEN (1) A NORMAL DISPLAY IS REQUESTED AND ANOTHER NORMAL DISPLAY IS ALREADY ACTIVE
# (REFLASH AND REGODSP ARE EXCEPTIONS) OR (2) A PRIORITY DISPLAY IS REQUESTED WHEN ANOTHER PRIORITY DISPLAY IS
# ALREADY ACTIVE (A PRIORITY WITH LINUS BIT14 IS AN EXCEPTION).
#
# ERASABLE INITIALIZATION REQUIRED--
# ACCOMPLISHED BY FRESH START -- 1. FLAGWRD4 (USED EXCLUSIVELY BY DISPLAY INTERFACE ROUTINES)
# ACCOMPLISHED BY FRESH START- 1. FLAGWRD4 (USED EXCLUSIVELY BY DISPLAY INTERFACE ROUTINES)
# 2. NVSAVE = NORMAL VERB AND NOUN REGISTER.
# 3. EBANKTEM = NORMAL INACTIVE FLAGWORD (ALSO CONTAINS NORMALS EBANK).
# 5. R1SAVE = MARKBRAN CONTROL WORD
@ -420,29 +416,29 @@
# DSPFLG(EBANKSAV) = PRIO FLAGWORD (INCLUDING EBANK)
# DSPFLG +1 (MARKEBAN) = MARK FLAGWORD (INCLUDING EBANK)
# DSPFLG +2 (EBANKTEM) = NORMAL FLAGWORD (INCLUDING EBANK)
# CADRFLSH = PRIO USER'S CALL CADR +1 LOCATION
# CADRFLSH +1 (MARKFLSH) = MARK USER'S CALL CADR +1 LOCATION
# CADRFLSH +2 (TEMPFLSH) = NORMAL USER'S CALL CADR +1 LOCATION
# CADRFLSH = PRIO USERS CALL CADR +1 LOCATION
# CADRFLSH +1 (MARKFLSH) = MARK USERS CALL CADR +1 LOCATION
# CADRFLSH +2 (TEMPFLSH) = NORMAL USERS CALL CADR +1 LOCATION
# PRIOTIME = TIME EACH PRIO REQUEST FIRST SENT OUT
# OPTION1 = DESIRED OPTION FROM GOPERF4
# FLAGWRD4 = BIT INFO FOR CONTROL OF ALL DISPLAY ROUTINES
# DSPTEM1 = R1 INFO FOR ASTRONAUT FROM PERFORM DISPLAYS(NORMAL)
#
# SUBROUTINES USED-- NVSUB, FLAGUP, FLAGDOWN, ENDOFJOB, BLANKSUB, ABORT, JOBWAKE, JOBSLEEP, FINDVAC, PRIOCHNG,
# JAMTERM, NVSUBUSY, FLASHON, ENDIDLE, CHANG1, BANKJUMP, MAKECADR, NOVAC
# JAMTERM, NVSUBUSY, FLASHON, ENDIDLE, CHANG1, BANKJUMP, MAKECADR, NOVAC,
#
# DEBRIS-- (STORED INTO)
# TEMPORARY TEMPORARIES -- A, Q, L, MPAC +2, MPAC +3, MPAC +4, MPAC +5, MPAC +6, RUPREG2, RUPTREG3, CYL,
# TEMPORARY TEMPORARIES- A, Q, L, MPAC +2, MPAC +3, MPAC +4, MPAC +5, MPAC +6, RUPTREG2, RUPTREG3, CYL,
# EBANK, RUPTREG4, LOC, BANKSET, MODE, MPAC, MPAC +1, FACEREG
# ERASABLES (SHARED AND USED WITH OTHER PROGRAMS) -- CADRSTOR, DSPLIST, LOC, DSPTEM1, OPTION1
# ERASABLES (USED ONLY BY DISPLAY ROUTINES) -- NVWORD,+1,+2, DSPFLAG,+1,+2, CADRFLSH,+1,+2, PRIOTIME, FLAGWRD4,
# ERASABLES(SHARED AND USED WITH OTHER PROGRAMS) CADRSTOR, DSPLIST, LOC, DSPTEM1, OPTION1
# ERASABLES(USED ONLY BY DISPLAY ROUTINES)- NVWORD,+1,+2, DSPFLAG,+1,+2, CADRFLSH,+1,+2, PRIOTIME, FLAGWRD4,
# Page 1463
# R1SAVE, MARK2PAC
#
# DEBRIS -- (USED BUT NOT STORED INTO) -- NOUNREG, VERBREG, LOCCTR, MONSAVE1
# DEBRIS-- (USED BUT NOT STORED INTO)- NOUNREG, VERBREG, LOCCTR, MONSAVE1
#
# FLAGWORD DESCRIPTIONS--
# FLAGWRD4 -- SEE DESCRIPTION UNDER LOG SECTION ERASABLE ASSIGNMENTS
# FLAGWRD4- SEE DESCRIPTION UNDER LOG SECTION ERASABLE ASSIGNMENTS
#
# DSPFLG, DSPFLG+1, DSPFLG+2
# --------------------------
@ -469,13 +465,13 @@
# AS THERE IS ANY REQUEST AWAITING OPERATOR RESPONSE, ANY USE OF PROCEED OR TERMINATE WILL SERVE AS
# RESPONSES TO THAT REQUEST. CARE SHOULD BE EXERCISED IN ATTEMPTING TO KILL AN OPERATOR INITIATED MONITOR
# WITH PROCEED AND TERMINATE FOR THIS REASON.
# 2. THE ASTRONAUT MUST RESPOND TO A PRIORITY DISPLAY NO SOONER THAN 2 SECONDS FROM THE TIME THE
# 2. THE ASTRONAUT MUST RESPOND TO A PRIORITY DISPLAY NO SOONER THAN 5 SECS FROM THE TIME THE MISSION
# PROGRAM SENT OUT THE REQUEST FOR OPERATOR RESPONSE (THE ASTRONAUT WOULD SEE THIS DISPLAY FOR LESS TIME
# DUE TO TIME IT TAKES TO GET DISPLAY SENT OUT.) IF THE ASTRONAUT RESPONDS TOO SOON, THE PRIORITY DISPLAY
# IS SENT OUT AGAIN -- AND AGAIN UNTIL AN ACCUMULATED 2 SECS FROM THE TIME THE FIRST PRIORITY DISPLAY
# OUT. THE SAME 2 SEC. DELAY WILL OCCUR AT 163.84 SECS OR IN ANY MULTIPLE OF THAT TIME DUE TO PROGRAM
# IS SENT OUT AGAIN---AND AGAIN UNTIL AN ACCUMULATED 5 SECS FROM TIME THE FIRST PRIORITY DISPLAY WAS SENT
# OUT. THE SAME 5 SEC. DELAY WILL OCCUR AT 163.84 SECS OR IN ANY MULTIPLE OF THAT TIME DUE TO PROGRAM
# CONSIDERATION.
# 3. KEY RELEASE BUTTON --
# 3. KEY RELEASE BUTTON-
# A) IF THE KEY RELEASE LIGHT IS ON, IT SIMPLY RELEASES THE KEYBOARD AND DISPLAY FOR INTERNAL USE.
# B) IF THE KEY RELEASE LIGHT IS OFF, AND IF SOME REQUEST FOR OPERATOR RESPONSE (FLASHING V/N) IS STILL
# AWAITING RESPONSE THEN IT RE-ESTABLISHES THE DISPLAYS THAT ORIGINALLY REQUESTED RESPONSE.
@ -502,7 +498,7 @@
# CAF BITX # X=1,2,3 BLANK R1,R2,R3 RESPECTIVELY
# TC BLANKET
# ... ... # RETURN TO USER HERE
# IN ORDER TO USE BLANKET CORRECTLY, THE USER MUST USE A DISPLAY ROUTINE THAT ENDS IN R FIRST FOLLOWED BY THE CALL
# IN ORDER TO USE BLANKET CORRECTLY THE USER MUST USE A DISPLAY ROUTINE THAT ENDS IN R FIRST FOLLOWED BY THE CALL
# TO BLANKET AT THE IMMEDIATE RETURN LOC.
BLOCK 02
SETLOC FFTAG4
@ -597,10 +593,9 @@ MAKEMARK CAF ONE
CCS A
TCF CHKPRIO
CA FLAGWRD4 # IS MARK SLEEPING DUE TO ASTRO BUSY?
CA FLAGWRD4 # IS MARK SLEEPING DUE TO ASTRO BUSY
# Page 1467
MASK BIT9
EXTEND
BZF MARKPLAY # NO
@ -631,7 +626,7 @@ COPYPACS INDEX COPINDEX
TS GENMASK
INDEX COPINDEX
CA EBANKSAV # Was CAF --- RSB 2004.
CAF EBANKSAV
TS TEMPOR2 # ACTIVE EBANK AND FLAG
TS EBANK
@ -678,7 +673,7 @@ GODSPR TS PLAYTEM1
GODSPR1 CAF ZERO
GODSPR2 TS PLAYTEM4
CAF ZERO # * DON'T MOVE
CAF ZERO # * DONT MOVE
TCF GODSPRS1
# CLEANDSP IS USED FOR CLEARING OUT A NORMAL DISPLAY THAT IS PRESENTLY ACTIVE OR A NORMAL DISPLAY THAT IS
@ -687,7 +682,7 @@ GODSPR2 TS PLAYTEM4
# NORMALLY THE USER WILL NOT NEED TO USE THIS ROUTINE SINCE A NEW NORMAL DISPLAY AUTOMATICALLY CLEARS OUT AN
# OLD DISPLAY.
#
# CALLING SEQUENCE FOR CLEANDSP --
# CALLING SEQUENCE FOR CLEANDSP-
#
# TC BANKCALL
# CADR CLEANDSP
@ -773,7 +768,7 @@ REDOPRIO CA TIME1 # SAVE TIME PRIODSP SENT OUT
KEEPPRIO CAF ZERO # START UP PRIO DISPLAY
TCF PRIOPLAY
MAKEPLAY CA PRIORITY # SAVE USER'S PRIORITY
MAKEPLAY CA PRIORITY # SAVE USERS PRIORITY
MASK PRIO37
TS USERPRIO
@ -817,10 +812,10 @@ OKTOPLAY TC COPIES2
CA FLAGWRD4 # PRIO OR MARK GOING
MASK PMMASK
CCS A
TCF GOSLEEPS # MARK GOING
TCF GOSLEEPS # YES
TCF +2
TCF GOSLEEPS
TCF GOSLEEPS # MARK GOING
# COULD PUT NORM BUSY CHECK HERE TO SAVE TIME
@ -890,12 +885,12 @@ VACDSP CA BBANK
BOTHJOBS TC SAVELOCS # COPY TEMPS INTO PERMANENT REGISTERS
EXTEND # SAVE NVWORD AND USER'S MPAC +2
EXTEND # SAVE NVWORD AND USERS MPAC +2
DCA MPAC +1
INDEX LOCCTR
DXCH MPAC +1
EXTEND # SAVE USER'S CADR, FLAGS AND EBANK
EXTEND # SAVE USERS CADR, FLAGS AND EBANK
DCA MPAC +3
INDEX LOCCTR
DXCH MPAC +3
@ -952,7 +947,6 @@ COPYNORM CAF ZERO
COPIES TS COPINDEX
COPIES2 INHINT
CA PLAYTEM4 # FLAGWORD
INDEX COPINDEX
TS EBANKSAV # EQUIV TO DSPFLG
MASK CADRMASK # FLASH AND GODSPRET
@ -1003,17 +997,16 @@ JOBXCHS TS FACEREG # CONTROLS TYPE OF DISPLAY PUT TO SLEEP
INDEX FACEREG
CA MARKOCT
MASK IDLESLEP
TC DOWNENT2
IDLEMASK OCT 74004 # * DON'T MOVE
IDLEMASK OCT 74004 # * DONT MOVE
INDEX FACEREG # BIT SHOWS PRIO INTERRUPTED NORM OR MARK
CA BIT5 # BIT5 FOR MARK, BIT4 FOR NORMAL
# Page 1475
AD FOUR
TC UPENT2 # FLAG ROUTINE DOES RELINT
XCHQADD GENADR XCHSLEEP # * DON'T MOVE
XCHQADD GENADR XCHSLEEP # * DONT MOVE
CA FLAGWRD4
MASK BIT3 # MARK OVER NORM?
MASK BIT3 # IF BIT3 THEN MARK OVER NORM
CCS A
GENMARK TC MARKPLAY # USED AS GENADR FOR JOBWAKE
TCF OKTOCOPY
@ -1025,7 +1018,7 @@ WAKEPLAY TS TEMPOR2
CA BITS5+11
AD FOUR
TC DOWNENT2
MARKFMSK OCT 40010 # *** DON'T MOVE
MARKFMSK OCT 40010 # ***DONT MOVE
INDEX TEMPOR2
CAF WAKECADR
@ -1036,7 +1029,6 @@ MARKFMSK OCT 40010 # *** DON'T MOVE
# ALL .1 RESTARTS BRANCH DIRECTLY TO INITDSP. NORMAL DISPLAYS ARE THE ONLY DISPLAYS ALLOWED TO USE .1 RESTARTS
# INITDSP FIRST RESTORES THE EBANK AND THE SUPERBANK TO THE MOST RECENT NORMAL EBANK AND SUPERBANK.
#
# IF THE MOST RECENT NORMAL DISPLAY REQUEST WAS NOT FINISHED, CONTROL IS SENT BACK TO THE LAST NORMAL USER.
# OTHERWISE THE NORMAL DISPLAY SET UP IN THE NORMAL DISPLAY REGS IS STARTED UP IMMEDIATELY.
@ -1106,8 +1098,7 @@ NVDSP TC COPYPACS
NVDSP1 AD ONE
NV50DSP TC NVMONOPT
TCF REST # IF BUSY
TC FLASHOFF # IN CASE OF EXTENDED VERB NON-FLASH
TC FLASHOFF # IN CASE OF EXTENDED VERB NON FLASH
TC COPYTOGO # MPACS DESTROYED BY NVSUB
TC DOWNFLAG # UNSET SLEEPING BITS
@ -1175,7 +1166,7 @@ WITCHONE CS BIT5 # TURN OFF KEY RELEASE LIGHT
WAND DSALMOUT
CA FLAGWRD4
MASK NVBUSMSK # IS IT NVSUB ALEEP
MASK NVBUSMSK # IS IT NVSUB ASLEEP
CCS A
CAF ONE
TS L
@ -1219,7 +1210,7 @@ REST CCS CADRSTOR # IS SOMEONE IN ENDIDLE
RESTSLEP CA GENMASK # SET NVSLEEP BITS
MASK ASTROMSK
TC UPENT2
OCT24100 OCT 24100 # *** DON'T MOVE
OCT24100 OCT 24100 # *** DONT MOVE
INDEX COPINDEX
CAF NVCADR
@ -1233,7 +1224,7 @@ FLASHSUB TC FLASHON
CA GENMASK
MASK IDLEMASK
TC UPENT2
ITISMASK OCT 40040 # *** ENDIDLE ALLOW *** DON'T MOVE
ITISMASK OCT 40040 # *** ENDIDLE ALLOW *** DONT MOVE
CA R1SAVE # IS THIS A REPEAT AND RETURN DISPLAY
INDEX COPINDEX
@ -1294,13 +1285,13 @@ ENDRET CCS OUTHERE
CA GENMASK # REMOVE ENDIDLE AND PINBRANCH BITS
MASK PINIDMSK
TC DOWNENT2
PINIDMSK OCT 74044 # *** DON'T MOVE
PINIDMSK OCT 74044 # *** DONT MOVE
CS THREE # BLANK EVERYTHING EXCEPT MM
TC NVSUB
TCF +1
ENDIT CA USERPRIO # RETURN TO USER'S PRIORITY
ENDIT CA USERPRIO # RETURN TO USERS PRIORITY
MASK PRIO37
TC PRIOCHNG
CA MPAC +3
@ -1314,7 +1305,7 @@ UNSETR1 INDEX COPINDEX # RESET REPEAT AND RETURN REQUEST
TC SUPERSW # SUPERBANK 0
# Page 1481
-1 CAF THREE # RETURN TO USER'S IMMEDIATE RETURN LOC
-1 CAF THREE # RETURN TO USERS IMMEDIATE RETURN LOC
IMMEDRET INDEX COPINDEX
AD CADRFLSH
TCF BANKJUMP
@ -1334,10 +1325,10 @@ LINUSCHR CS PLAYTEM4 # IS THIS A LINUS
TC Q # NO
CCS DSPLOCK # IS THE ASTRONAUT BUSY
TC ENDOFJOB # END THE NEW DISPLAY, IT'S ALREADY ACTIVE
TC ENDOFJOB # END THE NEW DISPLAY, ITS ALREADY ACTIVE
TC Q
# MORE LOGIC COULD BE INCORPORATED HERE TO MAKE SURE A RECYCLE IS A RECYCLE AND CONVERSELY THAT A LOAD IS A LOAD
# MORE LOGIC COULD BE INCORPORATED HERE TO MAKE SURE A RECYCLE IS A RECYCLE AND CONVERSELY THAT A LOAD IS A LOAD.
PROCEED CAF ONE # ASTRONAUT PROCEED (V33) RETURNS
TCF ENDOUT
@ -1348,7 +1339,7 @@ PROCEED CAF ONE # ASTRONAUT PROCEED (V33) RETURNS
#
# IF EITHER OF THE ABOVE 2 CONDITIONS EXISTS, THE NORMAL DISPLAY IS AWAKENED TO GO TO PLAYJUM1 WHICH STARTS
# UP THE MOST RECENT VALID NORMAL DISPLAY. IF THESE 2 CONDITIONS DO NOT EXIST, CONTROL GOES TO PLAYJUM1 WHICH IS
# STARTED IMMEDIATELY WITH THE ASSUMPTION THAT THE MOST RECENT NORMAL DISPLAY IS ALREADY IN ENDIDLE (DURING A
# STARTED IMMEDIATELY WITH THE ASSUMPTION THAT THE MOST RECENT NORMAL DISPLAY IS ALREADY IN-ENDIDLE (DURING A
# PINBRNCH) OR THAT A RESTART HAS OCCURRED AND THE DISPLAY CAN BE STARTED AS A .1 RESTART.
MARKRET CS SIX
@ -1449,8 +1440,8 @@ BITS7+4 OCT 110
DSPFLG EQUALS EBANKSAV
MARKFLAG EQUALS MARKEBAN
SAVEFLAG EQUALS EBANKTEM
BITS5+11 OCT 2020 # * DON'T MOVE
BITS4+10 OCT 1010 # * DON'T MOVE
BITS5+11 OCT 2020 # * DONT MOVE
BITS4+10 OCT 1010 # * DONT MOVE
LOWLOAD DEC 22
BUSYMASK OCT 77730
CADRMASK OCT 50
@ -1480,6 +1471,6 @@ MAKEGEN GENADR MAKEPLAY
OCT10200 OCT 10200
V97N00 VN 09700 # PASTE FOR V97 OR V99
OCT20100 OCT 20100
CLOCKCON OCT 24030
CLOCKCON OCT 24030 # FLASH, PERFORM, V99 OR V97 PASTE,REFLASH