Source Code

011473,000002: ## Copyright: Public domain. 011474,000003: ## Filename: ALARM_AND_DISPLAY_PROCEDURES.agc 011475,000004: ## Purpose: Part of the source code for Solarium build 55. This 011476,000005: ## is for the Command Module's (CM) Apollo Guidance 011477,000006: ## Computer (AGC), for Apollo 6. 011478,000007: ## Assembler: yaYUL --block1 011479,000008: ## Contact: Jim Lawton <jim DOT lawton AT gmail DOT com> 011480,000009: ## Website: www.ibiblio.org/apollo/index.html 011481,000010: ## Page Scans: www.ibiblio.org/apollo/ScansForConversion/Solarium055/ 011482,000011: ## Mod history: 2009-09-15 JL Created. 011483,000012: ## 2016-12-28 RSB Proofed comment text using octopus/ProoferComments, 011484,000013: ## and fixed errors found. 011485,000014:

Page 293

011487,000016: 
011488,000017:                                                                                                  #        THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
011489,000018:                                                                                                  #  EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
011490,000019: 
011491,000020:                                                                                                  #        CALLING SEQUENCE IS AS FOLLOWS:
011492,000021: 
011493,000022:                                                                                                  #        TC      ALARM
011494,000023:                                                                                                  #        OCT     AAANN           ALARM NO. NN IN GENERAL AREA AAA.
011495,000024:                                                                                                  #                                (RETURNS HERE)
011496,000025: 
011497,000026:    3007                                           BANK     1                                     
011498,000027:    3007           20017        ALARM              INHINT                                         
011499,000028:    3010           30001                           XCH      Q                                     
011500,000029:    3011           50577                           TS       ITEMP1                                
011501,000030: 
011502,000031:    3012           11763                           CCS      FAILREG                               #  SEE IF ONE FAILURE HAS OCCURRED SINCE
011503,000032:                                                                                                  #   THE LAST ERROR RESET.
011504,000033:    3013           03021                           TC       MULTFAIL                              #  YES - INDICATE MULTIPLE FAILURES.
011505,000034:    3014           03024                           TC       NEWALARM                              #  FIRST SINCE RESET.
011506,000035:    3015           30577        MULTEXIT           XCH      ITEMP1                                #  FREE ITEMP1 BEFORE RELINT.
011507,000036: 
011508,000037:    3016           20016        ENDALARM           RELINT                                         
011509,000038:    3017           20000                           INDEX    A                                     
011510,000039:    3020           00001                           TC       1                                     #  RETURN TO CALLER.
011511,000040: 
011512,000041:    3021           64664        MULTFAIL           AD       CSQ                                   #  BIT 15 = 1 INDICATES MULTIPLE FAILURES.
011513,000042:    3022           51763                           TS       FAILREG                               #  CSQ = BIT15 + BIT1.
011514,000043:    3023           03015                           TC       MULTEXIT                              
011515,000044: 
011516,000045:    3024           30577        NEWALARM           XCH      ITEMP1                                #  SAVE RETURN ADDRESS FOR CALL TO NOVAC.
011517,000046:    3025           51763                           TS       FAILREG                               
011518,000047: 
011519,000048:    3026           03036                           TC       PROGLARM                              #  TURN ON THE PROGRAM ALARM LIGHT.
011520,000049: 
011521,000050:    3027           32172                           CAF      PRIO37                                
011522,000051:    3030           02052                           TC       NOVAC                                 
011523,000052:    3031           23725                           CADR     DOALARM                               #  CALL (SEPARATE) JOB FOR DISPLAY.
011524,000053: 
011525,000054:    3032           21763                           INDEX    FAILREG                               #  (RETURN ADDRESS AT THIS POINT).
011526,000055:    3033           30000                           CAF      0                                     
011527,000056:    3034           31763                           XCH      FAILREG                               #  SET FAILREG AND GET BACK RETURN ADDRESS.
011528,000057:    3035           03016        NEWALM2            TC       ENDALARM                              
011529,000058: 

Page 294

011531,000060: 
011532,000061:                                                                                                  #        JOB WHICH CALLS NVSUB FOR ALARM DISPLAY.
011533,000062: 
011534,000063: 11,7725                                           BANK     11                                    
011535,000064: 11,7725           03302        DOALARM            TC       GRABDSP                               #  DISPLAY FAILREG.
011536,000065: 11,7726           03310                           TC       PREGBSY                               
011537,000066: 11,7727           33043                           CAF      FAILDISP                              
011538,000067: 11,7730           03100                           TC       NVSUB                                 
011539,000068: 11,7731           03315                           TC       PRENVBSY                              
011540,000069: 11,7732           03362                           TC       FREEDSP                               
011541,000070: 11,7733           02124                           TC       ENDOFJOB                              
011542,000071: 
011543,000072: 
011544,000073: 
011545,000074:    3036                                           SETLOC   NEWALM2    +1                         
011546,000075: 
011547,000076:    3036           44516        PROGLARM           CS       ONE                                   #  TURNS ON PROGRAM FAIL LIGHT ON THE
011548,000077:    3037           70011                           MASK     OUT1                                  #  PANEL.  CALLED ONLY BY ALARM AND ABORT.
011549,000078:    3040           64516                           AD       ONE                                   
011550,000079:    3041           50011                           TS       OUT1                                  
011551,000080:    3042           00001                           TC       Q                                     
011552,000081: 
011553,000082:    3043           00531        FAILDISP           OCT      00531                                 
011554,000083: 

Page 295

011556,000085: 
011557,000086:                                                                                                  #        THE FOLLOWING ROUTINE IS CALLED TO INITIATE AN ABORT. FAILREG IS SET (ACCORDING TO THE MULTIPLE
011558,000087:                                                                                                  #  FAILURES CONVENTION) AND A RE-START IS INITIATED BY TC-SELF. THIS IS CALLED ONLY UNDER RARE CIRCUMSTANCES.
011559,000088: 
011560,000089:    3044           20017        ABORT              INHINT                                         #  MAY BE CALLED IN INTERRUPT OR UNDER EXEC
011561,000090:    3045           20001                           INDEX    Q                                     #  PICK UP FAILURE CODE.
011562,000091:    3046           30000                           CAF      0                                     
011563,000092:    3047           50577                           TS       ITEMP1                                
011564,000093: 
011565,000094:    3050           11763                           CCS      FAILREG                               #  SEE IF THIS IS A MULTIPLE FAILURE.
011566,000095:    3051           03054                           TC       SETMULTF                              #  SET BIT 15 TO INDICATE YES.
011567,000096:    3052           03056                           TC       NEWABORT                              #  FIRST FAILURE.
011568,000097: 
011569,000098:    3053           03053        WHIMPER            TC       WHIMPER                               #  NOT WITH A BANG...
011570,000099: 
011571,000100:    3054           64664        SETMULTF           AD       CSQ                                   #  RESTORE AND SET BIT15
011572,000101:    3055           03060                           TC       +3                                    
011573,000102: 
011574,000103:    3056           03036        NEWABORT           TC       PROGLARM                              #  FIRST FAILURE - TURN ON ALARM LIGHT.
011575,000104:    3057           30577                           XCH      ITEMP1                                
011576,000105:    3060           51763                 +3        TS       FAILREG                               
011577,000106:    3061           03053                           TC       WHIMPER                               #  UNIVERSAL ABORT LOCATION.
011578,000107: 
011579,000108:    3062           30001        CCSHOLE            XCH      Q                                     
011580,000109:    3063           51764                           TS       SFAIL                                 
011581,000110:    3064           03044                           TC       ABORT                                 
011582,000111:    3065           01103                           OCT      1103                                  
011583,000112: 
011584,000113:                                                                                                  #        MISSION PROGRAM DETECTED FAILURES (ERROR RETURNS TO IMUSTALL, ETC.)
011585,000114: 
011586,000115:    3066           30001        CURTAINS           XCH      Q                                     #  PROGRAM DETECTED FLUSH.
011587,000116:    3067           05720                           TC       POSTJUMP                              
011588,000117:    3070           10777                           CADR     THATSALL                              #  FRESH START AND PROGRAM ALARM.
011589,000118: 
011590,000119:    3071                        ENDFAILF           EQUALS                                         

End of include-file ALARM_AND_DISPLAY_PROCEDURES.agc.  Parent file is MAIN.agc