Source Code

016157,000001: # Copyright: Public domain. 016158,000002: # Filename: PINBALL_GAME_BUTTONS_AND_LIGHTS.agc 016159,000003: # Purpose: A section of Luminary 1C, revision 131. 016160,000004: # It is part of the source code for the Lunar Module's (LM) 016161,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 016162,000006: # This file is intended to be a faithful transcription, except 016163,000007: # that the code format has been changed to conform to the 016164,000008: # requirements of the yaYUL assembler rather than the 016165,000009: # original YUL assembler. 016166,000010: # Reference: pp. 397-480 of 1729.pdf. 016167,000011: # Contact: Ron Burkey <info@sandroid.org>. 016168,000012: # Website: www.ibiblio.org/apollo 016169,000013: # Mod history: 05/11/03 RSB. Began transcribing. 016170,000014: # 05/14/03 RSB. First draft completed. 016171,000015: # 06/06/03 RSB. Fixed a bunch of typos in the comments. 016172,000016: # 2010-10-25 JL Fixed directive (COUNT# -> COUNT* on p446). 016173,000017: 016174,000018: # Page 397 016175,000019: # PROGRAM NAME -- KEYBOARD AND DISPLAY PROGRAM 016176,000020: # MOD NO -- 4 DATE -- 27 APRIL 1967 ASSEMBLY -- PINDANCE REV 18 016177,000021: # MOD BY -- FILENE 016178,000022: # LOG SECTION -- PINBALL GAME BUTTONS AND LIGHTS 016179,000023: 016180,000024: # FUNCTIONAL DESCRIPTION 016181,000025: 016182,000026: # THE KEYBOARD AND DISPLAY SYSTEM PROGRAM OPERATES UNDER EXECUTIVE 016183,000027: # CONTROL AND PROCESSES INFORMATION EXCHANGED BETWEEN THE AGC AND THE 016184,000028: # COMPUTER OPERATOR. THE INPUTS TO THE PROGRAM ARE FROM THE KEYBOARD, 016185,000029: # FROM INTERNAL PROGRAM, AND FROM THE UPLINK. 016186,000030: 016187,000031: # THE LANGUAGE OF COMMUNICATION WITH THE PROGRAM IS A PAIR OF WORDS 016188,000032: # KNOWN AS VERB AND NOUN. EACH OF THESE IS REPRESENTED BY A 2 CHARACTER 016189,000033: # DECIMAL NUMBER. THE VERB CODE INDICATES WHAT ACTION IS TO BE TAKEN, THE 016190,000034: # NOUN CODE INDICATES TO WHAT THIS ACTION IS APPLIED. NOUNS USUALLY 016191,000035: # REFER TO A GROUP OF ERASABLE REGISTERS. 016192,000036: 016193,000037: # VERBS ARE GROUPED INTO DISPLAYS, LOADS, MONITORS (DISPLAYS THAT ARE 016194,000038: # UPDATED ONCE PER SECOND), SPECIAL FUNCTIONS, AND EXTENDED VERBS (THESE 016195,000039: # ARE OUTSIDE OF THE DOMAIN OF PINBALL AND CAN BE FOUND UNDER LOG SECTION 016196,000040: # `EXTENDED VERBS'). 016197,000041: 016198,000042: # A LIST OF VERBS AND NOUNS IS GIVEN IN LOG SECTION `ASSEMBLY AND 016199,000043: # OPERATION INFORMATION'. 016200,000044: 016201,000045: # CALLING SEQUENCES -- 016202,000046: 016203,000047: # KEYBOARD: 016204,000048: # EACH DEPRESSION OF A KEYBOARD BUTTON ACTIVATES AN INTERRUPT KEYRUPT1 016205,000049: # AND PLACES THE 5 BIT KEY CODE INTO CHANNEL 15. KEYRUPT1 PLACES THE KEY 016206,000050: # CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE KEYBOARD AND DISPLAY 016207,000051: # PROGRAM (AT `CHARIN'), AND EXECUTES A RESUME. 016208,000052: 016209,000053: # UPLINK: 016210,000054: # EACH WORD RECEIVED BY THE UPLINK ACTIVATES INTERRUPT UPRUPT, WHICH 016211,000055: # PLACES THE 5 BIT KEY CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE 016212,000056: # KEYBOARD AND DISPLAY PROGRAM (AT `CHARIN') AND EXECUTES A RESUME. 016213,000057: 016214,000058: # INTERNAL PROGRAMS: 016215,000059: # INTERNAL PROGRAMS CALL PINBALL AT `NVSUB' WITH THE DESIRED VERB/NOUN 016216,000060: # CODE IN A (LOW 7 BITS FOR NOUN, NEXT 7 BITS FOR VERB). DETAILS 016217,000061: # DESCRIBED ON REMARKS CARDS JUST BEFORE `NVSUB' AND `NVSBWAIT' (SEE 016218,000062: # SYMBOL TABLE FOR PAGE NUMBERS). 016219,000063: 016220,000064: # NORMAL EXIT MODES -- 016221,000065: 016222,000066: # IF PINBALL WAS CALLED BY EXTERNAL ACTION, THERE ARE FOUR EXITS: 016223,000067: # 1) ALL BUT (2), (3), AND (4) EXIT DIRECTLY TO ENDOFJOB. 016224,000068: # 2) EXTENDED VERBS TO TO THE EXTENDED VERB FAN AS PART OF THE 016225,000069: # Page 398 016226,000070: # PINBALL EXECUTIVE JOB WITH PRIORITY 30000. IT IS THE 016227,000071: # RESPONSIBILITY OF THE EXTEDED VERB CALLED TO EVENTUALLY 016228,000072: # CHANGE PRIORITY (IF NECESSARY) AD DO AN ENDOFJOB. 016229,000073: # ALSO PINBALL IS A NOVAC JOB. EBANK SET FOR COMMON. 016230,000074: # 3) VERB 37. CHANGE OF PROGRAM (MAJOR MODE) CALLS `V37' IN THE 016231,000075: # SERVICE ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO 016232,000076: # 30000. THE NEW PROGRAM CODE (MAJOR MODE) IS LEFT IN A. 016233,000077: # 4) KEY RELEASE BUTTON CALLS `PINBRNCH' IN THE DISPLAY INTERFACE 016234,000078: # ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO 30000 IF 016235,000079: # THE KEY RELEASE LIGHT IS OFF AND `CADRSTOR' IS NOT 40. 016236,000080: 016237,000081: # IF PINBALL WAS CALLED BY INTERNAL PROGRAMS, EXIT FROM PINBALL IS BACK 016238,000082: # TO CALLING ROUTINE. DETAILS DESCRIBED IN REMARKS CARDS JUST BEFORE 016239,000083: # `NVSUB' AND `NVSBWAIT' (SEE SYMBOL TABLE FOR PAGE NUMBERS). 016240,000084: 016241,000085: # ALARM OR ABORT EXIT MODES -- 016242,000086: 016243,000087: # EXTERNAL INITIATION: 016244,000088: # IF SOME IMPROPER SEQUENCE OF KEY CODES IS DETECTED, THE OPERATOR 016245,000089: # ERROR LIGHT IS TURNED ON AND EXIT IS TO `ENDOFJOB'. 016246,000090: 016247,000091: # INTERNAL PROGRAM INITIATION: 016248,000092: # IF AN ILLEGAL V/N COMBINATION IS ATTEMPTED, AN ABORT IS CAUSED 016249,000093: # (WITH OCTAL 01501). 016250,000094: # IF A SECOND ATTEMPT IS MADE TO GO TO SLEEP IN PINBALL, AN ABORT IS 016251,000095: # CAUSED (WITH OCTAL 01206). THERE ARE TWO WAYS TO GO TO SLEEP IN PINBALL: 016252,000096: # 1) ENDIDLE OR DATAWAIT. 016253,000097: # 2) NVSBWAIT, PRENVBSY, OR NVSUBUSY. 016254,000098: 016255,000099: # CONDITIONS LEADING TO THE ABOVE ARE DESCRIBED IN FORTHCOMING MIT/IL 016256,000100: # E-REPORT DESCRIBING KEYBOARD AND DISPLAY OPERATION FOR 278. 016257,000101: 016258,000102: # OUTPUT -- 016259,000103: 016260,000104: # INFORMATION TO BE SENT TO THE DISPLAY PANEL IS LEFT IN THE `DSPTAB' 016261,000105: # BUFFERS REGISTERS (UNDER EXEC CONTROL). `DSPOUT' (A PART OF T4RUPT) 016262,000106: # HANDLES THE PLACING OF THE `DSPTAB' INFORMATION INTO OUTPUT CHANNEL 10 016263,000107: # IN INTERRUPT. 016264,000108: 016265,000109: # ERASABLE INITIALIZATION -- 016266,000110: 016267,000111: # FRESH START AND RESTART INITIALIZE THE NECESSARY E REGISTERS FOR 016268,000112: # PINBALL IN `STARTSUB'. REGISTERS ARE: DSPTAB BUFFER, CADRSTOR, 016269,000113: # REQRET, CLPASS, DSPLOCK, MONSAVE, MONSAVE1, VERBREG, NOUNREG, DSPLIST, 016270,000114: # DSPCOUNT, NOUT. 016271,000115: 016272,000116: # A COMPLETE LIST OF ALL THE ERASABLES (BOTH RESERVED AND TEMPORARIES) FOR 016273,000117: # Page 399 016274,000118: # PINBALL IS GIVEN BELOW. 016275,000119: 016276,000120: # THE FOLLOWING ARE OF GENERAL INTEREST -- 016277,000121: 016278,000122: # REMARKS CARDS PRECEDE THE REFERENCED SYMBOL DEFINITION. SEE SYMBOL 016279,000123: # TABLE TO FIND APPROPRIATE PACE NUMBERS. 016280,000124: 016281,000125: # NVSUB CALLING POINT FOR INTERNAL USE OF PINBALL. 016282,000126: # OF RELATED INTEREST NVSBWAIT 016283,000127: # NVSUBUSY 016284,000128: # PRENVBSY 016285,000129: 016286,000130: # ENDIDLE ROUTINE FOR INTERNAL PROGRAMS WISHING TO TO SLEEP WHILE 016287,000131: # AWAITING OPERATOR'S RESPONSE. 016288,000132: 016289,000133: # DSPMM ROUTINE BY WHICH AN INTERNAL PROGRAM MAY DISPLAY A DECIMAL 016290,000134: # PROGRAM CODE (MAJOR MODE) IN THE PROGRAM (MAJOR MODE) LIGHT 016291,000135: # (DSPMM DOES NOT DISPLAY DIRECTLY BUT ENTERS EXEC REQUEST 016292,000136: # FOR DSPMMJB WITH PRIO 30000 AND RETURNS TO CALLER.) 016293,000137: 016294,000138: # BLANKSUB ROUTINE BY WHICH AN INTERNAL PROGRAM MAY BLANK ANY 016295,000139: # COMBINATION OF THE DISPLAY REGISTERS R1, R2, R3. 016296,000140: 016297,000141: # JAMTERM ROUTINE BY WHICH AN INTERNAL PROGRAM MAY PERFORM THE 016298,000142: # JAMPROC TERMINATE (V 34) OR PROCEED (V33) FUNCTION. 016299,000143: 016300,000144: # MONITOR VERBS FOR PERIODIC (1 PER SEC) DISPLAY. 016301,000145: 016302,000146: # PLEASE PERFORM, PLEASE MARK SITUATIONS 016303,000147: # REMARKS DESCRIBING HOW AN INTERNAL ROUTINE SHOULD HANDLE 016304,000148: # THESE SITUATIONS CAN BE FOUND JUST BEFORE `NVSUB' (SEE 016305,000149: # SYMBOL TABLE FOR PAGE NUMBER). 016306,000150: 016307,000151: # THE NOUN TABLE FORMAT IS DESCRIBED ON A PAGE OF REMARKS CARDS JUST 016308,000152: # BEFORE `DSPABC' (SEE SYMBOL TABLE FOR PAGE NUMBER). 016309,000153: 016310,000154: # THE NOUN TABLES THEMSELVES ARE FOUND IN LOG SECTION `PINBALL NOUN 016311,000155: # TABLES'. 016312,000156: 016313,000157: # FOR FURTHER DETAILS ABOUT OPERATION OF THE KEYBOARD AND DISPLAY SYSTEM 016314,000158: # PROGRAM, SEE THE MISSION PLAN AND/OR MIT/IL E-2129 016315,000159: # DESCRIBING KEYBOARD AND DISPLAY OPERATION FOR 278. 016316,000160: # (Note that this doc by Green and Filene is/was available online at 016317,000161: # http://hrst.mit.edu/hrs/apollo/public/archive/1706.pdf --- RSB 6/2004.) 016318,000162: 016319,000163: # THE FOLLOWING QUOTATION IS PROVIDED THROUGH THE COURTESY OF THE AUTHORS. 016320,000164: 016321,000165: # "IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT 016322,000166: # USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO 016323,000167: # Page 400 016324,000168: # CHRISTIAN EAR CAN ENDURE TO HEAR." 016325,000169: # HENRY 6, ACT 2, SCENE 4 016326,000170: 016327,000171: # THE FOLLOWING ASSIGNMENTS FOR PINBALL ARE MADE ELSEWHERE 016328,000172: # (Note that the following has been COPIED from ERASABLE_ASSIGNMENTS.agc, 016329,000173: # and not necessarily thorougly checked --- RSB 6/2004.) 016330,000174: 016331,000175: # DSPCOUNT ERASE # DISPLAY POSITION INDICATOR 016332,000176: # DECBRNCH ERASE # +DEC, -DEC, OCT INDICATOR 016333,000177: # VERBREG ERASE # VERB CODE 016334,000178: # NOUNREG ERASE # NOUN CODE 016335,000179: # XREG ERASE # R1 INPUT BUFFER 016336,000180: # YREG ERASE # R2 INPUT BUFFER 016337,000181: # ZREG ERASE # R3 INPUT BUFFER 016338,000182: # XREGLP ERASE # LO PART OF XREG (FOR DEC CONV ONLY) 016339,000183: # YREGLP ERASE # LO PART OF YREG (FOR DEC CONV ONLY) 016340,000184: # HITEMOUT = YREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC 016341,000185: # # MUST = LOTEMOUT-1. 016342,000186: # ZREGLP ERASE # LO PART OF ZREG (FOR DEC CONV ONLY) 016343,000187: # LOTEMOUT = ZREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC 016344,000188: # # MUST = HITEMOUT+1 016345,000189: # MODREG ERASE # MODE CODE 016346,000190: # DSPLOCK ERASE # KEYBOARD/SUBROUTINE CALL INTERLOCK 016347,000191: # REQRET ERASE # RETURN REGISTER FOR LOAD 016348,000192: # LOADSTAT ERASE # STATUS INDICATOR FOR LOADTST 016349,000193: # CLPASS ERASE # PASS INDICATOR FOR CLEAR 016350,000194: # NOUT ERASE # ACTIVITY COUNTER FOR DSPTAB 016351,000195: # NOUNCADR ERASE # MACHINE CADR FOR NOUN 016352,000196: # MONSAVE ERASE # N/V CODE FOR MONITOR. (= MONSAVE1-1) 016353,000197: # MONSAVE1 ERASE # NOUNCADR FOR MONITOR (MATBS1) = MONSAVE+1 016354,000198: # MONSAVE2 ERASE # NVMONOPT OPTIONS 016355,000199: # DSPTAB ERASE +11D # 0-10, DISPLAY PANEL BUFFER 11-13, C RELAYS. 016356,000200: # CADRSTOR ERASE # ENDIDLE STORAGE 016357,000201: # NVQTEM ERASE # NVSUB STORAGE FOR CALLING ADDRESS 016358,000202: # # MUST = NVBNKTEM-1. 016359,000203: # NVBNKTEM ERASE # NVSUB STORAGE FOR CALLING BANK 016360,000204: # # MUST = NVQTEM+1 016361,000205: # VERBSAVE ERASE # NEEDED FOR RECYCLE 016362,000206: # DSPLIST ERASE # WAITING REG FOR DSP SYST INTERNAL USE 016363,000207: # EXTVBACT ERASE # EXTENDED VERB ACTIVITY INTERLOCK 016364,000208: # DSPTEM1 ERASE # BUFFER STORAGE AREA 1 (MOSTLY FOR TIME) 016365,000209: # DSPTEM2 ERASE # BUFFER STORAGE AREA 2 (MOSTLY FOR DEG) 016366,000210: 016367,000211: # END OF ERASABLES RESERVED FOR PINBALL EXECUTIVE ACTION. 016368,000212: 016369,000213: # TEMPORARIES FOR PINBALL EXECUTIVE ACTION 016370,000214: # Page 401 016371,000215: # DSEXIT = INTB15+ # RETURN FOR DSPIN 016372,000216: # EXITEM = INTB15+ # RETURN FOR SCALE FACTOR ROUTINE SELECT 016373,000217: # BLANKRET = INTB15+ # RETURN FOR 2BLANK 016374,000218: # WRDRET = INTBIT15 # RETURN FOR 5BLANK. 016375,000219: # WDRET = INTBIT15 # RETURN FOR DSPWD 016376,000220: # DECRET = INTBIT15 # RETURN FOR PUTCOM(DEC LOAD) 016377,000221: # 21/22REG = INTBIT15 # TEMP FOR CHARIN 016378,000222: # UPDATRET = POLISH # RETURN FOR UPDATNN, UPDATVB 016379,000223: # CHAR = POLISH # TEMP FOR CHARIN 016380,000224: # ERCNT = POLISH # COUNTER FOR ERROR LIGHT RESET 016381,000225: # DECOUNT = POLISH # COUNTER FOR SCALING AND DISPLAY (DEC) 016382,000226: # SGNON = VBUF # TEMP FOR +,- ON 016383,000227: # NOUNTEM = VBUF # COUNTER FOR MIXNOUN FETCH 016384,000228: # DISTEM = VBUF # COUNTER FOR OCTAL DISPLAY VERB 016385,000229: # DECTEM = VBUF # COUNTER FOR FETCH (DEC DISPLAY VERBS) 016386,000230: # SGNOFF = VBUF +1 # TEMP FOR +,- ON 016387,000231: # NVTEMP = VBUF +1 # TEMP FOR NVSUB 016388,000232: # SFTEMP1 = VBUF +1 # STORAGE FOR SF CONST HI PART (=SFTEMP2-1) 016389,000233: # HITEMIN = VBUF +1 # TEMP FOR LOAD OF HRS,MIN,SEC 016390,000234: # # MUST = LOTEMIN-1. 016391,000235: # CODE = VBUF +2 # FOR DSPIN 016392,000236: # SFTEMP2 = VBUF +2 # STORAGE FOR SF CONST LO PART (=SFTEMP1+1) 016393,000237: # LOTEMIN = VBUF +2 # TEMP FOR LOAD OF HRS,MIN,SEC 016394,000238: # # MUST = HITEMIN+1 016395,000239: # MIXTEMP = VBUF +3 # FOR MIXNOUN DATA 016396,000240: # SIGNRET = VBUF +3 # RETURN FOR +,- ON 016397,000241: # ALSO MIXTEMP+1 = VBUF+4, MIXTEMP+2 = VBUF+5 016398,000242: # ENTRET = DOTINC # EXIT FROM ENTER 016399,000243: # WDONT = DOTRET # CHAR COUNTER FOR DSPWD 016400,000244: # INREL = DOTRET # INPUT BUFFER SELECTION 016401,000245: # DSPMMTEM = MATINC # DSPCOUNT SAVE FOR DSPMM 016402,000246: # MIXBR = MATINC # INDICATOR FOR MIXED OR NORMAL NOUN 016403,000247: # TEM1 ERASE # EXEC TEMP 016404,000248: # DSREL = TEM1 # REL ADDRESS FOR DSPIN 016405,000249: # TEM2 ERASE # EXEC TEMP 016406,000250: # DSMAG = TEM2 # MAGNITUDE STORE FOR DSPIN 016407,000251: # IDADDTEM = TEM2 # MIXNOUN INDIRECT ADDRESS (garbled) 016408,000252: # TEM3 ERASE # EXEC TEMP 016409,000253: # COUNT = TEM3 # FOR DSPIN 016410,000254: # Page 402 016411,000255: # TEM4 ERASE # EXEC TEMP 016412,000256: # LSTPTR = TEM4 # LIST POINTER FOR GRABUST 016413,000257: # RELRET = TEM4 # RETURN FOR RELDSP 016414,000258: # FREERET = TEM4 # RETURN FOR FREEDSP 016415,000259: # DSPWDRET = TEM4 # RETURN FOR DSPSIGN 016416,000260: # SEPSCRET = TEM4 # RETURN FOR SEPSEC 016417,000261: # SEPMNRET = TEM4 # RETURN FOR SEPMIN 016418,000262: # TEM5 ERASE # EXEC TEMP 016419,000263: # NOUNADD = TEM5 # TEMP STORAGE FOR NOUN ADDRESS 016420,000264: # NNADTEM ERASE # TEMP FOR NOUN ADDRESS TABLE ENTRY 016421,000265: # NNTYPTEM ERASE # TEMP FOR NOUN TYPE TABLE ENTRY 016422,000266: # IDAD1TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 016423,000267: # # MUST = IDAD2TEM-1, = IDAD3TEM-2 016424,000268: # IDAD2TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 016425,000269: # # MUST = IDAD1TEM+1, IDAD3TEM-1. 016426,000270: # IDAD3TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 016427,000271: # # MUST = IDAD1TEM+2, IDAD2TEM+1. 016428,000272: # RUTMXTEM ERASE # TEMP FOR SF ROUT TABLE ENTRY (MIXNN ONLY) 016429,000273: 016430,000274: # END OF TEMPORARIES FOR PINBALL EXECUTIVE ACTION. 016431,000275: 016432,000276: # ADDITIONAL TEMPORARIES FOR PINBALL EXECUTIVE ACTION 016433,000277: 016434,000278: # MPAC, THRU MPAC +6 016435,000279: # BUF, +1, +2 016436,000280: # BUF2, +1, +2 016437,000281: # MPTEMP 016438,000282: # ADDRWD 016439,000283: 016440,000284: # END OF ADDITIONAL TEMPS FOR PINBALL EXEC ACTION 016441,000285: 016442,000286: # RESERVED FOR PINBALL INTERRUPT ACTION 016443,000287: 016444,000288: # DSPCNT ERASE # COUNTER FOR DSPOUT 016445,000289: # UPLOCK ERASE # BIT1 = UPLINK INTERLOCK (ACTIVATED BY 016446,000290: # # RECEPTION OF A BAD MESSAGE IN UPLINK) 016447,000291: 016448,000292: # END OF ERASABLES RESERVED FOR PINBALL INTERRUPT ACTION 016449,000293: 016450,000294: # TEMPORARIES FOR PINBALL INTERRUPT ACTION 016451,000295: 016452,000296: # KEYTEMP1 = WAITEXIT # TEMP FOR KEYRUPT, UPRUPT 016453,000297: # DSRUPTEM = WAITEXIT # TEMP FOR DSPOUT 016454,000298: # KEYTEMP2 = RUPTAGN # TEMP FOR KEYRUPT, UPRUPT 016455,000299: 016456,000300: # END OF TEMPORARIES FOR PINBALL INTERRUPT ACTION 016457,000301: 016458,000302: # Page 403 016459,000303: # THE INPUT CODES ASSUMED FOR THE KEYBOARD ARE, 016460,000304: # 0 10000 016461,000305: # 1 00001 016462,000306: # 9 01001 016463,000307: # VERB 10001 016464,000308: # ERROR RES 10010 016465,000309: # KEY RLSE 11001 016466,000310: # + 11010 016467,000311: # - 11011 016468,000312: # ENTER 11100 016469,000313: # CLEAR 11110 016470,000314: # NOUN 11111 016471,000315: # (2003 RSB -- The PROCEED key has no keycode; it is read by an alternate mechanism.) 016472,000316: 016473,000317: # OUTPUT FORMAT FOR DISPLAY PANEL. SET OUT0 TO AAAABCCCCCDDDDD. 016474,000318: # A'S SELECTS A RELAYWORD. THIS DETERMINES WHICH PAIR OF CHARACTERS ARE 016475,000319: # ENERGIZED. 016476,000320: # B FOR SPECIAL RELAYS SUCH AS SIGNS ETC. 016477,000321: # C'S 5 BIT RELAY CODE FOR LEFT CHAR OF PAIR SELECTED BY RELAYWORD. 016478,000322: # D'S 5 BIT RELAY CODE FOR RIGHT CHAR OF PAIR SELECTED BY RELAYWORD. 016479,000323: 016480,000324: # THE PANEL APPEARS AS FOLLOWS, 016481,000325: # MD1 MD2 (MAJOR MODE) 016482,000326: # VD1 VD2 (VERB) ND1 ND2 (NOUN) 016483,000327: # R1D1 R1D2 R1D3 R1D4 R1D5 (R1) 016484,000328: # R2D1 R2D2 R2D3 R2D4 R2D5 (R2) 016485,000329: # R3D1 R3D2 R3D3 R3D4 R3D5 (R3) 016486,000330: 016487,000331: # EACH OF THESE IS GIVEN A DSPCOUNT NUMBER FOR USE WITHIN COMPUTATION ONLY 016488,000332: 016489,000333: # MD1 25 R2D1 11 ALL ARE OCTAL 016490,000334: # MD2 24 R2D2 10 016491,000335: # VD1 23 R2D3 7 016492,000336: # VD2 22 R2D4 6 016493,000337: # ND1 21 R2D5 5 016494,000338: # ND2 20 R3D1 4 016495,000339: # R1D1 16 R3D2 3 016496,000340: # R1D2 15 R3D3 2 016497,000341: # R1D3 14 R3D4 1 016498,000342: # R1D4 13 R3D5 0 016499,000343: # R1D5 12 016500,000344: 016501,000345: # THERE IS AN 11-REGISTER TABLE (DSPTAB) FOR THE DISPLAY PANEL. 016502,000346: 016503,000347: # DSPTAB RELAYWD BIT11 BITS 10-6 BITS 5-1 016504,000348: # RELADD 016505,000349: # 10 1011 MD1 (25) MD2 (24) 016506,000350: # 9 1010 VD1 (23) VD2 (22) 016507,000351: # 8 1001 ND1 (21) ND2 (20) 016508,000352: # 7 1000 R1D1 (16) 016509,000353: # Page 404 016510,000354: # 6 0111 +R1 R1D2 (15) R1D3 (14) 016511,000355: # 5 0110 -R1 R1D4 (13) R1D5 (12) 016512,000356: # 4 0101 +R2 R2D1 (11) R2D2 (10) 016513,000357: # 3 0100 -R2 R2D3 (7) R2D4 (6) 016514,000358: # 2 0011 R2D5 (5) R3D1 (4) 016515,000359: # 1 0010 +R3 R3D2 (3) R3D3 (2) 016516,000360: # 0 0001 -R3 R3D4 (1) R3D5 (0) 016517,000361: # 0000 NO RELAYWORD 016518,000362: 016519,000363: # THE 5-BIT OUTOUT RELAY CODES ARE: 016520,000364: 016521,000365: # BLANK 00000 016522,000366: # 0 10101 016523,000367: # 1 00011 016524,000368: # 2 11001 016525,000369: # 3 11011 016526,000370: # 4 01111 016527,000371: # 5 11110 016528,000372: # 6 11100 016529,000373: # 7 10011 016530,000374: # 8 11101 016531,000375: # 9 11111 016532,000376: 016533,000377: # OUTPUT BITS USED BY PINBALL: 016534,000378: 016535,000379: # KEY RELEASE LIGHT -- BIT 5 OF CHANNEL 11 016536,000380: # VERB/NOUN FLASH -- BIT 6 OF CHANNEL 11 016537,000381: # OPERATOR ERROR LIGHT -- BIT 7 OF CHANNEL 11 016538,000382: 016539,000383: # Page 405 016540,000384: 40,2077 BANK 40 016541,000385: 40,2000 SETLOC PINBALL1 016542,000386: 40,2000 BANK 016543,000387: 016544,000388: 40,2077 COUNT* $$/PIN 016545,000389: 40,2077 34753 CHARIN CAF ONE # BLOCK DISPLAY SYST 016546,000390: 40,2100 57011 XCH DSPLOCK # MAKE DSP SYST BUSY, BUT SAVE OLD 016547,000391: 40,2101 54115 TS 21/22REG # C(DSPLOCK) FOR ERROR LIGHT RESET. 016548,000392: 40,2102 11041 CCS CADRSTOR # ALL KEYS EXCEPT ER TURN ON KR LITE IF 016549,000393: 40,2103 02105 TC +2 # CADRSTOR IS FULL. THIS REMINDS OPERATOR 016550,000394: 40,2104 02112 TC CHARIN2 # TO RE-ESTABLISH A FLASHING DISPLAY 016551,000395: 40,2105 42156 CS ELRCODE1 # WHICH HE HAS OBSCURED WITH DISPLAYS OF 016552,000396: 40,2106 60154 AD MPAC # HIS OWN (SEE REMARKS PRECEDING ROUTINE 016553,000397: 40,2107 00006 EXTEND # VBRELDSP). 016554,000398: 40,2110 12112 BZF CHARIN2 016555,000399: 40,2111 04374 TC RELDSPON 016556,000400: 40,2112 56154 CHARIN2 XCH MPAC 016557,000401: 40,2113 54117 TS CHAR 016558,000402: 40,2114 50000 INDEX A 016559,000403: 40,2115 02116 TC +1 # INPUT CODE FUNCTION 016560,000404: 40,2116 03470 TC CHARALRM # 0 016561,000405: 40,2117 02175 TC NUM # 1 016562,000406: 40,2120 02175 TC NUM # 2 016563,000407: 40,2121 02175 TC NUM # 3 016564,000408: 40,2122 02175 TC NUM # 4 016565,000409: 40,2123 02175 TC NUM # 5 016566,000410: 40,2124 02175 TC NUM # 6 016567,000411: 40,2125 02175 TC NUM # 7 016568,000412: 40,2126 02161 TC 89TEST # 10 8 016569,000413: 40,2127 02161 TC 89TEST # 11 9 016570,000414: 40,2130 03470 TC CHARALRM # 12 016571,000415: 40,2131 03470 TC CHARALRM # 13 016572,000416: 40,2132 03470 TC CHARALRM # 14 016573,000417: 40,2133 03470 TC CHARALRM # 15 016574,000418: 40,2134 03470 TC CHARALRM # 16 016575,000419: 40,2135 03470 TC CHARALRM # 17 016576,000420: 40,2136 02173 TC NUM -2 # 20 0 016577,000421: 40,2137 02354 TC VERB # 21 VERB 016578,000422: 40,2140 03646 TC ERROR # 22 ERROR LIGHT RESET 016579,000423: 40,2141 03470 TC CHARALRM # 23 016580,000424: 40,2142 03470 TC CHARALRM # 24 016581,000425: 40,2143 03470 TC CHARALRM # 25 016582,000426: 40,2144 03470 TC CHARALRM # 26 016583,000427: 40,2145 03470 TC CHARALRM # 27 016584,000428: 40,2146 03470 TC CHARALRM # 30 016585,000429: 40,2147 03524 TC VBRELDSP # 31 KEY RELEASE 016586,000430: 40,2150 02407 TC POSGN # 32 + 016587,000431: # Page 406 016588,000432: 40,2151 02374 TC NEGSGN # 33 - 016589,000433: 40,2152 02157 TC ENTERJMP # 34 ENTER 016590,000434: 40,2153 03470 TC CHARALRM # 35 016591,000435: 40,2154 02467 TC CLEAR # 36 CLEAR 016592,000436: 40,2155 02370 TC NOUN # 37 NOUN 016593,000437: 016594,000438: 40,2156 00022 ELRCODE1 OCT 22 016595,000439: 40,2157 04635 ENTERJMP TC POSTJUMP 016596,000440: 40,2160 62002 CADR ENTER 016597,000441: 016598,000442: 40,2161 10776 89TEST CCS DSPCOUNT 016599,000443: 40,2162 02166 TC +4 # + 016600,000444: 40,2163 02166 TC +3 # +0 016601,000445: 40,2164 05155 TC ENDOFJOB # - BLOCK DATA IN IF DSPCOUNT IS - OR -0 016602,000446: 40,2165 05155 TC ENDOFJOB # -0 016603,000447: 40,2166 36250 CAF THREE 016604,000448: 40,2167 70777 MASK DECBRNCH 016605,000449: 40,2170 10000 CCS A 016606,000450: 40,2171 02175 TC NUM # IF DECBRNCH IS +, 8 OR 9 OK 016607,000451: 40,2172 03470 TC CHARALRM # IF DECBRNCH IS +0, REJECT 8 OR 9 016608,000452: 016609,000453: # NUM ASSEMBLES OCTAL 3 BITS AT A TIME. FOR DECIMAL IT CONVERTS INCOMING 016610,000454: # WORD AS A FRACTION, KEEPING RESULTS TO DP. 016611,000455: # OCTAL RESULTS ARE LEFT IN XREG, YREG, OR ZREG. HI PART OF DEC IN XREG, 016612,000456: # YREG, ZREG. THE LOW PARTS IN XREGLP, YREGLP, OR ZREGLP. 016613,000457: # DECBRNCH IS LEFT AT +0 FOR OCT, +1 FOR + DEC, +2 FOR - DEC. 016614,000458: # IF DSPCOUNT WAS LEFT -, NO MORE DATA IS ACCEPTED. 016615,000459: 016616,000460: 40,2173 34755 CAF ZERO 016617,000461: 40,2174 54117 TS CHAR 016618,000462: 40,2175 10776 NUM CCS DSPCOUNT 016619,000463: 40,2176 02202 TC +4 # + 016620,000464: 40,2177 02202 TC +3 # +0 016621,000465: 40,2200 02201 TC +1 # -BLOCK DATA IN IF DSPCOUNT IS - 016622,000466: 40,2201 05155 TC ENDOFJOB # -0 016623,000467: 40,2202 02324 TC GETINREL 016624,000468: 40,2203 11014 CCS CLPASS # IF CLPASS IS + OR +0, MAKE IT +0. 016625,000469: 40,2204 34755 CAF ZERO 016626,000470: 40,2205 55014 TS CLPASS 016627,000471: 40,2206 02207 TC +1 016628,000472: 40,2207 50117 INDEX CHAR 016629,000473: 40,2210 34066 CAF RELTAB 016630,000474: 40,2211 74346 MASK LOW5 016631,000475: 40,2212 54124 TS CODE 016632,000476: 40,2213 30776 CA DSPCOUNT 016633,000477: 40,2214 54143 TS COUNT 016634,000478: 40,2215 03356 TC DSPIN 016635,000479: 40,2216 36250 CAF THREE 016636,000480: # Page 407 016637,000481: 40,2217 70777 MASK DECBRNCH 016638,000482: 40,2220 10000 CCS A # +0, OCTAL. +1, + DEC. +2, - DEC. 016639,000483: 40,2221 02232 TC DECTOBIN # + 016640,000484: 40,2222 50137 INDEX INREL # +0 OCTAL 016641,000485: 40,2223 57000 XCH VERBREG 016642,000486: 40,2224 54022 TS CYL 016643,000487: 40,2225 40022 CS CYL 016644,000488: 40,2226 40022 CS CYL 016645,000489: 40,2227 56022 XCH CYL 016646,000490: 40,2230 60117 AD CHAR 016647,000491: 40,2231 02247 TC ENDNMTST 016648,000492: 40,2232 50137 DECTOBIN INDEX INREL 016649,000493: 40,2233 57000 XCH VERBREG 016650,000494: 40,2234 54154 TS MPAC # SUM X 2EXP-14 IN MPAC 016651,000495: 40,2235 34755 CAF ZERO 016652,000496: 40,2236 54155 TS MPAC +1 016653,000497: 40,2237 34363 CAF TEN # 10 X 2EXP-14 016654,000498: 40,2240 07312 TC SHORTMP # 10SUM X 2EXP-28 IN MPAC, MPAC+1 016655,000499: 40,2241 56155 XCH MPAC +1 016656,000500: 40,2242 60117 AD CHAR 016657,000501: 40,2243 54155 TS MPAC +1 016658,000502: 40,2244 02247 TC ENDNMTST # NO OF 016659,000503: 40,2245 26154 ADS MPAC # OF MUST BE 5TH CHAR 016660,000504: 40,2246 02265 TC DECEND 016661,000505: 40,2247 50137 ENDNMTST INDEX INREL 016662,000506: 40,2250 55000 TS VERBREG 016663,000507: 40,2251 40776 CS DSPCOUNT 016664,000508: 40,2252 50137 INDEX INREL 016665,000509: 40,2253 62315 AD CRITCON 016666,000510: 40,2254 00006 EXTEND 016667,000511: 40,2255 12257 BZF ENDNUM # -0, DSPCOUNT = CRITCON 016668,000512: 40,2256 02312 TC MORNUM # -, DSPCOUNT G/ CRITCON 016669,000513: 40,2257 36250 ENDNUM CAF THREE 016670,000514: 40,2260 70777 MASK DECBRNCH 016671,000515: 40,2261 10000 CCS A 016672,000516: 40,2262 02265 TC DECEND 016673,000517: 40,2263 40776 ENDALL CS DSPCOUNT # BLOCK NUMIN BY PLACING DSPCOUNT 016674,000518: 40,2264 02313 TC MORNUM +1 # NEGATIVELY 016675,000519: 40,2265 44753 DECEND CS ONE 016676,000520: 40,2266 60137 AD INREL 016677,000521: 40,2267 00006 EXTEND 016678,000522: 40,2270 62263 BZMF ENDALL # IF INREL=0,1 (VBREG,NNREG) LEAVE WHOLE 016679,000523: 40,2271 07106 TC DMP # IF INREL=2,3,4 (R1,R2,R3), CONVERT TO FRAC 016680,000524: # MULT SUM X 2EXP-28 IN MPAC, MPAC+1 016681,000525: 40,2272 02322 ADRES DECON # 2EXP14/10EXP5, GIVES (SUM/10EXP5)X2EXP-14 016682,000526: 40,2273 36250 CAF THREE # IN MPAC, +1, +2. 016683,000527: 40,2274 70777 MASK DECBRNCH 016684,000528: 40,2275 50000 INDEX A 016685,000529: 40,2276 02276 TC +0 016686,000530: 40,2277 02303 TC +DECSGN 016687,000531: # Page 408 016688,000532: 40,2300 00006 EXTEND # - CASE 016689,000533: 40,2301 40156 DCS MPAC +1 016690,000534: 40,2302 52156 DXCH MPAC +1 016691,000535: 40,2303 56156 +DECSGN XCH MPAC +2 016692,000536: 40,2304 50137 INDEX INREL 016693,000537: 40,2305 55003 TS XREGLP -2 016694,000538: 40,2306 56155 XCH MPAC +1 016695,000539: 40,2307 50137 INDEX INREL 016696,000540: 40,2310 55000 TS VERBREG 016697,000541: 40,2311 02263 TC ENDALL 016698,000542: 40,2312 10776 MORNUM CCS DSPCOUNT # DECREMENT DSPCOUNT 016699,000543: 40,2313 54776 TS DSPCOUNT 016700,000544: 40,2314 05155 TC ENDOFJOB 016701,000545: 016702,000546: 40,2315 00022 CRITCON OCT 22 # (DEC 18) 016703,000547: 40,2316 00020 OCT 20 # (DEC 16) 016704,000548: 40,2317 00012 OCT 12 # (DEC 10) 016705,000549: 40,2320 00005 OCT 5 016706,000550: 40,2321 00000 OCT 0 016707,000551: 016708,000552: 40,2322 05174 13261 DECON 2DEC 1 E-5 B14 # 2EXP14/10EXP5 = .16384 DEC 016709,000553: 016710,000554: # GETINREL GETS PROPER DATA REG REL ADDRESS FOR CURRENT C(DSPCOUNT) AND 016711,000555: # PUTS IN INTO INREL. +0 VERBREG, 1 NOUNREG, 2 XREG, 3 YREG, 4 ZREG. 016712,000556: 016713,000557: 40,2324 50776 GETINREL INDEX DSPCOUNT 016714,000558: 40,2325 32330 CAF INRELTAB 016715,000559: 40,2326 54137 TS INREL # (A TEMP. REG) 016716,000560: 40,2327 00002 TC Q 016717,000561: 016718,000562: 40,2330 00004 INRELTAB OCT 4 # R3D5 (DSPCOUNT = 0) 016719,000563: 40,2331 00004 OCT 4 # R3D4 =(1) 016720,000564: 40,2332 00004 OCT 4 # R3D3 =(2) 016721,000565: 40,2333 00004 OCT 4 # R3D2 =(3) 016722,000566: 40,2334 00004 OCT 4 # R3D1 =(4) 016723,000567: 40,2335 00003 OCT 3 # R2D5 =(5) 016724,000568: 40,2336 00003 OCT 3 # R2D4 =(6) 016725,000569: 40,2337 00003 OCT 3 # R2D3 =(7) 016726,000570: 40,2340 00003 OCT 3 # R2D2 =(8D) 016727,000571: 40,2341 00003 OCT 3 # R2D1 =(9D) 016728,000572: 40,2342 00002 OCT 2 # R1D5 =(10D) 016729,000573: 40,2343 00002 OCT 2 # R1D4 =(11D) 016730,000574: 40,2344 00002 OCT 2 # R1D3 =(12D) 016731,000575: 40,2345 00002 OCT 2 # R1D2 =(13D) 016732,000576: 40,2346 00002 OCT 2 # R1D1 =(14D) 016733,000577: 40,2347 05675 TC CCSHOLE # NO DISCOUNT NUMBER = 15D 016734,000578: 40,2350 00001 OCT 1 # ND2 =(16D) 016735,000579: 40,2351 00001 OCT 1 # ND1 =(17D) 016736,000580: # Page 409 016737,000581: 40,2352 00000 OCT 0 # VD2 =(18D) 016738,000582: 40,2353 00000 OCT 0 # VD1 =(19D) 016739,000583: 016740,000584: 40,2354 34755 VERB CAF ZERO 016741,000585: 40,2355 55000 TS VERBREG 016742,000586: 40,2356 34360 CAF VD1 016743,000587: 40,2357 54776 NVCOM TS DSPCOUNT 016744,000588: 40,2360 02601 TC 2BLANK 016745,000589: 40,2361 34753 CAF ONE 016746,000590: 40,2362 54777 TS DECBRNCH # SET FOR DEC V/N CODE 016747,000591: 40,2363 34755 CAF ZERO 016748,000592: 40,2364 55012 TS REQRET # SET FOR ENTPAS0 016749,000593: 40,2365 34217 CAF ENDINST # IF DSPALARM OCCURS BEFORE FIRST ENTPAS0 016750,000594: 40,2366 54136 TS ENTRET # OR NVSUB, ENTRET MUST ALREADY BE SET 016751,000595: # TO TC ENDOFJOB 016752,000596: 40,2367 05155 TC ENDOFJOB 016753,000597: 40,2370 34755 NOUN CAF ZERO 016754,000598: 40,2371 55001 TS NOUNREG 016755,000599: 40,2372 34361 CAF ND1 # ND1, OCT 21 (DEC 17) 016756,000600: 40,2373 02357 TC NVCOM 016757,000601: 016758,000602: 40,2374 02446 NEGSGN TC SIGNTEST 016759,000603: 40,2375 02433 TC -ON 016760,000604: 40,2376 34752 CAF TWO 016761,000605: 40,2377 50137 BOTHSGN INDEX INREL # SET DEC COMP BIT TO 1 (IN DECBRNCH) 016762,000606: 40,2400 64745 AD BIT7 # BIT 5 FOR R1. BIT 4 FOR R2. 016763,000607: 40,2401 26777 ADS DECBRNCH # BIT 3 FOR R3. 016764,000608: 40,2402 11014 FIXCLPAS CCS CLPASS # IF CLPASS IS + OR +0. MAKE IT +0. 016765,000609: 40,2403 34755 CAF ZERO 016766,000610: 40,2404 55014 TS CLPASS 016767,000611: 40,2405 02406 TC +1 016768,000612: 40,2406 05155 TC ENDOFJOB 016769,000613: 016770,000614: 40,2407 02446 POSGN TC SIGNTEST 016771,000615: 40,2410 02413 TC +ON 016772,000616: 40,2411 34753 CAF ONE 016773,000617: 40,2412 02377 TC BOTHSGN 016774,000618: 016775,000619: 40,2413 22002 +ON LXCH Q 016776,000620: 40,2414 02324 TC GETINREL 016777,000621: 40,2415 50137 INDEX INREL 016778,000622: 40,2416 32441 CAF SGNTAB -2 016779,000623: 40,2417 54123 TS SGNOFF 016780,000624: 40,2420 64753 AD ONE 016781,000625: 40,2421 54122 TS SGNON 016782,000626: 40,2422 34755 SGNCOM CAF ZERO 016783,000627: 40,2423 54124 TS CODE 016784,000628: 40,2424 56123 XCH SGNOFF 016785,000629: # Page 410 016786,000630: 40,2425 03440 TC 11DSPIN 016787,000631: 40,2426 34741 CAF BIT11 016788,000632: 40,2427 54124 TS CODE 016789,000633: 40,2430 56122 XCH SGNON 016790,000634: 40,2431 03440 TC 11DSPIN 016791,000635: 40,2432 00001 TC L 016792,000636: 40,2433 22002 -ON LXCH Q 016793,000637: 40,2434 02324 TC GETINREL 016794,000638: 40,2435 50137 INDEX INREL 016795,000639: 40,2436 32441 CAF SGNTAB -2 016796,000640: 40,2437 54122 TS SGNON 016797,000641: 40,2440 64753 AD ONE 016798,000642: 40,2441 54123 TS SGNOFF 016799,000643: 40,2442 02422 TC SGNCOM 016800,000644: 016801,000645: 40,2443 00005 SGNTAB OCT 5 # -R1 016802,000646: 40,2444 00003 OCT 3 # -R2 016803,000647: 40,2445 00000 OCT 0 # -R3 016804,000648: 016805,000649: 40,2446 22002 SIGNTEST LXCH Q # ALLOWS +,- ONLY WHEN DSPCOUNT=R1D1, 016806,000650: 40,2447 36250 CAF THREE # R2D1, OR R3D1. ALLOWS ONLY FIRST OF 016807,000651: 40,2450 70777 MASK DECBRNCH # CONSECUTIVE +/- CHARACTERS. 016808,000652: 40,2451 10000 CCS A # IF LOW2 BITS OF DECBRNCH NOT 0. SIGN 016809,000653: 40,2452 05155 TC ENDOFJOB # FOR THIS WORD ALREADY IN. REJECT. 016810,000654: 40,2453 44317 CS R1D1 016811,000655: 40,2454 02462 TC SGNTST1 016812,000656: 40,2455 44320 CS R2D1 016813,000657: 40,2456 02462 TC SGNTST1 016814,000658: 40,2457 44321 CS R3D1 016815,000659: 40,2460 02462 TC SGNTST1 016816,000660: 40,2461 05155 TC ENDOFJOB # NO MATCH FOUND. SIGN ILLEGAL 016817,000661: 40,2462 60776 SGNTST1 AD DSPCOUNT 016818,000662: 40,2463 00006 EXTEND 016819,000663: 40,2464 12466 BZF +2 # MATCH FOUND 016820,000664: 40,2465 00002 TC Q 016821,000665: 40,2466 00001 TC L # SIGN LEGAL 016822,000666: 016823,000667: # CLEAR BLANKS WHICH R1, R2, R3 IS CURRENT OR LAST TO BE DISPLAYED (PERTINENT 016824,000668: # XREG, YREG, ZREG IS CLEARED). SUCCESSIVE CLEARS TAKE CARE OF EACH RX 016825,000669: # L/ RC UNTIL R1 IS DONE. THEN NO FURTHER ACTION. 016826,000670: 016827,000671: # THE SINGLE COMPONENT LOAD VERBS ALLOW ONLY THE SINGLE RC THAT IS 016828,000672: # APPROPRIATE TO BE CLEARED. 016829,000673: 016830,000674: # CLPASS +0 PASS0, CAN BE BACKED UP 016831,000675: # +NZ HIPASS, CAN BE BACKED UP 016832,000676: # -NZ PASS0, CANNOT BE BACKED UP 016833,000677: # Page 411 016834,000678: 40,2467 10776 CLEAR CCS DSPCOUNT 016835,000679: 40,2470 64753 AD ONE 016836,000680: 40,2471 02473 TC +2 016837,000681: 40,2472 64753 AD ONE 016838,000682: 40,2473 50000 INDEX A # DO NOT CHANGE DSPCOUNT BECAUSE MAY LATER 016839,000683: 40,2474 32330 CAF INRELTAB # FAIL LEGALTST. 016840,000684: 40,2475 54137 TS INREL # MUST SET INREL, EVEN FOR HIPASS. 016841,000685: 40,2476 11014 CCS CLPASS 016842,000686: 40,2477 02505 TC CLPASHI # + 016843,000687: 40,2500 02502 TC +2 # +0 IF CLPASS IS +0 OR -, IT IS PASS0 016844,000688: 40,2501 02502 TC +1 # - 016845,000689: 40,2502 30137 CA INREL 016846,000690: 40,2503 02527 TC LEGALTST 016847,000691: 40,2504 02522 TC CLEAR1 016848,000692: 40,2505 10137 CLPASHI CCS INREL 016849,000693: 40,2506 54137 TS INREL 016850,000694: 40,2507 02527 TC LEGALTST 016851,000695: 40,2510 32577 CAF DOUBLK +2 # +3 TO - NUMBER, BACKS DATA REQUESTS. 016852,000696: 40,2511 27012 ADS REQRET 016853,000697: 40,2512 30137 CA INREL 016854,000698: 40,2513 54125 TS MIXTEMP # TEMP STORAGE FOR INREL 016855,000699: 40,2514 00006 EXTEND 016856,000700: 40,2515 27000 DIM VERBREG # DECREMENT VERB AND RE-DISPLAY 016857,000701: 40,2516 04616 TC BANKCALL 016858,000702: 40,2517 62342 CADR UPDATVB 016859,000703: 40,2520 30125 CA MIXTEMP 016860,000704: 40,2521 54137 TS INREL # RESTORE INREL 016861,000705: 40,2522 02525 CLEAR1 TC CLR5 016862,000706: 40,2523 25014 INCR CLPASS # ONLY IF CLPASS IS + OR +0 016863,000707: 40,2524 05155 TC ENDOFJOB # SET FOR HIGHER PASS. 016864,000708: 40,2525 22002 CLR5 LXCH Q # USED 5BLANK BUT AVOIDS ITS TC GETINREL 016865,000709: 40,2526 02540 TC 5BLANK +2 016866,000710: 40,2527 67751 LEGALTST AD NEG2 016867,000711: 40,2530 10000 CCS A 016868,000712: 40,2531 00002 TC Q # LEGAL INREL G/2 016869,000713: 40,2532 05675 TC CCSHOLE 016870,000714: 40,2533 05155 TC ENDOFJOB # ILLEGAL INREL=0,1 016871,000715: 40,2534 00002 TC Q # LEGAL INREL=2 016872,000716: 016873,000717: # 5BLANK BLANKS 5 CHAR DISPLAY WORD IN R1, R2, OR R3. IT ALSO ZEROES XREG, 016874,000718: # YREG, OR ZREG. PLACE ANY + DSPCOUNT NUMBER FOR PERTINENT RC INTO DSPCOUNT. 016875,000719: # DSPCOUNT IS LEFT SET TO LEFT MOST DSP NUMB FOR RC JUST BLANKED. 016876,000720: 016877,000721: 40,2535 54776 TS DSPCOUNT # NEEDED FOR BLANKSUB 016878,000722: 40,2536 22002 5BLANK LXCH Q 016879,000723: 40,2537 02324 TC GETINREL 016880,000724: 40,2540 34755 CAF ZERO 016881,000725: 40,2541 50137 INDEX INREL 016882,000726: 40,2542 55000 TS VERBREG # ZERO X, Y, Z, REG. 016883,000727: # Page 412 016884,000728: 40,2543 50137 INDEX INREL 016885,000729: 40,2544 55003 TS XREGLP -2 016886,000730: 40,2545 54124 TS CODE 016887,000731: 40,2546 50137 INDEX INREL # ZERO PERTINENT DEC COMP BIT. 016888,000732: 40,2547 44745 CS BIT7 # PROTECT OTHERS 016889,000733: 40,2550 70777 MASK DECBRNCH 016890,000734: 40,2551 72600 MASK BRNCHCON # ZERO LOW 2 BITS. 016891,000735: 40,2552 54777 TS DECBRNCH 016892,000736: 40,2553 50137 INDEX INREL 016893,000737: 40,2554 32570 CAF SINBLANK -2 # BLANK ISOLATED CHAR SEPARATELY 016894,000738: 40,2555 54143 TS COUNT 016895,000739: 40,2556 03356 TC DSPIN 016896,000740: 40,2557 50137 5BLANK1 INDEX INREL 016897,000741: 40,2560 32573 CAF DOUBLK -2 016898,000742: 40,2561 54776 TS DSPCOUNT 016899,000743: 40,2562 02601 TC 2BLANK 016900,000744: 40,2563 44752 CS TWO 016901,000745: 40,2564 26776 ADS DSPCOUNT 016902,000746: 40,2565 02601 TC 2BLANK 016903,000747: 40,2566 50137 INDEX INREL 016904,000748: 40,2567 34315 CAF R1D1 -2 016905,000749: 40,2570 54776 TS DSPCOUNT # SET DSPCOUNT TO LEFT MOST DSP NUMBER 016906,000750: 40,2571 00001 TC L # OF REG. JUST BLANKED 016907,000751: 016908,000752: 40,2572 00016 SINBLANK OCT 16 # DEC 14 016909,000753: 40,2573 00005 OCT 5 016910,000754: 40,2574 00004 OCT 4 016911,000755: 40,2575 00015 DOUBLK OCT 15 # DEC 13 016912,000756: 40,2576 00011 OCT 11 # DEC 9 016913,000757: 40,2577 00003 OCT 3 016914,000758: 016915,000759: 40,2600 77774 BRNCHCON OCT 77774 016916,000760: 016917,000761: # 2BLANK BLANKS TWO CHAR. PLACE DSP NUMBER OF LEFT CHAR OF THE PAIR INTO 016918,000762: # DSPCOUNT. THIS NUMBER IS LEFT IN DSPCOUNT 016919,000763: 016920,000764: 40,2601 30776 2BLANK CA DSPCOUNT 016921,000765: 40,2602 54021 TS SR 016922,000766: 40,2603 42614 CS BLANKCON 016923,000767: 40,2604 00004 INHINT 016924,000768: 40,2605 50021 INDEX SR 016925,000769: 40,2606 57022 XCH DSPTAB 016926,000770: 40,2607 00006 EXTEND 016927,000771: 40,2610 62612 BZMF +2 # IF OLD CONTENTS -, NOUT OK 016928,000772: 40,2611 25015 INCR NOUT # IF OLD CONTENTS +, +1 TO NOUT 016929,000773: 40,2612 00003 RELINT # IF -, NOUT OK 016930,000774: 40,2613 00002 TC Q 016931,000775: 40,2614 04000 BLANKCON OCT 4000 016932,000776: 016933,000777: # Page 413 016934,000778: # ENTER PASS 0 IS THE EXECUTE FUNCTION. HIGHER ORDER ENTERS ARE TO LOAD 016935,000779: # DATA. THE SIGN OF REQRET DETERMINES THE PASS, + FOR PASS 0, - FOR HIGHER 016936,000780: # PASSES 016937,000781: 016938,000782: # MACHINE CADR TO BE SPECIFIED (MCTBS) NOUNS DESIRE AN ECADR TO BE LOADED 016939,000783: # WHEN USED WITH LOAD VERBS, MONITOR VERBS, OR DISPLAY VERBS (EXCEPT 016940,000784: # VERB = FIXED MEMORY DISPLAY, WHICH REQUIRES AN FCADR). 016941,000785: 016942,000786: 41,2000 BANK 41 016943,000787: 41,2000 SETLOC PINBALL2 016944,000788: 41,2000 BANK 016945,000789: 016946,000790: 41,2000 COUNT* $$/PIN 016947,000791: 41,2000 03557 NVSUBB TC NVSUB1 # STANDARD LEAD INS. DON'T MOVE. 016948,000792: 41,2001 03020 LOADLV1 TC LOADLV 016949,000793: 016950,000794: # END OF STANDARD LEAD INS. 016951,000795: 016952,000796: 41,2002 34755 ENTER CAF ZERO 016953,000797: 41,2003 55014 TS CLPASS 016954,000798: 41,2004 34217 CAF ENDINST 016955,000799: 41,2005 54136 TS ENTRET 016956,000800: 41,2006 11012 CCS REQRET 016957,000801: 41,2007 02035 TC ENTPAS0 # IF +, PASS 0 016958,000802: 41,2010 02035 TC ENTPAS0 # IF +, PASS 0 016959,000803: 41,2011 02012 TC +1 # IF -, NOT PASS 0 016960,000804: 41,2012 32033 ENTPASHI CAF MMADREF 016961,000805: 41,2013 61012 AD REQRET # IF L/ 2 CHAR IN FOR MM CODE, ALARM 016962,000806: 41,2014 00006 EXTEND # AND RECYCLE (DECIDE AT MCHANG+1). 016963,000807: 41,2015 12027 BZF ACCEPTWD 016964,000808: 41,2016 36250 CAF THREE # IF DEC, ALARM IF L/ 5 CHAR IN FOR DATA, 016965,000809: 41,2017 70777 MASK DECBRNCH # BUT LEAVE REQRET - AND FLASH ON, SO 016966,000810: 41,2020 10000 CCS A # OPERATOR CAN SUPPLY MISSING NUMERICAL 016967,000811: 41,2021 02023 TC +2 # CHARACTERS AND CONTINUE. 016968,000812: 41,2022 02027 TC ACCEPTWD # OCTAL. ANY NUMBER OF CHAR OK. 016969,000813: 41,2023 10776 CCS DSPCOUNT 016970,000814: 41,2024 02353 TC GODSPALM # LESS THAN 5 CHAR DEC(DSPCOUNT IS +) 016971,000815: 41,2025 02353 TC GODSPALM # LESS THAN 5 CHAR DEC(DSPCOUNT IS +) 016972,000816: 41,2026 02027 TC +1 # 5 CHAR IN (DSPCOUNT IS -) 016973,000817: 41,2027 41012 ACCEPTWD CS REQRET # 5 CHAR IN (DSPCOUNT IS -) 016974,000818: 41,2030 55012 TS REQRET # SET REQRET +. 016975,000819: 41,2031 04433 TC FLASHOFF 016976,000820: 41,2032 01012 TC REQRET 016977,000821: 016978,000822: 41,2033 0136 ENTEXIT = ENTRET 016979,000823: 016980,000824: 41,2033 03444 MMADREF ADRES MMCHANG +1 # ASSUMES TC REQMM AT MMCHANG. 016981,000825: 016982,000826: # Page 414 016983,000827: 41,2034 00034 LOWVERB DEC 28 B-14 # LOWER VERB THAT AVOIDS NOUN TEST. 016984,000828: 016985,000829: 41,2035 34755 ENTPAS0 CAF ZERO # NOUN VERB SUB ENTERS HERE 016986,000830: 41,2036 54777 TS DECBRNCH 016987,000831: 41,2037 44360 CS VD1 # BLOCK FURTHER NUM CHAR, SO THAT STRAY 016988,000832: 41,2040 54776 TS DSPCOUNT # CHAR DO NOT GET INTO VERB OR NOUN LTS. 016989,000833: 41,2041 41000 TESTVB CS VERBREG # IF VERB IS G/E LOWVB, SKIP NOUN TEST. 016990,000834: 41,2042 55040 TS VERBSAVE # SAVE VERB FOR POSSIBLE RECYCLE. 016991,000835: 41,2043 62034 AD LOWVERB # LOWVERB - VB 016992,000836: 41,2044 00006 EXTEND 016993,000837: 41,2045 62133 BZMF VERBFAN # VERB G/ E LOWVERB 016994,000838: 41,2046 00006 TESTNN EXTEND # VERB L/ LOWVERB 016995,000839: 41,2047 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 016996,000840: 41,2050 52006 DXCH Z # ROUTINE. 016997,000841: 41,2051 50140 INDEX MIXBR 016998,000842: 41,2052 02052 TC +0 016999,000843: 41,2053 02055 TC +2 # NORMAL 017000,000844: 41,2054 02221 TC MIXNOUN # MIXED 017001,000845: 41,2055 10146 CCS NNADTEM # NORMAL 017002,000846: 41,2056 02131 TC VERBFAN -2 # NORMAL IF + 017003,000847: 41,2057 02353 TC GODSPALM # NOT IN USE IF +0 017004,000848: 41,2060 02064 TC REQADD # SPECIFY MACHINE CADR IF - 017005,000849: 41,2061 25016 INCR NOUNCADR # AUGMENT MACHINE CADR IF -0 017006,000850: 41,2062 04311 TC SETNADD # ECADR FROM NOUNCADR, SETS ED, NOUNADD. 017007,000851: 41,2063 02120 TC INTMCTBS +2 017008,000852: 41,2064 34735 REQADD CAF BIT15 # SET CLPASS FOR PASS 0 ONLY 017009,000853: 41,2065 55014 TS CLPASS 017010,000854: 41,2066 44217 CS ENDINST # TEST IF REACHED HERE FROM INTERNAL OR 017011,000855: 41,2067 60136 AD ENTEXIT # FROM EXTERNAL 017012,000856: 41,2070 00006 EXTEND 017013,000857: 41,2071 12073 BZF +2 # EXTERNAL MACH CADR TO BE SPECIFIED 017014,000858: 41,2072 02116 TC INTMCTBS 017015,000859: 41,2073 02311 TC REQDATZ # EXTERNAL MACH CADR TO BE SPECIFIED 017016,000860: 41,2074 10777 CCS DECBRNCH # ALARM AND RECYCLE IF DECIMAL USED 017017,000861: 41,2075 04145 TC ALMCYCLE # FOR MCTBS. 017018,000862: 41,2076 44360 CS VD1 # OCTAL USED OK 017019,000863: 41,2077 54776 TS DSPCOUNT # BLOCK NUM CHAR IN 017020,000864: 41,2100 11041 CCS CADRSTOR 017021,000865: 41,2101 02104 TC +3 # EXTERNAL MCTBS DISPLAY WILL LEAVE FLASH 017022,000866: 41,2102 02105 TC USEADD # ON IF ENDIDLE NOT = +0. 017023,000867: 41,2103 02104 TC +1 017024,000868: 41,2104 04427 TC FLASHON 017025,000869: 41,2105 57004 USEADD XCH ZREG 017026,000870: 41,2106 04303 TC SETNCADR # ECADR INTO NOUNCADR. SET EB, NOUNADD. 017027,000871: 41,2107 00006 EXTEND 017028,000872: 41,2110 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TAB E READING 017029,000873: 41,2111 52006 DXCH Z # ROUTINE. 017030,000874: 41,2112 02133 TC VERBFAN 017031,000875: 017032,000876: 41,2113 0776 EBANK= DSPCOUNT 017033,000877: # Page 415 017034,000878: 41,2113 02103 64101 LODNNLOC 2CADR LODNNTAB 017035,000879: 017036,000880: 41,2115 77772 NEG5 OCT 77772 017037,000881: 017038,000882: 41,2116 30156 INTMCTBS CA MPAC +2 # INTERNAL MACH CADR TO BE SPECIFIED. 017039,000883: 41,2117 04303 TC SETNCADR # ECADR INTO NOUNCADR. SET EB, NOUNADD. 017040,000884: 41,2120 44756 CS FIVE # NVSUB CALL LEFT CADR IN MPAC+2 FOR MACH 017041,000885: 41,2121 61000 AD VERBREG # CADR TO BE SPECIFIED. 017042,000886: 41,2122 00006 EXTEND 017043,000887: 41,2123 12133 BZF VERBFAN # DON'T DISPLAY CADR IF VB = 05. 017044,000888: 41,2124 34321 CAF R3D1 # VB NOT = 05. DISPLAY CADR. 017045,000889: 41,2125 54776 TS DSPCOUNT 017046,000890: 41,2126 31016 CA NOUNCADR 017047,000891: 41,2127 03410 TC DSPOCTWO 017048,000892: 41,2130 02133 TC VERBFAN 017049,000893: 017050,000894: 41,2131 64753 AD ONE 017051,000895: 41,2132 04303 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 017052,000896: 41,2133 42145 VERBFAN CS LST2CON 017053,000897: 41,2134 61000 AD VERBREG # VERB -- LST2CON 017054,000898: 41,2135 10000 CCS A 017055,000899: 41,2136 64753 AD ONE # VERB G/ LST2CON 017056,000900: 41,2137 02141 TC +2 017057,000901: 41,2140 02146 TC VBFANDIR # VERB L/ LST2CON 017058,000902: 41,2141 54154 TS MPAC 017059,000903: 41,2142 04457 TC RELDSP # RELEASE DISPLAY SYST 017060,000904: 41,2143 04635 TC POSTJUMP # GO TO GOEXTVB WITH VB=40 IN MPAC. 017061,000905: 41,2144 66000 CADR GOEXTVB 017062,000906: 41,2145 00050 LST2CON DEC 40 B-14 # FIRST LIST2 VERB (EXTENDED VERB) 017063,000907: 017064,000908: 41,2146 51000 VBFANDIR INDEX VERBREG 017065,000909: 41,2147 32151 CAF VERBTAB 017066,000910: 41,2150 04640 TC BANKJUMP 017067,000911: 017068,000912: 41,2151 62353 VERBTAB CADR GODSPALM # VB00 ILLEGAL 017069,000913: 41,2152 62367 CADR DSPA # VB01 DISPLAY OCT COMP 1 (R1) 017070,000914: 41,2153 62375 CADR DSPB # VB02 DISPLAY OCT COMP 2 (R1) 017071,000915: 41,2154 62402 CADR DSPC # VB03 DISPLAY OCT COMP 3 (R1) 017072,000916: 41,2155 62362 CADR DSPAB # VB04 DISPLAY OCT COMP 1,2 (R1,R2) 017073,000917: 41,2156 62355 CADR DSPABC # VB05 DISPLAY OCT COMP 1,2,3 (R1,R2,R3) 017074,000918: 41,2157 62525 CADR DECDSP # VB06 DECIMAL DISPLAY 017075,000919: 41,2160 61025 CADR DSPDPDEC # VB07 DP DECIMAL DISPLAY (R1,R2) 017076,000920: 41,2161 62353 CADR GODSPALM # VB08 SPARE 017077,000921: 41,2162 62353 CADR GODSPALM # VB09 SPARE 017078,000922: 41,2163 61454 CADR DSPALARM # VB10 SPARE 017079,000923: 41,2164 63255 CADR MONITOR # VB11 MONITOR OCT COMP 1 (R1) 017080,000924: 41,2165 63255 CADR MONITOR # VB12 MONITOR OCT COMP 2 (R1) 017081,000925: 41,2166 63255 CADR MONITOR # VB13 MONITOR OCT COMP 3 (R1) 017082,000926: 41,2167 63255 CADR MONITOR # VB14 MONITOR OCT COMP 1,2 (R1,R2) 017083,000927: # Page 416 017084,000928: 41,2170 63255 CADR MONITOR # VB15 MONITOR OCT COMP 1,2,3 (R1,R2,R3) 017085,000929: 41,2171 63255 CADR MONITOR # VB16 MONITOR DECIMAL 017086,000930: 41,2172 63255 CADR MONITOR # VB17 MONITOR DP DEC (R1,R2) 017087,000931: 41,2173 62353 CADR GODSPALM # VB18 SPARE 017088,000932: 41,2174 62353 CADR GODSPALM # VB19 SPARE 017089,000933: 41,2175 62353 CADR GODSPALM # VB20 SPARE 017090,000934: 41,2176 62755 CADR ALOAD # VB21 LOAD COMP 1 (R1) 017091,000935: 41,2177 62766 CADR BLOAD # VB22 LOAD COMP 2 (R2) 017092,000936: 41,2200 63003 CADR CLOAD # VB23 LOAD COMP 3 (R3) 017093,000937: 41,2201 62726 CADR ABLOAD # VB24 LOAD COMP 1,2 (R1,R2) 017094,000938: 41,2202 62622 CADR ABCLOAD # VB25 LOAD COMP 1,2,3 (R1,R2,R3) 017095,000939: 41,2203 62353 CADR GODSPALM # VB26 SPARE 017096,000940: 41,2204 63400 CADR DSPFMEM # VB27 FIXED MEMORY DISPLAY 017097,000941: # THE FOLLOWING VERBS MAKE NO NOUN TEST 017098,000942: 41,2205 62353 CADR GODSPALM # VB28 SPARE 017099,000943: 41,2206 62353 CADR GODSPALM # VB29 SPARE 017100,000944: 41,2207 63501 REQEXLQC CADR VBRQEXEC # VB30 REQUEST EXECUTIVE 017101,000945: 41,2210 63525 CADR VBRQWAIT # VB31 REQUEST WAITLIST 017102,000946: 41,2211 61521 CADR VBRESEQ # VB32 RESEQUENCE 017103,000947: 41,2212 61476 CADR VBPROC # VB33 PROCEED WITHOUT DATA 017104,000948: 41,2213 61504 CADR VBTERM # VB34 TERMINATE CURRENT TEST OR LOAD REQ 017105,000949: 41,2214 63626 CADR VBTSTLTS # VB35 TEST LIGHTS 017106,000950: 41,2215 12447 CADR SLAP1 # VB36 FRESH START 017107,000951: 41,2216 63443 CADR MMCHANG # VB37 CHANGE MAJOR MODE 017108,000952: 41,2217 62353 CADR GODSPALM # VB38 SPARE 017109,000953: 41,2220 62353 CADR GODSPALM # VB39 SPARE 017110,000954: 017111,000955: # THE LIST2 VERBFAN IS LOCATED IN THE EXTENDED VERB BANK. 017112,000956: # Page 417 017113,000957: # NNADTAB CONTAINS A RELATIVE ADDRESS, IDADDREL (IN LOW 10 BITS), REFERRING 017114,000958: # TO WHERE 3 CONSECUTIVE ADDRESSES ARE STORED (IN IDADDTAB). 017115,000959: # MIXNOUN GETS DATA AND STORES IN MIXTEMP,+1,+2. IT SETS NOUNADD FOR 017116,000960: # MIXTEMP. 017117,000961: 017118,000962: 41,2221 10146 MIXNOUN CCS NNADTEM 017119,000963: 41,2222 02226 TC +4 # + IN USE 017120,000964: 41,2223 02353 TC GODSPALM # +0 NOT IN USE 017121,000965: 41,2224 02226 TC +2 # - IN USE 017122,000966: 41,2225 02226 TC +1 # -0 IN USE 017123,000967: 41,2226 46245 CS SIX 017124,000968: 41,2227 61000 AD VERBREG 017125,000969: 41,2230 00006 EXTEND 017126,000970: 41,2231 62233 BZMF +2 # VERB L/E 6 017127,000971: 41,2232 02133 TC VERBFAN # AVOID MIXNOUN SWAP IF VB NOT = DISPLAY 017128,000972: 41,2233 34752 CAF TWO 017129,000973: 41,2234 54117 MIXNN1 TS DECOUNT 017130,000974: 41,2235 62260 AD MIXAD 017131,000975: 41,2236 54145 TS NOUNADD # SET NOUNADD TO MIXTEMP +K 017132,000976: 41,2237 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K 017133,000977: 41,2240 30150 CA IDAD1TEM # OF NOUN. 017134,000978: 41,2241 54122 TS NOUNTEM 017135,000979: # TEST FOR DP (FOR OCT DISPLAY). IF SO, GET 017136,000980: # MINOR PART ONLY. 017137,000981: 41,2242 03057 TC SFRUTMIX # GET SF ROUT NUMBER IN A 017138,000982: 41,2243 02261 TC DPTEST 017139,000983: 41,2244 02246 TC MIXNN2 # NO DP 017140,000984: 41,2245 24122 INCR NOUNTEM # DP GET MINOR PART 017141,000985: 41,2246 30122 MIXNN2 CA NOUNTEM 017142,000986: 41,2247 74356 MASK LOW11 # ESUBK (NO DP) OR (ESUBK)+1 (garbled) FOR DP. 017143,000987: 41,2250 04313 TC SETEBANK # SET EBANK, LEAVE EADRES IN A. 017144,000988: 41,2251 50000 INDEX A # PICK UP C(ESUBK) NOT DP. 017145,000989: 41,2252 30000 CA 0 # OR C((ESUBK)+1) FOR DP MINOR PART 017146,000990: 41,2253 50145 INDEX NOUNADD 017147,000991: 41,2254 56000 XCH 0 # STORE IN MIXTEM + K 017148,000992: 41,2255 10117 CCS DECOUNT 017149,000993: 41,2256 02234 TC MIXNN1 017150,000994: 41,2257 02133 TC VERBFAN 017151,000995: 017152,000996: 41,2260 00125 MIXAD TC MIXTEMP 017153,000997: 017154,000998: # DPTEST ENTER WITH SF ROUT NUMBER IN A. 017155,000999: # RETURNS TO L+1 IF NO DP. 017156,001000: # RETURNS TO L+2 IF DP. 017157,001001: 017158,001002: 41,2261 50000 DPTEST INDEX A 017159,001003: 41,2262 12263 TCF +1 017160,001004: 41,2263 00002 TC Q # OCTAL ONLY NO DP 017161,001005: 41,2264 00002 TC Q # FRACT NO DP 017162,001006: # Page 418 017163,001007: 41,2265 00002 TC Q # DEG NO DP 017164,001008: 41,2266 00002 TC Q # ARITH NO DP 017165,001009: 41,2267 12303 TCF DPTEST1 # DP1OUT 017166,001010: 41,2270 12303 TCF DPTEST1 # DP2OUT 017167,001011: 41,2271 00002 TC Q # LRPOSOUT NO DP (DATA IN CHANNEL 33) 017168,001012: 41,2272 12303 TCF DPTEST1 # DP3OUT 017169,001013: 41,2273 00002 TC Q # HMS NO DP 017170,001014: 41,2274 00002 TC Q # M/S NO DP 017171,001015: 41,2275 12303 TCF DPTEST1 # DP4OUT 017172,001016: 41,2276 00002 TC Q # ARITH1 NO DP 017173,001017: 41,2277 00002 TC Q # 2INTOUT NO DP TO GET HI PART IN MPAC 017174,001018: 41,2300 00002 TC Q # 360-CDU NO DP 017175,001019: 41,2301 00002 TC Q # RRANGOUT NO DP 017176,001020: 41,2302 00002 TC Q # RRDOTOUT NO DP 017177,001021: 41,2303 50002 DPTEST1 INDEX Q 017178,001022: 41,2304 00001 TC 1 # RETURN TO L+2 017179,001023: 017180,001024: 41,2305 34317 REQDATX CAF R1D1 017181,001025: 41,2306 12312 TCF REQCOM 017182,001026: 41,2307 34320 REQDATY CAF R2D1 017183,001027: 41,2310 12312 TCF REQCOM 017184,001028: 41,2311 34321 REQDATZ CAF R3D1 017185,001029: 41,2312 54776 REQCOM TS DSPCOUNT 017186,001030: 41,2313 40002 CS Q 017187,001031: 41,2314 55012 TS REQRET 017188,001032: 41,2315 04616 TC BANKCALL 017189,001033: 41,2316 60536 CADR 5BLANK 017190,001034: 41,2317 04427 TC FLASHON 017191,001035: 41,2320 00136 ENDRQDAT TC ENTEXIT 017192,001036: 017193,001037: 41,2321 55001 TS NOUNREG 017194,001038: 41,2322 56002 UPDATNN XCH Q 017195,001039: 41,2323 54117 TS UPDATRET 017196,001040: 41,2324 00006 EXTEND 017197,001041: 41,2325 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN (garbled)EADING 017198,001042: 41,2326 52006 DXCH Z # ROUTINE. 017199,001043: 41,2327 10146 CCS NNADTEM 017200,001044: 41,2330 64753 AD ONE # NORMAL 017201,001045: 41,2331 12334 TCF PUTADD 017202,001046: 41,2332 12335 TCF PUTADD +1 # MCTBS DON'T CHANGE NOUNADD 017203,001047: 41,2333 12335 TCF PUTADD +1 # MCTBI DON'T CHANGE NOUNADD 017204,001048: 41,2334 04303 PUTADD TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 017205,001049: 41,2335 34361 CAF ND1 017206,001050: 41,2336 54776 TS DSPCOUNT 017207,001051: 41,2337 31001 CA NOUNREG 017208,001052: 41,2340 12347 TCF UPDAT1 017209,001053: 017210,001054: 41,2341 55000 TS VERBREG 017211,001055: 41,2342 56002 UPDATVB XCH Q 017212,001056: # Page 419 017213,001057: 41,2343 54117 TS UPDATRET 017214,001058: 41,2344 34360 CAF VD1 017215,001059: 41,2345 54776 TS DSPCOUNT 017216,001060: 41,2346 31000 CA VERBREG 017217,001061: 41,2347 04635 UPDAT1 TC POSTJUMP # CAN'T USE SWCALL TO GO TC DSPDECVN, SINCE 017218,001062: 41,2350 61353 CADR GOVNUPDT # UPDATVB CAN ITSELF BE CALLED BY SWCALL. 017219,001063: 41,2351 00117 TC UPDATRET 017220,001064: 017221,001065: 41,2352 04145 GOALMCYC TC ALMCYCLE # NEEDED BECAUSE BANKJUMP CAN'T HANDLE F/F. 017222,001066: 017223,001067: 41,2353 04635 GODSPALM TC POSTJUMP 017224,001068: 41,2354 61454 CADR DSPALARM 017225,001069: 017226,001070: # Page 420 017227,001071: # NOUN TABLES 017228,001072: 017229,001073: # NOUN CODE L/40, NORMAL NOUN CASE. NOUN CODE G/E 40, MIXED NOUN CASE. 017230,001074: # FOR NORMAL CASE, NNADTAB CONTAINS ONE ECADR FOR EACH NOUN. 017231,001075: # +0 INDICATES NOUN NOT USED. - ENTRY INDICATES MACHINE CADR (E OR F) TO 017232,001076: # BE SPECIFIED. -1 INDICATES CHANNEL TO BE SPECIFIED. -0 INDICATES AUGMENT 017233,001077: # OF LAST MACHINE CADR SUPPLIED. 017234,001078: 017235,001079: # FOR MIXED CASE, NNADTAB CONTAINS ONE INDIRECT ADDRESS (IDADDREL) IN LOW 017236,001080: # 10 BITS, AND THE COMPONENT CODE NUMBER IN THE HIGH 5 BITS. 017237,001081: 017238,001082: # NNTYPTAB IS A PACKED TABLE OF THE FORM MMMMMNNNNNPPPPP. 017239,001083: 017240,001084: # FOR THE NORMAL CASE, M'S ARE THE COMPONENT CODE NUMBER. 017241,001085: # N'S ARE THE SF ROUTINE CODE NUMBER. 017242,001086: # P'S ARE THE SF CONSTANT CODE NUMBER. 017243,001087: 017244,001088: # MIXED-CASE, M'S ARE THE SF CONSTANT3 CODE NUMBER 3 COMPONENT CASE 017245,001089: # N'S ARE THE SF CONSTANT2 CODE NUMBER 017246,001090: # P'S ARE THE SF CONSTANT1 CODE NUMBER 017247,001091: # N'S ARE THE SF CONSTANT2 CODE NUMBER 2 COMPONENT CASE 017248,001092: # P'S ARE THE SF CONSTANT1 CODE NUMBER 017249,001093: # P'S ARE THE SF CONSTANT1 CODE NUMBER 1 COMPONENT CASE 017250,001094: 017251,001095: # THERE IS ALSO AN INDIRECT ADDRESS TABLE (IDADDTAB) FOR MIXED CASE ONLY 017252,001096: # EACH ENTRY CONTAINS ONE ECADR. IDADDREL IS THE RELATIVE ADDRESS OF 017253,001097: # THE FIRST OF THESE ENTRIES. 017254,001098: 017255,001099: # THERE IS ALSO A SCALE FACTOR ROUTINE NUMBER TABLE (RUTMXTAB) FOR MIXED 017256,001100: # CASE ONLY. THERE IS ONE ENTRY PER MIXED NOUN. THE FORM IS, 017257,001101: 017258,001102: # QQQQQRRRRRSSSSS 017259,001103: 017260,001104: # Q'S ARE THE SF ROUTINE 3 CODE NUMBER 3 COMPONENT CASE 017261,001105: # R'S ARE THE SF ROUTINE 2 CODE NUMBER 017262,001106: # S'S ARE THE SF ROUTINE 1 CODE NUMBER 017263,001107: # R'S ARE THE SF ROUTINE 2 CODE NUMBER 2 COMPONENT CASE 017264,001108: # S'S ARE THE SF ROUTINE 1 CODE NUMBER 017265,001109: 017266,001110: # IN OCTAL DISPLAY AND LOAD (OCT OR DEC) VERBS, EXCLUDE USE OF VERBS WHOSE 017267,001111: # COMPONENT NUMBER IS GREATER THAN THE NUMBER OF COMONENTS IN NOUN. 017268,001112: # (ALL MACHINE ADDRESS TO BE SPECIFIED NOUNS ARE 3 COMPONENT.) 017269,001113: 017270,001114: # IN MULTI-COMPONENT LOAD VERBS, NO MIXING OF OCTAL AND DECIMAL DATA 017271,001115: # COMPONENT WORDS IS ALLOWED. ALARM IF VIOLATION. 017272,001116: 017273,001117: # IN DECIMAL LOADS OF DATA, 5 NUMERICAL CHARACTERS MUST BE KEYED IN 017274,001118: # BEFORE EACH ENTER. IF NOT, ALARM. 017275,001119: 017276,001120: # Page 421 017277,001121: # DISPLAY VERBS 017278,001122: 017279,001123: 41,2355 44752 DSPABC CS TWO 017280,001124: 41,2356 02426 TC COMPTEST 017281,001125: 41,2357 50145 INDEX NOUNADD 017282,001126: 41,2360 40002 CS 2 017283,001127: 41,2361 56132 XCH BUF +2 017284,001128: 41,2362 44753 DSPAB CS ONE 017285,001129: 41,2363 02426 TC COMPTEST 017286,001130: 41,2364 50145 INDEX NOUNADD 017287,001131: 41,2365 40001 CS 1 017288,001132: 41,2366 56131 XCH BUF +1 017289,001133: 41,2367 02445 DSPA TC DECTEST 017290,001134: 41,2370 02470 TC TSTFORDP 017291,001135: 41,2371 50145 INDEX NOUNADD 017292,001136: 41,2372 40000 CS 0 017293,001137: 41,2373 56130 DSPCOM1 XCH BUF 017294,001138: 41,2374 02407 TC DSPCOM2 017295,001139: 41,2375 44753 DSPB CS ONE 017296,001140: 41,2376 02441 TC DCOMPTST 017297,001141: 41,2377 50145 INDEX NOUNADD 017298,001142: 41,2400 40001 CS 1 017299,001143: 41,2401 02373 TC DSPCOM1 017300,001144: 41,2402 44752 DSPC CS TWO 017301,001145: 41,2403 02441 TC DCOMPTST 017302,001146: 41,2404 50145 INDEX NOUNADD 017303,001147: 41,2405 40002 CS 2 017304,001148: 41,2406 02373 TC DSPCOM1 017305,001149: 41,2407 44752 DSPCOM2 CS TWO # A B C AB ABC 017306,001150: 41,2410 61000 AD VERBREG # -1 -0 +1 +2 +3 IN A 017307,001151: 41,2411 10000 CCS A # +0 +0 +1 +2 IN (garbled) CCS 017308,001152: 41,2412 02415 TC DSPCOM3 017309,001153: 41,2413 00136 TC ENTEXIT 017310,001154: 41,2414 02415 TC +1 017311,001155: 41,2415 54122 DSPCOM3 TS DISTEM # +0 +1 +2 INTO DISTEM 017312,001156: 41,2416 50000 INDEX A 017313,001157: 41,2417 34317 CAF R1D1 017314,001158: 41,2420 54776 TS DSPCOUNT 017315,001159: 41,2421 50122 INDEX DISTEM 017316,001160: 41,2422 40130 CS BUF 017317,001161: 41,2423 03410 TC DSPOCTWO 017318,001162: 41,2424 56122 XCH DISTEM 017319,001163: 41,2425 02411 TC DSPCOM2 +2 017320,001164: 017321,001165: # COMPTEST ALARMS IF COMPONENT NUMBER OF VERB (LOAD OR OCT DISPLAY) IS 017322,001166: # GREATER THAN THE HIGHEST COMPONENT NUMBER OF NOUN. 017323,001167: 017324,001168: 41,2426 54123 COMPTEST TS SFTEMP1 # VERB COMP 017325,001169: 41,2427 22002 LXCH Q 017326,001170: 41,2430 02517 COMPTST1 TC GETCOMP 017327,001171: 41,2431 04331 TC LEFT5 017328,001172: 41,2432 76250 MASK THREE # NOUN COMP 017329,001173: # Page 422 017330,001174: 41,2433 60123 AD SFTEMP1 # NOUN COMP -- VERB COMP 017331,001175: 41,2434 10000 CCS A 017332,001176: 41,2435 00001 TC L # NOUN COMP G/ VERB COMP 017333,001177: 41,2436 05675 TC CCSHOLE 017334,001178: 41,2437 02353 TC GODSPALM # NOUN COMP L/ VERB COMP 017335,001179: 41,2440 00001 NDCMPTST TC L # NOUN COMP = VERB COMP 017336,001180: 017337,001181: # DCOMPTST ALARMS IF DECIMAL ONLY BIT (BIT4 OF COMP CODE NUMBER) = 1. 017338,001182: # IF NOT, IT PERFORMS REGULAR COMPTEST. 017339,001183: 017340,001184: 41,2441 54123 DCOMPTST TS SFTEMP1 # - VERB COMP 017341,001185: 41,2442 22002 LXCH Q 017342,001186: 41,2443 02445 TC DECTEST 017343,001187: 41,2444 02430 TC COMPTST1 017344,001188: 017345,001189: 41,2445 00006 DECTEST EXTEND # ALARMS IF DEC ONLY BIT = 1 (BIT4 OF COMP 017346,001190: 41,2446 22156 QXCH MPAC +2 # CODE NUMBER). RETURNS IF NOT. 017347,001191: 41,2447 02517 TC GETCOMP 017348,001192: 41,2450 74736 MASK BIT14 017349,001193: 41,2451 10000 CCS A 017350,001194: 41,2452 02353 TC GODSPALM 017351,001195: 41,2453 00156 TC MPAC +2 017352,001196: 017353,001197: 41,2454 22002 DCTSTCYC LXCH Q # ALARMS AND RECYCLES IF DEC ONLY BIT = 1 017354,001198: 41,2455 02517 TC GETCOMP # (BIT4 OF COMP CODE NUMBER). RETURNS 017355,001199: 41,2456 74736 MASK BIT14 # IF NOT. USED BY LOAD VERBS. 017356,001200: 41,2457 10000 CCS A 017357,001201: 41,2460 04145 TC ALMCYCLE 017358,001202: 41,2461 00001 TC L 017359,001203: 017360,001204: # NOUNTEST ALARMS IF NO-LOAD BIT (BIT5 OF COMP CODE NUMBER) = 1. 017361,001205: # IF NOT, IT RETURNS. 017362,001206: 017363,001207: 41,2462 22002 NOUNTEST LXCH Q 017364,001208: 41,2463 02517 TC GETCOMP 017365,001209: 41,2464 10000 CCS A 017366,001210: 41,2465 00001 TC L 017367,001211: 41,2466 00001 TC L 017368,001212: 41,2467 02353 TC GODSPALM 017369,001213: 017370,001214: 41,2470 22002 TSTFORDP LXCH Q # TEST FOR DP. IF SO, GET MINOR PART ONLY. 017371,001215: 41,2471 30146 CA NNADTEM 017372,001216: 41,2472 64753 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED 017373,001217: 41,2473 00006 EXTEND 017374,001218: 41,2474 12506 BZF CHANDSP 017375,001219: 41,2475 50140 INDEX MIXBR 017376,001220: 41,2476 02476 TC +0 017377,001221: 41,2477 02501 TC +2 # NORMAL 017378,001222: # Page 423 017379,001223: 41,2500 00001 TC L # MIXED CASE ALREADY HANDLED IN MIXNOUN 017380,001224: 41,2501 03051 TC SFRUTNOR 017381,001225: 41,2502 02261 TC DPTEST 017382,001226: 41,2503 00001 TC L # NO DP 017383,001227: 41,2504 24145 INCR NOUNADD # DP E+1 INTO NOUNADD FOR MINOR PART. 017384,001228: 41,2505 00001 TC L 017385,001229: 017386,001230: 41,2506 31016 CHANDSP CA NOUNCADR 017387,001231: 41,2507 75004 MASK LOW9 017388,001232: 41,2510 00006 EXTEND 017389,001233: 41,2511 50000 INDEX A 017390,001234: 41,2512 00000 READ 0 017391,001235: 41,2513 40000 CS A 017392,001236: 41,2514 12373 TCF DSPCOM1 017393,001237: 017394,001238: 41,2515 00147 COMPICK ADRES NNTYPTEM 017395,001239: 41,2516 00146 ADRES NNADTEM 017396,001240: 017397,001241: 41,2517 50140 GETCOMP INDEX MIXBR # NORMAL MIXED 017398,001242: 41,2520 32514 CAF COMPICK -1 # ADRES NNTYPTEM ADRES NNADTEM 017399,001243: 41,2521 50000 INDEX A 017400,001244: 41,2522 30000 CA 0 # C(NNTYPTEM) C(NNADTEM) 017401,001245: 41,2523 74350 MASK HI5 # GET HI5 OF NNTYPTAB (NORM) OF NNADTAB (MIX) 017402,001246: 41,2524 00002 TC Q 017403,001247: 017404,001248: 41,2525 02517 DECDSP TC GETCOMP 017405,001249: 41,2526 04331 TC LEFT5 017406,001250: 41,2527 76250 MASK THREE 017407,001251: 41,2530 54117 TS DECOUNT # COMP NUMBER INTO DECOUNT 017408,001252: 41,2531 54122 DSPDCGET TS DECTEM # PICKS UP DATA 017409,001253: 41,2532 60145 AD NOUNADD # DECTEM 1COMP +0, 2COMP +1, 3COMP +2 017410,001254: 41,2533 50000 INDEX A 017411,001255: 41,2534 40000 CS 0 017412,001256: 41,2535 50122 INDEX DECTEM 017413,001257: 41,2536 57002 XCH XREG # CAN'T USE BUF SINCE DMP USES IT. 017414,001258: 41,2537 10122 CCS DECTEM 017415,001259: 41,2540 02531 TC DSPDCGET # MORE TO GET 017416,001260: 41,2541 34755 DSPDCPUT CAF ZERO # DISPLAYS DATA 017417,001261: 41,2542 54155 TS MPAC +1 # DECOUNT 1COMP +0, 2COMP +1, 3COMP +2 017418,001262: 41,2543 54156 TS MPAC +2 017419,001263: 41,2544 50117 INDEX DECOUNT 017420,001264: 41,2545 34317 CAF R1D1 017421,001265: 41,2546 54776 TS DSPCOUNT 017422,001266: 41,2547 50117 INDEX DECOUNT 017423,001267: 41,2550 41002 CS XREG 017424,001268: 41,2551 54154 TS MPAC 017425,001269: 41,2552 03072 TC SFCONUM # 2X (SF CON NUMB) IN A 017426,001270: # Page 424 017427,001271: 41,2553 54123 TS SFTEMP1 017428,001272: 41,2554 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE 017429,001273: 41,2555 32567 DCA GTSFOUTL # READING ROUTINE. 017430,001274: 41,2556 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2 017431,001275: 41,2557 50140 INDEX MIXBR 017432,001276: 41,2560 02560 TC +0 017433,001277: 41,2561 02564 TC DSPSFNOR 017434,001278: 41,2562 03057 TC SFRUTMIX 017435,001279: 41,2563 02577 TC DECDSP3 017436,001280: 017437,001281: 41,2564 03051 DSPSFNOR TC SFRUTNOR 017438,001282: 41,2565 02577 TC DECDSP3 017439,001283: 017440,001284: 41,2566 0776 EBANK= DSPCOUNT 017441,001285: 41,2566 02141 64101 GTSFOUTL 2CADR GTSFOUT 017442,001286: 017443,001287: 41,2570 04616 DSPDCEND TC BANKCALL # ALL SFOUT ROUTINES END HERE 017444,001288: 41,2571 61262 CADR DSPDECWD 017445,001289: 41,2572 10117 CCS DECOUNT 017446,001290: 41,2573 02575 TC +2 017447,001291: 41,2574 00136 TC ENTEXIT 017448,001292: 41,2575 54117 TS DECOUNT 017449,001293: 41,2576 02541 TC DSPDCPUT # MORE TO DISPLAY 017450,001294: 017451,001295: 41,2577 50000 DECDSP3 INDEX A 017452,001296: 41,2600 32602 CAF SFOUTABR 017453,001297: 41,2601 04640 TC BANKJUMP 017454,001298: 017455,001299: 41,2602 61452 SFOUTABR CADR PREDSPAL # ALARM IF DEC DISP WITH OCTAL ONLY NOUN 017456,001300: 41,2603 62570 CADR DSPDCEND 017457,001301: 41,2604 60615 CADR DEGOUTSF 017458,001302: 41,2605 60733 CADR ARTOUTSF 017459,001303: 41,2606 60744 CADR DP1OUTSF 017460,001304: 41,2607 60751 CADR DP2OUTSF 017461,001305: 41,2610 60635 CADR LRPOSOUT 017462,001306: 41,2611 60753 CADR DP3OUTSF 017463,001307: 41,2612 65230 CADR HMSOUT 017464,001308: 41,2613 65303 CADR M/SOUT 017465,001309: 41,2614 60751 CADR DP2OUTSF 017466,001310: 41,2615 60740 CADR AROUT1SF 017467,001311: 41,2616 60766 CADR 2INTOUT 017468,001312: 41,2617 60623 CADR 360-CDUO 017469,001313: 41,2620 60645 CADR RRANGOUT 017470,001314: 41,2621 60662 CADR RRDOTOUT 017471,001315: 41,2622 ENDRTOUT EQUALS 017472,001316: 017473,001317: # Page 425 017474,001318: # THE FOLLOWING IS ATYPICAL SF ROUTINE. IT USES MPAC. LEAVES RESULTS 017475,001319: # IN MPAC, MPAC+1. ENDS WITH TC DSPDCEND 017476,001320: 017477,001321: 40,2615 SETLOC BLANKCON +1 017478,001322: 017479,001323: 40,2615 COUNT* $$/PIN 017480,001324: # DEGOUTSF SCALES BY .18 THE LOW 14 BITS OF ANGLE, ADDING .18 FOR 017481,001325: # NUMBERS IN THE NEGATIVE (AGC) RANGE. 017482,001326: 017483,001327: 40,2615 34755 DEGOUTSF CAF ZERO 017484,001328: 40,2616 54156 TS MPAC +2 # SET INDEX FOR FULL SCALE. 017485,001329: 40,2617 02706 TC FIXRANGE 017486,001330: 40,2620 02622 TC +2 # NO AUGMENT NEEDED (SFTEMP1 AND 2 ARE 0) 017487,001331: 40,2621 02701 TC SETAUG # SET AUGMENTER ACCORDING TO C(MPAC +2) 017488,001332: 40,2622 02717 TC DEGCOM 017489,001333: 017490,001334: # 360-CDUD COMPUTES 360-CDU ANGLE IN MPAC, STORES RESULT IN MPAC AND 017491,001335: # GOES TO DEGOUTSF. 017492,001336: 017493,001337: 40,2623 02625 360-CDUO TC 360-CDU 017494,001338: 40,2624 02615 TC DEGOUTSF 017495,001339: 017496,001340: 40,2625 30154 360-CDU CA MPAC 017497,001341: 40,2626 74733 MASK POSMAX # IF ANGLE IS 0 OR 180 DEGREES, DO NOTHING 017498,001342: 40,2627 00006 EXTEND 017499,001343: 40,2630 12634 BZF 360-CDUE 017500,001344: 40,2631 40154 CS MPAC # COMPUTE 360 DEGREES MINUS ANGLE 017501,001345: 40,2632 64753 AD ONE 017502,001346: 40,2633 54154 TS MPAC 017503,001347: 40,2634 00002 360-CDUE TC Q 017504,001348: 017505,001349: # LRPOSOUT DISPLAYS +0,1,2, OR 3 (WHOLE) FOR CHANNEL 33,BITS 7-6 = 11,10, 017506,001350: # RESPECTIVELY 017507,001351: 017508,001352: 40,2635 00006 LRPOSOUT EXTEND 017509,001353: 40,2636 00033 READ CHAN33 017510,001354: 40,2637 00006 EXTEND 017511,001355: 40,2640 74742 MP BIT10 # BITS 7-6 TO BITS 2-1 017512,001356: 40,2641 40000 COM 017513,001357: 40,2642 76250 MASK THREE 017514,001358: 40,2643 54154 TS MPAC 017515,001359: 40,2644 02733 TC ARTOUTSF # DISPLAY AS WHOLE 017516,001360: 017517,001361: # RRANGOUT AND RRDOTOUT CONVERT RR RANGE AND RANGE RATE FROM SP 15 BIT 017518,001362: # MAGNITUDE TO DP AND THEN SCALE FOR DISPLAY. 017519,001363: 017520,001364: 40,2645 02671 RRANGOUT TC RRSPTODP # CONVERT TO DP. 017521,001365: 40,2646 40110 CS RADMODES # BIT 3 OF FLAG12 = HI SCALE 017522,001366: 40,2647 74751 MASK BIT3 017523,001367: # Page 426 017524,001368: 40,2650 10000 CCS A 017525,001369: 40,2651 02657 TC SCALELO # DATA IS IN LO SCALE. 017526,001370: 40,2652 52155 DXCH MPAC # DATA IS IN HI SCALE, MP BY 8. 017527,001371: 40,2653 20001 DAS A 017528,001372: 40,2654 20001 DAS A 017529,001373: 40,2655 20001 DAS A 017530,001374: 40,2656 52155 DXCH MPAC 017531,001375: 40,2657 07106 SCALELO TC DMP # SCALE FOR DISPLAY 017532,001376: 40,2660 00123 ADRES SFTEMP1 017533,001377: 40,2661 02745 TC L14/OUT # AND GO TO ARITHDP1. 017534,001378: 017535,001379: 40,2662 02671 RRDOTOUT TC RRSPTODP # CONVERT TO DP. 017536,001380: 40,2663 00006 EXTEND 017537,001381: 40,2664 42670 DCS BIASRDOT # SUBTRACT BIAS OF 17000 COUNTS. 017538,001382: 40,2665 20155 DAS MPAC 017539,001383: 40,2666 02657 TC SCALELO # SCALE FOR DISPLAY 017540,001384: 40,2667 00001 01150 BIASRDOT 2DEC 17000 B-28 017541,001385: 017542,001386: 40,2671 34733 RRSPTODP CAF POSMAX # CONVERT SP 15 BIT MAG TO DP. 017543,001387: 40,2672 70154 MASK MPAC 017544,001388: 40,2673 54155 TS MPAC +1 017545,001389: 40,2674 30154 CA MPAC 017546,001390: 40,2675 60000 DOUBLE 017547,001391: 40,2676 74753 MASK BIT1 017548,001392: 40,2677 54154 TS MPAC 017549,001393: 40,2700 00002 TC Q 017550,001394: 017551,001395: 40,2701 00006 SETAUG EXTEND # LOADS SFTEMP1 AND SFTEMP2 WITH THE 017552,001396: 40,2702 50156 INDEX MPAC +2 # DP AUGMENTER CONSTANT 017553,001397: 40,2703 32730 DCA DEGTAB 017554,001398: 40,2704 52124 DXCH SFTEMP1 017555,001399: 40,2705 00002 TC Q 017556,001400: 017557,001401: 40,2706 10154 FIXRANGE CCS MPAC # IF MPAC IS + RETURN TO L+1 017558,001402: 40,2707 00002 TC Q # IF MPAC IS - RETURN TO L+2 AFTER 017559,001403: 40,2710 00002 TC Q # MASKING OUT THE SIGN BIT 017560,001404: 40,2711 12712 TCF +1 017561,001405: 40,2712 44735 CS BIT15 017562,001406: 40,2713 70154 MASK MPAC 017563,001407: 40,2714 54154 TS MPAC 017564,001408: 40,2715 50002 INDEX Q 017565,001409: 40,2716 00001 TC 1 017566,001410: 017567,001411: 40,2717 00006 DEGCOM EXTEND # LOADS MULTIPLIER, DOES SHORTMP, AND 017568,001412: 40,2720 50156 INDEX MPAC +2 # ADDS AUTMENTER. 017569,001413: 40,2721 32730 DCA DEGTAB 017570,001414: 40,2722 52155 DXCH MPAC # ADJUSTED ANGLE IN A 017571,001415: 40,2723 07312 TC SHORTMP 017572,001416: 40,2724 52124 DXCH SFTEMP1 017573,001417: # Page 427 017574,001418: 40,2725 20155 DAS MPAC 017575,001419: 40,2726 02736 TC SCOUTEND 017576,001420: 017577,001421: 40,2727 05605 DEGTAB OCT 05605 # HI PART OF .18 017578,001422: 40,2730 03656 OCT 03656 # LOW PART OF .18 017579,001423: 40,2731 16314 OCT 16314 # HI PART OF .45 017580,001424: 40,2732 31463 OCT 31463 # LO PART OF .45 017581,001425: 017582,001426: 40,2733 52124 ARTOUTSF DXCH SFTEMP1 # ASSUMES POINT AT LEFT OF DP SFCON 017583,001427: 40,2734 52155 DXCH MPAC 017584,001428: 40,2735 04415 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 017585,001429: 40,2736 04635 SCOUTEND TC POSTJUMP 017586,001430: 40,2737 62570 CADR DSPDCEND 017587,001431: 017588,001432: 40,2740 52124 AROUT1SF DXCH SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS OF 017589,001433: 40,2741 52155 DXCH MPAC # DP SFCON. SHIFTS RESULTS LEFT 14, BY 017590,001434: 40,2742 04415 TC PRSHRTMP # TAKING RESULTS FROM MPAC+1, MPAC+2. 017591,001435: 40,2743 02745 TC L14/OUT 017592,001436: 017593,001437: 40,2744 02757 DP1OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR 017594,001438: 40,2745 56156 L14/OUT XCH MPAC +2 # IN SFTEMP1, SFTEMP2. THEN SCALE RESULT 017595,001439: 40,2746 56155 XCH MPAC +1 # BY B14 017596,001440: 40,2747 54154 TS MPAC 017597,001441: 40,2750 02736 TC SCOUTEND 017598,001442: 017599,001443: 40,2751 02757 DP2OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR 017600,001444: 40,2752 02736 TC SCOUTEND 017601,001445: 017602,001446: 40,2753 02757 DP3OUTSF TC DPOUT # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH 017603,001447: 40,2754 36245 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1 017604,001448: 40,2755 03207 TC TPLEFTN # SHIFT LEFT 7. 017605,001449: 40,2756 02736 TC SCOUTEND 017606,001450: 017607,001451: 40,2757 0162 MPAC+6 = MPAC +6 # USE MPAC +6 INSTEAD OF OVFIND 017608,001452: 017609,001453: 40,2757 56002 DPOUT XCH Q 017610,001454: 40,2760 54162 TS MPAC+6 017611,001455: 40,2761 03003 TC READLO # GET FRESH DATA FOR BOTH HI AND LO. 017612,001456: 40,2762 07262 TC TPAGREE # MAKE DP DATA AGREE 017613,001457: 40,2763 07106 TC DMP 017614,001458: 40,2764 00123 ADRES SFTEMP1 017615,001459: 40,2765 00162 TC MPAC+6 017616,001460: 017617,001461: # THE FOLLOWING ROUTINE DISPLAYS TWO CONTIGUOUS SP POSITIVE INTEGERS 017618,001462: # AS TWO POSITIVE DECIMAL INTEGERS IN RXD1-RXD2 AND RXD4-RXD5 (RXD3 IS 017619,001463: # BLANKED). THE INTEGER IN THE LOWER NUMBERED ADDRESS IS DISPLAYED IN 017620,001464: # Page 428 017621,001465: # RXD1-RXD2. 017622,001466: 017623,001467: 40,2766 02536 2INTOUT TC 5BLANK # TO BLANK RXD3 017624,001468: 40,2767 02413 TC +ON # TURN ON + SIGN 017625,001469: 40,2770 30154 CA MPAC 017626,001470: 40,2771 03342 TC DSPDECVN # DISPLAY 1ST INTEGER (LIKE VERB AND NOUN) 017627,001471: 40,2772 46250 CS THREE 017628,001472: 40,2773 50117 INDEX DECOUNT 017629,001473: 40,2774 64317 AD R1D1 # RXD4 017630,001474: 40,2775 54776 TS DSPCOUNT 017631,001475: 40,2776 03003 TC READLO # GET 2ND INTEGER 017632,001476: 40,2777 30155 CA MPAC +1 017633,001477: 40,3000 03342 TC DSPDECVN # DISPLAY 2ND INTEGER (LIKE VERB AND NOUN) 017634,001478: 40,3001 04635 TC POSTJUMP 017635,001479: 40,3002 62572 CADR DSPDCEND +2 017636,001480: 017637,001481: # READLO PICKS UP FRESHDATA FOR BOTH HI AND LO AND LEAVES IT IN 017638,001482: # MPAC, MPAC+1. THIS IS NEEDED FOR TIME DISPLAY. IT ZEROES MPAC+2, BUT 017639,001483: # DOES NOT FORCE TPAGREE. 017640,001484: 017641,001485: 40,3003 56002 READLO XCH Q 017642,001486: 40,3004 54144 TS TEM4 017643,001487: 40,3005 50140 INDEX MIXBR 017644,001488: 40,3006 03006 TC +0 017645,001489: 40,3007 03023 TC RDLONOR 017646,001490: 40,3010 50117 INDEX DECOUNT 017647,001491: 40,3011 30150 CA IDAD1TEM # GET IDADDTAB ENTRY FOR COMP K OF NOUN. 017648,001492: 40,3012 74356 MASK LOW11 # E SUBK 017649,001493: 40,3013 04313 TC SETEBANK # SET EB, LEAVE EADRES IN A 017650,001494: 40,3014 00006 READLO1 EXTEND # MIXED NORMAL 017651,001495: 40,3015 50000 INDEX A # C(ESUBK) C(E) 017652,001496: 40,3016 30001 DCA 0 # C(E SUBK)+1) C(E+1) 017653,001497: 40,3017 52155 DXCH MPAC 017654,001498: 40,3020 34755 CAF ZERO 017655,001499: 40,3021 54156 TS MPAC +2 017656,001500: 40,3022 00144 TC TEM4 017657,001501: 017658,001502: 40,3023 30145 RDLONOR CA NOUNADD # E 017659,001503: 40,3024 03014 ENDRDLO TC READLO1 017660,001504: 017661,001505: 42,3230 BANK 42 017662,001506: 42,2000 SETLOC PINBALL3 017663,001507: 42,2000 BANK 017664,001508: 017665,001509: 42,3230 COUNT* $$/PIN 017666,001510: 42,3230 04616 HMSOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC. 017667,001511: 42,3231 61003 CADR READLO # MPAC+1. 017668,001512: 42,3232 07262 TC TPAGREE # MAKE DP DATA AGREE. 017669,001513: # Page 429 017670,001514: 42,3233 03417 TC SEPSECNR # LEAVE FRACT SEC/60 IN MPAC, MPAC+1. LEAVE 017671,001515: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE 017672,001516: 42,3234 07106 TC DMP # USE ONLY FRACT SEC/60 MOD 60 017673,001517: 42,3235 03271 ADRES SECON2 # MULT BY .06 017674,001518: 42,3236 34321 CAF R3D1 # GIVES CENTI-SEC/10EXP5 MOD 60 017675,001519: 42,3237 54776 TS DSPCOUNT 017676,001520: 42,3240 04616 TC BANKCALL # DISPLAY SEC MOD 60 017677,001521: 42,3241 61262 CADR DSPDECWD 017678,001522: 42,3242 03435 TC SEPMIN # REMOVE REST OF SECONDS 017679,001523: 42,3243 33273 CAF MINCON2 # LEAVE FRACT MIN/60 IN MPAC+1. LEAVE 017680,001524: 42,3244 56154 XCH MPAC # WHOLE HOURS IN MPAC. 017681,001525: 42,3245 55006 TS HITEMOUT # SAVE WHOLE HOURS. 017682,001526: 42,3246 33274 CAF MINCON2 +1 017683,001527: 42,3247 56155 XCH MPAC +1 # USE ONLY FRACT MIN/60 MOD 60 017684,001528: 42,3250 04415 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 017685,001529: # MULT BY .0006 017686,001530: 42,3251 34320 CAF R2D1 # GIVE MIN/10EXP5 MOD 60 017687,001531: 42,3252 54776 TS DSPCOUNT 017688,001532: 42,3253 04616 TC BANKCALL # DISPLAY MIN MOD 60 017689,001533: 42,3254 61262 CADR DSPDECWD 017690,001534: 42,3255 00006 EXTEND # MINUTES, SECONDS HAVE BEEN REMOVED 017691,001535: 42,3256 33300 DCA HRCON1 017692,001536: 42,3257 52155 DXCH MPAC 017693,001537: 42,3260 31006 CA HITEMOUT # USE WHOLE HOURS 017694,001538: 42,3261 04415 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 017695,001539: # MULT BY .16384 017696,001540: 42,3262 34317 CAF R1D1 # GIVES HOURS/10EXP5 017697,001541: 42,3263 54776 TS DSPCOUNT 017698,001542: 42,3264 04616 TC BANKCALL # USE REGULAR DSPDECWD WITH ROUND OFF. 017699,001543: 42,3265 61262 CADR DSPDECWD 017700,001544: 42,3266 00136 TC ENTEXIT 017701,001545: 017702,001546: 42,3267 25660 31742 SECON1 2DEC* 1.666666666 E-4 B12* # 2EXP12/6000 017703,001547: 42,3271 01727 SECON2 OCT 01727 # .06 FOR SECONDS DISPLAY 017704,001548: 42,3272 01217 OCT 01217 017705,001549: 42,3273 00011 MINCON2 OCT 00011 # .0006 FOR MINUTES DISPLAY 017706,001550: 42,3274 32445 OCT 32445 017707,001551: 42,3275 02104 MINCON1 OCT 02104 # .06..66 UPPED BY 2EXP-2B 017708,001552: 42,3276 10422 OCT 10422 017709,001553: 42,3277 05174 13261 HRCON1 2DEC .16384 017710,001554: 42,3301 00000 OCT 00000 017711,001555: 42,3302 00062 RNDCON OCT 00062 # .5 SEC 017712,001556: 017713,001557: 42,3303 04616 M/SOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC. 017714,001558: 42,3304 61003 CADR READLO # MPAC+1. 017715,001559: 42,3305 07262 TC TPAGREE # MAKE DP DATA AGREE 017716,001560: 42,3306 10154 CCS MPAC # IF MAG OF (MPAC, MPAC+1) G/ 59 M 59 S. 017717,001561: # Page 430 017718,001562: 42,3307 03311 TC +2 # DISPLAY 59B59, WITH PROPER SIGN. 017719,001563: 42,3310 03342 TC M/SNORM # MPAC = +0. L/ 59M58.5S 017720,001564: 42,3311 63377 AD M/SCON1 # - HI PART OF (59M58.5) +1 FOR CCS 017721,001565: 42,3312 10000 CCS A # MAG OF MPAC - HI PART OF (59M58.5S) 017722,001566: 42,3313 03326 TC M/SLIMIT # G/ 59M58.5S 017723,001567: 42,3314 03342 TC M/SNORM # ORIGINAL MPAC = -0. L/59M58.5S 017724,001568: 42,3315 03342 TC M/SNORM # L/ 59M58.5S 017725,001569: 42,3316 10155 CCS MPAC +1 # MAG OF MPAC = HI PART OF 59M58.5S 017726,001570: 42,3317 03321 TC +2 017727,001571: 42,3320 03342 TC M/SNORM # MPAC+1 = +0. L/ 59M58.5S 017728,001572: 42,3321 63400 AD M/SCON2 # - LO PART OF (59M58.5S) +1 FOR CCS 017729,001573: 42,3322 10000 CCS A # MAG OF MPAC+1 - LO PART OF (59M58.5S) 017730,001574: 42,3323 03326 TC M/SLIMIT # G/ 59M58.5S 017731,001575: 42,3324 03342 TC M/SNORM # ORIGINAL MPAC+1 = -0. L/ 49M58.5S 017732,001576: 42,3325 03342 TC M/SNORM # L/ 59M58.5S 017733,001577: 42,3326 10154 M/SLIMIT CCS MPAC # = 59M58.5S LIMIT 017734,001578: 42,3327 33402 CAF M/SCON3 # MPAC CANNOT BE +/- 0 AT THIS POINT. 017735,001579: 42,3330 03337 TC +LIMIT # FORCE MPAC, MPAC+1 TO +/- 59M58.5S 017736,001580: 42,3331 43402 CS M/SCON3 017737,001581: 42,3332 54154 TS MPAC # WILL DISPLAY 59M59S IN DSPDECNR 017738,001582: 42,3333 43403 CS M/SCON3 +1 017739,001583: 42,3334 54155 LIMITCOM TS MPAC +1 017740,001584: 42,3335 33401 CAF NORMADR # SET RETURN TO M/SNORM+1. 017741,001585: 42,3336 03420 TC SEPSECNR +1 017742,001586: 42,3337 54154 +LIMIT TS MPAC 017743,001587: 42,3340 33403 CAF M/SCON3 +1 017744,001588: 42,3341 03334 TC LIMITCOM 017745,001589: 42,3342 03404 M/SNORM TC SEPSEC # LEAVE FRACT SEC/60 IN MPAC,MPAC+1. LEAVE 017746,001590: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE 017747,001591: 42,3343 33375 CAF HISECON # USE ONLY FRACT SEC/60 MOD 60 017748,001592: 42,3344 07312 TC SHORTMP # MULT BY .6 + 2EXP-14 017749,001593: 42,3345 46250 CS THREE # GIVES SEC/100 MOD 60 017750,001594: 42,3346 26776 ADS DSPCOUNT # DSPCOUNT ALREADY SET TO RXD1 017751,001595: 42,3347 04616 TC BANKCALL # DISPLAY SEC MOD 60 IN D4D5. 017752,001596: 42,3350 61322 CADR DSPDC2NR 017753,001597: 42,3351 34755 CAF ZERO 017754,001598: 42,3352 54124 TS CODE 017755,001599: 42,3353 44752 CS TWO 017756,001600: 42,3354 50117 INDEX DECOUNT 017757,001601: 42,3355 64317 AD R1D1 # RXD3 017758,001602: 42,3356 54143 TS COUNT 017759,001603: 42,3357 04616 TC BANKCALL # BLANK MIDDLE CHAR 017760,001604: 42,3360 61356 CADR DSPIN 017761,001605: 42,3361 03435 TC SEPMIN # REMOVE REST OF SECONDS 017762,001606: 42,3362 56155 XCH MPAC +1 # LEAVE FRACT MIN/60 IN MPAC+1 017763,001607: 42,3363 00006 EXTEND # USE ONLY FRACT MIN/60 MOD 60 017764,001608: 42,3364 73376 MP HIMINCON # MULT BY .6 + 2EXP-7 017765,001609: 42,3365 52155 DXCH MPAC # GIVES MIN/100 MOD 60 017766,001610: 42,3366 50117 INDEX DECOUNT 017767,001611: 42,3367 34317 CAF R1D1 # RXD1 017768,001612: # Page 431 017769,001613: 42,3370 54776 TS DSPCOUNT 017770,001614: 42,3371 04616 TC BANKCALL # DISPLAY MIN MOD 60 IN D1D2. 017771,001615: 42,3372 61322 CADR DSPDC2NR 017772,001616: 42,3373 04635 TC POSTJUMP 017773,001617: 42,3374 62572 CADR DSPDCEND +2 017774,001618: 017775,001619: 42,3375 23147 HISECON OCT 23147 # .6 + 2EXP-14 017776,001620: 42,3376 23346 HIMINCON OCT 23346 # .6 + 2EXP-7 017777,001621: 017778,001622: 42,3377 77753 M/SCON1 OCT 77753 # - HI PART OF (59M58.5S) 017779,001623: 42,3400 41126 M/SCON2 OCT 41126 # - LO PART OF (59M58.5S) 017780,001624: 42,3401 03343 NORMADR ADRES M/SNORM +1 017781,001625: 42,3402 00025 M/SCON3 OCT 00025 # 59M 59.5S 017782,001626: 42,3403 37016 OCT 37016 017783,001627: 017784,001628: 42,3404 10155 SEPSEC CCS MPAC +1 # IF +, ROUND BY ADDING .5 SEC 017785,001629: 42,3405 13414 TCF POSEC # IF -, ROUND BY SUBTRACING .5 SEC 017786,001630: 42,3406 13414 TCF POSEC # FINDS TIME IN MPAC, MPAC+1 017787,001631: 42,3407 13410 TCF +1 # ROUNDS OFF BY +/- .5 SEC 017788,001632: 42,3410 00006 EXTEND # LEAVES WHOLE MIN IN BIT13 OF 017789,001633: 42,3411 43302 DCS RNDCON -1 # LOTEMOUT AND ABOVE. 017790,001634: 42,3412 20155 SEPSEC1 DAS MPAC # LEAVES FRACT SEC/60 IN MPAC, MPAC+1. 017791,001635: 42,3413 13417 TCF SEPSECNR 017792,001636: 42,3414 00006 POSEC EXTEND 017793,001637: 42,3415 33302 DCA RNDCON -1 017794,001638: 42,3416 13412 TCF SEPSEC1 017795,001639: 42,3417 56002 SEPSECNR XCH Q # THIS ENTRY AVOIDS ROUNDING BY .5 SEC 017796,001640: 42,3420 54144 TS SEPSCRET 017797,001641: 42,3421 07106 TC DMP # MULT BY 2EXP12/6000 017798,001642: 42,3422 03267 ADRES SECON1 # GIVES FRACT SEC/60 IN BIT12 OF MPAC+1 017799,001643: 42,3423 00006 EXTEND # AND BELOW. 017800,001644: 42,3424 30155 DCA MPAC # SAVE MINUTES AND HOURS 017801,001645: 42,3425 53007 DXCH HITEMOUT 017802,001646: 42,3426 04404 TC TPSL1 017803,001647: 42,3427 04404 TC TPSL1 # GIVES FRACT SEC/60 IN MPAC+1, MPAC+2. 017804,001648: 42,3430 34755 CAF ZERO 017805,001649: 42,3431 56156 XCH MPAC +2 # LEAVE FRACT SEC/60 IN MPAC, MPAC+1. 017806,001650: 42,3432 56155 XCH MPAC +1 017807,001651: 42,3433 56154 XCH MPAC 017808,001652: 42,3434 00144 TC SEPSCRET 017809,001653: 017810,001654: 42,3435 56002 SEPMIN XCH Q # FIND WHOLE MINUTES IN BIT13 017811,001655: 42,3436 54144 TS SEPMNRET # OF LOTEMOUT AND ABOVE. 017812,001656: 42,3437 31007 CA LOTEMOUT # REMOVES REST OF SECONDS. 017813,001657: 42,3440 00006 EXTEND # LEAVES FRACT MIN/60 IN MPAC+1. 017814,001658: 42,3441 74751 MP BIT3 # LEAVES WHOLE HOURS IN MPAC. 017815,001659: 42,3442 00006 EXTEND # SR 12, THROW AWAY LP. 017816,001660: 42,3443 74737 MP BIT13 # SR 2, TAKE FROM LP. = SL 12. 017817,001661: # Page 432 017818,001662: 42,3444 22155 LXCH MPAC +1 # THIS FORCES BITS 12-1 TO 0 IF +. 017819,001663: # FORCES BITS 12-1 TO 1 IF -. 017820,001664: 42,3445 31006 CA HITEMOUT 017821,001665: 42,3446 54154 TS MPAC 017822,001666: 42,3447 07106 TC DMP # MULT BY 1/15 017823,001667: 42,3450 03275 ADRES MINCON1 # GIVES FRACT MIN/60 IN MPAC+1. 017824,001668: 42,3451 00144 ENDSPMIN TC SEPMNRET # GIVES WHOLE HOURS IN MPAC. 017825,001669: 017826,001670: # THIS IS A SPECIAL PURPOS VERB FOR DISPLAYING A DOUBLE PRECISION AGC 017827,001671: # WORD AS 10 DECIMAL DIGITS ON THE AGC DISPLAY PANEL. IT CAN BE USED WITH 017828,001672: # ANY NOUN, EXCEPT MIXED NOUNS. IT DISPLAYS THE CONTENTS 017829,001673: # OF THE REGISTER NOUNADD IS POINTING TO. IF USED WITH NOUNS WHICH ARE 017830,001674: # INHERENTLY NOT DP SUCH AS THE CDU COUNTERS THE DISPLAY WILL BE GARBAGE. 017831,001675: # DISPLAY IS IN R1 AND R2 ONLY WITH THE SIGN IN R1. 017832,001676: 017833,001677: 40,3025 SETLOC ENDRDLO +1 017834,001678: 017835,001679: 40,3025 COUNT* $$/PIN 017836,001680: 40,3025 50140 DSPDPDEC INDEX MIXBR 017837,001681: 40,3026 03026 TC +0 017838,001682: 40,3027 03031 TC +2 # NORMAL NOUN 017839,001683: 40,3030 03454 TC DSPALARM 017840,001684: 40,3031 00006 EXTEND 017841,001685: 40,3032 50145 INDEX NOUNADD 017842,001686: 40,3033 30001 DCA 0 017843,001687: 40,3034 52155 DXCH MPAC 017844,001688: 40,3035 34317 CAF R1D1 017845,001689: 40,3036 54776 TS DSPCOUNT 017846,001690: 40,3037 34755 CAF ZERO 017847,001691: 40,3040 54156 TS MPAC +2 017848,001692: 40,3041 07262 TC TPAGREE 017849,001693: 40,3042 03327 TC DSP2DEC 017850,001694: 40,3043 00136 ENDDPDEC TC ENTEXIT 017851,001695: 017852,001696: # Page 433 017853,001697: # LOAD VERBS IF ALARM CONDITION IS DETECTED DURING EXECUTE, 017854,001698: # CHECK FAIL LIGHT IS TURNED ON AND ENDOFJOB. IF ALARM CONDITION IS 017855,001699: # DETECTED DURING ENTER OF DATA, CHECK FAIL IS TURNED ON AND IT RECYCLES 017856,001700: # TO EXECUTE OF ORIGINAL LOAD VERB. RECYCLE CAUSED BY 1) DECIMAL MACHINE 017857,001701: # CADR 2) MIXTURE OF OCTAL/DECIMAL DATA 3) OCTAL DATA INTO DECIMAL 017858,001702: # ONLY NOUN 4) DEC DATA INTO OCT ONLY NOUN 5) DATA TOO LARGE FOR SCALE 017859,001703: # 6) FEWER THAN 3 DATA WORDS LOADED FOR HRS, MIN, SEC NOUN. 8) (2)-(6) ALARM 017860,001704: # AND RECYCLE OCCUR AT FINAL ENTER OF SEET. (1) ALARM AND RECYCLE OCCUR AT 017861,001705: # ENTER OF CADR. 017862,001706: 017863,001707: 41,2622 SETLOC ENDRTOUT 017864,001708: 017865,001709: 41,2622 COUNT* $$/PIN 017866,001710: 41,2622 44752 ABCLOAD CS TWO 017867,001711: 41,2623 02426 TC COMPTEST 017868,001712: 41,2624 02462 TC NOUNTEST # TEST IF NOUN CAN BE LOADED. 017869,001713: 41,2625 33031 CAF VBSP1LD 017870,001714: 41,2626 02341 TC UPDATVB -1 017871,001715: 41,2627 02305 TC REQDATX 017872,001716: 41,2630 33032 CAF VBSP2LD 017873,001717: 41,2631 02341 TC UPDATVB -1 017874,001718: 41,2632 02307 TC REQDATY 017875,001719: 41,2633 33033 CAF VBSP3LD 017876,001720: 41,2634 02341 TC UPDATVB -1 017877,001721: 41,2635 02311 TC REQDATZ 017878,001722: 017879,001723: 41,2636 46245 PUTXYZ CS SIX # TEST THAT THE 3 DATA WORDS LOADED ARE 017880,001724: 41,2637 03034 TC ALLDC/OC # ALL DEC OR ALL OCT. 017881,001725: 41,2640 00006 EXTEND 017882,001726: 41,2641 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 017883,001727: 41,2642 52006 DXCH Z # ROUTINE. 017884,001728: 41,2643 34755 CAF ZERO # X COMP 017885,001729: 41,2644 03120 TC PUTCOM 017886,001730: 41,2645 50145 INDEX NOUNADD 017887,001731: 41,2646 54000 TS 0 017888,001732: 41,2647 34753 CAF ONE # Y COMP 017889,001733: 41,2650 03120 TC PUTCOM 017890,001734: 41,2651 50145 INDEX NOUNADD 017891,001735: 41,2652 54001 TS 1 017892,001736: 41,2653 34752 CAF TWO # Z COMP 017893,001737: 41,2654 03120 TC PUTCOM 017894,001738: 41,2655 50145 INDEX NOUNADD 017895,001739: 41,2656 54002 TS 2 017896,001740: 41,2657 44757 CS SEVEN # IF NOUN 7 HAS JUST BEEN LOADED, SET 017897,001741: 41,2660 61001 AD NOUNREG # FLAG BITS AS SPECIFIED. 017898,001742: 41,2661 00006 EXTEND 017899,001743: 41,2662 12664 BZF +2 017900,001744: 41,2663 03020 TC LOADLV 017901,001745: # Page 434 017902,001746: 41,2664 00004 INHINT 017903,001747: 41,2665 44763 CS OCT30 # IS IT A CHANNEL (30 OR UNDER) 017904,001748: 41,2666 61002 AD XREG 017905,001749: 41,2667 00006 EXTEND 017906,001750: 41,2670 62700 BZMF CHANBITS # YES 017907,001751: 017908,001752: 41,2671 31002 CA XREG # ECADR OF ERASABLE CELL 017909,001753: 41,2672 04304 TC SETNCADR +1 # SET EBANK, NOUNADD 017910,001754: 017911,001755: 41,2673 50145 INDEX NOUNADD 017912,001756: 41,2674 30000 CA 0 017913,001757: 41,2675 54001 TS L 017914,001758: 41,2676 34753 CAF ONE 017915,001759: 41,2677 55002 TS XREG # MAKE IT LOOK LIKE A CHANNEL FOR A WHILE 017916,001760: 017917,001761: 41,2700 64361 CHANBITS AD OCT21 017918,001762: 41,2701 00006 EXTEND 017919,001763: 41,2702 12724 BZF BITSOFF2 # DON'T TOUCH CHAN7 (SUPERBANK) 017920,001764: 017921,001765: 41,2703 31004 CA ZREG 017922,001766: 41,2704 00006 EXTEND 017923,001767: 41,2705 62713 BZMF BITSOFF # R3 IS ZERO FOR OFF, NONZERO FOR ON 017924,001768: 017925,001769: 41,2706 31003 CA YREG 017926,001770: 41,2707 00006 EXTEND 017927,001771: 41,2710 51002 INDEX XREG 017928,001772: 41,2711 05000 WOR 0 017929,001773: 41,2712 12717 TCF BITSOFF1 017930,001774: 017931,001775: 41,2713 41003 BITSOFF CS YREG 017932,001776: 41,2714 00006 EXTEND 017933,001777: 41,2715 51002 INDEX XREG 017934,001778: 41,2716 03000 WAND 0 017935,001779: 017936,001780: 41,2717 11002 BITSOFF1 CCS XREG # WAS IT REALLY A CHANNEL 017937,001781: 41,2720 10000 CCS A 017938,001782: 41,2721 12724 TCF BITSOFF2 # YES 017939,001783: 017940,001784: 41,2722 50145 INDEX NOUNADD 017941,001785: 41,2723 22000 LXCH 0 017942,001786: 017943,001787: 41,2724 00003 BITSOFF2 RELINT 017944,001788: 41,2725 03020 TC LOADLV 017945,001789: 017946,001790: 41,2726 4763 OCT30 = BITS4&5 017947,001791: 41,2726 44753 ABLOAD CS ONE 017948,001792: 41,2727 02426 TC COMPTEST 017949,001793: 41,2730 02462 TC NOUNTEST # TEST IF NOUN CAN BE LOADED 017950,001794: 41,2731 33031 CAF VBSP1LD 017951,001795: 41,2732 02341 TC UPDATVB -1 017952,001796: # Page 435 017953,001797: 41,2733 02305 TC REQDATX 017954,001798: 41,2734 33032 CAF VBSP2LD 017955,001799: 41,2735 02341 TC UPDATVB -1 017956,001800: 41,2736 02307 TC REQDATY 017957,001801: 41,2737 44756 PUTXY CS FIVE # TEST THAT THE 2 DATA WORDS LOADED ARE 017958,001802: 41,2740 03034 TC ALLDC/OC # ALL DEC OR ALL OCT. 017959,001803: 41,2741 00006 EXTEND 017960,001804: 41,2742 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 017961,001805: 41,2743 52006 DXCH Z # ROUTINE. 017962,001806: 41,2744 34755 CAF ZERO # X COMP 017963,001807: 41,2745 03120 TC PUTCOM 017964,001808: 41,2746 50145 INDEX NOUNADD 017965,001809: 41,2747 54000 TS 0 017966,001810: 41,2750 34753 CAF ONE # Y COMP 017967,001811: 41,2751 03120 TC PUTCOM 017968,001812: 41,2752 50145 INDEX NOUNADD 017969,001813: 41,2753 54001 TS 1 017970,001814: 41,2754 03020 TC LOADLV 017971,001815: 017972,001816: 41,2755 02305 ALOAD TC REQDATX 017973,001817: 41,2756 00006 EXTEND 017974,001818: 41,2757 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 017975,001819: 41,2760 52006 DXCH Z # ROUTINE. 017976,001820: 41,2761 34755 CAF ZERO # X COMP 017977,001821: 41,2762 03120 TC PUTCOM 017978,001822: 41,2763 50145 INDEX NOUNADD 017979,001823: 41,2764 54000 TS 0 017980,001824: 41,2765 03020 TC LOADLV 017981,001825: 017982,001826: 41,2766 44753 BLOAD CS ONE 017983,001827: 41,2767 02426 TC COMPTEST 017984,001828: 41,2770 34735 CAF BIT15 # SET CLPASS FOR PASS0 ONLY 017985,001829: 41,2771 55014 TS CLPASS 017986,001830: 41,2772 02307 TC REQDATY 017987,001831: 41,2773 00006 EXTEND 017988,001832: 41,2774 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 017989,001833: 41,2775 52006 DXCH Z # ROUTINE. 017990,001834: 41,2776 34753 CAF ONE 017991,001835: 41,2777 03120 TC PUTCOM 017992,001836: 41,3000 50145 INDEX NOUNADD 017993,001837: 41,3001 54001 TS 1 017994,001838: 41,3002 03020 TC LOADLV 017995,001839: 017996,001840: 41,3003 44752 CLOAD CS TWO 017997,001841: 41,3004 02426 TC COMPTEST 017998,001842: 41,3005 34735 CAF BIT15 # SET CLPASS FOR PASS0 ONLY 017999,001843: 41,3006 55014 TS CLPASS 018000,001844: 41,3007 02311 TC REQDATZ 018001,001845: 41,3010 00006 EXTEND 018002,001846: 41,3011 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 018003,001847: # Page 436 018004,001848: 41,3012 52006 DXCH Z # ROUTINE. 018005,001849: 41,3013 34752 CAF TWO 018006,001850: 41,3014 03120 TC PUTCOM 018007,001851: 41,3015 50145 INDEX NOUNADD 018008,001852: 41,3016 54002 TS 2 018009,001853: 41,3017 03020 TC LOADLV 018010,001854: 018011,001855: 41,3020 34755 LOADLV CAF ZERO 018012,001856: 41,3021 54777 TS DECBRNCH 018013,001857: 41,3022 44755 CS ZERO 018014,001858: 41,3023 55013 TS LOADSTAT 018015,001859: 41,3024 04457 TC RELDSP # RELEASE FOR PRIORITY DISPLAY PROBLEM. 018016,001860: 41,3025 44360 CS VD1 # TO BLOCK NUMERICAL CHARACTERS AND 018017,001861: 41,3026 54776 TS DSPCOUNT # CLEARS AFTER A COMPLETED LOAD 018018,001862: 41,3027 04635 TC POSTJUMP # AFTER COMPLETED LOAD, GO TO RECALTST 018019,001863: 41,3030 61612 CADR RECALTST # TO SEE IF THERE IS RECALL FROM ENDIDLE. 018020,001864: 018021,001865: 41,3031 00025 VBSP1LD DEC 21 B-14 # VB21 = ALOAD 018022,001866: 41,3032 00026 VBSP2LD DEC 22 B-14 # VB22 = BLOAD 018023,001867: 41,3033 00027 VBSP3LD DEC 23 B-14 # VB23 = CLOAD 018024,001868: 018025,001869: 41,3034 54117 ALLDC/OC TS DECOUNT # TESTS THAT DATA WORDS LOADED ARE EITHER 018026,001870: 41,3035 40777 CS DECBRNCH # ALL DEC OR ALL OCT. ALARMS IF NOT. 018027,001871: 41,3036 54021 TS SR 018028,001872: 41,3037 40021 CS SR 018029,001873: 41,3040 40021 CS SR # SHIFTED RIGHT 2 018030,001874: 41,3041 10000 CCS A # DEC COMP BITS IN LOW 3 018031,001875: 41,3042 13044 TCF +2 # SOME ONES IN LOW 3 018032,001876: 41,3043 00002 TC Q # ALL ZEROS. ALL OCTAL. 018033,001877: 41,3044 60117 AD DECOUNT # DEC COMP = 7 FOR 3COMP, =6 FOR 2COMP 018034,001878: 41,3045 00006 EXTEND # (BUT IT HAS BEEN DECREMENTED BY CCS) 018035,001879: 41,3046 13050 BZF +2 # MUST MATCH 6 FOR 3COMP, 5 FOR 2COMP. 018036,001880: 41,3047 04145 TC ALMCYCLE # ALARM AND RECYCLE. 018037,001881: 41,3050 00002 GOQ TC Q # ALL REQUIRED ARE DEC. OK 018038,001882: 018039,001883: 41,3051 56002 SFRUTNOR XCH Q # GETS SF ROUTINE NUMBER FOR NORMAL CASE 018040,001884: 41,3052 54114 TS EXITEM # CAN'T USE L FOR RETURN. TSTFORDP USES L. 018041,001885: 41,3053 34347 CAF MID5 018042,001886: 41,3054 70147 MASK NNTYPTEM 018043,001887: 41,3055 04322 TC RIGHT5 018044,001888: 41,3056 00114 TC EXITEM # SF ROUTINE NUMBER IN A 018045,001889: 018046,001890: 41,3057 56002 SFRUTMIX XCH Q # GETS SF ROUTINE NUMBER FOR MIXED CASE 018047,001891: 41,3060 54114 TS EXITEM 018048,001892: 41,3061 50117 INDEX DECOUNT 018049,001893: 41,3062 33111 CAF DISPLACE # PUT TC GOQ, TC RIGHT5, OR TC LEFT5 IN L 018050,001894: 41,3063 54001 TS L 018051,001895: 41,3064 50117 INDEX DECOUNT 018052,001896: # Page 437 018053,001897: 41,3065 34346 CAF LOW5 # LOW5, MID5, OR HI5 IN A 018054,001898: 41,3066 70153 MASK RUTMXTEM # GET HI5, MID5, OR LOW5 OF RUTMXTAB ENTRY 018055,001899: 41,3067 50001 INDEX L 018056,001900: 41,3070 00000 TC 0 018057,001901: 018058,001902: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2). 018059,001903: 018060,001904: 41,3071 00114 SFRET1 TC EXITEM # SF ROUTINE NUMBER IN A 018061,001905: 018062,001906: 41,3072 56002 SFCONUM XCH Q # GETS 2X(SF CONSTANT NUMBER) 018063,001907: 41,3073 54114 TS EXITEM 018064,001908: 41,3074 50140 INDEX MIXBR 018065,001909: 41,3075 03075 TC +0 018066,001910: 41,3076 03114 TC CONUMNOR # NORMAL NOUN 018067,001911: 41,3077 50117 INDEX DECOUNT # MIXED NOUN 018068,001912: 41,3100 33111 CAF DISPLACE 018069,001913: 41,3101 54001 TS L # PUT TC GOQ, TC RIGHT5, OR TC LEFT5 IN L 018070,001914: 41,3102 50117 INDEX DECOUNT 018071,001915: 41,3103 34346 CAF LOW5 018072,001916: 41,3104 70147 MASK NNTYPTEM 018073,001917: 41,3105 50001 INDEX L 018074,001918: 41,3106 00000 TC 0 018075,001919: 018076,001920: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2). 018077,001921: 018078,001922: 41,3107 60000 SFRET DOUBLE # 2X(SF CONSTANT NUMBER) IN A 018079,001923: 41,3110 00114 TC EXITEM 018080,001924: 018081,001925: 41,3111 03050 DISPLACE TC GOQ 018082,001926: 41,3112 04322 TC RIGHT5 018083,001927: 41,3113 04331 TC LEFT5 018084,001928: 018085,001929: 41,3114 34346 CONUMNOR CAF LOW5 # NORMAL NOUN ALWAYS GETS LOW5 OF 018086,001930: 41,3115 70147 MASK NNTYPTEM # NNTYPTAB FOR SF CONUM. 018087,001931: 41,3116 60000 DOUBLE 018088,001932: 41,3117 00114 TC EXITEM # 2X(SF CONSTANT NUMBER) IN A 018089,001933: 018090,001934: 41,3120 54117 PUTCOM TS DECOUNT 018091,001935: 41,3121 56002 XCH Q 018092,001936: 41,3122 54115 TS DECRET 018093,001937: 41,3123 34755 CAF ZERO 018094,001938: 41,3124 54162 TS MPAC+6 018095,001939: 41,3125 50117 INDEX DECOUNT 018096,001940: 41,3126 57005 XCH XREGLP 018097,001941: 41,3127 54155 TS MPAC +1 018098,001942: 41,3130 50117 INDEX DECOUNT 018099,001943: 41,3131 57002 XCH XREG 018100,001944: 41,3132 54154 TS MPAC 018101,001945: 41,3133 50140 INDEX MIXBR 018102,001946: 41,3134 03134 TC +0 018103,001947: 41,3135 03162 TC PUTNORM # NORMAL NOUN 018104,001948: 018105,001949: # IF MIXNOUN, PLACE ADDRESS FOR COMPONENT K INTO NOUNADD, SET EBANK BITS. 018106,001950: 018107,001951: 41,3136 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K 018108,001952: # Page 438 018109,001953: 41,3137 30150 CA IDAD1TEM # OF NOUN. 018110,001954: 41,3140 74356 MASK LOW11 # (ECADR)SUBK FOR CURRENT COMP OF NOUN 018111,001955: 41,3141 04303 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 018112,001956: 41,3142 00006 EXTEND # C(NOUNADD) IN A UPON RETURN 018113,001957: 41,3143 60117 SU DECOUNT # PLACE (ESUBK)-K INTO NOUNADD 018114,001958: 41,3144 54145 TS NOUNADD 018115,001959: 41,3145 10777 CCS DECBRNCH 018116,001960: 41,3146 03217 TC PUTDECSF # + DEC 018117,001961: 41,3147 02454 TC DCTSTCYC # +0 OCTAL 018118,001962: 41,3150 03057 TC SFRUTMIX # TEST IF DEC ONLY BIT = 1. IF SO, 018119,001963: 41,3151 02261 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE. 018120,001964: 41,3152 03200 TC PUTCOM2 # NO DP 018121,001965: # TEST FOR DP SCALE FOR OCT LOAD. IF SO, 018122,001966: # +0 INTO MAJOR PART. SET NOUNADD FOR 018123,001967: # LOADING OCTAL WORD INTO MINOR PART. 018124,001968: 41,3153 24145 PUTDPCOM INCR NOUNADD # DP (ESUBK)-K+1 OR E+1 018125,001969: 41,3154 30145 CA NOUNADD # NOUNADD NOW SET FOR MINOR PART 018126,001970: 41,3155 26117 ADS DECOUNT # (ESUBK)+1 OR E+1 INTO DECOUNT 018127,001971: 41,3156 34755 CAF ZERO # NOUNADD SET FOR MINOR PART 018128,001972: 41,3157 50117 INDEX DECOUNT 018129,001973: 41,3160 53777 TS 0 -1 # ZERO MAJOR PART(ESUBK OR E) 018130,001974: 41,3161 03200 TC PUTCOM2 018131,001975: 018132,001976: 41,3162 04311 PUTNORM TC SETNADD # ECADR FROM NOUNCADR. (garbled) NOUNADD. 018133,001977: 41,3163 10777 CCS DECBRNCH 018134,001978: 41,3164 03217 TC PUTDECSF # + DEC 018135,001979: 41,3165 02454 TC DCTSTCYC # +0 OCTAL 018136,001980: 41,3166 03051 TC SFRUTNOR # TEST IF DEC ONLY BIT (garbled). IF SO, 018137,001981: 41,3167 02261 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE. 018138,001982: 41,3170 03174 TC PUTCOM2 -4 # NO DP 018139,001983: 41,3171 34755 CAF ZERO # DP 018140,001984: 41,3172 54117 TS DECOUNT 018141,001985: 41,3173 03153 TC PUTDPCOM 018142,001986: 018143,001987: 41,3174 30146 CA NNADTEM 018144,001988: 41,3175 64753 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED 018145,001989: 41,3176 00006 EXTEND 018146,001990: 41,3177 13204 BZF CHANLOAD 018147,001991: 41,3200 56154 PUTCOM2 XCH MPAC 018148,001992: 41,3201 00115 TC DECRET 018149,001993: 018150,001994: 41,3202 0776 EBANK= DSPCOUNT 018151,001995: 41,3202 02147 64101 GTSFINLC 2CADR GTSFIN 018152,001996: 018153,001997: 41,3204 44757 CHANLOAD CS SEVEN # DON'T LOAD CHAN 7. (IT'S SUPERBANK). 018154,001998: 41,3205 61016 AD NOUNCADR 018155,001999: 41,3206 00006 EXTEND 018156,002000: 41,3207 13020 BZF LOADLV 018157,002001: # Page 439 018158,002002: 41,3210 31016 CA NOUNCADR 018159,002003: 41,3211 75004 MASK LOW9 018160,002004: 41,3212 56154 XCH MPAC 018161,002005: 41,3213 00006 EXTEND 018162,002006: 41,3214 50154 INDEX MPAC 018163,002007: 41,3215 01000 WRITE 0 018164,002008: 41,3216 03020 TC LOADLV 018165,002009: 018166,002010: # PUTDECSF FINDS MIXBR AND DECOUNT STILL SET FROM PUTCOM. 018167,002011: 018168,002012: 41,3217 03072 PUTDECSF TC SFCONUM # 2X(SF CON NUMB) IN A 018169,002013: 41,3220 54123 TS SFTEMP1 018170,002014: 41,3221 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE 018171,002015: 41,3222 33203 DCA GTSFINLC # READING ROUTINE. 018172,002016: 41,3223 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2. 018173,002017: 41,3224 50140 INDEX MIXBR 018174,002018: 41,3225 03225 TC +0 018175,002019: 41,3226 03231 TC PUTSFNOR 018176,002020: 41,3227 03057 TC SFRUTMIX 018177,002021: 41,3230 03232 TC PUTDCSF2 018178,002022: 41,3231 03051 PUTSFNOR TC SFRUTNOR 018179,002023: 018180,002024: 41,3232 50000 PUTDCSF2 INDEX A 018181,002025: 41,3233 33235 CAF SFINTABR 018182,002026: 41,3234 04640 TC BANKJUMP # SWITCH BANKS FOR EXPANSION ROOM 018183,002027: 41,3235 62352 SFINTABR CADR GOALMCYC # ALARM AND RECYCLE IF DEC LOAD 018184,002028: # WITH OCTAL ONLY NOUN. 018185,002029: 41,3236 61142 CADR BINROUND 018186,002030: 41,3237 61044 CADR DEGINSF 018187,002031: 41,3240 61132 CADR ARTHINSF 018188,002032: 41,3241 61150 CADR DPINSF 018189,002033: 41,3242 61175 CADR DPINSF2 018190,002034: 41,3243 61454 CADR DSPALARM # LRPOSOUT CAN'T BE LOADED. 018191,002035: 41,3244 61150 CADR DPINSF # SAME AS ARITHDP1 018192,002036: 41,3245 65452 CADR HMSIN 018193,002037: 41,3246 61454 CADR DSPALARM # MIN/SEC CAN'T BE LOADED. 018194,002038: 41,3247 61202 CADR DPINSF4 018195,002039: 41,3250 61145 CADR ARTIN1SF 018196,002040: 41,3251 61454 CADR DSPALARM # 2INTOUT CAN'T BE LOADED. 018197,002041: 41,3252 61044 CADR DEGINSF # TESTS AT END FOR 360-CDU 018198,002042: 41,3253 61454 CADR DSPALARM # RRANGOUT CAN'T BE LOADED. 018199,002043: 41,3254 61454 CADR DSPALARM # RRDOTOUT CAN'T BE LOADED. 018200,002044: 41,3255 ENDRUTIN EQUALS 018201,002045: 018202,002046: # SCALE FACTORS FOR THOSE ROUTINES NEEDING THEM ARE AVAILABLE IN SFTEMP1. 018203,002047: # ALL SFIN ROUTINES USE MPAC MPAC+1. LEAVE RESULT IN A. END WITH TC DECRET. 018204,002048: # Page 440 018205,002049: 018206,002050: 40,3044 SETLOC ENDDPDEC +1 018207,002051: 018208,002052: 40,3044 COUNT* $$/PIN 018209,002053: # DEGINSF APPLIES 1000/180 * 5.55555(10) = 5.43434(8) 018210,002054: 018211,002055: 40,3044 07106 DEGINSF TC DMP # SF ROUTINE FOR DEC DEGREES 018212,002056: 40,3045 03130 ADRES DEGCON1 # MULT BY 5.5 5(10)X2EXP-3 018213,002057: 40,3046 10155 CCS MPAC +1 # THIS ROUNDS OFF MPAC+1 BEFORE SHIFT 018214,002058: 40,3047 34741 CAF BIT11 # LEFT 3, AND CAUSES 360.00 TO OF/UF 018215,002059: 40,3050 03052 TC +2 # WHEN SHIFTED LEFT AND ALARM. 018216,002060: 40,3051 44741 CS BIT11 018217,002061: 40,3052 60155 AD MPAC +1 018218,002062: 40,3053 03221 TC 2ROUND +2 018219,002063: 40,3054 04404 TC TPSL1 # LEFT 1 018220,002064: 40,3055 04404 DEGINSF2 TC TPSL1 # LEFT 2 018221,002065: 40,3056 03230 TC TESTOFUF 018222,002066: 40,3057 04404 TC TPSL1 # RETURNS IF NO OF/UF (LEFT3) 018223,002067: 40,3060 10154 CCS MPAC 018224,002068: 40,3061 03065 TC SIGNFIX # IF +, GO TO SIGNFIX 018225,002069: 40,3062 03065 TC SIGNFIX # IF +0, GO TO SIGNFIX 018226,002070: 40,3063 40000 COM # IF -, USE -MAGNITUDE +1 018227,002071: 40,3064 54154 TS MPAC # IF -0, USE +0 018228,002072: 40,3065 10162 SIGNFIX CCS MPAC+6 018229,002073: 40,3066 03124 TC SGNTO1 # IF OVERFLOW 018230,002074: 40,3067 03077 TC ENDSCALE # NO OVERFLOW/UNDERFLOW 018231,002075: 40,3070 10154 CCS MPAC # IF UF FORCE SIGN TO 0 EXCEPT -180 018232,002076: 40,3071 05675 TC CCSHOLE 018233,002077: 40,3072 03122 TC NEG180 018234,002078: 40,3073 03074 TC +1 018235,002079: 40,3074 56154 XCH MPAC 018236,002080: 40,3075 74733 MASK POSMAX 018237,002081: 40,3076 54154 TS MPAC 018238,002082: 40,3077 50140 ENDSCALE INDEX MIXBR # IF ROUTINE NO. IS NOT CDU DEGREES, 018239,002083: 40,3100 03100 TC +0 # THEN THIS IS 360 - CDU DEGREES 018240,002084: 40,3101 03104 TC +3 # AND ANGLE IN MPAC MUST BE REPLACED 018241,002085: 40,3102 03114 TC SFMIXCAL # BY 360 DEGREES MINUS (garbled) 018242,002086: 40,3103 03105 MIXBACK TC +2 018243,002087: 40,3104 03117 TC SFNORCAL 018244,002088: 40,3105 40000 NORBACK CS A 018245,002089: 40,3106 64752 AD BIT2 018246,002090: 40,3107 00006 EXTEND 018247,002091: 40,3110 13112 BZF +2 018248,002092: 40,3111 02625 TC 360-CDU 018249,002093: 40,3112 04635 ENDSCAL1 TC POSTJUMP 018250,002094: 40,3113 63200 CADR PUTCOM2 018251,002095: 018252,002096: 40,3114 04616 SFMIXCAL TC BANKCALL 018253,002097: 40,3115 63057 CADR SFRUTMIX 018254,002098: 40,3116 03103 TC MIXBACK 018255,002099: # Page 441 018256,002100: 40,3117 04616 SFNORCAL TC BANKCALL 018257,002101: 40,3120 63051 CADR SFRUTNOR 018258,002102: 40,3121 03105 TC NORBACK 018259,002103: 018260,002104: 40,3122 44733 NEG180 CS POSMAX 018261,002105: 40,3123 03076 TC ENDSCALE -1 018262,002106: 018263,002107: 40,3124 40154 SGNTO1 CS MPAC # IF OF FORCE SIGN TO 1 018264,002108: 40,3125 74733 MASK POSMAX 018265,002109: 40,3126 40000 CS A 018266,002110: 40,3127 03076 TC ENDSCALE -1 018267,002111: 018268,002112: 40,3130 26161 30707 DEGCON1 2DEC 5.555555555 B-3 018269,002113: 018270,002114: 40,3132 07106 ARTHINSF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2. 018271,002115: 40,3133 00123 ADRES SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS 018272,002116: 40,3134 56156 XCH MPAC +2 # OF SFCON. SHIFTS RESULTS LEFT BY 14. 018273,002117: 40,3135 56155 XCH MPAC +1 # (BY TAKING RESULTS FROM MPAC+1, MPAC+2) 018274,002118: 40,3136 56154 XCH MPAC 018275,002119: 40,3137 00006 EXTEND 018276,002120: 40,3140 13142 BZF BINROUND 018277,002121: 40,3141 04145 TC ALMCYCLE # TOO LARGE A LOAD. ALARM AND RECYCLE. 018278,002122: 40,3142 03217 BINROUND TC 2ROUND 018279,002123: 40,3143 03230 TC TESTOFUF 018280,002124: 40,3144 03112 TC ENDSCAL1 # RETURNS IF NO OF/UF 018281,002125: 018282,002126: 40,3145 07106 ARTIN1SF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2. 018283,002127: 40,3146 00123 ADRES SFTEMP1 # ROUNDS MPAC+1 INTO MPAC. 018284,002128: 40,3147 03142 TC BINROUND 018285,002129: 018286,002130: 40,3150 07106 DPINSF TC DMP # SCALES MPAC, MPAC +1 BY SFTEMP1, 018287,002131: 40,3151 00123 ADRES SFTEMP1 # SFTEMP. STORES LOW PART OF RESULT 018288,002132: 40,3152 56156 XCH MPAC +2 # IN (E SUBK) +1 OR E+1 018289,002133: 40,3153 60000 DOUBLE 018290,002134: 40,3154 54156 TS MPAC +2 018291,002135: 40,3155 34755 CAF ZERO 018292,002136: 40,3156 60155 AD MPAC +1 018293,002137: 40,3157 03221 TC 2ROUND +2 018294,002138: 40,3160 03230 TC TESTOFUF 018295,002139: 40,3161 50140 INDEX MIXBR # RETURNS IF NO OF/UF 018296,002140: 40,3162 03162 TC +0 018297,002141: 40,3163 03173 TC DPINORM 018298,002142: 40,3164 30117 CA DECOUNT # MIXED NOUN 018299,002143: 40,3165 60145 DPINCOM AD NOUNADD # MIXED NORMAL 018300,002144: 40,3166 54002 TS Q # E SUBK E 018301,002145: 40,3167 56155 XCH MPAC +1 018302,002146: 40,3170 50002 INDEX Q 018303,002147: 40,3171 54001 TS 1 # PLACE LOW PART IN 018304,002148: # Page 442 018305,002149: 40,3172 03112 TC ENDSCAL1 # (E SUBK) +1 MIXED 018306,002150: 018307,002151: 40,3173 34755 DPINORM CAF ZERO # E +1 NORMAL 018308,002152: 40,3174 03165 TC DPINCOM 018309,002153: 018310,002154: 40,3175 07106 DPINSF2 TC DMP # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH 018311,002155: 40,3176 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS 018312,002156: 40,3177 36245 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1 018313,002157: 40,3200 03207 TC TPLEFTN # SHIFT LEFT 7. 018314,002158: 40,3201 03152 TC DPINSF +2 018315,002159: 018316,002160: 40,3202 07106 DPINSF4 TC DMP # ASSUMES POINT BETWEEN BITS 11-12 OF HIGH 018317,002161: 40,3203 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS 018318,002162: 40,3204 34752 CAF TWO # LEFT BY 3, ROUNDS MPAC+2 INTO MPAC+1. 018319,002163: 40,3205 03207 TC TPLEFTN # SHIFT LEFT 3. 018320,002164: 40,3206 03152 TC DPINSF +2 018321,002165: 018322,002166: 40,3207 56002 TPLEFTN XCH Q # SHIFTS MPAC, +1, +2 LEFT N. SETS OVFIND 018323,002167: 40,3210 54124 TS SFTEMP2 # TO +1 FOR OF, -1 FOR UF. 018324,002168: 40,3211 56002 XCH Q # CALL WITH N-1 IN A. 018325,002169: 40,3212 54123 LEFTNCOM TS SFTEMP1 # LOOP TIME .37 MSEC. 018326,002170: 40,3213 04404 TC TPSL1 018327,002171: 40,3214 10123 CCS SFTEMP1 018328,002172: 40,3215 03212 TC LEFTNCOM 018329,002173: 40,3216 00124 TC SFTEMP2 018330,002174: 018331,002175: 40,3217 56155 2ROUND XCH MPAC +1 018332,002176: 40,3220 60000 DOUBLE 018333,002177: 40,3221 54155 TS MPAC +1 018334,002178: 40,3222 00002 TC Q # IF MPAC+1 DOES NOT OF/UF 018335,002179: 40,3223 60154 AD MPAC 018336,002180: 40,3224 54154 TS MPAC 018337,002181: 40,3225 00002 TC Q # IF MPAC DOES NOT OF/UF 018338,002182: 40,3226 54162 TS MPAC+6 018339,002183: 40,3227 00002 24NDEND TC Q 018340,002184: 018341,002185: 40,3230 10162 TESTOFUF CCS MPAC+6 # RETURNS IF NO OF/UF 018342,002186: 40,3231 04145 TC ALMCYCLE # OF ALARM AND RECYCLE. 018343,002187: 40,3232 00002 TC Q 018344,002188: 40,3233 04145 TC ALMCYCLE # UF ALARM AND RECYCLE. 018345,002189: 018346,002190: 42,3452 SETLOC ENDSPMIN +1 018347,002191: 018348,002192: 42,3452 COUNT* $$/PIN 018349,002193: # Page 443 018350,002194: 42,3452 03573 HMSIN TC ALL3DEC # IF ALL 3 WORDS WERE NOT LOADED, ALARM. 018351,002195: 42,3453 07106 TC DMP # XREG, XREGLP (=HOURS) WERE ALREADY PUT 018352,002196: 42,3454 03534 ADRES WHOLECON # INTO MPAC, MPAC+1. 018353,002197: 42,3455 03543 TC RND/TST # ROUND OFF TO WHOLE HRS IN MPAC+1. 018354,002198: 42,3456 34755 CAF ZERO # ALARM IF MPAC NON ZERO (G/ 16383). 018355,002199: 42,3457 54156 TS MPAC +2 018356,002200: 42,3460 33536 CAF HRCON 018357,002201: 42,3461 54154 TS MPAC 018358,002202: 42,3462 33537 CAF HRCON +1 018359,002203: 42,3463 56155 XCH MPAC +1 018360,002204: 42,3464 07312 TC SHORTMP 018361,002205: 42,3465 03554 TC MPACTST # ALARM IF MPAC NON ZERO (G/ 745) 018362,002206: 42,3466 52156 DXCH MPAC +1 # STORE HOURS CONTRIBUTION 018363,002207: 42,3467 52124 DXCH HITEMIN 018364,002208: 42,3470 31003 CA YREG # PUT YREG, YREGLP INTO MPAC, +1. 018365,002209: 42,3471 23006 LXCH YREGLP 018366,002210: 42,3472 52155 DXCH MPAC 018367,002211: 42,3473 07106 TC DMP 018368,002212: 42,3474 03534 ADRES WHOLECON 018369,002213: 42,3475 03543 TC RND/TST # ROUND OFF TO WHOLE MIN IN MPAC+1 018370,002214: 42,3476 43541 CS 59MIN # ALARM IF MPAC NON ZERO (G/16383) 018371,002215: 42,3477 03561 TC SIZETST # ALARM IF MPAC+1 G/ 59MIN 018372,002216: 42,3500 56155 XCH MPAC +1 018373,002217: 42,3501 00006 EXTEND 018374,002218: 42,3502 73540 MP MINCON # LEAVES MINUTES CONTRIBUTION IN A,L 018375,002219: 42,3503 20124 DAS HITEMIN # ADD IN MINUTES CONTRIBUTION 018376,002220: 42,3504 00006 EXTEND # IF THIS DAS OVEFLOWS, G/ 745 HR, 39MIN 018377,002221: 42,3505 13507 BZF +2 018378,002222: 42,3506 04145 TC ALMCYCLE 018379,002223: 42,3507 31004 CA ZREG # PUT ZREG, ZREGLP INTO MPAC +1. 018380,002224: 42,3510 23007 LXCH ZREGLP 018381,002225: 42,3511 52155 DXCH MPAC 018382,002226: 42,3512 07106 TC DMP 018383,002227: 42,3513 03534 ADRES WHOLECON 018384,002228: 42,3514 03543 TC RND/TST # ROUND OFF TO WHOLE CENTI-SEC IN MPAC+1 018385,002229: 42,3515 43542 CS 59.99SEC # ALARM IF MPAC NON ZERO (G/163.83 SEC) 018386,002230: 42,3516 03561 TC SIZETST # ALARM IF MPAC+1 G/59.99 SEC 018387,002231: 42,3517 52124 DXCH HITEMIN # ADD IN SECONDS CONTRIBUTION 018388,002232: 42,3520 20155 DAS MPAC # IF THIS DAS OVERFLOWS, 018389,002233: 42,3521 00006 EXTEND # G/ 745 HR, 39 MIN, 14.59 SEC. 018390,002234: 42,3522 13524 BZF +2 018391,002235: 42,3523 04145 TC ALMCYCLE # ALARM AND RECYCLE 018392,002236: 42,3524 34755 CAF ZERO 018393,002237: 42,3525 54156 TS MPAC +2 018394,002238: 42,3526 07262 TC TPAGREE 018395,002239: 42,3527 52155 DXCH MPAC 018396,002240: 42,3530 50145 INDEX NOUNADD 018397,002241: 42,3531 52001 DXCH 0 018398,002242: 42,3532 04635 TC POSTJUMP 018399,002243: 42,3533 63020 CADR LOADLV 018400,002244: 018401,002245: # Page 444 018402,002246: 42,3534 00006 WHOLECON OCT 00006 # (10EXP5/2EXP14)2EXP14 018403,002247: 42,3535 03240 OCT 03240 018404,002248: 42,3536 00025 HRCON OCT 00025 # 1 HOUR IN CENTI-SEC 018405,002249: 42,3537 37100 OCT 37100 018406,002250: 42,3540 13560 MINCON OCT 13560 # 1 MINUTE IN CENTI-SEC 018407,002251: 42,3541 00073 59MIN OCT 00073 # 59 AS WHOLE 018408,002252: 42,3542 13557 59.99SEC OCT 13557 # 5999 SENTI-SEC 018409,002253: 018410,002254: 42,3543 56156 RND/TST XCH MPAC +2 # ROUNDS MPAC+2 INTO MPAC+1. 018411,002255: 42,3544 60000 DOUBLE # ALARMS IF MPAC NOT 0 018412,002256: 42,3545 54156 TS MPAC +2 018413,002257: 42,3546 34755 CAF ZERO 018414,002258: 42,3547 60155 AD MPAC +1 018415,002259: 42,3550 54155 TS MPAC +1 018416,002260: 42,3551 34755 CAF ZERO 018417,002261: 42,3552 60154 AD MPAC # CAN'T OVFLOW 018418,002262: 42,3553 56154 XCH MPAC 018419,002263: 42,3554 10154 MPACTST CCS MPAC # ALARM IF MPAC NON ZERO 018420,002264: 42,3555 04145 TC ALMCYCLE # ALARM AND RECYCLE 018421,002265: 42,3556 00002 TC Q 018422,002266: 42,3557 04145 TC ALMCYCLE # ALARM AND RECYCLE 018423,002267: 42,3560 00002 TC Q 018424,002268: 018425,002269: 42,3561 54156 SIZETST TS MPAC +2 # CALLED WITH - CON IN A 018426,002270: 42,3562 10155 CCS MPAC +1 # GET MAG OF MPAC+1 018427,002271: 42,3563 64753 AD ONE 018428,002272: 42,3564 13566 TCF +2 018429,002273: 42,3565 64753 AD ONE 018430,002274: 42,3566 60156 AD MPAC +2 018431,002275: 42,3567 00006 EXTEND # MAG OF MPAC+1 - CON 018432,002276: 42,3570 63572 BZMF +2 018433,002277: 42,3571 04145 TC ALMCYCLE # MAG OF MPAC+1 G/ CON. ALARM AND RECYCLE. 018434,002278: 42,3572 00002 TC Q # MAG OF MPAC+1 L/= CON 018435,002279: 018436,002280: # ALL3DEC TESTS THAT ALL 3 WORDS ARE LOADED IN DEC (FOR HMSIN). 018437,002281: # ALARM IF NOT. (TEST THAT BITS 3,4,4 OF DECBRNCH ARE ALL = 1). 018438,002282: 018439,002283: 42,3573 43600 ALL3DEC CS OCT34BAR # GET BITS 3,4,5 IN A 018440,002284: 42,3574 70777 MASK DECBRNCH # GET BITS 3,4,5 OF DECBRNCH IN A 018441,002285: 42,3575 63600 AD OCT34BAR # BITS 3,4,5 OF DECBRNCH MUST ALL = 1 018442,002286: 42,3576 10000 CCS A 018443,002287: 42,3577 03603 TC FORCEV25 018444,002288: 42,3600 77743 OCT34BAR OCT 77743 018445,002289: 42,3601 03603 TC FORCEV25 018446,002290: 42,3602 00002 TC Q 018447,002291: 018448,002292: 42,3603 46010 FORCEV25 CS OCT31 # FORCE VERB 25 TO BE EXECUTED BY RECYCLE 018449,002293: 42,3604 55040 TS VERBSAVE # IN CASE OPERATOR EXECUTED A LOWER LOAD 018450,002294: # Page 445 018451,002295: 42,3605 04145 TC ALMCYCLE # VERB. ALARM AND RECYCLE. 018452,002296: 42,3606 ENDHMSS EQUALS 018453,002297: 018454,002298: # Page 446 018455,002299: # MONITOR ALLOWS OTHER KEYBOARD ACTIVITY. IT IS ENDED BY VERB TERMINATE, 018456,002300: # VERB PROCEED WITHOUT DATA, VERB RESEQUENCE, 018457,002301: # ANOTHER MONITOR, OR ANY NVSUB CALL THAT PASSES THE DSPLOCK (PROVIDED 018458,002302: # THAT THE OPERATOR HAS SOMEHOW ALLOWED THE ENDING OF A MONITOR WHICH 018459,002303: # HE HAS INITIATED THROUGH THE KEYBOARD). 018460,002304: 018461,002305: # MONITOR ACTION IS SUSPENDED, BUT NOT ENDED, BY ANY KEYBOARD ACTION. 018462,002306: # EXCEPT ERROR LIGHT RESET. IT BEGINS AGAIN WHEN KEY RELEASE IS PERFORMED. 018463,002307: # MONITOR SAVES THE NOUN AND APPROPRIATE DISPLAY VERB IN MONSAVE. IT SAVES 018464,002308: # NOUNCADR IN MONSAVE1, IF NOUN = MACHINE CADR TO BE SPECIFIED. BIT 15 OF 018465,002309: # MONSAVE1 IS THE KILL MONITOR SIGNAL (KILLER BIT). BIT 14 OF MONSAVE1 018466,002310: # INDICATES THE CURRENT MONITOR WAS EXTERNALLY INITIATED (EXTERNAL 018467,002311: # MONITOR BIT). IT IS TURNED OFF BY RELDSP AND KIMONON. 018468,002312: 018469,002313: # MONSAVE INDICATES IF MONITOR IS ON (+=ON, +0=OFF) 018470,002314: # IF MONSAVE IS +, MONITOR ENTERS NO REQUEST, BUT TURNS KILLER BIT OFF. 018471,002315: # IF MONSAVE IS +0, MONITOR ENTERS REQUEST AND TURNS KILLER BIT OFF. 018472,002316: 018473,002317: # NVSUB (IF EXTERNAL MONITOR BIT IS OFF), VB=PROCEED WITHOUT DATA, 018474,002318: # VB=RESEQUENCE, AND VB=TERMINATE TURN KILL MONITOR BIT ON. 018475,002319: 018476,002320: # IF KILLER BIT IS ON, MONREQ ENTERS NO FURTHER REQUESTS, ZEROS MONSAVE 018477,002321: # AND MONSAVE1 (TURNING OFF KILLER BIT AND EXTERNAL MONITOR BIT). 018478,002322: 018479,002323: # MONITOR DOESN'T TEST FOR MATBS SINCE NVSUB CAN HANDLE INTERNAL MATBS NOW. 018480,002324: 018481,002325: 41,3255 SETLOC ENDRUTIN 018482,002326: 018483,002327: 41,3255 COUNT* $$/PIN 018484,002328: 41,3255 43264 MONITOR CS BIT15/14 018485,002329: 41,3256 71016 MASK NOUNCADR 018486,002330: 41,3257 54155 MONIT1 TS MPAC +1 # TEMP STORAGE 018487,002331: 41,3260 40136 CS ENTEXIT 018488,002332: 41,3261 64217 AD ENDINST 018489,002333: 41,3262 10000 CCS A 018490,002334: 41,3263 03272 TC MONIT2 018491,002335: 41,3264 60000 BIT15/14 OCT 60000 018492,002336: 41,3265 03272 TC MONIT2 018493,002337: 41,3266 34736 CAF BIT14 # EXTERNALLY INITIATED MONITOR. 018494,002338: 41,3267 26155 ADS MPAC +1 # SET BIT 14 FOR MONSAVE1. 018495,002339: 41,3270 34755 CAF ZERO 018496,002340: 41,3271 55021 TS MONSAVE2 # ZERO NVMONOPT OPTIONS 018497,002341: 41,3272 36077 MONIT2 CAF LOW7 018498,002342: 41,3273 71000 MASK VERBREG 018499,002343: 41,3274 04331 TC LEFT5 018500,002344: 41,3275 54022 TS CYL 018501,002345: 41,3276 40022 CS CYL 018502,002346: 41,3277 56022 XCH CYL 018503,002347: 41,3300 61001 AD NOUNREG 018504,002348: 41,3301 54154 TS MPAC # TEMP STORAGE 018505,002349: 41,3302 34755 CAF ZERO 018506,002350: # Page 447 018507,002351: 41,3303 55011 TS DSPLOCK # +0 INTO DSPLOCK SO MONITOR CAN RUN. 018508,002352: 41,3304 11041 CCS CADRSTOR # TURN OFF KR LITE IF CADRSTOR AND DSPLIST 018509,002353: 41,3305 03307 TC +2 # ARE BOTH EMPTY. (LITE COMES ON IF NEW 018510,002354: 41,3306 04502 TC RELDSP1 # MONITOR IS KEYED IN OVER OLD MONITOR.) 018511,002355: 41,3307 00004 INHINT 018512,002356: 41,3310 11017 CCS MONSAVE 018513,002357: 41,3311 03316 TC +5 # IF MONSAVE WAS +, NO REQUEST 018514,002358: 41,3312 34753 CAF ONE # IF MONSAVE WAS 0, REQUEST MONREQ 018515,002359: 41,3313 05203 TC WAITLIST 018516,002360: 41,3314 0776 EBANK= DSPCOUNT 018517,002361: 41,3314 03322 62101 2CADR MONREQ 018518,002362: 018519,002363: 41,3316 52155 DXCH MPAC # PLACE MONITOR VERB AND NOUN INTO MONSAVE 018520,002364: 41,3317 53020 DXCH MONSAVE # ZERO THE KILL MONITOR BIT 018521,002365: 41,3320 00003 RELINT # SET UP EXTERNAL MONITOR BIT 018522,002366: 41,3321 00136 TC ENTRET 018523,002367: 018524,002368: 41,3322 04400 MONREQ TC LODSAMPT # CALLED BY WAITLIST 018525,002369: 41,3323 11020 CCS MONSAVE1 # TIME IS SNATCHED N RUPT FOR NOUN 65 018526,002370: 41,3324 03330 TC +4 # IF KILLER BIT = 0, ENTER REQUESTS 018527,002371: 41,3325 03330 TC +3 # IF KILLER BIT = 0, ENTER REQUESTS 018528,002372: 41,3326 03341 TC KILLMON # IF KILLER BIT = 1, NO REQUESTS. 018529,002373: 41,3327 03341 TC KILLMON # IF KILLER BIT = 1, NO REQUESTS. 018530,002374: 41,3330 33345 CAF MONDEL 018531,002375: 41,3331 05203 TC WAITLIST # ENTER WAITLIST REQUEST FOR MONREQ 018532,002376: 41,3332 0776 EBANK= DSPCOUNT 018533,002377: 41,3332 03322 62101 2CADR MONREQ 018534,002378: 018535,002379: 41,3334 34355 CAF CHRPRIO 018536,002380: 41,3335 05072 TC NOVAC # ENTER EXEC REQUEST FOR MONDO 018537,002381: 41,3336 0776 EBANK= DSPCOUNT 018538,002382: 41,3336 03346 62101 2CADR MONDO 018539,002383: 018540,002384: 41,3340 05261 TC TASKOVER 018541,002385: 018542,002386: 41,3341 34755 KILLMON CAF ZERO # ZERO MONSAVE AND TURN KILLER BIT OFF 018543,002387: 41,3342 55017 TS MONSAVE 018544,002388: 41,3343 55020 TS MONSAVE1 # TURN OFF KILL MONITOR BIT. 018545,002389: 41,3344 05261 TC TASKOVER # TURN OFF EXTERNAL MONITOR BIT. 018546,002390: 41,3345 00144 MONDEL OCT 144 # FOR 1 SEC MONITOR INTERVALS. 018547,002391: 018548,002392: 41,3346 11020 MONDO CCS MONSAVE1 # CALLED BY EXEC 018549,002393: 41,3347 03353 TC +4 # IF KILLER BIT = 0, CONTINUE 018550,002394: 41,3350 03353 TC +3 # IF KILLER BIT = 0, CONTINUE 018551,002395: 41,3351 05155 TC ENDOFJOB # IN CASE TERMINATE CAME SINCE LAST MONREQ 018552,002396: 41,3352 05155 TC ENDOFJOB # IN CASE TERMINATE CAME SINCE LAST MONREQ 018553,002397: 41,3353 11011 CCS DSPLOCK 018554,002398: 41,3354 03376 TC MONBUSY # NVSUB IS BUSY 018555,002399: # Page 448 018556,002400: 41,3355 36077 CAF LOW7 018557,002401: 41,3356 71017 MASK MONSAVE 018558,002402: 41,3357 02321 TC UPDATNN -1 # PLACE NOUN INTO NOUNREG AND DISPLAY IT 018559,002403: 41,3360 34144 CAF MID7 018560,002404: 41,3361 71017 MASK MONSAVE # CHANGE MONITOR VERB TO DISPLAY VERB 018561,002405: 41,3362 63374 AD MONREF # -DEC10, STARTING IN BIT5 018562,002406: 41,3363 54023 TS EDOP # RIGHT 7 018563,002407: 41,3364 30023 CA EDOP 018564,002408: 41,3365 55000 TS VERBREG 018565,002409: 41,3366 33375 CAF MONBACK # SET RETURN TO PASTEVB AFTER DATA DISPLAY 018566,002410: 41,3367 54136 TS ENTRET 018567,002411: 41,3370 43264 CS BIT15/14 018568,002412: 41,3371 71020 MASK MONSAVE1 # PUT ECADR INTO MPAC +2. INTMCTBS WILL 018569,002413: 41,3372 54156 TS MPAC +2 # DISPLAY IT AND SET NOUNCADR, NOUNADD, 018570,002414: 41,3373 02046 ENDMONDO TC TESTNN # EBANK. 018571,002415: 018572,002416: 4124 BLOCK 2 018573,002417: 018574,002418: 4000 SETLOC FFTAG8 018575,002419: 4000 BANK 018576,002420: 018577,002421: 4124 COUNT* $$/PIN 018578,002422: 4124 34144 PASTEVB CAF MID7 018579,002423: 4125 71021 MASK MONSAVE2 # NVMONOPT PASTE OPTION 018580,002424: 4126 00006 EXTEND 018581,002425: 4127 14131 BZF +2 018582,002426: 4130 04132 TC PASTEOPT # PASTE PLEASE VERB FOR NVMONOPT 018583,002427: 4131 31017 CA MONSAVE # PASTE MONITOR VERB PASTE OPTION IS 0 018584,002428: 4132 54023 PASTEOPT TS EDOP # RIGHT 7 018585,002429: 4133 30023 CA EDOP # PLACE MONITOR VERB OR (garbled) VERB INTO 018586,002430: 4134 04616 TC BANKCALL # VERBREG AND DISPLAY IT. 018587,002431: 4135 62341 CADR UPDATVB -1 018588,002432: 4136 34755 CAF ZERO # ZERO REQRET SO THAT PASTED VERBS CAN 018589,002433: 4137 55012 TS REQRET # BE EXECUTED BY OPERATOR. 018590,002434: 4140 31021 CA MONSAVE2 018591,002435: 4141 04255 TC BLANKSUB # PROCESS NVMONOPT BLANK OPTION IF ANY 018592,002436: 4142 04143 TC +1 018593,002437: 4143 05155 ENDPASTE TC ENDOFJOB 018594,002438: 018595,002439: 4144 37600 MID7 OCT 37600 018596,002440: 018597,002441: 41,3374 SETLOC ENDMONDO +1 018598,002442: 41,3374 COUNT* $$/PIN 018599,002443: 41,3374 75377 MONREF OCT 75377 # -DEC10, STARTING IN BIT8 018600,002444: 41,3375 04124 MONBACK ADRES PASTEVB 018601,002445: 018602,002446: 41,3376 04374 MONBUSY TC RELDSPON # TURN KEY RELEASE LIGHT 018603,002447: 41,3377 05155 TC ENDOFJOB 018604,002448: # Page 449 018605,002449: # DSPFMEM IS USED TO DISPLAY (IN OCTAL) ANY FIXED REGISTER. 018606,002450: # IT IS USED WITH NOUN = MACHINE CADR TO BE SPECIFIED. THE FCADR OF THE 018607,002451: # DESIRED LOCATION IS THEN PUNCHED IN. IT HANDLES F/F (FCADR 4000-7777) 018608,002452: # 018609,002453: # FOR BANKS L/E 27, THIS IS ENOUGH. 018610,002454: 018611,002455: # FOR BANKS G/E 30, THE THIRD COMPONENT OF NOUN 26 (PRIO, ADRES, BBCON) 018612,002456: # MUST BE PRELOADED WITH THE DESIRED SUPERBANK BITS (BITS 5,6,7). 018613,002457: # V23N26 SHOULD BE USED. 018614,002458: 018615,002459: # SUMMARY 018616,002460: # FOR BANKS L/E 27, V27N01E(FCADR)E 018617,002461: # FOR BANKS G/E 30, V23N26E(SUPERBITS)E V27N01E(FCADR)E 018618,002462: 018619,002463: 41,3400 34317 DSPFMEM CAF R1D1 # IF F/F, DATACALL USES BANK 02 OR 03. 018620,002464: 41,3401 54776 TS DSPCOUNT 018621,002465: 41,3402 31046 CA DSPTEM1 +2 # SUPERBANK BITS WERE PRELOADED INTO 018622,002466: 41,3403 54001 TS L # 3RD COMPONENT OF NOUN 26. 018623,002467: 41,3404 31016 CA NOUNCADR # ORIGINAL FCADR LOADED STILL IN NOUNCADR. 018624,002468: 41,3405 04651 TC SUPDACAL # CALL WITH FCADR IN A, SUPERBITS IN L. 018625,002469: 41,3406 03410 TC DSPOCTWO 018626,002470: 41,3407 05155 ENDSPF TC ENDOFJOB 018627,002471: 018628,002472: # Page 450 018629,002473: # WORD DISPLAY ROUTINES 018630,002474: 40,3234 SETLOC TESTOFUF +4 018631,002475: 40,3234 COUNT* $$/PIN 018632,002476: 018633,002477: 40,3234 56002 DSPSIGN XCH Q 018634,002478: 40,3235 54144 TS DSPWDRET 018635,002479: 40,3236 10154 CCS MPAC 018636,002480: 40,3237 03247 TC +8D 018637,002481: 40,3240 03247 TC +7 018638,002482: 40,3241 64753 AD ONE 018639,002483: 40,3242 54154 TS MPAC 018640,002484: 40,3243 02433 TC -ON 018641,002485: 40,3244 40155 CS MPAC +1 018642,002486: 40,3245 54155 TS MPAC +1 018643,002487: 40,3246 00144 TC DSPWDRET 018644,002488: 40,3247 02413 TC +ON 018645,002489: 40,3250 00144 TC DSPWDRET 018646,002490: 018647,002491: 40,3251 00006 DSPRND EXTEND # ROUND BY 5 EXP-6 018648,002492: 40,3252 33315 DCA DECROUND -1 018649,002493: 40,3253 20155 DAS MPAC 018650,002494: 40,3254 00006 EXTEND 018651,002495: 40,3255 13261 BZF +4 018652,002496: 40,3256 00006 EXTEND 018653,002497: 40,3257 34733 DCA DPOSMAX 018654,002498: 40,3260 52155 DXCH MPAC 018655,002499: 40,3261 00002 TC Q 018656,002500: 018657,002501: # DSPDECWD CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 5 CHAR DECIMAL 018658,002502: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT ROUNDS BY 5 EXP-6. 018659,002503: 018660,002504: 40,3262 56002 DSPDECWD XCH Q 018661,002505: 40,3263 54115 TS WDRET 018662,002506: 40,3264 03234 TC DSPSIGN 018663,002507: 40,3265 03251 TC DSPRND 018664,002508: 40,3266 34751 CAF FOUR 018665,002509: 40,3267 54137 DSPDCWD1 TS WDCNT 018666,002510: 40,3270 34363 CAF BINCON 018667,002511: 40,3271 07312 TC SHORTMP 018668,002512: 40,3272 50154 TRACE1 INDEX MPAC 018669,002513: 40,3273 34066 CAF RELTAB 018670,002514: 40,3274 74346 MASK LOW5 018671,002515: 40,3275 54124 TS CODE 018672,002516: 40,3276 34755 CAF ZERO 018673,002517: 40,3277 56156 XCH MPAC +2 018674,002518: 40,3300 56155 XCH MPAC +1 018675,002519: 40,3301 54154 TS MPAC 018676,002520: 40,3302 56776 XCH DSPCOUNT 018677,002521: 40,3303 54143 TRACE1S TS COUNT 018678,002522: 40,3304 10000 CCS A # DECREMENT DSPCOUNT EXCEPT AT +0 018679,002523: # Page 451 018680,002524: 40,3305 54776 TS DSPCOUNT 018681,002525: 40,3306 03356 TC DSPIN 018682,002526: 40,3307 10137 CCS WDCNT 018683,002527: 40,3310 03267 TC DSPDCWD1 018684,002528: 40,3311 44360 CS VD1 018685,002529: 40,3312 54776 TS DSPCOUNT 018686,002530: 40,3313 00115 TC WDRET 018687,002531: 018688,002532: 40,3314 00000 OCT 00000 018689,002533: 40,3315 02476 DECROUND OCT 02476 018690,002534: 018691,002535: # DSPDECNR CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 5 CHAR DECIMAL 018692,002536: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT DOES NOT ROUND 018693,002537: 018694,002538: 40,3316 56002 DSPDECNR XCH Q 018695,002539: 40,3317 54115 TS WDRET 018696,002540: 40,3320 03234 TC DSPSIGN 018697,002541: 40,3321 03266 TC DSPDCWD1 -1 018698,002542: 018699,002543: # DSPDC2NR CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 2 CHAR DECIMAL 018700,002544: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT DOES NOT ROUND 018701,002545: 018702,002546: 40,3322 56002 DSPDC2NR XCH Q 018703,002547: 40,3323 54115 TS WDRET 018704,002548: 40,3324 03234 TC DSPSIGN 018705,002549: 40,3325 34753 CAF ONE 018706,002550: 40,3326 03267 TC DSPDCWD1 018707,002551: 018708,002552: # DSP2DEC CONVERTS C(MPAC) AND C(MPAC+1) INTO A SIGN AND 10 CHAR DECIMAL 018709,002553: # STARTING IN THE LOC SPECIFIED IN DSPCOUNT. 018710,002554: 018711,002555: 40,3327 56002 DSP2DEC XCH Q 018712,002556: 40,3330 54115 TS WDRET 018713,002557: 40,3331 34755 CAF ZERO 018714,002558: 40,3332 54124 TS CODE 018715,002559: 40,3333 36250 CAF THREE 018716,002560: 40,3334 03440 TC 11DSPIN # -R2 OFF 018717,002561: 40,3335 34751 CAF FOUR 018718,002562: 40,3336 03440 TC 11DSPIN # +R2 OFF 018719,002563: 40,3337 03234 TC DSPSIGN 018720,002564: 40,3340 34320 CAF R2D1 018721,002565: 40,3341 03267 END2DEC TC DSPDCWD1 018722,002566: 018723,002567: # DSPDECVN DISPLAYS C(A) UPON ENTRY AS A 2 CHAR DECIMAL BEGINNING IN THE 018724,002568: # DSP LOC SPECIFIED IN DSPCOUNT. 018725,002569: 018726,002570: # C(A) SHOULD BE IN FORM N X 2EXP-14. THIS IS SCALED TO FORM N/100 BEFORE 018727,002571: # DISPLAY CONVERSION. 018728,002572: 018729,002573: # Page 452 018730,002574: 40,3342 00006 DSPDECVN EXTEND 018731,002575: 40,3343 73352 MP VNDSPCON # MULT BY .01 018732,002576: 40,3344 22154 LXCH MPAC # TAKE RESULTS FROM L. (MULT BY 2EXP14). 018733,002577: 40,3345 34755 CAF ZERO 018734,002578: 40,3346 54155 TS MPAC +1 018735,002579: 40,3347 56002 XCH Q 018736,002580: 40,3350 54115 TS WDRET 018737,002581: 40,3351 03325 TC DSPDC2NR +3 # NO SIGN, NO ROUND, 2 CHAR 018738,002582: 018739,002583: 40,3352 00244 VNDSPCON OCT 00244 # .01 ROUNDED UP 018740,002584: 018741,002585: 40,3353 03342 GOVNUPDT TC DSPDECVN # THIS IS NOT FOR GENERAL USE. REALLY PART 018742,002586: 40,3354 04635 TC POSTJUMP # OF UPDATVB. 018743,002587: 40,3355 62351 CADR UPDAT1 +2 018744,002588: 018745,002589: 40,3356 ENDECVN EQUALS 018746,002590: 018747,002591: 41,3410 SETLOC ENDSPF +1 018748,002592: 41,3410 COUNT* $$/PIN 018749,002593: 018750,002594: # DSPOCTWD DISPLAYS C(A) UPON ENTRY AS A 5 CHAR OCT STARTING IN THE DSP 018751,002595: # CHAR SPECIFIED IN DSPCOUNT. IT STOPS AFTER 5 CHAR HAVE BEEN DISPLAYED. 018752,002596: 018753,002597: 41,3410 54022 DSPOCTWO TS CYL 018754,002598: 41,3411 56002 XCH Q 018755,002599: 41,3412 54115 TS WDRET # MUST USE SAME RETURN AS DSP2BIT. 018756,002600: 41,3413 34736 CAF BIT14 # TO BLANK SIGNS 018757,002601: 41,3414 26776 ADS DSPCOUNT 018758,002602: 41,3415 34751 CAF FOUR 018759,002603: 41,3416 54137 WDAGAIN TS WDCNT 018760,002604: 41,3417 40022 CS CYL 018761,002605: 41,3420 40022 CS CYL 018762,002606: 41,3421 40022 CS CYL 018763,002607: 41,3422 40000 CS A 018764,002608: 41,3423 74757 MASK DSPMSK 018765,002609: 41,3424 50000 INDEX A 018766,002610: 41,3425 34066 CAF RELTAB 018767,002611: 41,3426 74346 MASK LOW5 018768,002612: 41,3427 54124 TS CODE 018769,002613: 41,3430 56776 XCH DSPCOUNT 018770,002614: 41,3431 54143 TS COUNT 018771,002615: 41,3432 10000 CCS A # DECREMENT DSPCOUNT EXCEPT AT +0 018772,002616: 41,3433 54776 TS DSPCOUNT 018773,002617: 41,3434 04635 TC POSTJUMP 018774,002618: 41,3435 61446 CADR DSPOCTIN 018775,002619: 41,3436 10137 OCTBACK CCS WDCNT 018776,002620: 41,3437 03416 TC WDAGAIN 018777,002621: 41,3440 44360 DSPLV CS VD1 # TO BLOCK NUMERICAL CHARACTERS, CLEARS, 018778,002622: 41,3441 54776 TS DSPCOUNT # AND SIGNS AFTER A COMPLETED DISPLAY. 018779,002623: # Page 453 018780,002624: 41,3442 00115 TC WDRET 018781,002625: 018782,002626: 41,3443 4757 DSPMSK = SEVEN 018783,002627: 018784,002628: # FOR DSPIN PLACE 0/25 OCT INTO COUNT, 5 BIT RELAY CODE INTO CODE. BOTH 018785,002629: # ARE DESTROYED. IF BIT14 OF COUNT IS 1, SIGN IS BLANKED WITH LEFT CHAR. 018786,002630: # FOR DSPIN1 PLACE 0,1 INTO BIT11 OF CODE, 2 INTO COUNT, REL ADDRESS OF 018787,002631: # DSPTAB ENTRY INTO DSREL. 018788,002632: 018789,002633: 40,3356 SETLOC ENDECVN 018790,002634: 018791,002635: 40,3356 COUNT* $$/PIN 018792,002636: 40,3356 56002 DSPIN XCH Q # CAN'T USE L FOR RETURN, SINCE MANYOF THE 018793,002637: 40,3357 54114 TS DSEXIT # ROTINE CALLING DSPIN USE L AS RETURN. 018794,002638: 40,3360 34346 CAF LOW5 018795,002639: 40,3361 70143 MASK COUNT 018796,002640: 40,3362 54021 TS SR 018797,002641: 40,3363 56021 XCH SR 018798,002642: 40,3364 54141 TS DSREL 018799,002643: 40,3365 34753 CAF BIT1 018800,002644: 40,3366 70143 MASK COUNT 018801,002645: 40,3367 10000 CCS A 018802,002646: 40,3370 03372 TC +2 # LEFT IF COUNT IS ODD 018803,002647: 40,3371 03402 TC DSPIN1 -1 # RIGHT IF COUNT IS EVEN 018804,002648: 40,3372 56124 XCH CODE 018805,002649: 40,3373 04340 TC SLEFT5 # DOES NOT USE CYL 018806,002650: 40,3374 54124 TS CODE 018807,002651: 40,3375 34736 CAF BIT14 018808,002652: 40,3376 70143 MASK COUNT 018809,002653: 40,3377 10000 CCS A 018810,002654: 40,3400 34752 CAF TWO # BIT14 = 1, BLANK SIGN 018811,002655: 40,3401 64753 AD ONE # BIT14 = 0, LEAVE SIGN ALONE 018812,002656: 40,3402 54143 TS COUNT # +0 INTO COUNT FOR RIGHT 018813,002657: # +1 INTO COUNT FOR LEFT (SIGN LEFT ALONE) 018814,002658: # +3 INTO COUNT FOR LEFT (TO BLANK SIGN) 018815,002659: 40,3403 00004 DSPIN1 INHINT 018816,002660: 40,3404 50141 INDEX DSREL 018817,002661: 40,3405 11022 CCS DSPTAB 018818,002662: 40,3406 03410 TC +2 # IF + 018819,002663: 40,3407 05675 TC CCSHOLE 018820,002664: 40,3410 64753 AD ONE # IF - 018821,002665: 40,3411 54142 TS DSMAG 018822,002666: 40,3412 50143 INDEX COUNT 018823,002667: 40,3413 73434 MASK DSMSK 018824,002668: 40,3414 00006 EXTEND 018825,002669: 40,3415 60124 SU CODE 018826,002670: 40,3416 00006 EXTEND 018827,002671: 40,3417 13432 BZF DSLV # SAME 018828,002672: 40,3420 50143 DFRNT INDEX COUNT 018829,002673: # Page 454 018830,002674: 40,3421 43434 CS DSMSK # MASK WITH 77740, 76037, 76777, OR 74037 018831,002675: 40,3422 70142 MASK DSMAG 018832,002676: 40,3423 60124 AD CODE 018833,002677: 40,3424 40000 CS A 018834,002678: 40,3425 50141 INDEX DSREL 018835,002679: 40,3426 57022 XCH DSPTAB 018836,002680: 40,3427 00006 EXTEND 018837,002681: 40,3430 63432 BZMF DSLV # DSPTAB ENTRY WAS - 018838,002682: 40,3431 25015 INCR NOUT # DSPTAB ENTRY WAS + 018839,002683: 40,3432 00003 DSLV RELINT 018840,002684: 40,3433 00114 TC DSEXIT 018841,002685: 018842,002686: 40,3434 00037 DSMSK OCT 37 018843,002687: 40,3435 01740 OCT 1740 018844,002688: 40,3436 02000 OCT 2000 018845,002689: 40,3437 03740 OCT 3740 018846,002690: 018847,002691: # FOR 11DSPIN, PUT REL ADDRESS OF DSPTAB ENTRY INTO A, 1 IN BIT11 OR 0 IN 018848,002692: # BIT11 OF CODE. 018849,002693: 018850,002694: 40,3440 54141 11DSPIN TS DSREL 018851,002695: 40,3441 34752 CAF TWO 018852,002696: 40,3442 54143 TS COUNT 018853,002697: 40,3443 56002 XCH Q # MUST USE SAME RETURN AS DSPIN 018854,002698: 40,3444 54114 TS DSEXIT 018855,002699: 40,3445 03403 TC DSPIN1 018856,002700: 018857,002701: 40,3446 03356 DSPOCTIN TC DSPIN # SO DSPOCTWO DOESN'T USE (garbled) 018858,002702: 40,3447 33451 CAF +2 018859,002703: 40,3450 04640 TC BANKJUMP 018860,002704: 40,3451 63436 ENDSPOCT CADR OCTBACK 018861,002705: 018862,002706: # DSPALARM FINDS TC NVSUBEND IN ENTRET FOR NVSUB INITIATED ROUTINES 018863,002707: # ABORT WITH 01501. 018864,002708: 018865,002709: # DSPALARM FINDS TC ENDOFJOB IN ENTRET FOR KEYBOARD INITIATED ROUTINES. 018866,002710: # DC TC ENTRET. 018867,002711: 018868,002712: 40,3452 44360 PREDSPAL CS VD1 018869,002713: 40,3453 54776 TS DSPCOUNT 018870,002714: 40,3454 43475 DSPALARM CS NVSBENDL 018871,002715: 40,3455 60136 AD ENTEXIT 018872,002716: 40,3456 00006 EXTEND 018873,002717: 40,3457 13472 BZF CHARALRM +2 018874,002718: 40,3460 43474 CS MONADR # IF THIS IS A MONITOR, KILL IT 018875,002719: 40,3461 60136 AD ENTEXIT 018876,002720: 40,3462 00006 EXTEND 018877,002721: 40,3463 13465 BZF +2 018878,002722: # Page 455 018879,002723: 40,3464 03470 TC CHARALRM 018880,002724: 40,3465 04204 TC KILMONON 018881,002725: 40,3466 04364 TC FALTON 018882,002726: 40,3467 04124 TC PASTEVB # PUT MONITOR VERB BACK IN VERBREG 018883,002727: 40,3470 04364 CHARALRM TC FALTON # NO NVSUB INITATED TURN ON OPR ERROR 018884,002728: 40,3471 05155 TC ENDOFJOB 018885,002729: 40,3472 05642 TC P00DOO 018886,002730: 40,3473 21501 OCT 21501 018887,002731: 40,3474 04124 MONADR GENADR PASTEVB 018888,002732: 40,3475 04202 NVSBENDL TC NVSUBEND 018889,002733: 018890,002734: # ALMCYCLE TURNS ON CHECK FAIL LIGHT, REDISPLAYS THE ORIGINAL VERB THAT 018891,002735: # WAS EXECUTED, AND RECYCLES TO EXECUTE THE ORIGINAL VERB/NOUN COMBINATION 018892,002736: # THAT WAS LAST EXECUTED. USED FOR BAD DATA DURING LOAD VERBS AND BY 018893,002737: # MCTBS. ALSO BY MMCHANG IF 2 NUMERICAL CHARACTERS WERE NOT PUNCHED IN 018894,002738: # FOR MM CODE 018895,002739: 018896,002740: 4145 SETLOC MID7 +1 018897,002741: 4145 COUNT* $$/PIN 018898,002742: 4145 04364 ALMCYCLE TC FALTON # TURN ON CHECK FAIL LIGHT. 018899,002743: 4146 41040 CS VERBSAVE # GET ORIGINAL VERB THAT WAS EXECUTED 018900,002744: 4147 55012 TS REQRET # SET FOR ENTPAS0 018901,002745: 4150 04616 TC BANKCALL # PUTS ORIGINAL VERB INTO VERBREG AND 018902,002746: 4151 62341 CADR UPDATVB -1 # DISPLAYS IT IN VERB LIGHTS. 018903,002747: 4152 04635 TC POSTJUMP 018904,002748: 4153 62002 ENDALM CADR ENTER 018905,002749: 018906,002750: # MMCHANG USES NOUN DISPLAY UNTIL ENTER. THEN IT USES MODE DISP. 018907,002751: # IT GOES TO MODROUT WITH THE NEW MM CODE IN A, BUT NOT DISPLAYED IN 018908,002752: # MM LIGHTS. 018909,002753: 018910,002754: # IT DEMANDS 2 NUMERICAL CHARACTERS BE PUNCHED IN FOR NEW MM CODE. 018911,002755: # IF NOT, IT RECYCLES. 018912,002756: 018913,002757: 41,3443 SETLOC DSPLV +3 018914,002758: 41,3443 COUNT* $$/PIN 018915,002759: 41,3443 03465 MMCHANG TC REQMM # ENTPASHI ASSUMES THE TC REQMM AT MMCHANG 018916,002760: # IF THIS MOVES AT ALL, MUST CHANGE 018917,002761: # MMADREF AT ENTPASHI. 018918,002762: 41,3444 34747 CAF BIT5 # OCT20 = ND2. 018919,002763: 41,3445 60776 AD DSPCOUNT # DSPCOUNT MUST = -ND2. 018920,002764: 41,3446 00006 EXTEND # DEMAND THAT 2 NUM CHAR WERE PUNCHED IN. 018921,002765: 41,3447 13451 BZF +2 018922,002766: 41,3450 04145 TC ALMCYCLE # DSPCOUNT NOT= -ND2. ALARM AND RECYCLE. 018923,002767: 41,3451 34755 CAF ZERO # DSPCOUNT = -ND2. 018924,002768: 41,3452 57001 XCH NOUNREG 018925,002769: 41,3453 54154 TS MPAC 018926,002770: 41,3454 34361 CAF ND1 018927,002771: 41,3455 54776 TS DSPCOUNT 018928,002772: # Page 456 018929,002773: 41,3456 04616 TC BANKCALL 018930,002774: 41,3457 60601 CADR 2BLANK 018931,002775: 41,3460 44360 CS VD1 # BLOCK NUM CHAR IN 018932,002776: 41,3461 54776 TS DSPCOUNT 018933,002777: 41,3462 30154 CA MPAC 018934,002778: 41,3463 04635 TC POSTJUMP 018935,002779: 41,3464 10040 CADR MODROUTB # GO THRU STANDARD LOC. 018936,002780: 018937,002781: 41,3465 04,2040 MODROUTB = V37 018938,002782: 41,3465 40002 REQMM CS Q 018939,002783: 41,3466 55012 TS REQRET 018940,002784: 41,3467 34361 CAF ND1 018941,002785: 41,3470 54776 TS DSPCOUNT 018942,002786: 41,3471 34755 CAF ZERO 018943,002787: 41,3472 55001 TS NOUNREG 018944,002788: 41,3473 04616 TC BANKCALL 018945,002789: 41,3474 60601 CADR 2BLANK 018946,002790: 41,3475 04427 TC FLASHON 018947,002791: 41,3476 34753 CAF ONE 018948,002792: 41,3477 54777 TS DECBRNCH # SET FOR DEC 018949,002793: 41,3500 00136 TC ENTEXIT 018950,002794: 018951,002795: # VBRQEXEC ENTERS REQUEST TO EXEC FOR ANY ADDRESS WITH ANY PRIORITY. 018952,002796: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED. 018953,002797: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WITH 018954,002798: # COMPONENT 1 PRIORITY (BITS 10-14) BIT1=0 FOR NOVAC, BIT1=1 FOR FINDVAC. 018955,002799: # COMPONENT 2 JOB ADRES (12 BIT) 018956,002800: # COMPONENT 3 BBCON 018957,002801: 018958,002802: 41,3501 34753 VBRQEXEC CAF BIT1 018959,002803: 41,3502 71044 MASK DSPTEM1 018960,002804: 41,3503 10000 CCS A 018961,002805: 41,3504 03523 TC SETVAC # IF BIT1 = 1, FINDVAC 018962,002806: 41,3505 34351 CAF TCNOVAC # IF BIT1 = 0, NOVAC 018963,002807: 41,3506 54154 REQEX1 TS MPAC # TC NOVAC OR TC FINDVAC INTO MPAC 018964,002808: 41,3507 44753 CS BIT1 018965,002809: 41,3510 71044 MASK DSPTEM1 018966,002810: 41,3511 54160 TS MPAC +4 # PRIO INTO MPAC+4 AS A TEMP 018967,002811: 41,3512 04457 REQUESTC TC RELDSP 018968,002812: 41,3513 34217 CA ENDINST 018969,002813: 41,3514 54157 TS MPAC +3 # TC ENDOFJOB INTO MPAC+3 018970,002814: 41,3515 00006 EXTEND 018971,002815: 41,3516 31046 DCA DSPTEM1 +1 # JOB ADRES INTO MPAC+1 018972,002816: 41,3517 52156 DXCH MPAC +1 # BBCON INTO MPAC+2 018973,002817: 41,3520 30160 CA MPAC +4 # PRIO IN A 018974,002818: 41,3521 00004 INHINT 018975,002819: 41,3522 00154 TC MPAC 018976,002820: # Page 457 018977,002821: 41,3523 34354 SETVAC CAF TCFINDVC 018978,002822: 41,3524 03506 TC REQEX1 018979,002823: 018980,002824: # VBRQWAIT ENTERS REQUEST TO WAITLIST FOR ANY ADDRESS WITH ANY DELAY. 018981,002825: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED. 018982,002826: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WTIH 018983,002827: # COMPONENT 1 DELAY (LOW BITS) 018984,002828: # COMPONENT 2 TASK ADRES (12 BIT) 018985,002829: # COMPONENT 3 BBCON 018986,002830: 018987,002831: 41,3525 34352 VBRQWAIT CAF TCWAIT 018988,002832: 41,3526 54154 TS MPAC # TC WAITLIST INTO MPAC 018989,002833: 41,3527 31044 CA DSPTEM1 # TIME DELAY 018990,002834: 41,3530 03511 ENDRQWT TC REQUESTC -1 018991,002835: 018992,002836: # REQUESTC WILL PUT TASK ADRES INTO MPAC+1, BBCON INTO MPAC+2, 018993,002837: # TC ENDOFJOB INTO MPAC+3. IT WILL TAKE TIME DELAY OUT OF MPAC+4 AND 018994,002838: # LEAVE IT IN A, INHINT AND TC MPAC. 018995,002839: 018996,002840: 40,3476 SETLOC NVSBENDL +1 018997,002841: 40,3476 COUNT* $$/PIN 018998,002842: 40,3476 34753 VBPROC CAF ONE # PROCEED WITHOUT DATA 018999,002843: 40,3477 55013 TS LOADSTAT 019000,002844: 40,3500 04204 TC KILMONON # TURN ON KILL MONITOR BIT 019001,002845: 40,3501 04457 TC RELDSP 019002,002846: 40,3502 04433 TC FLASHOFF 019003,002847: 40,3503 03612 TC RECALTST # SEE IF THERE IS ANY RECALL FROM ENDIDLE 019004,002848: 019005,002849: 40,3504 44753 VBTERM CS ONE 019006,002850: 40,3505 03477 TC VBPROC +1 # TERM VERB SETS LOADSTAT NEG 019007,002851: 019008,002852: # PROCKEY PERFORMS THE SAME FUNCTION AS VBPROC. IT MUST BE CALLED UNDER 019009,002853: # EXECUTIVE CONTROL, WITH CHRPRIO. 019010,002854: 019011,002855: 40,3506 41000 PROCKEY CS VERBREG # DON'T ALLOW PROCEED DURING LOAD. 019012,002856: 40,3507 63523 AD VBSP2LD* # DEC 22 019013,002857: 40,3510 00006 EXTEND 019014,002858: 40,3511 26000 DIM A 019015,002859: 40,3512 00006 EXTEND 019016,002860: 40,3513 13470 BZF CHARALRM 019017,002861: 40,3514 34755 PROCKEY1 CAF ZERO # SET REQRET FOR ENTER PASS 0. 019018,002862: 40,3515 55012 TS REQRET 019019,002863: 40,3516 44360 CS VD1 # BLOCK NUMERICAL CHARACTERS, SIGNS, CLEAR 019020,002864: 40,3517 54776 TS DSPCOUNT 019021,002865: 40,3520 03476 TC VBPROC 019022,002866: 019023,002867: # VBRESEQ WAKES ENDIDLE AT SAME LINE AS FINAL ENTER OF LOAD (L+3). 019024,002868: # Page 458 019025,002869: # (MAIN USE IS INTENDED AS RESPONSE TO INTERNALLY INITIATED FLASHING 019026,002870: # DISPLAYS IN ENDIDLE. SHOULD NOT BE USED WITH LOAD VERBS, PLEAS PERFORM, 019027,002871: # OR PLEASE MARK VERBS BECAUSE THEY ALREADY USE L+3 IN ANOTHER CONTEXT.) 019028,002872: 019029,002873: 40,3521 44755 VBRESEQ CS ZERO # MAKE IT LOOK LIKE DATA IN. 019030,002874: 40,3522 03477 TC VBPROC +1 019031,002875: 019032,002876: 40,3523 00026 VBSP2LD* DEC 22 B-14 # VB22 = BLOAD 019033,002877: 019034,002878: # FLASH IS TURNED OFF BY PROCEED WITHOUT DATA, TERMINATE, REQUEQUENCE, 019035,002879: # END OF LOAD. 019036,002880: # Page 459 019037,002881: 019038,002882: # KEY RELEASE ROUTINE 019039,002883: 019040,002884: # THIS ROUTINE ALWAYS TURNS OFF THE UPACT LIGHT AND ALWAYS CLEARS DSPLOCK. 019041,002885: 019042,002886: # THE HIGHEST PRIORITY FUNCTION OF THE KEY RELEASE BUTTON IS THE 019043,002887: # UNSUSPENDING OF A SUSPENDED MONITOR WHICH WAS EXTERNALLY INITIATED. 019044,002888: # THIS FUNCTION IS ACCOMPLISHED BY CLEARING DSPLOCK AND TURNING OFF 019045,002889: # THE KEY RELEASE LIGHT IF BOTH DSPLIST AND CADRSTOR ARE EMPTY. 019046,002890: 019047,002891: # IF NO SUCH MONITOR EXISTS, THEN RELDSP IS EXECUTED TO CLEAR DSPLOCK 019048,002892: # AND THE EXTERNAL MONITOR BIT (FREEING THE DISPLAY SYSTEM FOR INTERNAL 019049,002893: # USE), TURN OFF THE KEY RELEASE LIGHT, AND WAKE UP ANY JOB IN DSPLIST. 019050,002894: 019051,002895: # IN ADDITION IF THERE IS A JOB IN ENDIDLE, THEN CONTROL IS TRANSFERRED 019052,002896: # TO PINBRNCH (IN DISPLAY INTERFACE ROUTINE) TO RE-EXECUTE THE SERIES OF 019053,002897: # NVSUB CALLS ETC. THAT PRECEDED THE ENDIDLE CALL STILL AWAITING RESPONSE. 019054,002898: # THIS FEATURE IS INTENDED FOR USE WHEN THE OPERATOR HAS BEEN REQUESTED TO 019055,002899: # RESPOND TO SOME INTERNAL ACTION THAT USED ENDIDLE, BUT HE HAS WRITTEN 019056,002900: # OVER THE INFORMATION ON THE DISPLAY PANEL BY SOME DISPLAYS OF HIS OWN 019057,002901: # INITIATION WHICH DO NOT SERVE AS RESPONSES. HITTING KEYRLSE WILL 019058,002902: # RE-ESTABLISH THE DISPLAYS TO THE STATE THEY WERE IN BEOFRE HE OBSCURED 019059,002903: # THEM, SO THAT HE CAN SEE THE WAITING REQUEST. THIS WORKS ONLY FOR 019060,002904: # INTERNAL PROGRAMS THAT USED ENDIDLE THROUGH MARGARET'S DISPLAY 019061,002905: # SUBROUTINES. 019062,002906: 019063,002907: 40,3524 44751 VBRELDSP CS BIT3 019064,002908: 40,3525 00006 EXTEND 019065,002909: 40,3526 03011 WAND DSALMOUT # TURN OF UPACT LITE 019066,002910: 40,3527 10115 CCS 21/22REG # OLD DSPLOCK 019067,002911: 40,3530 34736 CAF BIT14 019068,002912: 40,3531 71020 MASK MONSAVE1 # EXTERNAL MONITOR BIT (EMB) 019069,002913: 40,3532 10000 CCS A 019070,002914: 40,3533 03542 TC UNSUSPEN # OLD DSPLOCK AND EMB BOTH 1, UNSUSPEND, 019071,002915: 40,3534 04457 TSTLTS4 TC RELDSP # NOT UNSUSPENDING EXTERNAL MONITOR 019072,002916: 40,3535 11041 CCS CADRSTOR # RELEASE DISPLAY SYSTEM AND 019073,002917: 40,3536 03540 TC +2 # DO RE-ESTABLISH IF CADRSTOR IS FULL. 019074,002918: 40,3537 05155 TC ENDOFJOB 019075,002919: 40,3540 04635 TC POSTJUMP 019076,002920: 40,3541 21051 CADR PINBRNCH 019077,002921: 40,3542 34755 UNSUSPEN CAF ZERO # EXTERNAL MONITOR IS SUSPENDED, 019078,002922: 40,3543 55011 TS DSPLOCK # JUST UNSUSPEND IT BY CLEARING DSPLOCK. 019079,002923: 40,3544 11041 CCS CADRSTOR # TURN KEY RELEASE LIGHT OFF IF BOTH 019080,002924: 40,3545 05155 TC ENDOFJOB # CADRSTOR AND DSPLIST ARE EMPTY. 019081,002925: 40,3546 04502 TC RELDSP1 019082,002926: 40,3547 05155 TC ENDOFJOB 019083,002927: 019084,002928: 40,3550 ENDRELDS EQUALS 019085,002929: 019086,002930: # Page 460 019087,002931: # NVSUB IS USED FOR SUBROUTINE CALLS FROM WITHIN COMPUTER. IT CAN BE 019088,002932: # USED TO CALL THE COMBINATION OF ANY DISPLAY, LOAD, OR MONITOR VERB 019089,002933: # TOGETHER WITH ANY NOUN AVAILABLE TO THE KEYBOARD. 019090,002934: # PLACE 0VVVVVVVNNNNNNN INTO A. 019091,002935: # V'S ARE THE 7-BIT VERB CODE. N'S ARE THE 7-BIT NOUN CODE. 019092,002936: 019093,002937: # IF NVSUB IS CALLED WTIH THE FOLLOWING NEGATIVE NUMBERS (RATHER THAN THE 019094,002938: # VERB-NOUN CODE) IN A, THEN THE DISPLAY IS BLANKED AS FOLLOWS --- 019095,002939: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY. 019096,002940: 019097,002941: # NVSUB CAN BE USED WTIH MACHINE CADR TO BE SPECIFIED BY PLACING THE CADR INTO 019098,002942: # MPAC+2 BEFORE THE STANDARD NVSUB CALL. 019099,002943: 019100,002944: # NVSUB RETURNS TO 2+ CALLING LOC AFTER PERFORMING TASK, IF DISPLAY 019101,002945: # SYSTEM IS AVAIALBLE. THE NEW NOUN AND VERB CODES ARE DISPLAYED. 019102,002946: # IF V'S =0, THE NEW NOUN CODE IS DISPLAYED ONLY (RETURN WITH NO FURTHER 019103,002947: # ACTION). IF N'S =0, THE NEW VERB CODE IS DISPLAYED ONLY (RETURN WITH NO 019104,002948: # FURTHER ACTION). 019105,002949: 019106,002950: # IT RETURNS TO 1+ CALLING LOC WITHOUT PERFORMING TASK, IF DISPLAY 019107,002951: # SYSTEM IS BLOCKED (NOTHING IS DISPLAYED IN THIS CASE). 019108,002952: # IT DOES TC ABORT (WITH OCT 01501) IF IT ENCOUNTERS A DISPLAY PROGRAM 019109,002953: # ALARM CONDITION BEFORE RETURN TO CALLER. 019110,002954: 019111,002955: # THE DISPLAY SYSTEM IS BLOCKED BY THE DEPRESSION OF ANY 019112,002956: # KEY, EXCEPT ERROR LIGHT RESET. 019113,002957: # IT IS RELEASED BY THE KEY RELEASE BUTTON, ALL EXTENDED VERBS, 019114,002958: # PROCED WITOHOUT DATA, TERMINATE, RESEQUENCE, INITIALIZE EXECUTIVE, 019115,002959: # RECALL PART OF RECALTST IF ENDIDLE WAS USED, 019116,002960: # VB = REQUEST EXECUTIVE, VB = REQUEST WAITLIST, 019117,002961: # MONITOR SET UP. 019118,002962: 019119,002963: # THE DISPLAY SYSTEM IS ALSO BLOCKED BY THE EXTERNAL MONITOR BIT, WHICH 019120,002964: # INDICATES AND EXTERNALLY INITIATED MONITOR IS RUNNING (SEE MONITOR). 019121,002965: 019122,002966: # A NVSUB CALL THAT PASSES DSPLOCK AND THE EXTERNAL MONITOR BIT ENDS OLD 019123,002967: # MONITOR. 019124,002968: 019125,002969: # DSPLOCK IS THE INTERLOCK FOR USE OF KEYBOARD AND DISPLAY SYSTEM WHICH 019126,002970: # LOCKS OUT INTERNAL USE WHENEVER THERE IS EXTERNAL KEYBOARD ACTION. 019127,002971: 019128,002972: # NVSUB SHOULD BE USED TWICE IN SUCCESSION FOR `PLEASE PERFORM' SITUATIONS 019129,002973: # (SIMILARLY FOR PLEASE MARK). FIRST PLACE THE CODED NUMBER FOR WHAT 019130,002974: # ACTION IS DESIRED OF OPERATOR INTO THEREGISTERS REFERRED TO BY THE 019131,002975: # `CHECKLIST' NOUN. GO TO NVSUB WITH A DISPLAY VERB AND THE `CHECKLIST' 019132,002976: # NOUN. GO TO NVSUB AGAIN WTIH THE `PLEASE PERFORM' VERB AND ZEROS IN THE 019133,002977: # LOW 7 BITS. THIS `PASTES UP' THE `PLEASE PERFORM' VERB INTO THE VERB 019134,002978: # LIGHTS. 019135,002979: 019136,002980: # NVMONOPT IS AN ENTRY SIMILAR TO NVSUB, BUT REQUIRING AN ADDITIONAL 019137,002981: # Page 461 019138,002982: # PARAMETER IN L. IT SHOULD BE USED ONLY WITH A MONITOR VERB-NOUN CODE IN 019139,002983: # A. AFTER EACH MONITOR DISPLAY A *PLEASE* VERB WILL BE PASED INT THE VERB 019140,002984: # LIGHTS OR DATA WILL BE BLANKED (OR BOTH) ACCORDING TO THE OPTIONS 019141,002985: # SPECIFIED IN L. IF BITS 8-14 OF L ARE OTHER THAN ZERO, THEN THEY WILL 019142,002986: # BE INTERPRETED AS A VERB CODE AND PASTED IN THE VERB LIGHTS. (THIS VERB 019143,002987: # CODE SHOULD DESIGNATE ONE OF THE *PLEASE* VERBS.) IF BITS 1-3 OF L ARE 019144,002988: # OTHER THAN ZERO, THEN THEY WILL BE USED BO BLANK DATA BY BEING FED TO 019145,002989: # BLANKSUB. IF NVMONOPT IS USED WITH A VERB OTHER THAN A MONITOR VERB, 019146,002990: # THE PARAMETER IN L HAS NO EFFECT. 019147,002991: 019148,002992: # NVSUB IN FIXED-FIXED PLACES 2+CALLING LOC INTO NVQTEM, TC NVSUBEND INTO 019149,002993: # ENTRET. (THIS WILL RESTORE OLD CALLING BANK BITS) 019150,002994: 019151,002995: 4154 SETLOC ENDALM +1 019152,002996: 019153,002997: 4154 COUNT* $$/PIN 019154,002998: 4154 22007 NVSUB LXCH 7 # ZERO NVMONOPT OPTIONS 019155,002999: 4155 54123 NVMONOPT TS NVTEMP 019156,003000: 4156 34736 CAF BIT14 019157,003001: 4157 71020 MASK MONSAVE1 # EXTERNAL MONITOR BIT 019158,003002: 4160 61011 AD DSPLOCK 019159,003003: 4161 10000 CCS A 019160,003004: 4162 00002 TC Q # DSP SYST BLOCKED. RET TO 1. CALLING LOC 019161,003005: 4163 34753 CAF ONE # DSP SYST AVAILABLE. 019162,003006: 4164 60002 NVSBCOM AD Q 019163,003007: 4165 55036 TS NVQTEM # 2+ CALLING LOC INTO NVQTEM 019164,003008: 4166 23021 LXCH MONSAVE2 # STORE NVMONOPT OPTIONS 019165,003009: 4167 04204 TC KILMONON # TURN ON KILL MONITOR BIT 019166,003010: 4170 34201 NVSUBCOM CAF NVSBBBNK 019167,003011: 019168,003012: 4171 56006 XCH BBANK 019169,003013: 4172 00006 EXTEND # SAVE OLD SUPERBITS 019170,003014: 4173 04007 ROR SUPERBNK 019171,003015: 4174 55037 TS NVBNKTEM 019172,003016: 4175 34201 CAF PINSUPBT 019173,003017: 4176 00006 EXTEND 019174,003018: 4177 01007 WRITE SUPERBNK 019175,003019: 4200 02000 TC NVSUBB # GO TO NVSUB1 THRU STANDARD LOC 019176,003020: 4201 0776 EBANK= DSPCOUNT 019177,003021: 4201 62101 NVSBBBNK BBCON NVSUB1 019178,003022: 019179,003023: 4202 4201 PINSUPBT = NVSBBBNK # CONTAINS THE PINBALL SUPERBIT. 019180,003024: 019181,003025: 4202 53037 NVSUBEND DXCH NVQTEM # NVBNKTEM MUST = NVQTEM+1 019182,003026: 4203 05165 TC SUPDXCHZ # DTCB WITH SUPERBIT SWITCHING 019183,003027: 019184,003028: 41,3531 SETLOC ENDRQWT +1 019185,003029: 019186,003030: 41,3531 COUNT* $$/PIN 019187,003031: 019188,003032: # BLANKDSP BLANKS DISPLAY ACCORDING TO OPTION NUMBER IN NVTEMP AS FOLLOWS: 019189,003033: # Page 462 019190,003034: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY. 019191,003035: 019192,003036: 41,3531 64757 BLANKDSP AD SEVEN # 7,8,9, OR 10 (A HAD 0,1,2,OR 3) 019193,003037: 41,3532 00004 INHINT 019194,003038: 41,3533 54124 TS CODE # BLANK SPECIFIED DSPTABS 019195,003039: 41,3534 44740 CS BIT12 019196,003040: 41,3535 50124 INDEX CODE 019197,003041: 41,3536 57022 XCH DSPTAB 019198,003042: 41,3537 10000 CCS A 019199,003043: 41,3540 25015 INCR NOUT 019200,003044: 41,3541 03542 TC +1 019201,003045: 41,3542 10124 CCS CODE 019202,003046: 41,3543 03533 TC BLANKDSP +2 019203,003047: 41,3544 00003 RELINT 019204,003048: 41,3545 50123 INDEX NVTEMP 019205,003049: 41,3546 03553 TC +5 019206,003050: 41,3547 03550 TC +1 # NVTEMP HAS -4 (NEVER TOUCH MODREG) 019207,003051: 41,3550 55000 TS VERBREG # -3 019208,003052: 41,3551 55001 TS NOUNREG # -2 019209,003053: 41,3552 55014 TS CLPASS # -1 019210,003054: 41,3553 44360 CS VD1 019211,003055: 41,3554 54776 TS DSPCOUNT 019212,003056: 41,3555 04433 TC FLASHOFF # PROTECT AGAINS INVISIBLE FLASH 019213,003057: 41,3556 03601 TC ENTSET -2 # ZEROS REQRET 019214,003058: 019215,003059: 41,3557 33603 NVSUB1 CAF ENTSET # IN BANK 019216,003060: 41,3560 54136 TS ENTRET # SET RETURN TO NVSUBEND 019217,003061: 41,3561 10123 CCS NVTEMP # WHAT NOW 019218,003062: 41,3562 03566 TC +4 # NORMAL NVSUB CALL (EXECUTE VN OR PASTE) 019219,003063: 41,3563 02353 TC GODSPALM 019220,003064: 41,3564 03531 TC BLANKDSP # BLANK DISPLAY AS SPECIFIED 019221,003065: 41,3565 02353 TC GODSPALM 019222,003066: 41,3566 36077 CAF LOW7 019223,003067: 41,3567 70123 MASK NVTEMP 019224,003068: 41,3570 54157 TS MPAC +3 # TEMP FOR NOUN (CAN'T USE MPAC. DSPDECVN 019225,003069: 41,3571 30123 CA NVTEMP # USES MPAC, +1, +2). 019226,003070: 41,3572 54023 TS EDOP # RIGHT 7 019227,003071: 41,3573 30023 CA EDOP 019228,003072: 41,3574 54160 TS MPAC +4 # TEMP FOR VERB (CAN'T USE MPAC+1. DSPDECVN 019229,003073: # USES MPAC, +1, +2) 019230,003074: 41,3575 10157 CCS MPAC +3 # TEST NOUN 019231,003075: 41,3576 03604 TC NVSUB2 # IF NOUN NOT +0, GO ON 019232,003076: 41,3577 30160 CA MPAC +4 019233,003077: 41,3600 02341 TC UPDATVB -1 # IF NOUN = +0, DISPLAY VERB. THEN RETURN 019234,003078: 41,3601 34755 CAF ZERO # XERO REQRET SO THAT PASTED VERBS CAN 019235,003079: 41,3602 55012 TS REQRET # BE EXECUTED BY OPERATOR. 019236,003080: 41,3603 04202 ENTSET TC NVSUBEND 019237,003081: 41,3604 10160 NVSUB2 CCS MPAC +4 # TEST VERB 019238,003082: 41,3605 03611 TC +4 # IF VERB NOT +0, GO ON 019239,003083: 41,3606 30157 CA MPAC +3 019240,003084: # Page 463 019241,003085: 41,3607 02321 TC UPDATNN -1 # IF VERB = +0, DISPLAY NOUN. THEN RETURN 019242,003086: 41,3610 04202 TC NVSUBEND 019243,003087: 41,3611 30156 CA MPAC +2 # TEMP FOR MACH CADR TO BE SPEC. (DSPDECVN 019244,003088: 41,3612 54161 TS MPAC +5 # USES MPAC, +1, +2) 019245,003089: 41,3613 30160 CA MPAC +4 019246,003090: 41,3614 02341 TC UPDATVB -1 # IF BOTH NOUN AND VERB NOT +0, DISPLAY 019247,003091: 41,3615 30157 CA MPAC +3 # BOTH AND GO TO ENTPAS0. 019248,003092: 41,3616 02321 TC UPDATNN -1 019249,003093: 41,3617 34755 CAF ZERO 019250,003094: 41,3620 55013 TS LOADSTAT # SET FOR WAITING FOR DATA CONDITION 019251,003095: 41,3621 55014 TS CLPASS 019252,003096: 41,3622 55012 TS REQRET # SET REQRET FOR PASS 0. 019253,003097: 41,3623 30161 CA MPAC +5 # RESTORES MACH CADR TO BE SPEC TO MPAC+2 019254,003098: 41,3624 54156 TS MPAC +2 # FOR USE IN INTMCTBS (IN ENTPAS0). 019255,003099: 41,3625 02035 ENDNVSB1 TC ENTPAS0 019256,003100: 019257,003101: # IF INTERNAL MACH CADR TO BE SPECIFIED, MPAC+2 WILL BE PLACED INTO 019258,003102: # NOUNCADR IN ENTPAS0 (INTMCTBS). 019259,003103: 019260,003104: 4204 SETLOC NVSUBEND +2 019261,003105: 4204 COUNT* $$/PIN 019262,003106: # FORCE BIT 15 OF MONSAVE1 TO . 019263,003107: 4204 34735 KILMONON CAF BIT15 # THIS IS THE KILL MONITOR BIT. 019264,003108: 4205 55020 TS MONSAVE1 # TURN OFF BIT 14, THE EXTERNAL 019265,003109: # MONITOR BIT. 019266,003110: 4206 00002 TC Q 019267,003111: 019268,003112: # LOADSTAT +0 INACTIVE (WAITING FOR DATA). SET BY NVSUB 019269,003113: # +1 PROCEED NO DATA. SET BY SPECIAL VERB 019270,003114: # -1 TERMINATE. SET BY SPECIAL VERB. 019271,003115: # -0 DATA IN. SET BY END OF LOAD ROUTINE. 019272,003116: # OR RESEQUENCE. SET BY VERB 32 019273,003117: 019274,003118: # L TO ENDIDLE (FIXED FIXED). 019275,003119: # ROUTINES THAT REQUEST LOADS THROUGH NVSUB SHOULD USE ENDIDLE WHILE 019276,003120: # WAITING FOR THE DATA TO BE LOADED. ENDIDLE PUTS CURRENT JOB TO SLEEP. 019277,003121: # ENDIDLE CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY, 019278,003122: # SINCE JOB SLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS. 019279,003123: # RECALTST TESTS LOADSTAT AND WAKES JOB UP TO, 019280,003124: # L+1 FOR TERMINATE 019281,003125: # L+2 FOR PROCEED WITHOUT DATA 019282,003126: # L+3 FOR DATA IN, OR RESEQUENCE 019283,003127: # IT DOES NOTHING IF LOADSTAT INDICATES WAITING FOR DTA. 019284,003128: 019285,003129: # ENDIDLE ABORTS (WITH CODE 1206) IF A SECOND JOB ATTEMPTS TO GO TO SLEEP 019286,003130: # Page 464 019287,003131: # IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MADE TO GO TO ENDIDLE WHEN 019288,003132: # 1) CADRSTOR NOT= +0. THIS IS THE CASE WHERE THE CAPACITY OF ENDIDLE IS 019289,003133: # EXCEEDED. (+-NZ INDICATES A JOB IS ALREADY ASLEEP DUE TO ENDIDDLE.) 019290,003134: # 2) DSPLIST NOT= +0. THIS INDICATES A JOB IS ALREADY ASLEEP DUE TO 019291,003135: # NVSUBUSY. 019292,003136: 019293,003137: 4207 22002 ENDIDLE LXCH Q # RETURN ADDRESS INTO L. 019294,003138: 4210 04220 TC ISCADR+0 # ABORT IF CADRSTOR NOT= +0. 019295,003139: 4211 04224 TC ISLIST+0 # ABORT IF DSPLIST NOT= +0 019296,003140: 4212 30001 CA L # DON'T SET DSPLOC TO 1 SO CAN USE 019297,003141: 4213 75012 MASK LOW10 # ENDIDLE WITH NVSUB INITIATE MONITOR. 019298,003142: 4214 60004 AD FBANK # SAME STRATEGY FOR CADR AS MAKECADR. 019299,003143: 4215 55041 TS CADRSTOR 019300,003144: 4216 05133 TC JOBSLEEP 019301,003145: 019302,003146: 4217 05155 ENDINST TC ENDOFJOB 019303,003147: 019304,003148: 4220 11041 ISCADR+0 CCS CADRSTOR # ABORTS (CODE 01206) IF CADRSTOR NOT= +0. 019305,003149: 4221 04227 TC DSPABORT # RETURNS IF CADRSTOR = +0. 019306,003150: 4222 00002 TC Q 019307,003151: 4223 04227 TC DSPABORT 019308,003152: 019309,003153: 4224 11042 ISLIST+0 CCS DSPLIST # ABORTS (CODE 01206) IF DSPLIST NOT= +0. 019310,003154: 4225 04227 TC DSPABORT # RETURNS IF DSPLIST = +0. 019311,003155: 4226 00002 TC Q 019312,003156: 4227 05624 DSPABORT TC BAILOUT 019313,003157: 4230 31206 OCT 31206 019314,003158: 019315,003159: # JAMTERM ALLOWS PROGRAMS TO PERFORM THE TERMINATE FUNCTION. 019316,003160: # IT DOES ENDOFJOB. 019317,003161: 019318,003162: 4231 34201 JAMTERM CAF PINSUPBT 019319,003163: 4232 00006 EXTEND 019320,003164: 4233 01007 WRITE SUPERBNK 019321,003165: 4234 34242 CAF 34DEC 019322,003166: 4235 55012 TS REQRET # LEAVE ENTER SET FOR ENTPASS0. 019323,003167: 4236 44360 CS VD1 019324,003168: 4237 54776 TS DSPCOUNT 019325,003169: 4240 04635 TC POSTJUMP 019326,003170: 4241 61504 CADR VBTERM 019327,003171: 019328,003172: 4242 00042 34DEC DEC 34 B-14 019329,003173: 019330,003174: # JAMPROC ALLOWS PROGRAMS TO PERFORM THE PROCEED/PROCEED WITHOUT DATA 019331,003175: # FUNCTION. IT DOES ENDOFJOB. 019332,003176: 019333,003177: 4243 34201 JAMPROC CAF PINSUPBT 019334,003178: # Page 465 019335,003179: 4244 00006 EXTEND 019336,003180: 4245 01007 WRITE SUPERBNK 019337,003181: 4246 34254 CAF 33DEC 019338,003182: 4247 55012 TS REQRET # LEAVE ENTER SET FOR ENTPASS0. 019339,003183: 4250 44360 CS VD1 019340,003184: 4251 54776 TS DSPCOUNT 019341,003185: 4252 04635 TC POSTJUMP 019342,003186: 4253 61476 CADR VBPROC 019343,003187: 019344,003188: 4254 00041 33DEC DEC 33 B-14 019345,003189: 019346,003190: # BLANKSUB BLANKS ANY COMBINATION OF R1, R2, R3. 019347,003191: # CALL WITH BLANKING CODE IN A. 019348,003192: # BIT1=1 BLANKS R1, BIT2=1 BLANKS R2, BIT3=1 BLANKS R3. 019349,003193: # ANY COMBINATION OF THESE BITS IS ACCEPTED. 019350,003194: 019351,003195: # DSPCOUNT IS RESTORED TO STATE IT WAS IN BEFORE BLANKSUB WAS EXECUTED. 019352,003196: 019353,003197: 4255 74757 BLANKSUB MASK SEVEN 019354,003198: 4256 54123 TS NVTEMP # STORE BLANKING CODE IN NVTEMP. 019355,003199: 4257 34736 CAF BIT14 019356,003200: 4260 71020 MASK MONSAVE1 # EXTERNAL MONITOR BIT 019357,003201: 4261 61011 AD DSPLOCK 019358,003202: 4262 10000 CCS A 019359,003203: 4263 00002 TC Q # DSP SYST BLOCKED. RET TO 1+ CALLING LOC 019360,003204: 4264 24002 INCR Q # DSP SYST AVAILABLE 019361,003205: # SET RETURN FOR 2+ CALLING LOC 019362,003206: 4265 10123 CCS NVTEMP 019363,003207: 4266 14270 TCF +2 019364,003208: 4267 00002 TC Q # NOTHING TO BLANK. RET TO 2+ CALLING LOC 019365,003209: 4270 22002 LXCH Q # SET RETURN FOR 2 + CALLING LOC 019366,003210: 4271 34302 CAF BLNKBBNK 019367,003211: 4272 56006 XCH BBANK 019368,003212: 4273 00006 EXTEND 019369,003213: 4274 04007 ROR SUPERBNK # SAVE OLD SUPERBITS. 019370,003214: 4275 52131 DXCH BUF 019371,003215: 4276 34201 CAF PINSUPBT 019372,003216: 4277 00006 EXTEND 019373,003217: 4300 01007 WRITE SUPERBNK 019374,003218: 4301 03550 TC BLNKSUB1 019375,003219: 019376,003220: 4302 0776 EBANK= DSPCOUNT 019377,003221: 4302 60101 BLNKBBNK BBCON BLNKSUB1 019378,003222: 4303 ENDBLFF EQUALS 019379,003223: 019380,003224: 40,3550 SETLOC ENDRELDS 019381,003225: 40,3550 COUNT* $$/PIN 019382,003226: 40,3550 30776 BLNKSUB1 CA DSPCOUNT # SAVE OLD DSPCOUNT FOR LATER RESTORATION 019383,003227: 40,3551 54132 TS BUF +2 019384,003228: # Page 466 019385,003229: 40,3552 34753 CAF BIT1 # TEST BIT1. SEE IF R1 TO BE BLANKED. 019386,003230: 40,3553 03572 TC TESTBIT 019387,003231: 40,3554 34317 CAF R1D1 019388,003232: 40,3555 02535 TC 5BLANK -1 019389,003233: 40,3556 34752 CAF BIT2 # TEST BIT2. SEE IF R2 TO BE BLANKED. 019390,003234: 40,3557 03572 TC TESTBIT 019391,003235: 40,3560 34320 CAF R2D1 019392,003236: 40,3561 02535 TC 5BLANK -1 019393,003237: 40,3562 34751 CAF BIT3 # TEST BIT3. SEE IF R3 TO BE BLANKED. 019394,003238: 40,3563 03572 TC TESTBIT 019395,003239: 40,3564 34321 CAF R3D1 019396,003240: 40,3565 02535 TC 5BLANK -1 019397,003241: 40,3566 30132 CA BUF +2 # RESTORE DSPCOUNT TO STATE IT HAD 019398,003242: 40,3567 54776 TS DSPCOUNT # BEFORE BLANKSUB. 019399,003243: 40,3570 52131 DXCH BUF # CALL L+2 DIRECTORY. 019400,003244: 40,3571 05166 TC SUPDXCHZ +1 # DTCB WITH SUPERBIT (garbled) 019401,003245: 019402,003246: 40,3572 70123 TESTBIT MASK NVTEMP # NVTEMP CONTAINS BLANK(garbled) CODE 019403,003247: 40,3573 10000 CCS A 019404,003248: 40,3574 00002 TC Q # IF CURRENT BIT = 1, RETURN TO L+1. 019405,003249: 40,3575 50002 INDEX Q # IF CURRENT BIT = 0, RETURN TO L+3. 019406,003250: 40,3576 00002 TC 2 019407,003251: 019408,003252: 40,3577 ENDBSUB1 EQUALS 019409,003253: 019410,003254: # DSPMM DOES NOT DISPLAY MODREG DIRECTLY. IT PUTS IN EXEC REQUEST WITH 019411,003255: # PRIO 30000 FOR DSPMMJB AND RETURNS TO CALLER. 019412,003256: 019413,003257: # IF MODREG CONTAINS -0, DSPMMJB BLANKS THE MODE LIGHTS. 019414,003258: 019415,003259: # DSPMM MUST BE IN BANK 27 OR LOWER, SO IT CAN BE CALLED VIA BANKCALL. 019416,003260: 019417,003261: 07,2666 BANK 7 019418,003262: 04,2000 SETLOC PINBALL4 019419,003263: 04,2000 BANK 019420,003264: 019421,003265: 04,2622 COUNT* $$/PIN 019422,003266: 04,2622 56002 DSPMM XCH Q 019423,003267: 04,2623 54154 TS MPAC 019424,003268: 04,2624 00004 INHINT 019425,003269: 04,2625 34355 CAF CHRPRIO 019426,003270: 04,2626 05072 TC NOVAC 019427,003271: 04,2627 0776 EBANK= DSPCOUNT 019428,003272: 04,2627 03577 60101 2CADR DSPMMJB 019429,003273: 019430,003274: 04,2631 00003 RELINT 019431,003275: 04,2632 00154 ENDSPMM TC MPAC 019432,003276: 019433,003277: # DSPMM PLACE MAJOR MODE CODE INTO MODREG 019434,003278: # Page 467 019435,003279: 019436,003280: 40,3577 SETLOC ENDBSUB1 019437,003281: 019438,003282: 40,3577 COUNT* $$/PIN 019439,003283: 40,3577 34362 DSPMMJB CAF MD1 # GETS HERE THRU DSPMM 019440,003284: 40,3600 56776 XCH DSPCOUNT 019441,003285: 40,3601 54140 TS DSPMMTEM # SAVE DSPCOUNT 019442,003286: 40,3602 11010 CCS MODREG 019443,003287: 40,3603 64753 AD ONE 019444,003288: 40,3604 03342 TC DSPDECVN # IF MODREG IS + OR +0, DISPLAY MODREG 019445,003289: 40,3605 03607 TC +2 # IF MODREG IS -NZ, DO NOTHING 019446,003290: 40,3606 02601 TC 2BLANK # IF MODREG IS -0, BLANK MM 019447,003291: 40,3607 56140 XCH DSPMMTEM # RESTORE DSPCOUNT 019448,003292: 40,3610 54776 TS DSPCOUNT 019449,003293: 40,3611 05155 TC ENDOFJOB 019450,003294: 019451,003295: # RECALTST IS ENTERED DIRECTLY AFTER DATA IS LOADED (OR RESEQUENCE VERB IS 019452,003296: # EXECUTED), TERMINATE VERB IS EXECUTED, OR PROCEED WITHOUT DATA VERB IS 019453,003297: # EXECUTED. IT WAKES UP JOB THAT DID TC ENDIDLE. 019454,003298: # 019455,003299: # IF CADRSTOR NOT= +0, IT PUTS +0 INTO DSPLOCK, AND TURNS OFF KEY RLSE 019456,003300: # LIGHT IF DSPLIST IS EMPTY (LEAVES KEY RLSE LLIGHT ALONE IF NOT EMPTY). 019457,003301: 019458,003302: 40,3612 11041 RECALTST CCS CADRSTOR 019459,003303: 40,3613 03615 TC RECAL1 019460,003304: 40,3614 05155 TC ENDOFJOB # NORMAL EXIT IF KEYBOARD INITIATED 019461,003305: 40,3615 34755 RECAL1 CAF ZERO 019462,003306: 40,3616 57041 XCH CADRSTOR 019463,003307: 40,3617 00004 INHINT 019464,003308: 40,3620 05137 TC JOBWAKE 019465,003309: 40,3621 11013 CCS LOADSTAT 019466,003310: 40,3622 03644 TC DOPROC # + PROCEED WITHOUT DATA 019467,003311: 40,3623 05155 TC ENDOFJOB # PATHELOGICAL CASE EXIT 019468,003312: 40,3624 03642 TC DOTERM # - TERMINATE 019469,003313: 40,3625 34752 CAF TWO # -0 DATA IN OR RESEQUENCE 019470,003314: 40,3626 50064 RECAL2 INDEX LOCCTR 019471,003315: 40,3627 60164 AD LOC # LOC IS + FOR BASIC JOBS 019472,003316: 40,3630 50064 INDEX LOCCTR 019473,003317: 40,3631 54164 TS LOC 019474,003318: 40,3632 31001 CA NOUNREG # SAVE VERB IN MPAC, NOUN IN MPAC+1 AT 019475,003319: 40,3633 54001 TS L # TIME OF RESPONSE TO ENDIDLE FOR 019476,003320: 40,3634 31000 CA VERBREG # POSSIBLE LATER TESTING BY JOB THAT HAS 019477,003321: 40,3635 50064 INDEX LOCCTR # BEEN WAKED UP. 019478,003322: 40,3636 52155 DXCH MPAC 019479,003323: 40,3637 00003 RELINT 019480,003324: 40,3640 04457 RECAL3 TC RELDSP 019481,003325: 40,3641 05155 TC ENDOFJOB 019482,003326: 019483,003327: 40,3642 34755 DOTERM CAF ZERO 019484,003328: 40,3643 03626 TC RECAL2 019485,003329: # Page 468 019486,003330: 40,3644 34753 DOPROC CAF ONE 019487,003331: 40,3645 03626 TC RECAL2 019488,003332: 019489,003333: # Page 469 019490,003334: 4303 SETLOC ENDBLFF 019491,003335: 019492,003336: 4303 COUNT* $$/PIN 019493,003337: 019494,003338: # SETNCADR E CADR ARRIVES IN A. IT IS STORED IN NOUNCADR. EBANK BITS 019495,003339: # ARE SET. E ADRES IS DERIVED AND PUT INTO NOUNADD. 019496,003340: 019497,003341: 4303 55016 SETNCADR TS NOUNCADR # STORE ECADR 019498,003342: 4304 54003 TS EBANK # SET EBANK BITS 019499,003343: 4305 74357 MASK LOW8 019500,003344: 4306 65007 AD OCT1400 019501,003345: 4307 54145 TS NOUNADD # PUT E ADRES INTO NOUNADD 019502,003346: 4310 00002 TC Q 019503,003347: 019504,003348: # SETNADD GETS E CADR FROM NOUNCADR, SETS EBANK BITS, DERIVES 019505,003349: # E ADRES AND PUTS IT INTO NOUNADD. 019506,003350: 019507,003351: 4311 31016 SETNADD CA NOUNCADR 019508,003352: 4312 14304 TCF SETNCADR +1 019509,003353: 019510,003354: # SETEBANK E CADR ARRIVES IN A. EBANK BITS ARE SET. E ADRES IS 019511,003355: # DERIVED AND LEFT IN A. 019512,003356: 019513,003357: 4313 54003 SETEBANK TS EBANK # SET EBANK BITS 019514,003358: 4314 74357 MASK LOW8 019515,003359: 4315 65007 AD OCT1400 # E ADRES LEFT IN A 019516,003360: 4316 00002 TC Q 019517,003361: 019518,003362: 4317 00016 R1D1 OCT 16 # THESE 3 CONSTANTS FORM A PACKED TABLE. 019519,003363: 4320 00011 R2D1 OCT 11 # DON'T SEPARATE. 019520,003364: 4321 00004 R3D1 OCT 4 019521,003365: 019522,003366: 4322 54020 RIGHT5 TS CYR 019523,003367: 4323 40020 CS CYR 019524,003368: 4324 40020 CS CYR 019525,003369: 4325 40020 CS CYR 019526,003370: 4326 40020 CS CYR 019527,003371: 4327 56020 XCH CYR 019528,003372: 4330 00002 TC Q 019529,003373: 019530,003374: 4331 54022 LEFT5 TS CYL 019531,003375: 4332 40022 CS CYL 019532,003376: 4333 40022 CS CYL 019533,003377: 4334 40022 CS CYL 019534,003378: 4335 40022 CS CYL 019535,003379: # Page 470 019536,003380: 4336 56022 XCH CYL 019537,003381: 4337 00002 TC Q 019538,003382: 019539,003383: 4340 60000 SLEFT5 DOUBLE 019540,003384: 4341 60000 DOUBLE 019541,003385: 4342 60000 DOUBLE 019542,003386: 4343 60000 DOUBLE 019543,003387: 4344 60000 DOUBLE 019544,003388: 4345 00002 TC Q 019545,003389: 019546,003390: 4346 00037 LOW5 OCT 37 # THESE 3 CONSTANTS FORM A PACKED TABLE. 019547,003391: 4347 01740 MID5 OCT 1740 # DON'T SEPARATE. 019548,003392: 4350 76000 HI5 OCT 76000 # MUST STAY HERE 019549,003393: 019550,003394: 4351 05072 TCNOVAC TC NOVAC 019551,003395: 4352 05203 TCWAIT TC WAITLIST 019552,003396: 4353 05261 TCTSKOVR TC TASKOVER 019553,003397: 4354 05105 TCFINDVC TC FINDVAC 019554,003398: 019555,003399: 4355 30000 CHRPRIO OCT 30000 # EXEC PRIORITY OF CHARIN 019556,003400: 019557,003401: 4356 03777 LOW11 OCT 3777 019558,003402: 4357 4356 B12-1 EQUALS LOW11 019559,003403: 4357 00377 LOW8 OCT 377 019560,003404: 019561,003405: 4360 00023 VD1 OCT 23 # THESE 3 CONSTANTS FORM A PACKED TABLE. 019562,003406: 4361 00021 ND1 OCT 21 # DON'T SEPARATE. 019563,003407: 4362 00025 MD1 OCT 25 019564,003408: 019565,003409: 4363 00012 BINCON DEC 10 B-14 019566,003410: 019567,003411: 4364 34745 FALTON CA BIT7 # TURN ON OPERATOR ERROR LIGHT. 019568,003412: 4365 00006 EXTEND 019569,003413: 4366 05011 WOR DSALMOUT # BIT 7 OF CHANNEL 11 019570,003414: 4367 00002 TC Q 019571,003415: 019572,003416: 4370 44745 FALTOF CS BIT7 # TURN OFF OPERATOR ERROR LIGHT 019573,003417: 4371 00006 EXTEND 019574,003418: 4372 03011 WAND DSALMOUT # BIT 7 OF CHANNEL 11 019575,003419: 4373 00002 TC Q 019576,003420: 019577,003421: 4374 34747 RELDSPON CAF BIT5 # TURN ON KEY RELEASE LIGHT 019578,003422: 4375 00006 EXTEND 019579,003423: 4376 05011 WOR DSALMOUT # BIT 5 OF CHANNEL 11 019580,003424: 4377 00002 TC Q 019581,003425: 019582,003426: # Page 471 019583,003427: 4400 00006 LODSAMPT EXTEND 019584,003428: 4401 30025 DCA TIME2 019585,003429: 4402 52014 DXCH SAMPTIME 019586,003430: 4403 00002 TC Q 019587,003431: 019588,003432: 4404 00006 TPSL1 EXTEND # SHIFTS MPAC, +1, +2 LEFT 1 019589,003433: 4405 30156 DCA MPAC +1 # LEAVES OVFIND SET TO +/- 1 FOR OF/UF 019590,003434: 4406 20156 DAS MPAC +1 019591,003435: 4407 60154 AD MPAC 019592,003436: 4410 26154 ADS MPAC 019593,003437: 4411 54007 TS 7 # TS A DOES NOT CHANGE A ON OF/UF. 019594,003438: 4412 00002 TC Q # NO NET OF/UF 019595,003439: 4413 54162 TS MPAC+6 # MPAC +6 SET TO +/- 1 FOR OF/UF 019596,003440: 4414 00002 TC Q 019597,003441: 019598,003442: # IF MPAC, +1 ARE EACH +NZ OR +0 AND C(A)=-0, SHORTMP WRONGLY GIVES +0. 019599,003443: # IF MPAC, +1 ARE EACH -NZ OR -0 AND C(A)=+0, SHORTMP WRONGLY GIVES +0. 019600,003444: # PRSHRTMP FIXES FORST CASE ONLY, BY MERELY TESTING C(A) AND IF IT = -0, 019601,003445: # SETTING RESULT TO -0. 019602,003446: 019603,003447: # (DO NOT USE PRSHRTMP UNLESS MPAC, +1 ARE EACH +NZ OR +0, AS THEY ARE 019604,003448: # WHEN THEY CONTAIN THE SF CONSTANTS.) 019605,003449: 019606,003450: 4415 54135 PRSHRTMP TS MPTEMP 019607,003451: 4416 10000 CCS A 019608,003452: 4417 30135 CA MPTEMP # C(A) +, DO REGULAR SHORTMP 019609,003453: 4420 17313 TCF SHORTMP +1 # C(A) +0, DO REGULAR SHORTMP 019610,003454: 4421 14417 TCF -2 # C(A) -, DO REGULAR SHORTMP 019611,003455: 4422 44755 CS ZERO # C(A) -0, FORCE RESULT TO -0 AND RETURN. 019612,003456: 4423 54154 TS MPAC 019613,003457: 4424 54155 TS MPAC +1 019614,003458: 4425 54156 TS MPAC +2 019615,003459: 4426 00002 TC Q 019616,003460: 019617,003461: 4427 34746 FLASHON CAF BIT6 # TURN ON V/N FLASH 019618,003462: 4430 00006 EXTEND # BIT 6 OF CHANNEL 11 019619,003463: 4431 05011 WOR DSALMOUT 019620,003464: 4432 00002 TC Q 019621,003465: 019622,003466: 4433 44746 FLASHOFF CS BIT6 # TURN OFF V/N FLASH 019623,003467: 4434 00006 EXTEND 019624,003468: 4435 03011 WAND DSALMOUT 019625,003469: 4436 00002 TC Q 019626,003470: 019627,003471: # Page 472 019628,003472: # INTERNAL USE OF KEYBOARD AND DISPLAY PROGRAM. 019629,003473: 019630,003474: # USER MUST SCHEDULE CALLS TO NVSUB SO THAT THERE IS NO CONFLICT OF USE OR 019631,003475: # CONFUSION TO OPERATOR. THE OLD CRABLOCK (INTERNAL/INTERNAL INTERLOCK) 019632,003476: # HAS BEEN REMOVED AND THE INTERNAL USER NO LONGER HAS THE PROTECTION THIS 019633,003477: # OFFERED. 019634,003478: 019635,003479: # THERE ARE TWO WAYS A JOB CAN BE PUT TO SLEEP BY TEH KEYBOARD + DISPLAY 019636,003480: # PROGRAM. 1) BY ENDIDLE 019637,003481: # 2) BY NVSUBUSY 019638,003482: # THE BASIC CONVENTION IS THAT ONLY ONE JOB WILL BE PERITTED ASLEEP VIA 019639,003483: # THE KEYBOARD + DISPLAY PROGRAM AT A TIME. IF A JOB ATTEMPTS TO GO TO 019640,003484: # SLEEP BY MEANS OF (1) OR (2) AND THERE IS ALREADY AJOB ASLEEP THAT WAS 019641,003485: # PUT TO SLEEP BY (1) OR (2), THEN AN ABORT IS CAUSED. 019642,003486: 019643,003487: # THE CALLING SEQUENCE FOR NVSUB IS 019644,003488: # CAF V/N 019645,003489: # L TC NVSUB 019646,003490: # L+1 RETURN HERE IF OPERATOR HAS INTERVENED 019647,003491: # L+2 RETURN HERE AFTER EXECUTION 019648,003492: 019649,003493: # A ROUTINE CALLED NVSUBUSY IS PROVIDED (USE IS OPTIONAL) TO PUT 019650,003494: # YOUR JOB TO SLEEP UNTIL THE OPERATOR RELEASES THE KEYBOARD + DISPLAY 019651,003495: # SYSTEM. NVSUBUSY ALSO TURNS ON THE KEY RELEASE LIGHT. 019652,003496: # NVSUBUSY CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY, 019653,003497: # SINCE JOBSLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS. 019654,003498: 019655,003499: # THE CALLING SEQUENCE IS 019656,003500: # CAF WAKEFCADR 019657,003501: # TC NVSUBUSY 019658,003502: 019659,003503: # NVSUBUSY IS INTENDED FOR USE WHEN AN INTERNAL PROGRAM FINDS THE OPERATOR 019660,003504: # IS NOT USING THE KEYBOARD + DISPLAY PROGRAM (BY HIS OWN INITIATION). IT IS 019661,003505: # NOT INTENDED FOR USE WHEN ONE INTERNAL PROGRAM FINDS ANOTHER INTERNAL 019662,003506: # PROGRAM USING THE KEYBOARD + DISPLAY PROGRAM. 019663,003507: 019664,003508: # NVSUBUSY ABORTS (WITH CODE 01206) IF A SECOND JOB ATTEMPTS TO GO TO 019665,003509: # SLEEP IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MAKE TO GO TO NVSUBUSY 019666,003510: # WHEN 019667,003511: 019668,003512: # 1) DSPLIST NOT= +0. THIS IS THE CASE WHERE THE CAPACITY FO THE DSPLIST 019669,003513: # IS EXCEEDED. 019670,003514: # 2) CADRSTOR NOT= +0. THIS INDICATES THAT A JOB IS ALREADY USING 019671,003515: # Page 473 019672,003516: # ENDIDLE. (+-NZ INDICATES A JOB IS ALREADY ASLEEP DUE TO ENDIDLE.) 019673,003517: 019674,003518: 4437 44444 PRENVBSY CS 2K+3 # SPECIAL ENTRANCE FOR ROUTINES IN FIXED 019675,003519: 4440 60002 AD Q # BANKS ONLY DESIRING THE FCADR OF (LOC 019676,003520: 4441 60004 AD FBANK # FROM WHICH THE TC PRENVBSY WAS DONE) -2 019677,003521: 4442 04635 NVSUBUSY TC POSTJUMP # TO BE ENTERED. 019678,003522: 4443 10633 CADR NVSUBSY1 019679,003523: 4444 02003 2K+3 OCT 2003 019680,003524: 019681,003525: # NVSUBSY1 MUST BE IN BANK 27 OR LOWER, SO IT WILL PUT CALLER TO SLEEP 019682,003526: # WITH HIS PROPER SUPERBITS. 019683,003527: 019684,003528: 04,2633 SETLOC ENDSPMM +1 019685,003529: 04,2633 COUNT* $$/PIN 019686,003530: 04,2633 54001 NVSUBSY1 TS L 019687,003531: 04,2634 04220 TC ISCADR+0 # ABORT IF CADRSTOR NOT= +0. 019688,003532: 04,2635 04224 TC ISLIST+0 # ABORT IF DSPLIST NOT= +0. 019689,003533: 04,2636 04374 TC RELDSPON 019690,003534: 04,2637 30001 CA L 019691,003535: 04,2640 55042 TS DSPLIST 019692,003536: 04,2641 05133 ENDNVBSY TC JOBSLEEP 019693,003537: 019694,003538: # NVSBWAIT IS A SPECIAL ENTRANCE FOR ROUTINES IN FIXED BANKS ONLY. IF 019695,003539: # SYSTEM IS NOT BUSY, IT EXECUTES V/N AND RETURNS TO L+1 (L= LOC FROM 019696,003540: # WHICH THE TC NVSBWAIT WAS DONE). IF SYSTEM IS BUSY, IT PUTS CALLING JOB 019697,003541: # TO SLEEP WITH L-1 GOING INTO LIST FOR EVENTUAL WAKING UP WHEN SYSTEM 019698,003542: # IS NOT BUSY. 019699,003543: 019700,003544: 4445 SETLOC NVSUBUSY +3 019701,003545: 4445 COUNT* $$/PIN 019702,003546: 4445 22007 NVSBWAIT LXCH 7 # ZERO NVMONOPT OPTIONS 019703,003547: 4446 54123 TS NVTEMP 019704,003548: 4447 34736 CAF BIT14 019705,003549: 4450 71020 MASK MONSAVE1 # EXTERNAL MONITOR BIT 019706,003550: 4451 61011 AD DSPLOCK 019707,003551: 4452 10000 CCS A 019708,003552: 4453 14455 TCF NVSBWT1 # BUSY 019709,003553: 4454 14164 TCF NVSBCOM # FREE. NVSUB WILL SAVE L+1 FOR RETURN 019710,003554: # AFTER EXECUTION. 019711,003555: 4455 24002 NVSBWT1 INCR Q # L+2. PRENVBSY WILL PUT L-1 INTO LIST AND 019712,003556: 4456 14437 TCF PRENVBSY # GO TO SLEEP. 019713,003557: 019714,003558: # RELDSP IS USED BY VBPROC, VBTERM, VBRQEXEC, VBRQWAIT, VBRELDSP, EXTENDED 019715,003559: # VERB DISPATCHER, VBRESEQ, RECALTST. 019716,003560: 019717,003561: # RELDSP1 IS USED BY MONITOR SET UP, VBRELDSP. 019718,003562: 019719,003563: 4457 56002 RELDSP XCH Q # SET DSPLOCK TO +0, TURN RELDSP LIGHT 019720,003564: 4460 54144 TS RELRET # OFF, SEARCH DSPLIST 019721,003565: 4461 44736 CS BIT14 019722,003566: # Page 474 019723,003567: 4462 00004 INHINT 019724,003568: 4463 71020 MASK MONSAVE1 019725,003569: 4464 55020 TS MONSAVE1 # TURN OFF EXTERNAL MONITOR BIT 019726,003570: 4465 11042 CCS DSPLIST 019727,003571: 4466 04470 TC +2 019728,003572: 4467 04473 TC RELDSP2 # LIST EMPTY 019729,003573: 4470 34755 CAF ZERO 019730,003574: 4471 57042 XCH DSPLIST 019731,003575: 4472 05137 TC JOBWAKE 019732,003576: 4473 00003 RELDSP2 RELINT 019733,003577: 4474 44747 CS BIT5 # TURN OFF KEY RELEASE LIGHT 019734,003578: 4475 00006 EXTEND # (BIT 5 OF CHANNEL 11) 019735,003579: 4476 03011 WAND DSALMOUT 019736,003580: 4477 34755 CAF ZERO 019737,003581: 4500 55011 TS DSPLOCK 019738,003582: 4501 00144 TC RELRET 019739,003583: 4502 56002 RELDSP1 XCH Q # SET DSPLOCK TO +0. NO DSPLIST SEARCH. 019740,003584: 4503 54144 TS RELRET # TURN KEY RLSE LIGHT OFF IF DSPLIST IS 019741,003585: # EMPTY. LEAVE KEY RLSE LIGHT ALONE IF 019742,003586: # DSPLIST IS NOT EMPTY. 019743,003587: 4504 11042 CCS DSPLIST 019744,003588: 4505 04507 TC +2 # + NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE. 019745,003589: 4506 04473 TC RELDSP2 # +0 EMPTY. TURN OFF KEY RLSE LIGHT 019746,003590: 4507 34755 CAF ZERO # - NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE 019747,003591: 4510 55011 TS DSPLOCK 019748,003592: 4511 00144 TC RELRET 019749,003593: 019750,003594: 4512 ENDPINBF EQUALS 019751,003595: 019752,003596: # Page 475 019753,003597: # PINTEST IS NEEDED FOR AUTO CHECK OF PINBALL. 019754,003598: 019755,003599: 4512 43,2002 PINTEST EQUALS LST2FAN 019756,003600: 019757,003601: # Page 476 019758,003602: # VBTSTLTS TURNS ON ALL DISPLAY PANEL LIGHTS. AFTER 5 SEC, IT TURNS 019759,003603: # OFF THE CAUTION AND STATUS LIGHTS. 019760,003604: 019761,003605: 41,3626 SETLOC ENDNVSB1 +1 019762,003606: 019763,003607: 41,3626 COUNT* $$/PIN 019764,003608: 41,3626 00004 VBTSTLTS INHINT 019765,003609: 41,3627 04616 TC BANKCALL # OPP ERR IF NOT IN P00 019766,003610: 41,3630 66121 CADR CHKP00H 019767,003611: 41,3631 44753 CS BIT1 # SET BIT 1 OF IMODES33 SO IMUMON WON'T 019768,003612: 41,3632 71300 MASK IMODES33 # TURN OUT ANY LAMPS. 019769,003613: 41,3633 64753 AD BIT1 019770,003614: 41,3634 55300 TS IMODES33 019771,003615: 019772,003616: 41,3635 33674 CAF TSTCON1 # TURN ON UPLINK ACTIVITY, TEMP, KEY RLSE, 019773,003617: 41,3636 00006 EXTEND # V/N FLASH, OPERATOR ERROR. 019774,003618: 41,3637 05011 WOR DSALMOUT 019775,003619: 41,3640 33675 CAF TSTCON2 # TURN ON NO ATT, GIMBAL LOCK, TRACKER, 019776,003620: 41,3641 55035 TS DSPTAB +11D # PROG ALM. 019777,003621: 41,3642 06022 TC C13STALL 019778,003622: 41,3643 34742 CAF BIT10 # TURN ON TEST ALARM OUTBIT 019779,003623: 41,3644 00006 EXTEND 019780,003624: 41,3645 05013 WOR CHAN13 019781,003625: 41,3646 34363 CAF TEN 019782,003626: 41,3647 54117 TSTLTS1 TS ERCNT 019783,003627: 41,3650 43672 CS FULLDSP 019784,003628: 41,3651 50117 INDEX ERCNT 019785,003629: 41,3652 55022 TS DSPTAB 019786,003630: 41,3653 10117 CCS ERCNT 019787,003631: 41,3654 03647 TC TSTLTS1 019788,003632: 41,3655 43673 CS FULLDSP1 019789,003633: 41,3656 55023 TS DSPTAB +1 # TURN ON 3 PLUS SIGNS 019790,003634: 41,3657 55026 TS DSPTAB +4 019791,003635: 41,3660 55030 TS DSPTAB +6 019792,003636: 41,3661 34760 CAF ELEVEN 019793,003637: 41,3662 55015 TS NOUT 019794,003638: 41,3663 00003 RELINT 019795,003639: 41,3664 33677 CAF SHOLTS 019796,003640: 41,3665 00004 INHINT 019797,003641: 41,3666 05203 TC WAITLIST 019798,003642: 41,3667 1022 EBANK= DSPTAB 019799,003643: 41,3667 03700 62102 2CADR TSTLTS2 019800,003644: 019801,003645: 41,3671 05155 TC ENDOFJOB # DSPLOCK IS LEFT BUSY (FROM KEYBOARD 019802,003646: # ACTION) UNTIL TSTLTS3 TO INSURE THAT 019803,003647: # LIGHTS TEST WILL BE SEEN. 019804,003648: 019805,003649: 41,3672 05675 FULLDSP OCT 05675 # DISPLAY ALL 8'S 019806,003650: 41,3673 07675 FULLDSP1 OCT 07675 # DISPLAY ALL 8'S AND + 019807,003651: 019808,003652: # Page 477 019809,003653: 41,3674 00175 TSTCON1 OCT 00175 019810,003654: # UPLINK ACTIVITY, TEMP, KEY RLSE, 019811,003655: # V/N FLASH, OPERATOR ERROR. 019812,003656: 41,3675 40674 TSTCON2 OCT 40674 # DSPTAB+11D BITS 3,4,5,6,8,9 LR LITES, 019813,003657: # NO ATT, GIMBAL LOCK, TRACKER, PROG ALM. 019814,003658: 41,3676 00115 TSTCON3 OCT 0115 # CHAN 11 BITS 1,3, 4, 7. 019815,003659: # UPLINK ACITIVY, TEMP, OPERATOR ERROR. 019816,003660: 41,3677 00764 SHOLTS OCT 764 # 5 SEC 019817,003661: 019818,003662: 41,3700 34355 TSTLTS2 CAF CHRPRIO # CALLED BY WAITLIST 019819,003663: 41,3701 05072 TC NOVAC 019820,003664: 41,3702 1022 EBANK= DSPTAB 019821,003665: 41,3702 03705 62102 2CADR TSTLTS3 019822,003666: 019823,003667: 41,3704 05261 TC TASKOVER 019824,003668: 019825,003669: 41,3705 43676 TSTLTS3 CS TSTCON3 # CALLED BY EXECUTIVE 019826,003670: 41,3706 00004 INHINT 019827,003671: 41,3707 00006 EXTEND # TURN OFF UPLINK ACTIVITY, TEMP, 019828,003672: 41,3710 03011 WAND DSALMOUT # OPERATOR ERROR. 019829,003673: 41,3711 06022 TC C13STALL 019830,003674: 41,3712 44742 CS BIT10 # TURN OFF TEST ALARM OUTBIT 019831,003675: 41,3713 00006 EXTEND 019832,003676: 41,3714 03013 WAND CHAN13 019833,003677: 41,3715 34750 CAF BIT4 # MAKE NO ATT FOLLOW BIT 4 OF CHANNEL 12 019834,003678: 41,3716 00006 EXTEND # (NO TT LIGHT ON IF IN COARSE ALIGN) 019835,003679: 41,3717 02012 RAND CHAN12 019836,003680: 41,3720 64735 AD BIT15 # TURN OFF AUTO, HOLD, FREE, SPARE, 019837,003681: 41,3721 55035 TS DSPTAB +11D # GIMBAL LOCK, SPARE, TRACKER, PROG ALM 019838,003682: 41,3722 43745 CS 13-11,1 # SET BITS TO INDICATE ALL LAMPS OUT. TEST 019839,003683: 41,3723 71300 MASK IMODES33 # LIGHTS COMPLETE. 019840,003684: 41,3724 65026 AD PRIO16 019841,003685: 41,3725 55300 TS IMODES33 019842,003686: 019843,003687: 41,3726 43747 CS OCT55000 019844,003688: 41,3727 71277 MASK IMODES30 019845,003689: 41,3730 65025 AD PRIO15 # 15000. 019846,003690: 41,3731 55277 TS IMODES30 019847,003691: 019848,003692: 41,3732 43746 CS RFAILS2 019849,003693: 41,3733 70110 MASK RADMODES 019850,003694: 41,3734 64745 AD RCDUFBIT 019851,003695: 41,3735 54110 TS RADMODES 019852,003696: 019853,003697: 41,3736 00003 RELINT 019854,003698: 019855,003699: 41,3737 04616 TC BANKCALL # REDISPLAY C(MODREG) 019856,003700: 41,3740 10622 CADR DSPMM 019857,003701: # Page 478 019858,003702: 41,3741 04204 TC KILMONON # TURN ON KILL MONITOR BIT. 019859,003703: 41,3742 04433 TC FLASHOFF # TURN OFF V/N FLASH. 019860,003704: 41,3743 04635 TC POSTJUMP # DOES RELDSP AND GOES TO PINBRNCH IF 019861,003705: 41,3744 61534 CADR TSTLTS4 # ENDIDLE IS AWAITING OPERATOR RESPONSE. 019862,003706: 41,3745 16001 13-11,1 OCT 16001 019863,003707: 41,3746 00330 RFAILS2 OCT 330 # RADAR CDU AND DATA FAIL FLAGS 019864,003708: 41,3747 55000 OCT55000 OCT 55000 019865,003709: 41,3750 ENDPINS2 EQUALS 019866,003710: 019867,003711: # Page 479 019868,003712: # ERROR LIGHT RESET (RSET) TURNS OFF: 019869,003713: # UPLINK ACTIVITY, AUTO, HOLD, FREE, OPERATOR ERROR, 019870,003714: # PROG ALM, TRACKER FAIL. 019871,003715: 019872,003716: # LEAVES GIMBAL LOCK AND NO ATT ALONE. 019873,003717: # 019874,003718: # IT ALSO ZEROS THE `TEST ALARM' OUT BIT, WHICH TURNS OFF STBY, RESTART. 019875,003719: # IT ALSO SETS `CAUTION RESET' TO 1. 019876,003720: # IT ALSO FORCES BIT 12 OF ALL DSPTAB ENTRIES TO 1. 019877,003721: 019878,003722: 40,3646 SETLOC DOPROC +2 019879,003723: 40,3646 COUNT* $$/PIN 019880,003724: 40,3646 56115 ERROR XCH 21/22REG # RESTORE ORIGINAL C(DSPLOCK). THUS ERROR 019881,003725: 40,3647 55011 TS DSPLOCK # LIGHT RESET LEAVES DSPLOCK CHANGED. 019882,003726: 40,3650 00004 INHINT 019883,003727: 40,3651 34742 CAF BIT10 # TURN ON `CAUTION RESET' OUTBIT 019884,003728: 40,3652 00006 EXTEND 019885,003729: 40,3653 05011 WOR DSALMOUT # BIT10 CHAN 11 019886,003730: 40,3654 33735 CAF GL+NOATT # LEAVE GIMBAL LOCK AND NO ATT INTACT, 019887,003731: 40,3655 71035 MASK DSPTAB +11D # TURNING OFF AUTO, HOLD, FREE, 019888,003732: 40,3656 64735 AD BIT15 # PROG ALARM, AND TRACKER. 019889,003733: 40,3657 55035 TS DSPTAB +11D 019890,003734: 40,3660 45026 CS PRIO16 # RESET FAIL BITS WHICH GENERATE PROG 019891,003735: 40,3661 71300 MASK IMODES33 # ALARM SO THAT IF THE FAILURE STILL 019892,003736: 40,3662 65026 AD PRIO16 # EXISTS, THE ALARM WILL COME BACK. 019893,003737: 40,3663 55300 TS IMODES33 019894,003738: 40,3664 44742 CS BIT10 019895,003739: 40,3665 71277 MASK IMODES30 019896,003740: 40,3666 64742 AD BIT10 019897,003741: 40,3667 55277 TS IMODES30 019898,003742: 019899,003743: 40,3670 43734 CS RFAILS 019900,003744: 40,3671 70110 MASK RADMODES 019901,003745: 40,3672 64745 AD RCDUFBIT 019902,003746: 40,3673 54110 TS RADMODES 019903,003747: 019904,003748: 40,3674 06022 TC C13STALL 019905,003749: 40,3675 44742 CS BIT10 # TURN OFF `TEST ALARM' OUTBIT. 019906,003750: 40,3676 00006 EXTEND 019907,003751: 40,3677 03013 WAND CHAN13 019908,003752: 40,3700 43733 CS ERCON # TURN OFF UPLINK ACTIVITY, 019909,003753: 40,3701 00006 EXTEND # OPERATOR ERROR. 019910,003754: 40,3702 03011 WAND DSALMOUT 019911,003755: 40,3703 34363 TSTAB CAF BINCON # (DEC 10) 019912,003756: 40,3704 54117 TS ERCNT # ERCNT = COUNT 019913,003757: 40,3705 00004 INHINT 019914,003758: 40,3706 50117 INDEX ERCNT 019915,003759: 40,3707 11022 CCS DSPTAB 019916,003760: 40,3710 64753 AD ONE 019917,003761: 40,3711 03716 TC ERPLUS 019918,003762: 40,3712 64753 AD ONE 019919,003763: 40,3713 40000 ERMINUS CS A 019920,003764: # Page 480 019921,003765: 40,3714 73736 MASK NOTBIT12 019922,003766: 40,3715 03721 TC ERCOM 019923,003767: 40,3716 40000 ERPLUS CS A 019924,003768: 40,3717 73736 MASK NOTBIT12 019925,003769: 40,3720 40000 CS A # MIGHT WANT TO RESET CLPASS, DECBRNCH, 019926,003770: 40,3721 50117 ERCOM INDEX ERCNT # ETC. 019927,003771: 40,3722 55022 TS DSPTAB 019928,003772: 40,3723 00003 RELINT 019929,003773: 40,3724 10117 CCS ERCNT 019930,003774: 40,3725 03704 TC TSTAB +1 019931,003775: 40,3726 34755 CAF ZERO 019932,003776: 40,3727 54375 TS FAILREG 019933,003777: 40,3730 54376 TS FAILREG +1 019934,003778: 40,3731 55357 TS SFAIL 019935,003779: 40,3732 05155 TC ENDOFJOB 019936,003780: 019937,003781: 40,3733 00104 ERCON OCT 104 # CHAN 11 BITS 3,7. 019938,003782: # UPLINK ACTIVITY, AND OPERATOR ERROR. 019939,003783: 40,3734 00330 RFAILS OCT 330 # RADAR CDU AND DATA FAIL FLAGS. 019940,003784: 40,3735 00050 GL+NOATT OCT 00050 # NO ATT AND GIMBAL LOCK LAMPS 019941,003785: 40,3736 73777 NOTBIT12 OCT 73777 019942,003786: 019943,003787: 40,3737 ENDPINS1 EQUALS 019944,003788: 019945,003789: 40,3737 30,2000 SBANK= LOWSUPER 019946,003790: End of include-file PINBALL_GAME_BUTTONS_AND_LIGHTS.agc. Parent file is MAIN.agc