Source Code

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