From 73de5c1b3a88fe98b57cd24b218c0f9984796bb5 Mon Sep 17 00:00:00 2001 From: Glenn Dwiyatcita Date: Mon, 2 Sep 2019 17:11:25 +0200 Subject: [PATCH] Proof FRESH_START_AND_RESTART #208 (#401) * Proof FIXED_FIXED_CONSTANT_POOL (#207) * wip(pp. 0181-0185): Proof FRESH_START_AND_RESTART #208 * done(pp. 0181-0210): Proof FRESH_START_AND_RESTART #208 --- Comanche055/FRESH_START_AND_RESTART.agc | 442 ++++++++++++------------ 1 file changed, 224 insertions(+), 218 deletions(-) diff --git a/Comanche055/FRESH_START_AND_RESTART.agc b/Comanche055/FRESH_START_AND_RESTART.agc index 49cf3e4..426f41f 100644 --- a/Comanche055/FRESH_START_AND_RESTART.agc +++ b/Comanche055/FRESH_START_AND_RESTART.agc @@ -35,102 +35,103 @@ # PROGRAM DESCRIPTION 8 APRIL, 1967 # SUNDISK REV 120 # FUNCTIONAL DESCRIPTION -# -# SLAP1 MAN INITIATED FRESH START -# 1. EXECUTE STARTSUB -# 2. TURN OFF DSKY DISCRETE-LAMPS -# 3. CLEAR FAIL REGISTERS, SELF-CHECK ERROR COUNTER AND RESTART -# COUNTER -# 4. EXECUTE DOFSTART -# -# DOFSTART MACHINE INITIATED FRESH START -# -# 1. CLEAR SELF-CHECK REGISTERS, MODE REGISTER AND CDUZ REGISTER -# 2. CLEAR PHASE TABLE -# 3. INITIALIZE IMU FLAGS -# 4. INITIALIZE FLAGWORDS -# 5. TRANSFER CONTROL TO IDLE LOOP IN DUMMYJOB -# -# GOPROG HARDWARE RESTART -# -# 0. EXECUTE STARTSUB -# 1. TRANSFER CONTROL TO DOFSTART IF ANY OF THE FOLLOWING CONDITIONS -# EXIST. -# A. RESTART OCCURRED DURING EXECUTION OF ERASCHK. -# B. BOTH OSCILLATOR FAIL AND AGC WARNING ARE ON. -# C. MARK REJECT AND EITHER NAV OR MAIN DSKY ERROR LIGHT RESET -# ARE ON. -# 2. SCHEDULE A T5RUPT PROGRAM FOR THE DAP -# 3. SET FLAGWRD5 BITS FOR INTWAKE ROUTINE -# 4. EXTINGUISH ALL DSKY LAMPS, EXCEPT FOR PROGRAM ALARM, GIMBAL LOCK, AND -# NO ATT -# 5. INITIALIZE IMU FLAGS -# 6. IF ENGINE COMMAND IS ON (FLAGWRD5, BIT 7), SET ENGINE ON (CHANNEL -# 11, BIT 13). -# 7. TRANSFER CONTROL TO GOPROG3 -# -# ENEMA SOFTWARE RESTART -- INITIATED BY MAJOR MODE CHANGE -# -# 1. EXECUTE STARTSB2 -# 2. KILL PROGRAMS THAT WERE INTEGRATING OR WAITING FOR INTEGRATION -# ROUTINE -# 3. TRANSFER CONTROL TO GOPROG3 -# -# GOPROG3 SUBROUTINE COMMON TO GOPROG AND ENEMA -# -# 1. TEST PHASE TABLES -- IF INCORRECT, DISPLAY ALARM 1107 AND -# TRANSFER CONTROL TO DOFSTART -# 2. DISPLAY MAJOR MODE -# 3. IF ANY GROUPS WERE ACTIVE UPON RESTART, TRANSFER CONTROL TO THE + +# SLAP1 MAN INITIATED FRESH START +# 1. EXECUTE STARTSUB +# 2. TURN OFF DSKY DISCRETE-LAMPS +# 3. CLEAR FAIL REGISTERS,SELF-CHECK ERROR COUNTER AND RESTART +# COUNTER +# 4. EXECUTE DOFSTART + +# DOFSTART MACHINE INITIATED FRESH START + +# 1. CLEAR SELF-CHECK REGISTERS, MODE REGISTER AND CDUZ REGISTER +# 2. CLEAR PHASE TABLE +# 3. INITIALIZE IMU FLAGS +# 4. INITIALIZE FLAGWORDS +# 5. TRANSFER CONTROL TO IDLE LOOP IN DUMMYJOB + +# GOPROG HARDWARE RESTART + +# 0. EXECUTE STARTSUB +# 1. TRANSFER CONTROL TO DOFSTART IF ANY OF THE FOLLOWING CONDITIONS +# EXIST. +# A. RESTART OCCURED DURING EXECUTION OF ERASCHK +# B. BOTH OSCILLATOR FAIL AND AGC WARNING ARE ON +# C. MARK REJECT AND EITHER NAV OR MAIN DSKY ERROR LIGHT RESET +# ARE ON. +# 2. SCHEDULE A T5RUPT PROGRAM FOR THE DAP +# 3. SET FLAGWRD5 BITS FOR INTWAKE ROUTINE +# 4. EXTINGUISH ALL DSKY LAMPS, EXCEPT FOR PROGRAM ALARM,GIMBAL LOCK AND +# NO ATT +# 5. INITIALIZE IMU FLAGS +# 6. IF ENGINE COMMAND IS ON (FLAGWRD5,BIT 7), SET ENGINE ON (CHAN- +# NEL 11, BIT 13) +# 7. TRANSFER CONTROL TO GOPROG3 + +# ENEMA SOFTWARE RESTART INITIATED BY MAJOR MODE CHANGE + +# 1. EXECUTE STARTSB2 +# 2. KILL PROGRAMS THAT WERE INTEGRATING OR WAITING FOR INTEGRATION +# ROUTINE +# 3. TRANSFER CONTROL TO GOPROG3 + +# GOPROG3 SUBROUTINE COMMON TO GOPROG AND ENEMA + +# 1. TEST PHASE TABLES - IF INCORRECT, DISPLAY ALARM 1107 AND +# TRANSFER CONTROL TO DOFSTART +# 2. DISPLAY MAJOR MODE +# 3. IF ANY GROUPS WERE ACTIVE UPON RESTART,TRANSFER CONTROL TO THE # Page 182 -# RESTARTS SUBROUTINE TO RESCHEDULE PENDING TASKS, LONGCALLS, AND -# JOBS (P20 IS RESTARTED VIA FINDVAC) -# 4. IF NO GROUPS WERE ACTIVE UPON RESTART, DISPLAY ALARM CODE -# 1110 (RESTART WITH NO ACTIVE GROUPS) -# 5. TRANSFER CONTROL TO IDLE LOOP IN DUMMYJOB -# -# STARTSUB SUBROUTINE COMMON TO SLAP1 AND GOPROG -# -# 1. CLEAR OUTBIT CHANNELS 5 AND 6 -# 2. INITIALIZE TIME5, TIME4, TIME3 -# 3. TRANSFER CONTROL TO STARTSB2 -# -# STARTSB2 SUBROUTINE COMMON TO STARTSUB AND ENEMA -# -# 1. INTIALIZE OUTBIT CHANNELS 11,12,13, AND 14 -# 2. REPLACE ALL TASKS ON WAITLIST WITH ENDTASK -# 3. MAKE ALL EXECUTIVE REGISTERS AVAILABLE -# 4. MAKE ALL VAC AREAS AVAILABLE -# 5. CLEAR DSKY REGISTERS -# 6. ZERO NUMEROUS SWITCHES -# 7. INITIALIZE OPTICS FLAGS -# 8. INITIALIZE PIPA AND TELEMETRY FAIL FLAGS -# 9. INITIALIZE DOWN TELEMETRY -# +# RESTARTS SUBROUTINE TO RESCHEDULE PENDING TASKS, LONGCALLS, AND +# JOBS (P20 IS RESTARTED VIA FINDVAC) +# 4. IF NO GROUPS WERE ACTIVE UPON RESTART, DISPLAY ALARM CODE +# 1110 (RESTART WITH NO ACTIVE GROUPS). +# 5. TRANSFER CONTROL TO IDLE LOOP IN DUMMYJOB + +# STARTSUB SUBROUTINE COMMON TO SLAP1 AND GOPROG + +# 1. CLEAR OUTBIT CHANNELS 5 AND 6 +# 2. INITIALIZE TIME5,TIME4,TIME3 +# 3. TRANSFER CONTROL TO STARTSB2 + +# STARTSB2 SUBROUTINE COMMON TO STARTSUB AND ENEMA + +# 1. INTIALIZE OUTBIT CHANNELS 11,12,13, AND 14 +# 2. REPLACE ALL TASKS ON WAITLIST WITH ENDTASK +# 3. MAKE ALL EXECUTIVE REGISTERS AVAILABLE +# 4. MAKE ALL VAC AREAS AVAILABLE +# 5. CLEAR DSKY REGISTERS +# 6. ZERO NUMEROUS SWITCHES +# 7. INITIALIZE OPTICS FLAGS +# 8. INITIALIZE PIPA AND TELEMETRY FAIL FLAGS +# 9. INITIALIZE DOWN TELEMETRY + + # INPUT/OUTPUT INITIALIZATION -# -# A. CALLING SEQUENCE -# -# SLAP1 -- TC POSTJUMP OR VERB 36,ENTER -# CADR SLAP1 -# -# ENEMA -- TC POSTJUMP *** DO NOT CALL ENEMA WITHOUT *** -# CADR ENEMA *** CONSULTING P00H PEOPLE *** -# -# B. OUTPUT -# + +# A. CALLING SEQUENCE + +# SLAP1 - TC POSTJUMP OR VERB 36,ENTER +# CADR SLAP1 + +# ENEMA - TC POSTJUMP *** DO NOT CALL ENEMA WITHOUT *** +# CADR ENEMA *** CONSULTING P00H PEOPLE *** + +# B. OUTPUT + # ERASABLE MEMORY INITIALIZATION -# + # PROGRAM ANALYSIS -# -# A. SUBROUTINES CALLED -# + +# A. SUBROUTINES CALLED + # MR.KLEAN,WAITLIST,DSPMM,ALARM,RESTARTS,FINDVAC -# -# B. ALARMS -# -# 1107 PHASE TABLE ERROR -# 1110 RESTART WITH NO ACTIVE GROUPS + +# B. ALARMS + +# 1107 PHASE TABLE ERROR +# 1110 RESTART WITH NO ACTIVE GROUPS # Page 183 BANK 10 @@ -258,7 +259,7 @@ DOFSTART CAF ZERO # DO A FRESH START. DXCH STATE +10D ENDRSTRT TC POSTJUMP - CADR DUMMYJOB +2 # PICKS UP AT RELINT. (IN A SWITCHED BANK.) + CADR DUMMYJOB +2 # DOES A RELINT. (IN A SWITCHED BANK.) MR.KLEAN INHINT EXTEND @@ -295,8 +296,8 @@ GOPROG INCR REDOCTR # ADVANCE RESTART COUNTER. TC BANKCALL # STORE ERASABLES FOR DEBUGGING PURPOSES. CADR VAC5STOR CA BIT15 # TEST OSC FAIL BIT TO SEE IF WE HAVE - EXTEND # HAD A POWER TRANSIENT. IF SO, ATTEMPT - WAND CHAN33 # A RESTART. IF NOT, CHECK THE PRESENT + EXTEND # HAD A POWER TRANSIENT. IF SO, ATTEMPT + WAND CHAN33 # A RESTART. IF NOT, CHECK THE PRESENT EXTEND # STATE OF AGC WARNING BIT. BZF BUTTONS @@ -308,40 +309,40 @@ GOPROG INCR REDOCTR # ADVANCE RESTART COUNTER. BUTTONS TC LIGHTSET # MAKE FRESH START CHECKS BEFORE ERESTORE. -# ERASCHK TEMPORARILY STORES THE CONTENST OF TWO ERASABLE LOCATIONS, X +# ERASCHK TEMPORARILY STORES THE CONTENTS OF TWO ERASABLE LOCATIONS, X # AND X+1 INTO SKEEP5 AND SKEEP6. IT ALSO STORES X INTO SKEEP7 AND # ERESTORE. IF ERASCHK IS INTERRUPTED BY A RESTART, C(ERESTORE) SHOULD -# EQUAL C(SKEEP7), AND SHOULD BE A + NUMBER LESS THAN 2000 OCT. OTHERWISE +# EQUAL C(SKEEP7),AND SHOULD BE A + NUMBER LESS THAN 2000 OCT. OTHERWISE # C(ERESTORE) SHOULD EQUAL +0. CAF HI5 MASK ERESTORE EXTEND BZF +2 # IF ERESTORE NOT = +0 OR +N LESS THAN 2K, - TCF NONAVKEY +1 # DOUBT E MEMORY AND DO A FRESH START + TCF NONAVKEY +1 # DOUBT E MEMORY AND DO A FRESH START. CS ERESTORE EXTEND BZF ELRSKIP -1 AD SKEEP7 EXTEND BZF +2 # = SKEEP7, RESTORE E MEMORY. - TCF NONAVKEY +1 # NOT = SKEEP7, DOUBT E MEM, DO FRESH START + TCF NONAVKEY +1 # NOT=SKEEP7, DOUBT EMEM, DO FRESH START CA SKEEP4 TS EBANK # EBANK OF E MEMORY THAT WAS UNDER TEST. EXTEND # (NOT DXCH SINCE THIS MIGHT HAPPEN AGAIN) DCA SKEEP5 INDEX SKEEP7 - DXCH 0000 # E MEMORY RESTORED + DXCH 0000 # E MEMORY RESTORED. CA ZERO TS ERESTORE # Page 187 TC STARTSUB # DO INITIALIZATION AFTER ERASE RESTORE. ELRSKIP CA FLAGWRD6 # RESTART AUTOPILOTS EXTEND - MP BIT3 # BITS 15,14 00 T5IDLOC - MASK SIX # 01 REDORCS - EXTEND # 10 REDOTVC - INDEX A # 11 REDOSAT + MP BIT3 # BITS 15,14 00 T5IDLOC + MASK SIX # 01 REDORCS + EXTEND # 10 REDOTVC + INDEX A # 11 REDOSAT DCA T5IDLER DXCH T5LOC @@ -359,12 +360,12 @@ ELRSKIP CA FLAGWRD6 # RESTART AUTOPILOTS AD IM33INIT TS IMODES33 - CA 9,6,4 # LEAVE PROG ALARM, GIMBAL LOCK, NO ATT + CA 9,6,4 # LEAVE PROG ALARM,GIMBAL LOCK, NO ATT MASK DSPTAB +11D # LAMPS INTACT ON HARDWARE RESTART AD BIT15 XCH DSPTAB +11D MASK BIT4 # IF NO ATT LAMP WAS ON, LEAVE ISS IN - EXTEND # COARSE ALIGN + EXTEND # COURSE ALIGN BZF NOCOARSE TC IBNKCALL # IF NO ATT LAMP ON, RETURN ISS TO CADR SETCOARS # COARSE ALIGN. @@ -402,7 +403,7 @@ ENEMA INHINT BZMF GOPROG3 # NO CAF .5SEC # YES, CALL TVCEXEC TASK WHICH WAS KILLED - TC WAITLIST # IN STARTSB2 + TC WAITLIST # IN STARTSB2. EBANK= BZERO 2CADR TVCEXEC @@ -439,13 +440,13 @@ PCLOOP TS MPAC +5 CAF EBANK3 TS EBANK # Page 189 - CAF NUMGRPS # SEE IF ANY GROUPS RUNNING + CAF NUMGRPS # SEE IF ANY GROUPS RUNNING. NXTRST TS MPAC +5 DOUBLE INDEX A CCS PHASE1 - TCF PACTIVE # PNZ -- GROUP ACTIVE. - TCF PINACT # +0 -- GROUP NOT RUNNING. + TCF PACTIVE # PNZ - GROUP ACTIVE. + TCF PINACT # +0 - GROUP NOT RUNNING. PACTIVE TS MPAC INCR MPAC # ABS OF PHASE. @@ -466,12 +467,12 @@ PINACT CCS MPAC +5 # PROCESS ALL RESTART GROUPS. PTBAD TC ALARM # SET ALARM TO SHOW PHASE TABLE FAILURE. OCT 1107 - TCF DOFSTART # IN R21. - -# ********* ********* ********** - -# DO NOT USE GOPROG2 OR ENEMA WITHOUT CONSULTING P00H PEOPLE. + TCF DOFSTART # IN R2). +# ******** ****** ****** +# +# DO NOT USE GOPROG2 OR ENEMA WITHOUT CONSULTING P00H PEOPLE +# GOPROG2 EQUALS ENEMA OCT10000 = BIT13 OCT30000 = PRIO30 @@ -512,7 +513,7 @@ STARTSUB CAF LDNPHAS1 # SET POINTER SO NEXT 20MS DOWNRUPT WILL TS TIME5 # 37774 TO TIME5. STARTSB2 CAF OCT77603 # TURN OFF UPLINK ACTY, TEMP CAUTION, KR, - EXTEND # FLASH, OP. ERROR, LEAVE OTHERS UNCHANGED. + EXTEND # FLASH, OP. ERROR, LEAVE OTHERS UNCHANGED WAND DSALMOUT CAF OCT74777 # TURN OFF TEST ALARMS, STANDBY ENABLE. @@ -676,26 +677,31 @@ SWINIT OCT 0 OCT 0 OCT 0 # Page 194 -# PROGRAM NAME GOTOP00H ASSEMBLY SUNDISK +# PROGRAM NAME GOTOP00H ASSEMBLY SUNDISK # LOG SECTION FRESH START AND RESTART -# + # FUNCTIONAL DESCRIPTION -# -# 1. DISPLAY MAJOR MODE NUMBER 00 IN DSKY REGISTER R1 AND R3. FLASH V50N07 ON DSKY. (M M CHANGE REQUEST) -# 2. PERMIT A CURRENT PENDING REQUEST (FLASH ON DSKY) TO BE REPLACED (WITHOUT AN ABORT) BY THE MAJOR MODE -# CHANGE REQUEST. -# + +# 1. DISPLAY MAJOR MODE NUMBER 00 IN DSKY REGISTER R1 AND R3. FLASH V50 N07 ON DSKY. (M M CHANGE REQUEST) +# 2. PERMIT A CURRENT PENDING REQUEST (FLASH ON DSKY) TO BE REPLACED (WITHOUT AN ABORT) BY THE MAJOR MODE +# CHANGE REQUEST. + # INPUT/OUTPUT INFORMATION -# -# A. CALLING SEQUENCE TC GOTOP00H + +# A. CALLING SEQUENCE TC GOTOP00H + # B. ERASABLE INITIALIZATION NONE -# C. OUTPUT FLASH V 50 NOUN 07 ON DSKY -# D. DEBRIS L -# + +# C. OUTPUT FLASH VERB 50 NOUN 07 ON DSKY + +# D. DEBRIS L + # PROGRAM ANALYSIS -# -# A. SUBROUTINES CALLED GOPERF3, LINUS -# B. NORMAL EXIT TCF ENDOFJOB + +# A. SUBROUTINES CALLED GOPERF3, LINUS + +# B. NORMAL EXIT TCF ENDOFJOB + # C. ALARM AND ABORT EXITS NONE BLOCK 02 @@ -727,70 +733,70 @@ GOP00FIX TC INITSUB V37N99 VN 3799 # Page 196 -# PROGRAM NAME V37 ASSEMBLY SUNDISK -# -# LOG SECTION FRESH START AND RESTART -# +# PROGRAM NAME V37 ASSEMBLY SUNDISK +# LOG SECTION FRESH START AND RESTART + # FUNCTIONAL DESCRIPTION -# -# 1. CHECK IF NEW PROGRAM ALLOWED. IF BIT 1 OF FLAGWRD2 (NODOFLAG) IS SET, AN ALARM 1520 IS CALLED. + +# 1. CHECK IF NEW PROGRAM ALLOWED. IF BIT 1 OF FLAGWRD2(NODOFLAG) ISSET, AN ALARM 1520 IS CALLED. # 2. CHECK FOR VALIDITY OF PROGRAM SELECTED. IF AN INVALID PROGRAM IS SELECTED, THE OPERATOR ERROR LIGHT IS -# SET AND CURRENT ACTIVITY, IF ANY, CONTINUE. +# SET AND CURRENT ACTIVITY, IF ANY, CONTINUES. # 3. SERVICER IS TERMINATED IF IT HAS BEEN RUNNING. # 4. INSTALL IS EXECUTED TO AVOID INTERRUPTING INTEGRATION. # 5. THE ENGINE IS TURNED OFF AND THE DAP IS INITIALIZED FOR COAST. -# 6. TRACK, UPDATE, AND TARG1 FLAGS ARE SET TO ZERO. +# 6. TRACK, UPDATE AND TARG1 FLAGS ARE SET TO ZERO. # 7. DISPLAY SYSTEM IS RELEASED. # 8. THE FOLLOWING ARE PERFORMED FOR EACH OF THE THREE CASES. -# A. PROGRAM SELECTED IS P00. -# 1. RENDEZVOUS FLAG IS RESET. (KILL P20) -# 2. STATINT1 IS SCHEDULED BY SETTING RESTART GROUP 2. -# 3. MAJOR MODE 00 IS STORED IN THE MODE REGISTER (MODREG). -# 4. SUPERBANK 3 IS SELECTED. -# 5. NODOFLAG IS RESET. -# 6. ALL RESTART GROUPS EXCEPT GROUP2 ARE CLEARED. CONTROL IS TRANSFERRED TO RESTART PROGRAM (GOPROG2) -# WHICH CAUSES ALL CURRENT ACTIVITY TO BE DISCONTINUED AND A 9 MINUTE INTEGRATION CYCLE TO BE -# INITIATED. -# B. PROGRAM SELECTES IS P20. -# 1. IF THE CURRENT MAJOR MODE IS THE SAME AS THE SELECTED NEWPROGRAM. THE PROGRAM IS RE-INITIALIZED -# VIA V37XEQ, ALL RESTART GROUPS, EXCEPT GROUP 4 ARE CLEARED. -# 2. IF THE CURRENT MAJOR MODE IS NOT EQUAL TO THE NEW REQUEST, A CHECK IS MADE TO SEE IF THE REQUEST- -# ED MAJOR MODE HAS BEEN RUNNING THE BACKGROUND, -# AND IF IT HAS, NO NEW PROGRAM IS SCHEDULED, THE EXISTING -# P20 IS RESTARTED TO CONTINUE, AND ITS MAJORE MODE IS SET. -# 3. CONTROL IS TRANSFERRED TO GOPROG2. -# C. PROGRAM SELECTED IS NEITHER P00 NOR P20 -# 1. V37XEQ IS SCHEDULED (AS A JOB) BY SETTING RESTART GROUP 4 -# 2. ALL CURRENT ACTIVITY EXCEPT RENDEZVOUS AND TRACKING IS DISCONTINUED BY CLEARING ALL RESTART -# GROUPS. GROUP 2 IS CLEARED. IF THE RENDEZVOUS FLAG IS ON P20 IS RESTARTED IN GOPROG2 VIA REDOP20, -# TO CONTINUE. -# +# A. PROGRAM SELECTED IS P00. +# 1. RENDEZVOUS FLAG IS RESET (KILL P20). +# 2. STATINT1 IS SCHEDULED BY SETTING RESTART GROUP 2. +# 3. MAJOR MODE 00 IS STORED IN THE MODE REGISTER(MODREG). +# 4. SUPERBANK 3 IS SELECTED. +# 5. NODOFLAG IS RESET. +# 6. ALL RESTART GROUPS EXCEPT GROUP 2 ARE CLEARED. CONTROL ISTRANSFERRED TO RESTART PROGRAM (GOPROG2) +# WHICH CAUSES ALL CURRENT ACTIVITY TO BE DISCONTINUED AND A 9 MINUTE INTEGRATION CYCLE TO BE +# INITIATED. +# B. PROGRAM SELECTES IS P20. +# 1. IF THE CURRENT MAJOR MODE IS THE SAME AS THE SELECTED NEWPROGRAM. THE PROGRAM IS RE-INITIALIZED +# VIA V37XEQ, ALL RESTART GROUPS, EXCEPT GROUP 4 ARE CLEARED. +# 2. IF THE CURRENT MAJOR MODE IS NOT EQUAL TO THE NEW REQUEST, A CHECK IS MADE TO SEE IF THE REQUEST- +# ED MAJOR MODE HAS BEEN RUNNING THE BACKGROUND, +# AND IF IT HAS, NO NEW PROGRAM IS SCHEDULED, THE EXISTING +# P20 IS RESTARTED TO CONTINUE, AND ITS MAJOR MODE IS SET. +# 3. CONTROL IS TRANSFERRED TO GOPROG2. +# C. PROGRAM SELECTED IS NEITHER P00 NOR P20 +# 1. V37XEQ IS SCHEDULED (AS A JOB) BY SETTING RESTART GROUP 4 +# 2. ALL CURRENT ACTIVITY EXCEPT RENDEZVOUS AND TRACKING IS DISCONTINUED BY CLEARING ALL RESTART +# GROUPS. GROUP 2 IS CLEARED. IF THE RENDEZVOUS FLAG IS ON P20 IS RESTARTED IN GOPROG2 VIA REDOP20, +# TO CONTINUE. + # INPUT/OUTPUT INFORMATION -# -# A. CALLING SEQUENCE + +# A. CALLING SEQUENCE + # CONTROL IS DIRECTED TO V37 BY THE VERBFAN ROUTINE. -# VERBFAN GOES TO C(VERBTAB+C(VERBREG)). VERB 37 = MMCHANG. -# MMCHANG EXECUTES A TC POSTJUMP, CADR V37. -# -# B. ERASABLE INITIALIZATION NONE -# -# C. OUTPUT +# VERBFAN GOES TO C(VERBTAB+C(VERBREG)). VERB 37 = MMCHANG. +# MMCHANG EXECUTES A TC POSTJUMP, CADR V37. + +# B. ERASABLE INITIALIZATION NONE + +# C. OUTPUT # MAJOR MODE CHANGE # Page 197 # -# D. DEBRIS +# D. DEBRIS # MMNUMBER, MPAC +1, MINDEX, BASETEMP +C(MINDEX), FLAGWRD0, FLAGWRD1, FLAGWRD2, MODREG, GOLOC -1, # GOLOC, GOLOC +1, GOLOC +2, BASETEMP, -PHASE2, PHASE2, -PHASE4 -# + # PROGRAM ANALYSIS -# -# A. SUBROUTINES CALLED + +# A. SUBROUTINES CALLED # ALARM, RELDSP, PINBRNCH, INTSTALL, ENGINOF2, ALLCOAST, V37KLEAN, GOPROG2, FALTON, FINDVAC, SUPERSW, # DSPMM -# -# B. NORMAL EXIT TC ENDOFJOB -# -# C. ALARMS 1520 (MAJOR MODE CHANGE NOT PERMITTED) + +# B. NORMAL EXIT TC ENDOFJOB + +# C. ALARMS 1520 (MAJOR MODE CHANGE NOT PERMITTED) BLOCK 02 SETLOC FFTAG10 @@ -870,7 +876,7 @@ V37BAD TC RELDSP # RELEASES DISPLAY FROM ASTRONAUT TC POSTJUMP # BRING BACK LAST NORMAL DISPLAY IF THERE CADR PINBRNCH # WAS ONE. OY -CHECKTAB CA NOV37MM # THE NO. OF MM +CHECKTAB CA NOV37MM # THE NO. OF MM AGAINMM TS MPAC +1 NDX MPAC +1 CA PREMM1 # OBTAIN WHICH MM THIS IS FOR @@ -886,13 +892,13 @@ AGAINMM TS MPAC +1 CA MPAC +1 TS MINDEX # SAVE INDEX FOR LATER -ISSERVON CS FLAGWRD7 # V37 FLAG SET -- I.E., IS SERVICER GOING +ISSERVON CS FLAGWRD7 # V37 FLAG SET - I.E. IS SERVICER GOING MASK V37FLBIT CCS A TCF CANV37 # NO INHINT - CS AVEGBIT # YES TURN OFF AVERAGE G FLAG AND WAIT + CS AVEGBIT # YES TURN OFF AVERAGE G FLAG AND WAIT MASK FLAGWRD1 # FOR SERVICER TO RETURN TO CANV37 TS FLAGWRD1 @@ -945,12 +951,13 @@ DUMMYAD EXIT COUNT 04/P00 P00H TC RELDSP # RELEASE DISPLAY SYSTEM + CAF PRIO5 # SET VARIABLE RESTART REGISTER FOR P00. TS PHSPRDT2 INHINT - CS NODOBIT # TURN OFF NODOFLAG. + CS NODOBIT # TURN OFF NODOFLAG MASK FLAGWRD2 TS FLAGWRD2 @@ -967,15 +974,15 @@ P00H TC RELDSP # RELEASE DISPLAY SYSTEM COUNT 04/V37 -SEUDOP00 TS DNLSTCOD # SET UP APPROPRIATE DOWNLIST CODE - # (OLD ONE WILL BE FINISHED FIRST) +SEUDOP00 TS DNLSTCOD # SET UP APPROPRIATE DOWNLIST. + # (OLD ONE WILL BE FINISHED FIRST) CS OCT01120 # TURN OFF TRACK, TARG1, UPDATE FLAGS TS EBANKTEM MASK FLAGWRD1 TS FLAGWRD1 -GROUPKIL TC IBNKCALL # KILL GROUPS 3,5,6 +GROUPKIL TC IBNKCALL # KILL GROUPS 3(5,6 CADR V37KLEAN CCS MMNUMBER # IS IT P00H @@ -1038,7 +1045,7 @@ NOUVEAU CAF RNDVZBIT MASK FLAGWRD0 CCS A TCF +3 - TC DOWNFLAG # NO, RESET IMUINUSE FLAG + TC DOWNFLAG # NO, RESET IMUSE FLAG. ADRES IMUSE # BIT 8 FLAG 0 +3 INDEX MINDEX CAF DNLADMM1 # OBTAIN NEW DOWNLIST ADDRESS @@ -1046,22 +1053,22 @@ NOUVEAU CAF RNDVZBIT INHINT TCF SEUDOP00 -V37NONO TC FALTON # COME HERE IF MM REQUESTED DOESN'T EXIST +V37NONO TC FALTON # COME HERE IF MM REQUESTED DOESNT EXIST TCF V37BAD OCT00010 EQUALS BIT4 V37XEQ INHINT INDEX MINDEX CAF PREMM1 - TS MMTEMP # OBTAIN PRIORITY BITS 15-11 - TS CYR # SHIFT RIGHT TO BITS 14-10 + TS MMTEMP # OBTAIN PRIORITY BITS 15 - 11 + TS CYR # SHIFT RIGHT TO BITS 14 - 10 CA CYR MASK PRIO37 - TS PHSPRDT4 # PRESET GROUP 4 RESTART PRIORITY + TS PHSPRDT4 # PRESET GROUP4 RESTART PRIORITY TS NEWPRIO # STORE PRIO FOR SPVAC - CA MMTEMP # OBTAIN EBANK -- BITS 8, 9, 10 OF MMTEMP. + CA MMTEMP # OBTAIN EBANK - BITS 8, 9, 10 OF MMTEMP. EXTEND MP BIT8 MASK LOW3 @@ -1091,22 +1098,22 @@ INITSUB EXTEND QXCH MPAC +1 CAF EBANK6 # SET E6 FOR DEADBAND CODING - TS EBANK # WILL BE RESET IN STARTSB2 + TS EBANK # WILL BE RESET IN STARTSB2. INHINT TC STOPRATE CA FLAGWRD9 # RESTORE DEADBAND MASK MAXDBBIT CCS A - TCF SETMAXER # MAX DE SELECTED - TC BANKCALL # MIN DE SELECTED + TCF SETMAXER # MAX DB SELECTED + TC BANKCALL # MIN DB SELECTED CADR SETMINDB TCF RAKE SETMAXER TC BANKCALL CADR SETMAXDB RAKE CAF ELEVEN # THIS PART CLEARS FLAGWORD BITS. - +1 TS MPAC # LOOP COMES HERE + +1 TS MPAC # LOOP COMES HERE. INDEX MPAC CS FLAGTABL INDEX MPAC @@ -1114,7 +1121,7 @@ RAKE CAF ELEVEN # THIS PART CLEARS FLAGWORD BITS. INDEX MPAC # PUT REVISED FLAGWORD BACK. TS FLAGWRD0 CCS MPAC - TCF RAKE +1 # GET THE NEXT FLAGWORD + TCF RAKE +1 # GET THE NEXT FLAGWORD. RELINT TC UPFLAG # NOW SET IMPULSW @@ -1238,10 +1245,10 @@ RCSADDR4 2CADR RCSATT # INTO THE TABLE WITH THE ENTRY FOR THE HIGHEST MAJOR MODE COMING FIRST, # Page 206 # TO THE LOWEST MAJOR MODE WHICH IS THE LAST ENTRY IN EACH TABLE. -# -# THE FCADRMM TABLE CONTAINS THE FCADR OF THE STARTING JOB OF + +# THE FCADRMM TABLE CONTAINS THE FCADR OF THE STARTING JOB OF # THE MAJOR MODE. FOR EXAMPLE, -# + # FCADRMM1 FCADR P79 # START OF P 79 # FCADR PROG18 # START OF P 18 # FCADR P01 # START OF P 01 @@ -1281,29 +1288,29 @@ FCADRMM1 EQUALS FCADR P06 FCADR GTSCPSS1 # GYROCOMPASS STANDARD LEAD IN. -# THE PREMM TABLE CONTAINS THE E-BANK, MAJOR MODE, AND PRIORITY +# THE PREMM TABLE CONTAINS THE E-BANK,MAJOR MODE, AND PRIORITY # INFORMATION, IT IS IN THE FOLLOWING FORM, -# + # PPP PPE EEM MMM MMM # # Page 207 -# WHERE THE 7 M BITS CONTAIN THE MAJOR MODE NUMBER -# 3 E BITS CONTAIN THE E-BANK NUMBER -# 5 P BITS CONTAIN THE PRIORITY AT WHICH THE JOB IS -# TO BE STARTED -# +# WHERE THE 7 M BITS CONTAIN THE MAJOR MODE NUMBER +# 3 E BITS CONTAIN THE E-BANK NUMBER +# 5 P BITS CONTAIN THE PRIORITY AT WHICH THE JOB IS +# TO BE STARTED + # FOR EXAMPLE, -# + # PREMM1 OCT 67213 # PRIORITY 33 -# # E-BANK 5 +# # E-BANK 5 # # MAJOR MODE 11 -# OCT 25437 # PRIORITY 12 -# # E-BANK 6 +# OCT 25437 # PRIORITY 12 +# # E-BANK 6 # # MAJOR MODE 31 PREMM1 EQUALS OCT 27117 # MM 79 EBANK 4 PRIO 13 - OCT 27116 # MM 78 EBANK 4 PRIO 13 (original says PR23 13) + OCT 27116 # MM 78 EBANK 4 PR23 13 OCT 27115 # MM 77 EBANK 4 PRIO 13 OCT 27714 # MM 76 EBANK 4 PRIO 13 OCT 27113 # MM 75 EBANK 4 PRIO 13 @@ -1365,8 +1372,9 @@ PREMM1 EQUALS EBANK= TIME2SAV # EBANK SETTING REQUIRED BY MM 06 EBANK= QPLACE # EBANK SETTING REQUIRED BY MM 01 -# NOTE: THE FOLLOWING CONSTANT IS THE NUMBER OF ENTRIES IN EACH OF -# ----- THE ABOVE LISTS-1 (I.E., THE NUMBER OF MAJOR MODES (EXCEPT P00) + +# NOTE, THE FOLLOWING CONSTANT IS THE NUMBER OF ENTRIES IN EACH OF +# ---- THE ABOVE LISTS-1(IE, THE NUMBER OF MAJOR MODES(EXCEPT P00) # THAT CAN BE CALLED FROM THE KEYBOARD MINUS ONE) EPREMM1 EQUALS # END OF PREMM1 TABLE @@ -1375,7 +1383,8 @@ NO.MMS =MINUS EPREMM1 # THE "NOV37MM" CONSTANT AS ENTRIES ARE SETLOC VERB37 # INSERTED(IN) OR DELETED(FROM) THE BANK # "PREMM1" TABLE. -NOV37MM ADRES NO.MMS -1 # ITEMS IN "PREMM1" TABLE - 1. *DON'T MOVE* +NOV37MM ADRES NO.MMS -1 # ITEMS IN "PREMM1"TABLE - 1. *DON'T MOVE* + DNLADMM1 EQUALS ADRES RENDEZVU # P79 @@ -1412,7 +1421,6 @@ DNLADMM1 EQUALS ADRES RENDEZVU # P17 ADRES COSTALIN # P06 ADRES COSTALIN # P01 - DNLADP00 = ZERO COSTALIN = 0 ENTRYUPD = 1 @@ -1420,11 +1428,9 @@ RENDEZVU = 2 POWERED = 3 P22DNLST = 4 - # ORBITAL INTEGRATION CONSTANTS # THESE CONSTANTS ARE USED IN COMPUTING THE SETTING OF MIDFLAG. - RMM 2DEC 2538.09 E3 B-27 # 800 KM ABOVE LUNAR SURFACE RME 2DEC 7178165 B-29 # 800 KM ABOVE EQ. RADIUS @@ -1467,8 +1473,8 @@ STATEND CLRGO NODOFLAG ENDINT -# THIS VINT IS CALLED BY MIDTOAV1 AND 2 + +# THISVINT IS CALLED BY MIDTOAV1 AND2 THISVINT SET RVQ VINTFLAG -