From 379b8fc56bad17529e8e93eea4fda8dfb5d38455 Mon Sep 17 00:00:00 2001 From: cai <475015704@qq.com> Date: Mon, 2 Apr 2018 18:21:55 +0800 Subject: [PATCH] Proof UPDATE_PROGRAM (closes #273) (#325) * Proof P76 * 1) comma instead of period 2) -- to - 3) remove space after comma * Proof UPDATE_PROGRAM * backquote to single quote --- Comanche055/UPDATE_PROGRAM.agc | 169 +++++++++++++++++---------------- 1 file changed, 85 insertions(+), 84 deletions(-) diff --git a/Comanche055/UPDATE_PROGRAM.agc b/Comanche055/UPDATE_PROGRAM.agc index 9c4702f..1070c19 100644 --- a/Comanche055/UPDATE_PROGRAM.agc +++ b/Comanche055/UPDATE_PROGRAM.agc @@ -57,43 +57,45 @@ # ALARM/ABORT: TC FALTON FOLLOWED BY TC ENDEXT # # RESTARTS: P27 IS RESTART PROTECTED IN TWO WAYS ... -# 1. PRIOR TO VERIFLAG INVERSION (WHICH IS CAUSED BY THE GROUND/ASTRONAUT'S VERIFICATION OF UPDATE +# 1. PRIOR TO VERIFLAG INVERSION(WHICH IS CAUSED BY THE GROUND/ASTRONAUT'S VERIFICATION OF UPDATE # DATA BY SENDING A V33E WHEN V21N02 IS FLASHING)--- # NO PROTECTION EXCEPT PRE-P27 MODE IS RESTORED, COAST + ALIGN DOWNLIST IS SELECTED AND UPLINE -# ACTIVITY LIGHT IS TURNED OFF. (JUST AS IF A V34E WAS SENT DURING P27 DATA LOADS). -# V70,V71,V72, OR V73 WILL HAVE TO BE COMPLETELY RESENT BY USER. -# 2. AFTER VERIFLAG INVERSION (WHEN UPDATE OF THE SPECIFIED ERASABLES IS BEING PERFORMED)--- +# ACTIVITY LIGHT IS TURNED OFF.(JUST AS IF A V34E WAS SENT DURING P27 DATA LOADS). +# V70,V71,V72 OR V73 WILL HAVE TO BE COMPLETELY RESENT BY USER. +# 2. AFTER VERIFLAG INVERSION(WHEN UPDATE OF THE SPECIFIED ERASABLES IS BEING PERFORMED)--- # PROTECTED AGAINST RESTARTS. # # DEBRIS: UPBUFF (20D) TEMP STORAGE FOR ADDRESSES AND CONTENTS. -# UPVERB (1) VERB NUMBER MINUS 70D (E.G., FOR V72, UPVERB = 72D - 70D = 2) +# UPVERB (1) VERB NUMBER MINUS 70D (E.G. FOR V72, UPVERB = 72D - 70D = 2) # UPOLDMOD(1) FOR MAJOR MODE INTERRUPTED BY P27. # COMPNUMB(1) TOTAL NUMBER OF COMPONENTS TO BE TRANSMITTED. # UPCOUNT (1) ACTUAL NUMBER OF COMPONENTS RECEIVED. -# UPTEMP (1) SCRATCH, BUT USUALLY CONTAINS COMPONENT NUMBER TO BE CHANGED DURING VERIFY CYCLE. +# UPTEMP (1) SCRATCH, BUT USUALLY CONTAINS COMPONENT NUMBER TO BE CHANGED DURING VERIFY CYCLE # # INPUT: # -# ENTRY DESCRIPTION +# ENTRY: DESCRIPTION +# # V70EXXXXXEXXXXXE (LIFTOFF TIME INCREMENT) DOUBLE PRECISION OCTAL TIME INCREMENT, XXXXX XXXXX, # IS ADDED TO TEPHEM, SUBTRACTED FROM AGC CLOCK(TIME2,TIME1), SUBTRACTED FROM CSM STATE # VECTOR TIME(TETCSM) AND SUBTRACTED FROM LEM STATE VECTOR TIME(TETLEM). # THE DP OCTAL TIME INCREMENT IS SCALED AT 2(28). # Page 1498 -# V71EIIEAAAAE (CONTIGUOUS BLOCK UPDATE) II-2 OCTAL COMPONENTS, XXXXX, +# V71EIIEAAAAE (CONTIGUOUS BLOCK UPDATE) II-2 OCTAL COMPONENTS,XXXXX, # XXXXXE ARE LOADED INTO ERASABLE STARTING AT ECADR, AAAA. # XXXXXE IT IS .GE. 3 .AND. .LE. 20D., # AND (AAAA + II -3) DOES NOT PRODUCE AN ADDRESS IN THE -# 9 NEXT BANK +# NEXT BANK. # . SCALING IS SAME AS INTERNAL REGISTERS. -# V72EIIE (SCATTER UPDATE) (II-1)/2 OCTAL COMPONENTS, XXXXX, ARE +# +# V72EIIE (SCATTER UPDATE) (II-1)/2 OCTAL COMPONENTS,XXXXX, ARE # AAAAEXXXXXE LOADED INTO ERASABLE LOCATIONS, AAAA. # AAAAEXXXXXE II IS .GE. 3 .AND. .LE. 19D, AND MUST BE ODD. # . SCALING IS SAME AS INTERNAL REGISTERS. # # V73EXXXXXEXXXXXE (OCTAL CLOCK INCREMENT) DOUBLE PRECISION OCTAL TIME # INCREMENT XXXXX XXXXX, IS ADDED TO THE AGC CLOCK, IN -# CENTISECONDS SCALED AT (2)28). +# CENTISECONDS SCALED AT (2)28. # THIS LOAD IS THE OCTAL EQUIVALENT OF V55. # # OUTPUT: IN ADDITION TO THE ABOVE REGISTER LOADS, ALL UPDATES @@ -105,13 +107,13 @@ # # THE FOLLOWING COMMENTS DELINEATE EACH SPECIAL UPDATE --- # -# 1. CSM/LM STATE VECTOR UPDATE (ALL DATA ENTRIES IN OCTAL) +# 1. CSM/LM STATE VECTOR UPDATE(ALL DATA ENTRIES IN OCTAL) # ENTRIES: DATA DEFINITION: SCALE FACTORS: # V71E CONTIGUOUS BLOCK UPDATE VERB # 21E NUMBER OF COMPONENTS FOR STATE VECTOR UPDATE -# AAAAE ECADR OF `UPSVFLAG' -# XXXXXE STATE VECTOR IDENTIFIER: 00001 FOR CSM, 77776 FOR LEM -- EARTH SPHERE OF INFLUENCE SCALING -# 00002 FOR CSM, 77775 FOR LEM -- LUNAR SPHERE OF INFLUENCE SCALING +# AAAAE ECADR OF 'UPSVFLAG' +# XXXXXE STATE VECTOR IDENTIFIER: 00001 FOR CSM, 77776 FOR LEM - EARTH SPHERE OF INFLUENCE SCALING +# 00002 FOR CSM, 77775 FOR LEM - LUNAR SPHERE OF INFLUENCE SCALING # XXXXXEXXXXXE X POSITION # XXXXXEXXXXXE Y POSITION # XXXXXEXXXXXE Z POSITION @@ -121,12 +123,12 @@ # XXXXXEXXXXXE TIME FROM AGC CLOCK ZERO # V33E VERB 33 TO SIGNAL THAT THE STATE VECTOR IS READY TO BE STORED. # -# 2. REFSMMAT (ALL DATA ENTRIES IN OCTAL) -# ENTRIES DATA DEFINITIONS SCALE FACTORS: +# 2. REFSMMAT(ALL DATA ENTRIES IN OCTAL) +# ENTRIES: DATA DEFINITIONS: SCALE FACTORS: # Page 1499 # V71E CONTIGUOUS BLOCK UPDATE VERB # 24E NUMBER OF COMPONENTS FOR REFSMMAT UPDATE -# AAAAE ECADR OF `REFSMMAT' +# AAAAE ECADR OF 'REFSMMAT' # XXXXXEXXXXXE ROW 1 COLUMN 1 2(-1) # XXXXXEXXXXXE ROW 1 COLUMN 2 2(-1) # XXXXXEXXXXXE ROW 1 COLUMN 3 2(-1) @@ -136,7 +138,7 @@ # XXXXXEXXXXXE ROW 3 COLUMN 1 2(-1) # XXXXXEXXXXXE ROW 3 COLUMN 2 2(-1) # XXXXXEXXXXXE ROW 3 COLUMN 3 2(-1) -# V33E VERB 33 TO SIGNAL THAT REFSMMAT IS READY TO BE STORED +# V33E VERB 33 TO SIGNAL THAT REFSMMAT IS READY TO BE STORED. BANK 07 SETLOC EXTVERBS @@ -156,18 +158,18 @@ V72UPDAT CAF UP72 # COMES HERE ON V72E V73UPDAT CAF UP73 # COMES HERE ON V73E - +1 TS UPVERBSV # SAVE UPVERB UNTIL IT'S OK TO ENTER P27 + +1 TS UPVERBSV # SAVE UPVERB UNTIL IT'S OK TO ENTER P27 TC TESTXACT # GRAB DISPLAY IF AVAILABLE, OTHERWISE - # TURN *OPERATOR ERROR* ON AND TERMINATE JOB + # TURN*OPERATOR ERROR* ON AND TERMINATE JOB CA MODREG # CHECK IF UPDATE ALLOWED EXTEND # FIRST CHECK FOR MODREG = +0, -0 - BZF +2 # (+0 = P00, -0 = FRESHSTART) + BZF +2 # (+0 = P00, -0 = FRESH START) TC CKMDMORE # NOW CHECK FOR PROGRAM WHICH CAN BE # INTERRUPTED BY P27. - CAE MODREG # UPDATE ALLOWED + CAE MODREG # UPDATE ALLOWED. TS UPOLDMOD # SAVE CURRENT MAJOR MODE # Page 1500 CAE UPVERBSV # SET UPVERB TO INDICDATE TO P27 @@ -177,18 +179,18 @@ V73UPDAT CAF UP73 # COMES HERE ON V73E TS UPCOUNT # INITIALIZE UPCOUNT TO 1 TC POSTJUMP # LEAVE EXTENDED VERB BANK AND - CADR UPPART2 # GO TO UPDATE PROGRAM (P27) BANK. + CADR UPPART2 # GO TO UPDATE PROGRAM(P27) BANK. CKMDMORE CS FLAGWRD5 MASK BIT8 # CHECK IF COMPUTER IS LGC CCS A # IS COMPUER LGC OR AGC -UPERLEM TCF UPERROR # ERROR: IT'S THE LEM + MODE IS NOT P00. +UPERLEM TCF UPERROR # ERROR- IT'S THE LEM + MODE IS NOT P00. CS TWO MASK MODREG CCS A -UPERCMC TCF UPERROR # ERROR: IT'S THE CMC AND MODE IS NOT +UPERCMC TCF UPERROR # ERROR- IT'S THE CMC AND MODE IS NOT # P00 OR P02. - TC Q # ALLOW UPDATE TO PROCEED. + TC Q # ALLOW UPDATE TO PROCEED UPERROR TC POSTJUMP # TURN ON 'OPERATOR ERROR' LIGHT CADR UPERROUT +2 # GO TO COMMON UPDATE PROGRAM EXIT @@ -205,7 +207,7 @@ UP73 EQUALS THREE COUNT* $$/P27 -UPPART2 EQUALS # UPDATE PROGRAM -- PART 2 +UPPART2 EQUALS # UPDATE PROGRAM - PART 2 TC PHASCHNG # SET RESTART GROUP 6 TO RESTORE OLD MODE OCT 07026 # AND DOWNLIST AND EXIT IF RESTART OCCURS. @@ -222,23 +224,23 @@ UPPART2 EQUALS # UPDATE PROGRAM -- PART 2 INDEX UPVERB # BRANCH DEPENDING ON WHETHER THE UPDATE TCF +1 # VERB REQUIRES A FIXED OR VARIABLE NUMBER - TCF +3 # V70 FIXED (OF COMPONENTS) - TCF OHWELL1 # V71 VARIABLE -- GO GET NO. OF COMPONENTS - TCF OHWELL1 # V72 VARIABLE -- GO GET NO. OF COMPONENTS + TCF +3 # V70 FIXED. (OF COMPONENTS. + TCF OHWELL1 # V71 VARIABLE - GO GET NO. OF COMPONENTS + TCF OHWELL1 # V72 VARIABLE - GO GET NO. OF COMPONENTS CA TWO # V73 (AND V70) FIXED TS COMPNUMB # SET NUMBER OF COMPONENTS TO 2. TCF OHWELL2 # GO GET THE TWO UPDATE COMPONENTS -OHWELL1 CAF ADUPBUFF # * REQUEST USER TO SEND NUMBER * - TS MPAC +2 # * OF COMPONENTS PARAMETER(II) * +OHWELL1 CAF ADUPBUFF # * REQUEST USER TO SEND NUMBER * + TS MPAC +2 # * OF COMPONENTS PARAMETER(II). * +2 CAF UPLOADNV # (CKV432 RETURNS HERE IF V32 ENCOUNTERED) TC BANKCALL # DISPLAY A FLASHING V21N01 CADR GOXDSPF # TO REQUEST II. - TCF UPOUT4 # V32 TERMINATE UPDATE (P27) RETURN + TCF UPOUT4 # V34 TERMINATE UPDATE(P27) RETURN TCF OHWELL1 +2 TC CK4V32 # DATA OR V32 RETURN CS BIT2 - AD UPBUFF # IS II (NUMBER OF COMPONENTS PARAMETER) + AD UPBUFF # IS II(NUMBER OF COMPONENTS PARAMETER) EXTEND # .GE. 3 AND .LE. 20D. BZMF OHWELL1 +2 CS UPBUFF @@ -251,29 +253,29 @@ OHWELL1 CAF ADUPBUFF # * REQUEST USER TO SEND NUMBER * # UPBUFF LOADING SEQUENCE INCR UPCOUNT # INCREMENT COUNT OF COMPONENTS RECEIVED. -OHWELL2 CAF ADUPBFM1 # CALCULATE LOCATION (ECADR) IN UPBUFF - AD UPCOUNT # WHERE NEXT COMPONENT SHOULD BE STORED +OHWELL2 CAF ADUPBFM1 # CALCULATE LOCATION(ECADR) IN UPBUFF + AD UPCOUNT # WHERE NEXT COMPONENT SHOULD BE STORED. +2 TS MPAC +2 # PLACE ECADR INTO R3. +3 CAF UPLOADNV # (CK4V32 RETURNS HERE IF V32 ENCOUNTERED) TC BANKCALL # DISPLAY A FLASHING V21N01 CADR GOXDSPF # TO REQUEST DATA. - TCF UPOUT4 # V34 TERMINATE UPDATE (P27) RETURN. + TCF UPOUT4 # V34 TERMINATE UPDATE(P27) RETURN. TCF OHWELL2 +3 # V33 PROCEED RETURN TC CK4V32 # DATA OR V32 RETURN CS UPCOUNT # HAVE WE FINISHED RECEIVING ALL AD COMPNUMB # THE DATA WE EXPECTED. EXTEND - BZMF UPVERIFY # YES -- GO TO VERIFICATION SEQUENCE - TCF OHWELL2 -1 # NO -- REQUEST ADDITIONAL DATA. + BZMF UPVERIFY # YES- GO TO VERIFICATION SEQUENCE + TCF OHWELL2 -1 # NO- REQUEST ADDITIONAL DATA. # Page 1502 # VERIFY SEQUENCE UPVERIFY CAF ADUPTEMP # PLACE ECADR WHERE COMPONENT NO. INDEX TS MPAC +2 # IS TO BE STORED INTO R3. CAF UPVRFYNV # (CK4V32 RETURNS HERE IF V32 ENCOUNTERED) - TC BANKCALL # DISPLAY A FLASHING V21N02 TO REQUEXT + TC BANKCALL # DISPLAY A FLASHING V21N02 TO REQUEST CADR GOXDSPF # DATA CORRECTION OR VERIFICATION. - TCF UPOUT4 # V34 TERMINATE UPDATE (P27) RETURN + TCF UPOUT4 # V34 TERMINATE UPDATE(P27) RETURN TCF UPSTORE # V33 DATA SENT IS GOOD. GO STORE IT. TC CK4V32 # COMPONENT NO. INDEX OR V32 RETURN CA UPTEMP # DOES THE COMPONENT NO. INDEX JUST SENT @@ -284,20 +286,20 @@ UPVERIFY CAF ADUPTEMP # PLACE ECADR WHERE COMPONENT NO. INDEX AD BIT1 EXTEND BZMF UPVERIFY # NO - CAF ADUPBFM1 # YES -- BASED ON THE COMPONENT NO. INDEX + CAF ADUPBFM1 # YES- BASED ON THE COMPONENT NO. INDEX AD UPTEMP # CALCULATE THE ECADR OF LOCATION IN TCF OHWELL2 +2 # UPBUFF WHICH USER WANTS TO CHANGE. -UPOUT4 EQUALS UPOUT +1 # COMES HERE ON V34 TC TERMINATE UPDATE. +UPOUT4 EQUALS UPOUT +1 # COMES HERE ON V34 TC TERMINATE UPDATE # CHECK FOR VERB 32 SEQUENCE -CK4V32 CS MPAC # ON DATA RETURN FROM `GOXDSPF' - MASK BIT6 # ON DATA RETURN FROM "GOXDSP" & THE CON- +CK4V32 CS MPAC # ON DATA RETURN FROM 'GOXDSPF' + MASK BIT6 # ON DATA RETURN FROM "GOXDSP"& THE CON- CCS A # TENTS OF MPAC = VERB. SO TEST FOR V32. TC Q # IT'S NOT A V32, IT'S DATA. PROCEED. INDEX Q - TC 0 -6 # V32 ENCOUNTERED -- GO BACK AND GET DATA + TC 0 -6 # V32 ENCOUNTERED - GO BACK AND GET DATA ADUPTEMP ADRES UPTEMP # ADDRESS OF TEMP STORAGE FOR CORRECTIONS ADUPBUFF ADRES UPBUFF # ADDRESS OF UPDATE DATA STORAGE BUFFER @@ -308,13 +310,13 @@ UPDTPHAS EQUALS FIVE # PRE-STORE AND FAN TO APPROPRIATE BRANCH SEQUENCE -UPSTORE EQUALS # GROUND HAS VERIFIED UPDATE. STORE DATA. +UPSTORE EQUALS # GROUND HAS VERIFIED UPDATE. STORE DATA. INHINT - CAE FLAGWRD7 # INVERT VERIFLAG (BIT 3 OF FLAGWRD7) TO - XCH L # INDICATE TO THE GROUND (VIA DOWNLINK) - CAF BIT3 # THAT THE V33 (WHICH THE GROUND SENT TO + CAE FLAGWRD7 # INVERT VERIFLAG(BIT3 OF FLAGWRD7) TO + XCH L # INDICATE TO THE GROUND(VIA DOWNLINK) + CAF BIT3 # THAT THE V33(WHICH THE GROUND SENT TO # Page 1503 EXTEND # VERIFY THE UPDATE) HAS BEEN SUCCESSFULLY RXOR LCHAN # RECEIVED BY THE UPDATE PROGRAM @@ -324,34 +326,34 @@ UPSTORE EQUALS # GROUND HAS VERIFIED UPDATE. STORE DATA. OCT 04026 # DATA STORE IF A RESTART OCCURS. INHINT # (BECAUSE PHASCHNG DID A RELINT) - CS TWO # GO TO UPFNDVAC IF INSTALL IS REQUIRED. + CS TWO # GO TO UPFNDVAC IF INSTALL IS REQUIRED, AD UPVERB # THAT IS, IF IT'S A V70 - V72. EXTEND # GO TO UPEND73 IF IT'S A V73. BZMF UPFNDVAC # VERB 73 BRANCH -UPEND73 EXTEND # V73 -- PERFORM DP OCTAL AGC CLOCK INCREMENT +UPEND73 EXTEND # V73-PERFORM DP OCTAL AGC CLOCK INCREMENT DCA UPBUFF DXCH UPBUFF +8D TC TIMEDIDL - TC FALTON # ERROR -- TURN ON *OPERATOR ERROR* LIGHT + TC FALTON # ERROR- TURN ON *OPERATOR ERROR* LIGHT TC UPOUT +1 # GO TO COMMON UPDATE PROGRAM EXIT UPFNDVAC CAF CHRPRIO # (USE EXTENDED VERB PRIORITY) - TC FINDVAC # GET VAC AREA FOR `CALL INTSTALL' + TC FINDVAC # GET VAC AREA FOR 'CALL INTSTALL' EBANK= TEPHEM 2CADR UPJOB # (NOTE: THIS WILL ALSO SET EBANK FOR - TC ENDOFJOB # `TEPHEM' UPDATE BY V70) + TC ENDOFJOB # 'TEPHEM' UPDATE BY V70) -UPJOB TC INTPRET # THIS COULD BE A STATE VECTOR UPDATE -- SO - CALL # WAIT (PUT JOB TO SLEEP) IF ORBIT INT(OI) - INTSTALL # IS IN PROGRESS -- OR -- GRAB OI AND RETURN +UPJOB TC INTPRET # THIS COULD BE A STATE VECTOR UPDATE--SO + CALL # WAIT(PUT JOB TO SLEEP) IF ORBIT INT(OI) + INTSTALL # IS IN PROGRESS--OR--GRAB OI AND RETURN # TO UPWAKE IF OI IS NOT IN PROGRESS. UPWAKE EXIT - TC PHASCHNG # RESTART PROTECT (GROUP 6) + TC PHASCHNG # RESTART PROTECT(GROUP 6) OCT 04026 TC UPFLAG # SET INTEGRATION RESTART BIT @@ -366,7 +368,7 @@ UPPART3 EQUALS TCF UPEND72 # V72 # Page 1504 -# ROUTINE TO INCREMENT CLOCK (TIME2,TIME1) WITH CONTENTS OF DP WORD AT UPBUFF. +# ROUTINE TO INCREMENT CLOCK(TIME2,TIME1) WITH CONTENTS OF DP WORD AT UPBUFF. TIMEDIDL EXTEND QXCH UPTEMP # SAVE Q FOR RETURN CAF ZERO # ZERO AND SAVE TIME2,TIME1 @@ -390,21 +392,21 @@ TIMEDIDR INHINT DCA UPBUFF +18D DAS MPAC # FORM SUM IN MPAC EXTEND - BZF DELTAOK # TEST FOR OVERFLOW + BZF DELTATOK # TEST FOR OVERFLOW CAF ZERO DXCH UPBUFF +18D # OVERFLOW, RESTORE OLD VALUE OF CLOCK DAS TIME2 # AND TURN ON OPERATOR ERROR - TC PHASCHNG # RESTART PROTECT (GROUP 6) + TC PHASCHNG # RESTART PROTECT(GROUP 6) OCT 04026 TC UPTEMP # GO TO ERROR EXIT -DELTAOK TC TPAGREE # FORCE SIGN AGREEMENT +DELTATOK TC TPAGREE # FORCE SIGN AGREEMENT DXCH MPAC DAS TIME2 # INCREMENT TIME2,TIME1 - TC PHASCHNG # RESTART PROTECT (GROUP 6) + TC PHASCHNG # RESTART PROTECT(GROUP 6) OCT 04026 INHINT @@ -418,6 +420,7 @@ UPEND71 CAE UPBUFF +1 # SET EBANK # Page 1505 MASK LOW8 # CALCULATE TS UPTEMP # S-REG VALUE OF RECEIVING AREA + AD NEG3 # IN THE PROCESS OF AD COMPNUMB # PERFORMING EXTEND # THIS UPDATE @@ -426,7 +429,7 @@ UPEND71 CAE UPBUFF +1 # SET EBANK CCS A # INTO THE NEXT EBANK.... TCF UPERROUT # YES - CA NEG3 # NO -- CALCULATE NUMBER OF + CA NEG3 # NO- CALCULATE NUMBER OF AD COMPNUMB # WORDS TO BE STORED MINUS ONE STORLP71 TS MPAC # SAVE NO. OF WORDS REMAINING MINUS ONE INDEX A # TAKE NEXT UPDATE WORD FROM @@ -436,28 +439,28 @@ STORLP71 TS MPAC # SAVE NO. OF WORDS REMAINING MINUS ONE AD UPTEMP # RECEIVING ADDRESS INDEX A EBANK= 1400 - LXCH 1400 # UPDATE THE REGISTER BY CONTENTS OF L + LXCH 1400 # UPDATE THE REGISTER BY CONTENTS OF L EBANK= TEPHEM CCS MPAC # ARE THERE ANY WORDS LEFT TO BE STORED TCF STORLP71 # YES - TCF UPOUT # NO -- THEN EXIT UPDATE PROGRAM + TCF UPOUT # NO- THEN EXIT UPDATE PROGRAM ADUPBFM1 ADRES UPBUFF -1 # SAME AS ADUPBUFF BUT LESS 1 (DON'T MOVE) - TCF UPOUT # NO -- EXIT UPDATE (HERE WHEN COMPNUMB = 3) + TCF UPOUT # NO- EXIT UPDATE(HERE WHEN COMPNUMB = 3) # VERB 72 BRANCH UPEND72 CAF BIT1 # HAVE AN ODD NO. OF COMPONENTS - MASK COMPNUMB # BEEN SENT FOR A V72 UPDATE ... + MASK COMPNUMB # BEEN SENT FOR A V72 UPDATE... CCS A TCF +2 # YES - TCF UPERROUT # ERROR -- SHOULD BE ODD NO. OF COMPONENTS + TCF UPERROUT # ERROR- SHOULD BE ODD NO. OF COMPONENTS CS BIT2 AD COMPNUMB LDLOOP72 TS MPAC # NOW PERFORM THE UPDATE INDEX A CAE UPBUFF +1 # PICK UP NEXT UPDATE WORD LXCH A - CCS MPAC # SET POINTER TO ECADR (MUST BE CCS) + CCS MPAC # SET POINTER TO ECADR(MUST BE CCS) TS MPAC INDEX A CAE UPBUFF +1 # PICK UP NEXT ECADR OF REG TO BE UPDATED @@ -475,19 +478,20 @@ LDLOOP72 TS MPAC # NOW PERFORM THE UPDATE # NORMAL FINISH OF P27 UPOUT EQUALS - TC INTWAKEU # RELEASE GRAB OF ORBITAL INTEGRATION + TC INTWAKEU # RELEASE GRAB OF ORBITAL INTEGRATION +1 CAE UPOLDMOD # RESTORE PRIOR P27 MODE TC NEWMODEX +3 CAF ZERO TS DNLSTCOD - TC UPACTOFF # TURN OFF `UPLINK ACTIVITY' LIGHT + TC UPACTOFF # TURN OFF 'UPLINK ACTIVITY' LIGHT + EXTEND # KILL GROUP 6 DCA NEG0 DXCH -PHASE6 TC ENDEXT # EXTENDED VERB EXIT -# VERB TO BRANCH +# VERB 70 BRANCH UPEND70 EXTEND # V70 DOES THE FOLLOWING WITH DP DELTA DCS UPBUFF # TIME IN UPBUFF @@ -504,7 +508,7 @@ UPEND70 EXTEND # V70 DOES THE FOLLOWING WITH DP DELTA DCS UPBUFF DXCH UPBUFF +12D - TC PHASCHNG # RESTART PROTECT (GROUP 6) + TC PHASCHNG # RESTART PROTECT(GROUP 6) OCT 04026 CAF ZERO @@ -513,18 +517,18 @@ UPEND70 EXTEND # V70 DOES THE FOLLOWING WITH DP DELTA DAS TETCSM CAF ZERO - # Page 1507 ZL DXCH UPBUFF +12D # DECREMENT LEM STATE VECTOR TIME DAS TETLEM + CAF ZERO ZL DXCH UPBUFF DAS TEPHEM +1 # INCREMENT TP TEPHEM ADS TEPHEM - TC PHASCHNG # RESTART PROTECT (GROUP 6) + TC PHASCHNG # RESTART PROTECT(GROUP 6) OCT 04026 EBANK= UPBUFF @@ -536,19 +540,16 @@ UPEND70 EXTEND # V70 DOES THE FOLLOWING WITH DP DELTA UPERROUT TC FALTON # TURN ON *OPERATOR ERROR* LIGHT TCF UPOUT # GO TO COMMON UPDATE PROGRAM EXIT - +2 TC FALTON # TURN ON `OPERATOR ERROR' LIGHT - TC UPACTOFF # TURN OFF `UPLINK ACTIVITY' LIGHT + +2 TC FALTON # TURN ON 'OPERATOR ERROR' LIGHT + TC UPACTOFF # TURN OFF'UPLINK ACTIVITY'LIGHT TC ENDEXT # EXTENDED VERB EXIT # (THE PURPOSE OF UPERROUT +2 EXIT IS # TO PROVIDE AN ERROR EXIT WHICH DOES NOT # RESET ANY RESTART GROUPS) -# `UPACTOFF' IS A ROUTINE TO TURN OFF UPLINK ACTIVITY LIGHT ON ALL EXITS FROM UPDATE PROGRAM (P27). +# :UPACTOFF: IS A ROUTINE TO TURN OFF UPLINK ACTIVITY LIGHT ON ALL EXITS FROM UPDATE PROGRAM(P27). UPACTOFF CS BIT3 EXTEND # TURN OFF UPLINK ACTIVITY LIGHT WAND DSALMOUT # (BIT 3 OF CHANNEL 11) TC Q - - -