Source Code

013149,000001: # Copyright: Public domain. 013150,000002: # Filename: PINBALL_GAME_BUTTONS_AND_LIGHTS.agc 013151,000003: # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055. 013152,000004: # It is part of the source code for the Command Module's (CM) 013153,000005: # Apollo Guidance Computer (AGC), for Apollo 11. 013154,000006: # Assembler: yaYUL 013155,000007: # Contact: Ron Burkey <info@sandroid.org>. 013156,000008: # Website: www.ibiblio.org/apollo. 013157,000009: # Pages: 307-389 013158,000010: # Mod history: 2009-05-08 RSB Started adapting from the Colossus249/ file 013159,000011: # of the same name, using Comanche055 page 013160,000012: # images. Finished through page 329. 013161,000013: # 2009-05-09 RSB Finished first draft. 013162,000014: # 2009-05-20 RSB Corrected a CHKPOOH to CHKP00H. 013163,000015: 013164,000016: # This source code has been transcribed or otherwise adapted from digitized 013165,000017: # images of a hardcopy from the MIT Museum. The digitization was performed 013166,000018: # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many 013167,000019: # thanks to both. The images (with suitable reduction in storage size and 013168,000020: # consequent reduction in image quality as well) are available online at 013169,000021: # www.ibiblio.org/apollo. If for some reason you find that the images are 013170,000022: # illegible, contact me at info@sandroid.org about getting access to the 013171,000023: # (much) higher-quality images which Paul actually created. 013172,000024: 013173,000025: # Notations on the hardcopy document read, in part: 013174,000026: 013175,000027: # Assemble revision 055 of AGC program Comanche by NASA 013176,000028: # 2021113-051. 10:28 APR. 1, 1969 013177,000029: 013178,000030: # This AGC program shall also be referred to as 013179,000031: # Colossus 2A 013180,000032: 013181,000033: # Page 307 013182,000034: # PROGRAM NAME -- KEYBOARD AND DISPLAY PROGRAM 013183,000035: # MOD NO -- 4 DATE -- 27 APRIL 1967 ASSEMBLY -- PINDISK REV 17 013184,000036: # MOD BY -- FILENE 013185,000037: # LOG SECTION -- PINBALL GAME BUTTONS AND LIGHTS 013186,000038: 013187,000039: # FUNCTIONAL DESCRIPTION 013188,000040: 013189,000041: # THE KEYBOARD AND DISPLAY SYSTEM PROGRAM OPERATES UNDER EXECUTIVE 013190,000042: # CONTROL AND PROCESSES INFORMATION EXCHANGED BETWEEN THE AGC AND THE 013191,000043: # COMPUTER OPERATOR. THE INPUTS TO THE PROGRAM ARE FROM THE KEYBOARD, 013192,000044: # FROM INTERNAL PROGRAM, AND FROM THE UPLINK. 013193,000045: 013194,000046: # THE LANGUAGE OF COMMUNICATION WITH THE PROGRAM IS A PAIR OF WORDS 013195,000047: # KNOWN AS VERB AND NOUN. EACH OF THESE IS REPRESENTED BY A 2 CHARACTER 013196,000048: # DECIMAL NUMBER. THE VERB CODE INDICATES WHAT ACTION IS TO BE TAKEN, THE 013197,000049: # NOUN CODE INDICATES TO WHAT THIS ACTION IS APPLIED. NOUNS USUALLY 013198,000050: # REFER TO A GROUP OF ERASABLE REGISTERS. 013199,000051: 013200,000052: # VERBS ARE GROUPED INTO DISPLAYS, LOADS, MONITORS (DISPLAYS THAT ARE 013201,000053: # UPDATED ONCE PER SECOND), SPECIAL FUNCTIONS, AND EXTENDED VERBS (THESE 013202,000054: # ARE OUTSIDE OF THE DOMAIN OF PINBALL AND CAN BE FOUND UNDER LOG SECTION 013203,000055: # `EXTENDED VERBS'). 013204,000056: 013205,000057: # A LIST OF VERBS AND NOUNS IS GIVEN IN LOG SECTION `ASSEMBLY AND 013206,000058: # OPERATION INFORMATION'. 013207,000059: 013208,000060: # CALLING SEQUENCES -- 013209,000061: 013210,000062: # KEYBOARD: 013211,000063: # EACH DEPRESSION OF A MAIN (NAVIGATION) KEYBOARD BUTTON ACTIVATES 013212,000064: # INTERRUPT KEYRUPT1 (KEYRUPT2) AND PLACES THE 5 BIT KEY CODE INTO 013213,000065: # CHANNEL 15 (CHANNEL 16). KEYRUPT1 (KEYRUPT2) PLACES THE KEY 013214,000066: # CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE KEYBOARD AND DISPLAY 013215,000067: # PROGRAM (AT `CHARIN'), AND EXECUTES A RESUME. 013216,000068: 013217,000069: # UPLINK: 013218,000070: # EACH WORD RECEIVED BY THE UPLINK ACTIVATES INTERRUPT UPRUPT, WHICH 013219,000071: # PLACES THE 5 BIT KEY CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE 013220,000072: # KEYBOARD AND DISPLAY PROGRAM (AT `CHARIN') AND EXECUTES A RESUME. 013221,000073: 013222,000074: # INTERNAL PROGRAMS: 013223,000075: # INTERNAL PROGRAMS CALL PINBALL AT `NVSUB' WITH THE DESIRED VERB/NOUN 013224,000076: # CODE IN A (LOW 7 BITS FOR NOUN, NEXT 7 BITS FOR VERB). DETAILS 013225,000077: # DESCRIBED ON REMARKS CARDS JUST BEFORE `NVSUB' AND `NVSBWAIT' (SEE 013226,000078: # SYMBOL TABLE FOR PAGE NUMBERS). 013227,000079: 013228,000080: # NORMAL EXIT MODES -- 013229,000081: 013230,000082: # IF PINBALL WAS CALLED BY EXTERNAL ACTION, THERE ARE FOUR EXITS: 013231,000083: # 1) ALL BUT (2), (3), AND (4) EXIT DIRECTLY TO ENDOFJOB. 013232,000084: # Page 308 013233,000085: # 2) EXTENDED VERBS TO TO THE EXTENDED VERB FAN AS PART OF THE 013234,000086: # PINBALL EXECUTIVE JOB WITH PRIORITY 30000. IT IS THE 013235,000087: # RESPONSIBILITY OF THE EXTEDED VERB CALLED TO EVENTUALLY 013236,000088: # CHANGE PRIORITY (IF NECESSARY) AD DO AN ENDOFJOB. 013237,000089: # ALSO PINBALL IS A NOVAC JOB. EBANK SET FOR COMMON. 013238,000090: # 3) VERB 37. CHANGE OF PROGRAM (MAJOR MODE) CALLS `V37' IN THE 013239,000091: # SERVICE ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO 013240,000092: # 30000. THE NEW PROGRAM CODE (MAJOR MODE) IS LEFT IN A. 013241,000093: # 4) KEY RELEASE BUTTON CALLS `PINBRNCH' IN THE DISPLAY INTERFACE 013242,000094: # ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO 30000 IF 013243,000095: # THE KEY RELEASE LIGHT IS OFF AND `CADRSTOR' IS NOT 40. 013244,000096: 013245,000097: # IF PINBALL WAS CALLED BY INTERNAL PROGRAMS, EXIT FROM PINBALL IS BACK 013246,000098: # TO CALLING ROUTINE. DETAILS DESCRIBED IN REMARKS CARDS JUST BEFORE 013247,000099: # `NVSUB' AND `NVSBWAIT' (SEE SYMBOL TABLE FOR PAGE NUMBERS). 013248,000100: 013249,000101: # ALARM OR ABORT EXIT MODES -- 013250,000102: 013251,000103: # EXTERNAL INITIATION: 013252,000104: # IF SOME IMPROPER SEQUENCE OF KEY CODES IS DETECTED, THE OPERATOR 013253,000105: # ERROR LIGHT IS TURNED ON AND EXIT IS TO `ENDOFJOB'. 013254,000106: 013255,000107: # INTERNAL PROGRAM INITIATION: 013256,000108: # IF AN ILLEGAL V/N COMBINATION IS ATTEMPTED, AN ABORT IS CAUSED 013257,000109: # (WITH OCTAL 01501). 013258,000110: # IF A SECOND ATTEMPT IS MADE TO GO TO SLEEP IN PINBALL, AN ABORT IS 013259,000111: # CAUSED (WITH OCTAL 01206). THERE ARE TWO WAYS TO GO TO SLEEP IN PINBALL: 013260,000112: # 1) ENDIDLE OR DATAWAIT. 013261,000113: # 2) NVSBWAIT, PRENVBSY, OR NVSUBUSY. 013262,000114: 013263,000115: # CONDITIONS LEADING TO THE ABOVE ARE DESCRIBED IN FORTHCOMING MIT/IL 013264,000116: # E-REPORT DESCRIBING KEYBOARD AND DISPLAY OPERATION FOR 278. 013265,000117: 013266,000118: # OUTPUT -- 013267,000119: 013268,000120: # INFORMATION TO BE SENT TO THE DISPLAY PANEL IS LEFT IN THE `DSPTAB' 013269,000121: # BUFFERS REGISTERS (UNDER EXEC CONTROL). `DSPOUT' (A PART OF T4RUPT) 013270,000122: # HANDLES THE PLACING OF THE `DSPTAB' INFORMATION INTO OUTPUT CHANNEL 10 013271,000123: # IN INTERRUPT. 013272,000124: 013273,000125: # ERASABLE INITIALIZATION -- 013274,000126: 013275,000127: # FRESH START AND RESTART INITIALIZE THE NECESSARY E REGISTERS FOR 013276,000128: # PINBALL IN `STARTSUB'. REGISTERS ARE: DSPTAB BUFFER, CADRSTOR, 013277,000129: # REQRET, CLPASS, DSPLOCK, MONSAVE, MONSAVE1, VERBREG, NOUNREG, DSPLIST, 013278,000130: # DSPCOUNT, NOUT. 013279,000131: 013280,000132: # Page 309 013281,000133: # A COMPLETE LIST OF ALL THE ERASABLES (BOTH RESERVED AND TEMPORARIES) FOR 013282,000134: # PINBALL IS GIVEN BELOW. 013283,000135: 013284,000136: # THE FOLLOWING ARE OF GENERAL INTEREST -- 013285,000137: 013286,000138: # REMARKS CARDS PRECEDE THE REFERENCED SYMBOL DEFINITION. SEE SYMBOL 013287,000139: # TABLE TO FIND APPROPRIATE PACE NUMBERS. 013288,000140: 013289,000141: # NVSUB CALLING POINT FOR INTERNAL USE OF PINBALL. 013290,000142: # OF RELATED INTEREST NVSBWAIT 013291,000143: # NVSUBUSY 013292,000144: # PRENVBSY 013293,000145: 013294,000146: # ENDIDLE ROUTINE FOR INTERNAL PROGRAMS WISHING TO TO SLEEP WHILE 013295,000147: # AWAITING OPERATOR'S RESPONSE. 013296,000148: 013297,000149: # DSPMM ROUTINE BY WHICH AN INTERNAL PROGRAM MAY DISPLAY A DECIMAL 013298,000150: # PROGRAM CODE (MAJOR MODE) IN THE PROGRAM (MAJOR MODE) LIGHT 013299,000151: # (DSPMM DOES NOT DISPLAY DIRECTLY BUT ENTERS EXEC REQUEST 013300,000152: # FOR DSPMMJB WITH PRIO 30000 AND RETURNS TO CALLER.) 013301,000153: 013302,000154: # BLANKSUB ROUTINE BY WHICH AN INTERNAL PROGRAM MAY BLANK ANY 013303,000155: # COMBINATION OF THE DISPLAY REGISTERS R1, R2, R3. 013304,000156: 013305,000157: # JAMTERM ROUTINE BY WHICH AN INTERNAL PROGRAM MAY PERFORM THE 013306,000158: # JAMPROC TERMINATE (V 34) OR PROCEED (V33) FUNCTION. 013307,000159: 013308,000160: # MONITOR VERBS FOR PERIODIC (1 PER SEC) DISPLAY. 013309,000161: 013310,000162: # PLEASE PERFORM, PLEASE MARK SITUATIONS 013311,000163: # REMARKS DESCRIBING HOW AN INTERNAL ROUTINE SHOULD HANDLE 013312,000164: # THESE SITUATIONS CAN BE FOUND JUST BEFORE `NVSUB' (SEE 013313,000165: # SYMBOL TABLE FOR PAGE NUMBER). 013314,000166: 013315,000167: # THE NOUN TABLE FORMAT IS DESCRIBED ON A PAGE OF REMARKS CARDS JUST 013316,000168: # BEFORE `DSPABC' (SEE SYMBOL TABLE FOR PAGE NUMBER). 013317,000169: 013318,000170: # THE NOUN TABLES THEMSELVES ARE FOUND IN LOG SECTION `PINBALL NOUN 013319,000171: # TABLES'. 013320,000172: 013321,000173: # FOR FURTHER DETAILS ABOUT OPERATION OF THE KEYBOARD AND DISPLAY SYSTEM 013322,000174: # PROGRAM, SEE THE MISSION PLAN AND/OR MIT/IL E-2129 013323,000175: # DESCRIBING KEYBOARD AND DISPLAY OPERATION FOR 278. 013324,000176: # (Note that this doc by Green and Filene is/was available online at 013325,000177: # http://hrst.mit.edu/hrs/apollo/public/archive/1706.pdf --- RSB 6/2004.) 013326,000178: 013327,000179: # THE FOLLOWING QUOTATION IS PROVIDED THROUGH THE COURTESY OF THE AUTHORS. 013328,000180: 013329,000181: # "IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT 013330,000182: # Page 310 013331,000183: # USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO 013332,000184: # CHRISTIAN EAR CAN ENDURE TO HEAR." 013333,000185: # HENRY 6, ACT 2, SCENE 4 013334,000186: 013335,000187: # THE FOLLOWING ASSIGNMENTS FOR PINBALL ARE MADE ELSEWHERE 013336,000188: 013337,000189: # RESERVED FOR PINBALL EXECUTIVE ACTION 013338,000190: 013339,000191: # DSPCOUNT ERASE # DISPLAY POSITION INDICATOR 013340,000192: # DECBRNCH ERASE # +DEC, -DEC, OCT INDICATOR 013341,000193: # VERBREG ERASE # VERB CODE 013342,000194: # NOUNREG ERASE # NOUN CODE 013343,000195: # XREG ERASE # R1 INPUT BUFFER 013344,000196: # YREG ERASE # R2 INPUT BUFFER 013345,000197: # ZREG ERASE # R3 INPUT BUFFER 013346,000198: # XREGLP ERASE # LO PART OF XREG (FOR DEC CONV ONLY) 013347,000199: # YREGLP ERASE # LO PART OF YREG (FOR DEC CONV ONLY) 013348,000200: # HITEMOUT = YREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC 013349,000201: # # MUST = LOTEMOUT-1. 013350,000202: # ZREGLP ERASE # LO PART OF ZREG (FOR DEC CONV ONLY) 013351,000203: # LOTEMOUT = ZREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC 013352,000204: # # MUST = HITEMOUT+1 013353,000205: # MODREG ERASE # MODE CODE 013354,000206: # DSPLOCK ERASE # KEYBOARD/SUBROUTINE CALL INTERLOCK 013355,000207: # REQRET ERASE # RETURN REGISTER FOR LOAD 013356,000208: # LOADSTAT ERASE # STATUS INDICATOR FOR LOADTST 013357,000209: # CLPASS ERASE # PASS INDICATOR FOR CLEAR 013358,000210: # NOUT ERASE # ACTIVITY COUNTER FOR DSPTAB 013359,000211: # NOUNCADR ERASE # MACHINE CADR FOR NOUN 013360,000212: # MONSAVE ERASE # N/V CODE FOR MONITOR. (= MONSAVE1-1) 013361,000213: # MONSAVE1 ERASE # NOUNCADR FOR MONITOR (MATBS1) = MONSAVE+1 013362,000214: # MONSAVE2 ERASE # NVMONOPT OPTIONS 013363,000215: # DSPTAB ERASE +13D # 0-10, DISPLAY PANEL BUFFER 11-13, C RELAYS. 013364,000216: # CADRSTOR ERASE # ENDIDLE STORAGE 013365,000217: # NVQTEM ERASE # NVSUB STORAGE FOR CALLING ADDRESS 013366,000218: # # MUST = NVBNKTEM-1. 013367,000219: # NVBNKTEM ERASE # NVSUB STORAGE FOR CALLING BANK 013368,000220: # # MUST = NVQTEM+1 013369,000221: # VERBSAVE ERASE # NEEDED FOR RECYCLE 013370,000222: # DSPLIST ERASE # WAITING REG FOR DSP SYST INTERNAL USE 013371,000223: # EXTVBACT ERASE # EXTENDED VERB ACTIVITY INTERLOCK 013372,000224: # DSPTEM1 ERASE +2 # BUFFER STORAGE AREA 1 (MOSTLY FOR TIME) 013373,000225: # DSPTEM2 ERASE +2 # BUFFER STORAGE AREA 2 (MOSTLY FOR DEG) 013374,000226: 013375,000227: # END OF ERASABLES RESERVED FOR PINBALL EXECUTIVE ACTION. 013376,000228: 013377,000229: # TEMPORARIES FOR PINBALL EXECUTIVE ACTION 013378,000230: # Page 311 013379,000231: # DSEXIT = INTB15+ # RETURN FOR DSPIN 013380,000232: # EXITEM = INTB15+ # RETURN FOR SCALE FACTOR ROUTINE SELECT 013381,000233: # BLANKRET = INTB15+ # RETURN FOR 2BLANK 013382,000234: # WRDRET = INTBIT15 # RETURN FOR 5BLANK. 013383,000235: # WDRET = INTBIT15 # RETURN FOR DSPWD 013384,000236: # DECRET = INTBIT15 # RETURN FOR PUTCOM(DEC LOAD) 013385,000237: # 21/22REG = INTBIT15 # TEMP FOR CHARIN 013386,000238: # UPDATRET = POLISH # RETURN FOR UPDATNN, UPDATVB 013387,000239: # CHAR = POLISH # TEMP FOR CHARIN 013388,000240: # ERCNT = POLISH # COUNTER FOR ERROR LIGHT RESET 013389,000241: # DECOUNT = POLISH # COUNTER FOR SCALING AND DISPLAY (DEC) 013390,000242: # SGNON = VBUF # TEMP FOR +,- ON 013391,000243: # NOUNTEM = VBUF # COUNTER FOR MIXNOUN FETCH 013392,000244: # DISTEM = VBUF # COUNTER FOR OCTAL DISPLAY VERB 013393,000245: # DECTEM = VBUF # COUNTER FOR FETCH (DEC DISPLAY VERBS) 013394,000246: # SGNOFF = VBUF +1 # TEMP FOR +,- ON 013395,000247: # NVTEMP = VBUF +1 # TEMP FOR NVSUB 013396,000248: # SFTEMP1 = VBUF +1 # STORAGE FOR SF CONST HI PART (=SFTEMP2-1) 013397,000249: # HITEMIN = VBUF +1 # TEMP FOR LOAD OF HRS,MIN,SEC 013398,000250: # # MUST = LOTEMIN-1. 013399,000251: # CODE = VBUF +2 # FOR DSPIN 013400,000252: # SFTEMP2 = VBUF +2 # STORAGE FOR SF CONST LO PART (=SFTEMP1+1) 013401,000253: # LOTEMIN = VBUF +2 # TEMP FOR LOAD OF HRS,MIN,SEC 013402,000254: # # MUST = HITEMIN+1 013403,000255: # MIXTEMP = VBUF +3 # FOR MIXNOUN DATA 013404,000256: # SIGNRET = VBUF +3 # RETURN FOR +,- ON 013405,000257: # ALSO MIXTEMP+1 = VBUF+4, MIXTEMP+2 = VBUF+5 013406,000258: # ENTRET = DOTINC # EXIT FROM ENTER 013407,000259: # WDONT = DOTRET # CHAR COUNTER FOR DSPWD 013408,000260: # INREL = DOTRET # INPUT BUFFER SELECTOR (X,Y,Z, REG ) 013409,000261: # DSPMMTEM = MATINC # DSPCOUNT SAVE FOR DSPMM 013410,000262: # MIXBR = MATINC # INDICATOR FOR MIXED OR NORMAL NOUN 013411,000263: # TEM1 ERASE # EXEC TEMP 013412,000264: # DSREL = TEM1 # REL ADDRESS FOR DSPIN 013413,000265: # TEM2 ERASE # EXEC TEMP 013414,000266: # DSMAG = TEM2 # MAGNITUDE STORE FOR DSPIN 013415,000267: # IDADDTEM = TEM2 # MIXNOUN INDIRECT ADDRESS STORAGE 013416,000268: # TEM3 ERASE # EXEC TEMP 013417,000269: # COUNT = TEM3 # FOR DSPIN 013418,000270: # Page 312 013419,000271: # TEM4 ERASE # EXEC TEMP 013420,000272: # LSTPTR = TEM4 # LIST POINTER FOR GRABUSY 013421,000273: # RELRET = TEM4 # RETURN FOR RELDSP 013422,000274: # FREERET = TEM4 # RETURN FOR FREEDSP 013423,000275: # DSPWDRET = TEM4 # RETURN FOR DSPSIGN 013424,000276: # SEPSCRET = TEM4 # RETURN FOR SEPSEC 013425,000277: # SEPMNRET = TEM4 # RETURN FOR SEPMIN 013426,000278: # TEM5 ERASE # EXEC TEMP 013427,000279: # NOUNADD = TEM5 # TEMP STORAGE FOR NOUN ADDRESS 013428,000280: # NNADTEM ERASE # TEMP FOR NOUN ADDRESS TABLE ENTRY 013429,000281: # NNTYPTEM ERASE # TEMP FOR NOUN TYPE TABLE ENTRY 013430,000282: # IDAD1TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 013431,000283: # # MUST = IDAD2TEM-1, = IDAD3TEM-2 013432,000284: # IDAD2TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 013433,000285: # # MUST = IDAD1TEM+1, IDAD3TEM-1. 013434,000286: # IDAD3TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN) 013435,000287: # # MUST = IDAD1TEM+2, IDAD2TEM+1. 013436,000288: # RUTMXTEM ERASE # TEMP FOR SF ROUT TABLE ENTRY (MIXNN ONLY) 013437,000289: 013438,000290: # END OF TEMPORARIES FOR PINBALL EXECUTIVE ACTION. 013439,000291: 013440,000292: # ADDITIONAL TEMPORARIES FOR PINBALL EXECUTIVE ACTION 013441,000293: 013442,000294: # MPAC, THRU MPAC +6 013443,000295: # BUF, +1, +2 013444,000296: # BUF2, +1, +2 013445,000297: # MPTEMP 013446,000298: # ADDRWD 013447,000299: 013448,000300: # END OF ADDITIONAL TEMPS FOR PINBALL EXEC ACTION 013449,000301: 013450,000302: # RESERVED FOR PINBALL INTERRUPT ACTION 013451,000303: 013452,000304: # DSPCNT ERASE # COUNTER FOR DSPOUT 013453,000305: # UPLOCK ERASE # BIT1 = UPLINK INTERLOCK (ACTIVATED BY 013454,000306: # # RECEPTION OF A BAD MESSAGE IN UPLINK) 013455,000307: 013456,000308: # END OF ERASABLES RESERVED FOR PINBALL INTERRUPT ACTION 013457,000309: 013458,000310: # TEMPORARIES FOR PINBALL INTERRUPT ACTION 013459,000311: 013460,000312: # KEYTEMP1 = WAITEXIT # TEMP FOR KEYRUPT, UPRUPT 013461,000313: # DSRUPTEM = WAITEXIT # TEMP FOR DSPOUT 013462,000314: # KEYTEMP2 = RUPTAGN # TEMP FOR KEYRUPT, UPRUPT 013463,000315: 013464,000316: # END OF TEMPORARIES FOR PINBALL INTERRUPT ACTION 013465,000317: 013466,000318: # Page 313 013467,000319: # THE INPUT CODES ASSUMED FOR THE KEYBOARD ARE, 013468,000320: # 0 10000 013469,000321: # 1 00001 013470,000322: # 9 01001 013471,000323: # VERB 10001 013472,000324: # ERROR RES 10010 013473,000325: # KEY RLSE 11001 013474,000326: # + 11010 013475,000327: # - 11011 013476,000328: # ENTER 11100 013477,000329: # CLEAR 11110 013478,000330: # NOUN 11111 013479,000331: 013480,000332: # OUTPUT FORMAT FOR DISPLAY PANEL. SET OUT0 TO AAAABCCCCCDDDDD. 013481,000333: # A'S SELECTS A RELAYWORD. THIS DETERMINES WHICH PAIR OF CHARACTERS ARE 013482,000334: # ENERGIZED. 013483,000335: # B FOR SPECIAL RELAYS SUCH AS SIGNS ETC. 013484,000336: # C'S 5 BIT RELAY CODE FOR LEFT CHAR OF PAIR SELECTED BY RELAYWORD. 013485,000337: # D'S 5 BIT RELAY CODE FOR RIGHT CHAR OF PAIR SELECTED BY RELAYWORD. 013486,000338: 013487,000339: # THE PANEL APPEARS AS FOLLOWS, 013488,000340: # MD1 MD2 (MAJOR MODE) 013489,000341: # VD1 VD2 (VERB) ND1 ND2 (NOUN) 013490,000342: # R1D1 R1D2 R1D3 R1D4 R1D5 (R1) 013491,000343: # R2D1 R2D2 R2D3 R2D4 R2D5 (R2) 013492,000344: # R3D1 R3D2 R3D3 R3D4 R3D5 (R3) 013493,000345: 013494,000346: # EACH OF THESE IS GIVEN A DSPCOUNT NUMBER FOR USE WITHIN COMPUTATION ONLY 013495,000347: 013496,000348: # MD1 25 R2D1 11 ALL ARE OCTAL 013497,000349: # MD2 24 R2D2 10 013498,000350: # VD1 23 R2D3 7 013499,000351: # VD2 22 R2D4 6 013500,000352: # ND1 21 R2D5 5 013501,000353: # ND2 20 R3D1 4 013502,000354: # R1D1 16 R3D2 3 013503,000355: # R1D2 15 R3D3 2 013504,000356: # R1D3 14 R3D4 1 013505,000357: # R1D4 13 R3D5 0 013506,000358: # R1D5 12 013507,000359: 013508,000360: # THERE IS AN 11-REGISTER TABLE (DSPTAB) FOR THE DISPLAY PANEL. 013509,000361: 013510,000362: # DSPTAB RELAYWD BIT11 BITS 10-6 BITS 5-1 013511,000363: # RELADD 013512,000364: # 10 1011 MD1 (25) MD2 (24) 013513,000365: # 9 1010 VD1 (23) VD2 (22) 013514,000366: # 8 1001 ND1 (21) ND2 (20) 013515,000367: # 7 1000 R1D1 (16) 013516,000368: # Page 314 013517,000369: # 6 0111 +R1 R1D2 (15) R1D3 (14) 013518,000370: # 5 0110 -R1 R1D4 (13) R1D5 (12) 013519,000371: # 4 0101 +R2 R2D1 (11) R2D2 (10) 013520,000372: # 3 0100 -R2 R2D3 (7) R2D4 (6) 013521,000373: # 2 0011 R2D5 (5) R3D1 (4) 013522,000374: # 1 0010 +R3 R3D2 (3) R3D3 (2) 013523,000375: # 0 0001 -R3 R3D4 (1) R3D5 (0) 013524,000376: # 0000 NO RELAYWORD 013525,000377: 013526,000378: # THE 5-BIT OUTOUT RELAY CODES ARE: 013527,000379: 013528,000380: # BLANK 00000 013529,000381: # 0 10101 013530,000382: # 1 00011 013531,000383: # 2 11001 013532,000384: # 3 11011 013533,000385: # 4 01111 013534,000386: # 5 11110 013535,000387: # 6 11100 013536,000388: # 7 10011 013537,000389: # 8 11101 013538,000390: # 9 11111 013539,000391: 013540,000392: # OUTPUT BITS USED BY PINBALL: 013541,000393: 013542,000394: # KEY RELEASE LIGHT -- BIT 5 OF CHANNEL 11 013543,000395: # VERB/NOUN FLASH -- BIT 6 OF CHANNEL 11 013544,000396: # OPERATOR ERROR LIGHT -- BIT 7 OF CHANNEL 11 013545,000397: 013546,000398: # Page 315 013547,000399: # START OF EXECUTIVE SECTION OF PINBALL 013548,000400: 013549,000401: 40,2000 BANK 40 013550,000402: 40,2000 SETLOC PINBALL1 013551,000403: 40,2000 BANK 013552,000404: 013553,000405: 40,2000 COUNT 40/PIN 013554,000406: 013555,000407: 40,2000 35017 CHARIN CAF ONE # BLOCK DISPLAY SYST 013556,000408: 40,2001 57012 XCH DSPLOCK # MAKE DSP SYST BUSY, BUT SAVE OLD 013557,000409: 40,2002 54115 TS 21/22REG # C(DSPLOCK) FOR ERROR LIGHT RESET. 013558,000410: 40,2003 11042 CCS CADRSTOR # ALL KEYS EXCEPT ER TURN ON KR LITE IF 013559,000411: 40,2004 02006 TC +2 # CADRSTOR IS FULL. THIS REMINDS OPERATOR 013560,000412: 40,2005 02013 TC CHARIN2 # TO RE-ESTABLISH A FLASHING DISPLAY 013561,000413: 40,2006 42057 CS ELRCODE1 # WHICH HE HAS OBSCURED WITH DISPLAYS OF 013562,000414: 40,2007 60154 AD MPAC # HIS OWN (SEE REMARKS PRECEDING ROUTINE 013563,000415: 40,2010 00006 EXTEND # VBRELDSP). 013564,000416: 40,2011 12013 BZF CHARIN2 013565,000417: 40,2012 04410 TC RELDSPON 013566,000418: 40,2013 56154 CHARIN2 XCH MPAC 013567,000419: 40,2014 54117 TS CHAR 013568,000420: 40,2015 50000 INDEX A 013569,000421: 40,2016 02017 TC +1 # INPUT CODE FUNCTION 013570,000422: 40,2017 03341 TC CHARALRM # 0 013571,000423: 40,2020 02076 TC NUM # 1 013572,000424: 40,2021 02076 TC NUM # 2 013573,000425: 40,2022 02076 TC NUM # 3 013574,000426: 40,2023 02076 TC NUM # 4 013575,000427: 40,2024 02076 TC NUM # 5 013576,000428: 40,2025 02076 TC NUM # 6 013577,000429: 40,2026 02076 TC NUM # 7 013578,000430: 40,2027 02062 TC 89TEST # 10 8 013579,000431: 40,2030 02062 TC 89TEST # 11 9 013580,000432: 40,2031 03341 TC CHARALRM # 12 013581,000433: 40,2032 03341 TC CHARALRM # 13 013582,000434: 40,2033 03341 TC CHARALRM # 14 013583,000435: 40,2034 03341 TC CHARALRM # 15 013584,000436: 40,2035 03341 TC CHARALRM # 16 013585,000437: 40,2036 03341 TC CHARALRM # 17 013586,000438: 40,2037 02074 TC NUM -2 # 20 0 013587,000439: 40,2040 02255 TC VERB # 21 VERB 013588,000440: 40,2041 03510 TC ERROR # 22 ERROR LIGHT RESET 013589,000441: 40,2042 03341 TC CHARALRM # 23 013590,000442: 40,2043 03341 TC CHARALRM # 24 013591,000443: 40,2044 03341 TC CHARALRM # 25 013592,000444: 40,2045 03341 TC CHARALRM # 26 013593,000445: 40,2046 03341 TC CHARALRM # 27 013594,000446: 40,2047 03341 TC CHARALRM # 30 013595,000447: 40,2050 03366 TC VBRELDSP # 31 KEY RELEASE 013596,000448: # Page 316 013597,000449: 40,2051 02310 TC POSGN # 32 + 013598,000450: 40,2052 02275 TC NEGSGN # 33 - 013599,000451: 40,2053 02060 TC ENTERJMP # 34 ENTER 013600,000452: 40,2054 03341 TC CHARALRM # 35 013601,000453: 40,2055 02370 TC CLEAR # 36 CLEAR 013602,000454: 40,2056 02271 TC NOUN # 37 NOUN 013603,000455: 013604,000456: 40,2057 00022 ELRCODE1 OCT 22 013605,000457: 40,2060 04701 ENTERJMP TC POSTJUMP 013606,000458: 40,2061 62002 CADR ENTER 013607,000459: 013608,000460: 40,2062 10777 89TEST CCS DSPCOUNT 013609,000461: 40,2063 02067 TC +4 # + 013610,000462: 40,2064 02067 TC +3 # +0 013611,000463: 40,2065 05217 TC ENDOFJOB # - BLOCK DATA IN IF DSPCOUNT IS - OR -0 013612,000464: 40,2066 05217 TC ENDOFJOB # -0 013613,000465: 40,2067 36214 CAF THREE 013614,000466: 40,2070 71000 MASK DECBRNCH 013615,000467: 40,2071 10000 CCS A 013616,000468: 40,2072 02076 TC NUM # IF DECBRNCH IS +, 8 OR 9 OK 013617,000469: 40,2073 03341 TC CHARALRM # IF DECBRNCH IS +0, REJECT 8 OR 9 013618,000470: 013619,000471: # NUM ASSEMBLES OCTAL 3 BITS AT A TIME. FOR DECIMAL IT CONVERTS INCOMING 013620,000472: # WORD AS A FRACTION, KEEPING RESULTS TO DP. 013621,000473: # OCTAL RESULTS ARE LEFT IN XREG, YREG, OR ZREG. HI PART OF DEC IN XREG, 013622,000474: # YREG, ZREG. THE LOW PARTS IN XREGLP, YREGLP, OR ZREGLP. 013623,000475: # DECBRNCH IS LEFT AT +0 FOR OCT, +1 FOR + DEC, +2 FOR - DEC. 013624,000476: # IF DSPCOUNT WAS LEFT -, NO MORE DATA IS ACCEPTED. 013625,000477: 013626,000478: 40,2074 35021 CAF ZERO 013627,000479: 40,2075 54117 TS CHAR 013628,000480: 40,2076 10777 NUM CCS DSPCOUNT 013629,000481: 40,2077 02103 TC +4 # + 013630,000482: 40,2100 02103 TC +3 # +0 013631,000483: 40,2101 02102 TC +1 # -BLOCK DATA IN IF DSPCOUNT IS - 013632,000484: 40,2102 05217 TC ENDOFJOB # -0 013633,000485: 40,2103 02225 TC GETINREL 013634,000486: 40,2104 11015 CCS CLPASS # IF CLPASS IS + OR +0, MAKE IT +0. 013635,000487: 40,2105 35021 CAF ZERO 013636,000488: 40,2106 55015 TS CLPASS 013637,000489: 40,2107 02110 TC +1 013638,000490: 40,2110 50117 INDEX CHAR 013639,000491: 40,2111 34072 CAF RELTAB 013640,000492: 40,2112 74362 MASK LOW5 013641,000493: 40,2113 54124 TS CODE 013642,000494: 40,2114 30777 CA DSPCOUNT 013643,000495: 40,2115 54143 TS COUNT 013644,000496: 40,2116 03227 TC DSPIN 013645,000497: # Page 317 013646,000498: 40,2117 36214 CAF THREE 013647,000499: 40,2120 71000 MASK DECBRNCH 013648,000500: 40,2121 10000 CCS A # +0, OCTAL. +1, + DEC. +2, - DEC. 013649,000501: 40,2122 02133 TC DECTOBIN # + 013650,000502: 40,2123 50137 INDEX INREL # +0 OCTAL 013651,000503: 40,2124 57001 XCH VERBREG 013652,000504: 40,2125 54022 TS CYL 013653,000505: 40,2126 40022 CS CYL 013654,000506: 40,2127 40022 CS CYL 013655,000507: 40,2130 56022 XCH CYL 013656,000508: 40,2131 60117 AD CHAR 013657,000509: 40,2132 02150 TC ENDNMTST 013658,000510: 40,2133 50137 DECTOBIN INDEX INREL 013659,000511: 40,2134 57001 XCH VERBREG 013660,000512: 40,2135 54154 TS MPAC # SUM X 2EXP-14 IN MPAC 013661,000513: 40,2136 35021 CAF ZERO 013662,000514: 40,2137 54155 TS MPAC +1 013663,000515: 40,2140 34377 CAF TEN # 10 X 2EXP-14 013664,000516: 40,2141 07256 TC SHORTMP # 10SUM X 2EXP-28 IN MPAC, MPAC+1 013665,000517: 40,2142 56155 XCH MPAC +1 013666,000518: 40,2143 60117 AD CHAR 013667,000519: 40,2144 54155 TS MPAC +1 013668,000520: 40,2145 02150 TC ENDNMTST # NO OF 013669,000521: 40,2146 26154 ADS MPAC # OF MUST BE 5TH CHAR 013670,000522: 40,2147 02166 TC DECEND 013671,000523: 40,2150 50137 ENDNMTST INDEX INREL 013672,000524: 40,2151 55001 TS VERBREG 013673,000525: 40,2152 40777 CS DSPCOUNT 013674,000526: 40,2153 50137 INDEX INREL 013675,000527: 40,2154 62216 AD CRITCON 013676,000528: 40,2155 00006 EXTEND 013677,000529: 40,2156 12160 BZF ENDNUM # -0, DSPCOUNT = CRITCON 013678,000530: 40,2157 02213 TC MORNUM # -, DSPCOUNT G/ CRITCON 013679,000531: 40,2160 36214 ENDNUM CAF THREE 013680,000532: 40,2161 71000 MASK DECBRNCH 013681,000533: 40,2162 10000 CCS A 013682,000534: 40,2163 02166 TC DECEND 013683,000535: 40,2164 40777 ENDALL CS DSPCOUNT # BLOCK NUMIN BY PLACING DSPCOUNT 013684,000536: 40,2165 02214 TC MORNUM +1 # NEGATIVELY 013685,000537: 40,2166 45017 DECEND CS ONE 013686,000538: 40,2167 60137 AD INREL 013687,000539: 40,2170 00006 EXTEND 013688,000540: 40,2171 62164 BZMF ENDALL # IF INREL=0,1 (VBREG,NNREG) LEAVE WHOLE 013689,000541: 40,2172 07052 TC DMP # IF INREL=2,3,4 (R1,R2,R3), CONVERT TO FRAC 013690,000542: # MULT SUM X 2EXP-28 IN MPAC, MPAC+1 BY 013691,000543: 40,2173 02223 ADRES DECON # 2EXP14/10EXP5, GIVES (SUM/10EXP5)X2EXP-14 013692,000544: 40,2174 36214 CAF THREE # IN MPAC, +1, +2. 013693,000545: 40,2175 71000 MASK DECBRNCH 013694,000546: 40,2176 50000 INDEX A 013695,000547: 40,2177 02177 TC +0 013696,000548: # Page 318 013697,000549: 40,2200 02204 TC +DECSGN 013698,000550: 40,2201 00006 EXTEND # - CASE 013699,000551: 40,2202 40156 DCS MPAC +1 013700,000552: 40,2203 52156 DXCH MPAC +1 013701,000553: 40,2204 56156 +DECSGN XCH MPAC +2 013702,000554: 40,2205 50137 INDEX INREL 013703,000555: 40,2206 55004 TS XREGLP -2 013704,000556: 40,2207 56155 XCH MPAC +1 013705,000557: 40,2210 50137 INDEX INREL 013706,000558: 40,2211 55001 TS VERBREG 013707,000559: 40,2212 02164 TC ENDALL 013708,000560: 40,2213 10777 MORNUM CCS DSPCOUNT # DECREMENT DSPCOUNT 013709,000561: 40,2214 54777 TS DSPCOUNT 013710,000562: 40,2215 05217 TC ENDOFJOB 013711,000563: 013712,000564: 40,2216 00022 CRITCON OCT 22 # (DEC 18) 013713,000565: 40,2217 00020 OCT 20 # (DEC 16) 013714,000566: 40,2220 00012 OCT 12 # (DEC 10) 013715,000567: 40,2221 00005 OCT 5 013716,000568: 40,2222 00000 OCT 0 013717,000569: 013718,000570: 40,2223 05174 13261 DECON 2DEC 1 E-5 B14 # 2EXP14/10EXP5 = .16384 DEC 013719,000571: 013720,000572: # GETINREL GETS PROPER DATA REG REL ADDRESS FOR CURRENT C(DSPCOUNT) AND 013721,000573: # PUTS IN INTO INREL. +0 VERBREG, 1 NOUNREG, 2 XREG, 3 YREG, 4 ZREG. 013722,000574: 013723,000575: 40,2225 50777 GETINREL INDEX DSPCOUNT 013724,000576: 40,2226 32231 CAF INRELTAB 013725,000577: 40,2227 54137 TS INREL # (A TEMP. REG) 013726,000578: 40,2230 00002 TC Q 013727,000579: 013728,000580: 40,2231 00004 INRELTAB OCT 4 # R3D5 (DSPCOUNT = 0) 013729,000581: 40,2232 00004 OCT 4 # R3D4 =(1) 013730,000582: 40,2233 00004 OCT 4 # R3D3 =(2) 013731,000583: 40,2234 00004 OCT 4 # R3D2 =(3) 013732,000584: 40,2235 00004 OCT 4 # R3D1 =(4) 013733,000585: 40,2236 00003 OCT 3 # R2D5 =(5) 013734,000586: 40,2237 00003 OCT 3 # R2D4 =(6) 013735,000587: 40,2240 00003 OCT 3 # R2D3 =(7) 013736,000588: 40,2241 00003 OCT 3 # R2D2 =(8D) 013737,000589: 40,2242 00003 OCT 3 # R2D1 =(9D) 013738,000590: 40,2243 00002 OCT 2 # R1D5 =(10D) 013739,000591: 40,2244 00002 OCT 2 # R1D4 =(11D) 013740,000592: 40,2245 00002 OCT 2 # R1D3 =(12D) 013741,000593: 40,2246 00002 OCT 2 # R1D2 =(13D) 013742,000594: 40,2247 00002 OCT 2 # R1D1 =(14D) 013743,000595: 40,2250 05747 TC CCSHOLE # NO DISCOUNT NUMBER = 15D 013744,000596: 40,2251 00001 OCT 1 # ND2 =(16D) 013745,000597: # Page 319 013746,000598: 40,2252 00001 OCT 1 # ND1 =(17D) 013747,000599: 40,2253 00000 OCT 0 # VD2 =(18D) 013748,000600: 40,2254 00000 OCT 0 # VD1 =(19D) 013749,000601: 013750,000602: 40,2255 35021 VERB CAF ZERO 013751,000603: 40,2256 55001 TS VERBREG 013752,000604: 40,2257 34374 CAF VD1 013753,000605: 40,2260 54777 NVCOM TS DSPCOUNT 013754,000606: 40,2261 02502 TC 2BLANK 013755,000607: 40,2262 35017 CAF ONE 013756,000608: 40,2263 55000 TS DECBRNCH # SET FOR DEC V/N CODE 013757,000609: 40,2264 35021 CAF ZERO 013758,000610: 40,2265 55013 TS REQRET # SET FOR ENTPAS0 013759,000611: 40,2266 34233 CAF ENDINST # IF DSPALARM OCCURS BEFORE FIRST ENTPAS0 013760,000612: 40,2267 54136 TS ENTRET # OR NVSUB, ENTRET MUST ALREADY BE SET 013761,000613: # TO TC ENDOFJOB 013762,000614: 40,2270 05217 TC ENDOFJOB 013763,000615: 40,2271 35021 NOUN CAF ZERO 013764,000616: 40,2272 55002 TS NOUNREG 013765,000617: 40,2273 34375 CAF ND1 # ND1, OCT 21 (DEC 17) 013766,000618: 40,2274 02260 TC NVCOM 013767,000619: 013768,000620: 40,2275 02347 NEGSGN TC SIGNTEST 013769,000621: 40,2276 02334 TC -ON 013770,000622: 40,2277 35016 CAF TWO 013771,000623: 40,2300 50137 BOTHSGN INDEX INREL # SET DEC COMP BIT TO 1 (IN DECBRNCH) 013772,000624: 40,2301 65011 AD BIT7 # BIT 5 FOR R1. BIT 4 FOR R2. 013773,000625: 40,2302 27000 ADS DECBRNCH # BIT 3 FOR R3. 013774,000626: 40,2303 11015 FIXCLPAS CCS CLPASS # IF CLPASS IS + OR +0. MAKE IT +0. 013775,000627: 40,2304 35021 CAF ZERO 013776,000628: 40,2305 55015 TS CLPASS 013777,000629: 40,2306 02307 TC +1 013778,000630: 40,2307 05217 TC ENDOFJOB 013779,000631: 013780,000632: 40,2310 02347 POSGN TC SIGNTEST 013781,000633: 40,2311 02314 TC +ON 013782,000634: 40,2312 35017 CAF ONE 013783,000635: 40,2313 02300 TC BOTHSGN 013784,000636: 013785,000637: 40,2314 22002 +ON LXCH Q 013786,000638: 40,2315 02225 TC GETINREL 013787,000639: 40,2316 50137 INDEX INREL 013788,000640: 40,2317 32342 CAF SGNTAB -2 013789,000641: 40,2320 54123 TS SGNOFF 013790,000642: 40,2321 65017 AD ONE 013791,000643: 40,2322 54122 TS SGNON 013792,000644: 40,2323 35021 SGNCOM CAF ZERO 013793,000645: 40,2324 54124 TS CODE 013794,000646: # Page 320 013795,000647: 40,2325 56123 XCH SGNOFF 013796,000648: 40,2326 03311 TC 11DSPIN 013797,000649: 40,2327 35005 CAF BIT11 013798,000650: 40,2330 54124 TS CODE 013799,000651: 40,2331 56122 XCH SGNON 013800,000652: 40,2332 03311 TC 11DSPIN 013801,000653: 40,2333 00001 TC L 013802,000654: 40,2334 22002 -ON LXCH Q 013803,000655: 40,2335 02225 TC GETINREL 013804,000656: 40,2336 50137 INDEX INREL 013805,000657: 40,2337 32342 CAF SGNTAB -2 013806,000658: 40,2340 54122 TS SGNON 013807,000659: 40,2341 65017 AD ONE 013808,000660: 40,2342 54123 TS SGNOFF 013809,000661: 40,2343 02323 TC SGNCOM 013810,000662: 013811,000663: 40,2344 00005 SGNTAB OCT 5 # -R1 013812,000664: 40,2345 00003 OCT 3 # -R2 013813,000665: 40,2346 00000 OCT 0 # -R3 013814,000666: 013815,000667: 40,2347 22002 SIGNTEST LXCH Q # ALLOWS +,- ONLY WHEN DSPCOUNT=R1D1, 013816,000668: 40,2350 36214 CAF THREE # R2D1, OR R3D1. ALLOWS ONLY FIRST OF 013817,000669: 40,2351 71000 MASK DECBRNCH # CONSECUTIVE +/- CHARACTERS. 013818,000670: 40,2352 10000 CCS A # IF LOW2 BITS OF DECBRNCH NOT 0. SIGN 013819,000671: 40,2353 05217 TC ENDOFJOB # FOR THIS WORD ALREADY IN. REJECT. 013820,000672: 40,2354 44333 CS R1D1 013821,000673: 40,2355 02363 TC SGNTST1 013822,000674: 40,2356 44334 CS R2D1 013823,000675: 40,2357 02363 TC SGNTST1 013824,000676: 40,2360 44335 CS R3D1 013825,000677: 40,2361 02363 TC SGNTST1 013826,000678: 40,2362 05217 TC ENDOFJOB # NO MATCH FOUND. SIGN ILLEGAL 013827,000679: 40,2363 60777 SGNTST1 AD DSPCOUNT 013828,000680: 40,2364 00006 EXTEND 013829,000681: 40,2365 12367 BZF +2 # MATCH FOUND 013830,000682: 40,2366 00002 TC Q 013831,000683: 40,2367 00001 TC L # SIGN LEGAL 013832,000684: 013833,000685: # CLEAR BLANKS WHICH R1, R2, R3 IS CURRENT OR LAST TO BE DISPLAYED (PERTINENT 013834,000686: # XREG, YREG, ZREG IS CLEARED). SUCCESSIVE CLEARS TAKE CARE OF EACH RX 013835,000687: # L/ RC UNTIL R1 IS DONE. THEN NO FURTHER ACTION. 013836,000688: 013837,000689: # THE SINGLE COMPONENT LOAD VERBS ALLOW ONLY THE SINGLE RC THAT IS 013838,000690: # APPROPRIATE TO BE CLEARED. 013839,000691: 013840,000692: # CLPASS +0 PASS0, CAN BE BACKED UP 013841,000693: # +NZ HIPASS, CAN BE BACKED UP 013842,000694: # -NZ PASS0, CANNOT BE BACKED UP 013843,000695: # Page 321 013844,000696: 40,2370 10777 CLEAR CCS DSPCOUNT 013845,000697: 40,2371 65017 AD ONE 013846,000698: 40,2372 02374 TC +2 013847,000699: 40,2373 65017 AD ONE 013848,000700: 40,2374 50000 INDEX A # DO NOT CHANGE DSPCOUNT BECAUSE MAY LATER 013849,000701: 40,2375 32231 CAF INRELTAB # FAIL LEGALTST. 013850,000702: 40,2376 54137 TS INREL # MUST SET INREL, EVEN FOR HIPASS. 013851,000703: 40,2377 11015 CCS CLPASS 013852,000704: 40,2400 02406 TC CLPASHI # + 013853,000705: 40,2401 02403 TC +2 # +0 IF CLPASS IS +0 OR -, IT IS PASS0 013854,000706: 40,2402 02403 TC +1 # - 013855,000707: 40,2403 30137 CA INREL 013856,000708: 40,2404 02430 TC LEGALTST 013857,000709: 40,2405 02423 TC CLEAR1 013858,000710: 40,2406 10137 CLPASHI CCS INREL 013859,000711: 40,2407 54137 TS INREL 013860,000712: 40,2410 02430 TC LEGALTST 013861,000713: 40,2411 32500 CAF DOUBLK +2 # +3 TO - NUMBER, BACKS DATA REQUESTS. 013862,000714: 40,2412 27013 ADS REQRET 013863,000715: 40,2413 30137 CA INREL 013864,000716: 40,2414 54125 TS MIXTEMP # TEMP STORAGE FOR INREL 013865,000717: 40,2415 00006 EXTEND 013866,000718: 40,2416 27001 DIM VERBREG # DECREMENT VERB AND RE-DISPLAY 013867,000719: 40,2417 04662 TC BANKCALL 013868,000720: 40,2420 62340 CADR UPDATVB 013869,000721: 40,2421 30125 CA MIXTEMP 013870,000722: 40,2422 54137 TS INREL # RESTORE INREL 013871,000723: 40,2423 02426 CLEAR1 TC CLR5 013872,000724: 40,2424 25015 INCR CLPASS # ONLY IF CLPASS IS + OR +0 013873,000725: 40,2425 05217 TC ENDOFJOB # SET FOR HIGHER PASS. 013874,000726: 40,2426 22002 CLR5 LXCH Q # USED 5BLANK BUT AVOIDS ITS TC GETINREL 013875,000727: 40,2427 02441 TC 5BLANK +2 013876,000728: 40,2430 67715 LEGALTST AD NEG2 013877,000729: 40,2431 10000 CCS A 013878,000730: 40,2432 00002 TC Q # LEGAL INREL G/2 013879,000731: 40,2433 05747 TC CCSHOLE 013880,000732: 40,2434 05217 TC ENDOFJOB # ILLEGAL INREL=0,1 013881,000733: 40,2435 00002 TC Q # LEGAL INREL=2 013882,000734: 013883,000735: # 5BLANK BLANKS 5 CHAR DISPLAY WORD IN R1, R2, OR R3. IT ALSO ZEROES XREG, 013884,000736: # YREG, OR ZREG. PLACE ANY + DSPCOUNT NUMBER FOR PERTINENT RC INTO DSPCOUNT. 013885,000737: # DSPCOUNT IS LEFT SET TO LEFT MOST DSP NUMB FOR RC JUST BLANKED. 013886,000738: 013887,000739: 40,2436 54777 TS DSPCOUNT # NEEDED FOR BLANKSUB 013888,000740: 40,2437 22002 5BLANK LXCH Q 013889,000741: 40,2440 02225 TC GETINREL 013890,000742: 40,2441 35021 CAF ZERO 013891,000743: 40,2442 50137 INDEX INREL 013892,000744: 40,2443 55001 TS VERBREG # ZERO X, Y, Z, REG. 013893,000745: # Page 322 013894,000746: 40,2444 50137 INDEX INREL 013895,000747: 40,2445 55004 TS XREGLP -2 013896,000748: 40,2446 54124 TS CODE 013897,000749: 40,2447 50137 INDEX INREL # ZERO PERTINENT DEC COMP BIT. 013898,000750: 40,2450 45011 CS BIT7 # PROTECT OTHERS 013899,000751: 40,2451 71000 MASK DECBRNCH 013900,000752: 40,2452 72501 MASK BRNCHCON # ZERO LOW 2 BITS. 013901,000753: 40,2453 55000 TS DECBRNCH 013902,000754: 40,2454 50137 INDEX INREL 013903,000755: 40,2455 32471 CAF SINBLANK -2 # BLANK ISOLATED CHAR SEPARATELY 013904,000756: 40,2456 54143 TS COUNT 013905,000757: 40,2457 03227 TC DSPIN 013906,000758: 40,2460 50137 5BLANK1 INDEX INREL 013907,000759: 40,2461 32474 CAF DOUBLK -2 013908,000760: 40,2462 54777 TS DSPCOUNT 013909,000761: 40,2463 02502 TC 2BLANK 013910,000762: 40,2464 45016 CS TWO 013911,000763: 40,2465 26777 ADS DSPCOUNT 013912,000764: 40,2466 02502 TC 2BLANK 013913,000765: 40,2467 50137 INDEX INREL 013914,000766: 40,2470 34331 CAF R1D1 -2 013915,000767: 40,2471 54777 TS DSPCOUNT # SET DSPCOUNT TO LEFT MOST DSP NUMBER 013916,000768: 40,2472 00001 TC L # OF REG. JUST BLANKED 013917,000769: 013918,000770: 40,2473 00016 SINBLANK OCT 16 # DEC 14 013919,000771: 40,2474 00005 OCT 5 013920,000772: 40,2475 00004 OCT 4 013921,000773: 40,2476 00015 DOUBLK OCT 15 # DEC 13 013922,000774: 40,2477 00011 OCT 11 # DEC 9 013923,000775: 40,2500 00003 OCT 3 013924,000776: 013925,000777: 40,2501 77774 BRNCHCON OCT 77774 013926,000778: 013927,000779: # 2BLANK BLANKS TWO CHAR. PLACE DSP NUMBER OF LEFT CHAR OF THE PAIR INTO 013928,000780: # DSPCOUNT. THIS NUMBER IS LEFT IN DSPCOUNT 013929,000781: 013930,000782: 40,2502 30777 2BLANK CA DSPCOUNT 013931,000783: 40,2503 54021 TS SR 013932,000784: 40,2504 42515 CS BLANKCON 013933,000785: 40,2505 00004 INHINT 013934,000786: 40,2506 50021 INDEX SR 013935,000787: 40,2507 57023 XCH DSPTAB 013936,000788: 40,2510 00006 EXTEND 013937,000789: 40,2511 62513 BZMF +2 # IF OLD CONTENTS -, NOUT OK 013938,000790: 40,2512 25016 INCR NOUT # IF OLD CONTENTS +, +1 TO NOUT 013939,000791: 40,2513 00003 RELINT # IF -, NOUT OK 013940,000792: 40,2514 00002 TC Q 013941,000793: 40,2515 04000 BLANKCON OCT 4000 013942,000794: 013943,000795: # Page 323 013944,000796: # ENTER PASS 0 IS THE EXECUTE FUNCTION. HIGHER ORDER ENTERS ARE TO LOAD 013945,000797: # DATA. THE SIGN OF REQRET DETERMINES THE PASS, + FOR PASS 0, - FOR HIGHER 013946,000798: # PASSES 013947,000799: 013948,000800: # MACHINE CADR TO BE SPECIFIED (MCTBS) NOUNS DESIRE AN ECADR TO BE LOADED 013949,000801: # WHEN USED WITH LOAD VERBS, MONITOR VERBS, OR DISPLAY VERBS (EXCEPT 013950,000802: # VERB = FIXED MEMORY DISPLAY, WHICH REQUIRES AN FCADR). 013951,000803: 013952,000804: 41,2000 BANK 41 013953,000805: 41,2000 SETLOC PINBALL2 013954,000806: 41,2000 BANK 013955,000807: 013956,000808: 41,2000 COUNT 41/PIN 013957,000809: 013958,000810: 41,2000 03544 NVSUBB TC NVSUB1 # STANDARD LEAD INS. DON'T MOVE. 013959,000811: 41,2001 02775 LOADLV1 TC LOADLV 013960,000812: 013961,000813: # END OF STANDARD LEAD INS. 013962,000814: 013963,000815: 41,2002 35021 ENTER CAF ZERO 013964,000816: 41,2003 55015 TS CLPASS 013965,000817: 41,2004 34233 CAF ENDINST 013966,000818: 41,2005 54136 TS ENTRET 013967,000819: 41,2006 11013 CCS REQRET 013968,000820: 41,2007 02035 TC ENTPAS0 # IF +, PASS 0 013969,000821: 41,2010 02035 TC ENTPAS0 # IF +, PASS 0 013970,000822: 41,2011 02012 TC +1 # IF -, NOT PASS 0 013971,000823: 41,2012 32033 ENTPASHI CAF MMADREF 013972,000824: 41,2013 61013 AD REQRET # IF L/ 2 CHAR IN FOR MM CODE, ALARM 013973,000825: 41,2014 00006 EXTEND # AND RECYCLE (DECIDE AT MCHANG+1). 013974,000826: 41,2015 12027 BZF ACCEPTWD 013975,000827: 41,2016 36214 CAF THREE # IF DEC, ALARM IF L/ 5 CHAR IN FOR DATA, 013976,000828: 41,2017 71000 MASK DECBRNCH # BUT LEAVE REQRET - AND FLASH ON, SO 013977,000829: 41,2020 10000 CCS A # OPERATOR CAN SUPPLY MISSING NUMERICAL 013978,000830: 41,2021 02023 TC +2 # CHARACTERS AND CONTINUE. 013979,000831: 41,2022 02027 TC ACCEPTWD # OCTAL. ANY NUMBER OF CHAR OK. 013980,000832: 41,2023 10777 CCS DSPCOUNT 013981,000833: 41,2024 02351 TC GODSPALM # LESS THAN 5 CHAR DEC(DSPCOUNT IS +) 013982,000834: 41,2025 02351 TC GODSPALM # LESS THAN 5 CHAR DEC(DSPCOUNT IS +) 013983,000835: 41,2026 02027 TC +1 # 5 CHAR IN (DSPCOUNT IS -) 013984,000836: 41,2027 41013 ACCEPTWD CS REQRET # 5 CHAR IN (DSPCOUNT IS -) 013985,000837: 41,2030 55013 TS REQRET # SET REQRET +. 013986,000838: 41,2031 04447 TC FLASHOFF 013987,000839: 41,2032 01013 TC REQRET 013988,000840: 013989,000841: 41,2033 0136 ENTEXIT = ENTRET 013990,000842: 013991,000843: 41,2033 03431 MMADREF ADRES MMCHANG +1 # ASSUMES TC REQMM AT MMCHANG. 013992,000844: 013993,000845: # Page 324 013994,000846: 41,2034 00034 LOWVERB DEC 28 B-14 # LOWER VERB THAT AVOIDS NOUN TEST. 013995,000847: 013996,000848: 41,2035 35021 ENTPAS0 CAF ZERO # NOUN VERB SUB ENTERS HERE 013997,000849: 41,2036 55000 TS DECBRNCH 013998,000850: 41,2037 44374 CS VD1 # BLOCK FURTHER NUM CHAR, SO THAT STRAY 013999,000851: 41,2040 54777 TS DSPCOUNT # CHAR DO NOT GET INTO VERB OR NOUN LTS. 014000,000852: 41,2041 41001 TESTVB CS VERBREG # IF VERB IS G/E LOWVB, SKIP NOUN TEST. 014001,000853: 41,2042 55041 TS VERBSAVE # SAVE VERB FOR POSSIBLE RECYCLE. 014002,000854: 41,2043 62034 AD LOWVERB # LOWVERB - VB 014003,000855: 41,2044 00006 EXTEND 014004,000856: 41,2045 62133 BZMF VERBFAN # VERB G/ E LOWVERB 014005,000857: 41,2046 00006 TESTNN EXTEND # VERB L/ LOWVERB 014006,000858: 41,2047 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014007,000859: 41,2050 52006 DXCH Z # ROUTINE. 014008,000860: 41,2051 50140 INDEX MIXBR 014009,000861: 41,2052 02052 TC +0 014010,000862: 41,2053 02055 TC +2 # NORMAL 014011,000863: 41,2054 02221 TC MIXNOUN # MIXED 014012,000864: 41,2055 10146 CCS NNADTEM # NORMAL 014013,000865: 41,2056 02131 TC VERBFAN -2 # NORMAL IF + 014014,000866: 41,2057 02351 TC GODSPALM # NOT IN USE IF +0 014015,000867: 41,2060 02064 TC REQADD # SPECIFY MACHINE CADR IF - 014016,000868: 41,2061 25017 INCR NOUNCADR # AUGMENT MACHINE CADR IF -0 014017,000869: 41,2062 04325 TC SETNADD # ECADR FROM NOUNCADR, SETS ED, NOUNADD. 014018,000870: 41,2063 02120 TC INTMCTBS +2 014019,000871: 41,2064 35001 REQADD CAF BIT15 # SET CLPASS FOR PASS 0 ONLY 014020,000872: 41,2065 55015 TS CLPASS 014021,000873: 41,2066 44233 CS ENDINST # TEST IF REACHED HERE FROM INTERNAL OR 014022,000874: 41,2067 60136 AD ENTEXIT # FROM EXTERNAL 014023,000875: 41,2070 00006 EXTEND 014024,000876: 41,2071 12073 BZF +2 # EXTERNAL MACH CADR TO BE SPECIFIED 014025,000877: 41,2072 02116 TC INTMCTBS 014026,000878: 41,2073 02307 TC REQDATZ # EXTERNAL MACH CADR TO BE SPECIFIED 014027,000879: 41,2074 11000 CCS DECBRNCH # ALARM AND RECYCLE IF DECIMAL USED 014028,000880: 41,2075 04161 TC ALMCYCLE # FOR MCTBS. 014029,000881: 41,2076 44374 CS VD1 # OCTAL USED OK 014030,000882: 41,2077 54777 TS DSPCOUNT # BLOCK NUM CHAR IN 014031,000883: 41,2100 11042 CCS CADRSTOR 014032,000884: 41,2101 02104 TC +3 # EXTERNAL MCTBS DISPLAY WILL LEAVE FLASH 014033,000885: 41,2102 02105 TC USEADD # ON IF ENDIDLE NOT = +0. 014034,000886: 41,2103 02104 TC +1 014035,000887: 41,2104 04443 TC FLASHON 014036,000888: 41,2105 57005 USEADD XCH ZREG 014037,000889: 41,2106 04317 TC SETNCADR # ECADR INTO NOUNCADR. SET EB, NOUNADD. 014038,000890: 41,2107 00006 EXTEND 014039,000891: 41,2110 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TAB E READING 014040,000892: 41,2111 52006 DXCH Z # ROUTINE. 014041,000893: 41,2112 02133 TC VERBFAN 014042,000894: 014043,000895: 41,2113 0777 EBANK= DSPCOUNT 014044,000896: # Page 325 014045,000897: 41,2113 02062 64101 LODNNLOC 2CADR LODNNTAB 014046,000898: 014047,000899: 41,2115 77772 NEG5 OCT 77772 014048,000900: 014049,000901: 41,2116 30156 INTMCTBS CA MPAC +2 # INTERNAL MACH CADR TO BE SPECIFIED. 014050,000902: 41,2117 04317 TC SETNCADR # ECADR INTO NOUNCADR. SET EB, NOUNADD. 014051,000903: 41,2120 45022 CS FIVE # NVSUB CALL LEFT CADR IN MPAC+2 FOR MACH 014052,000904: 41,2121 61001 AD VERBREG # CADR TO BE SPECIFIED. 014053,000905: 41,2122 00006 EXTEND 014054,000906: 41,2123 12133 BZF VERBFAN # DON'T DISPLAY CADR IF VB = 05. 014055,000907: 41,2124 34335 CAF R3D1 # VB NOT = 05. DISPLAY CADR. 014056,000908: 41,2125 54777 TS DSPCOUNT 014057,000909: 41,2126 31017 CA NOUNCADR 014058,000910: 41,2127 03363 TC DSPOCTWO 014059,000911: 41,2130 02133 TC VERBFAN 014060,000912: 014061,000913: 41,2131 65017 AD ONE 014062,000914: 41,2132 04317 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 014063,000915: 41,2133 42145 VERBFAN CS LST2CON 014064,000916: 41,2134 61001 AD VERBREG # VERB -- LST2CON 014065,000917: 41,2135 10000 CCS A 014066,000918: 41,2136 65017 AD ONE # VERB G/ LST2CON 014067,000919: 41,2137 02141 TC +2 014068,000920: 41,2140 02146 TC VBFANDIR # VERB L/ LST2CON 014069,000921: 41,2141 54154 TS MPAC 014070,000922: 41,2142 04473 TC RELDSP # RELEASE DISPLAY SYST 014071,000923: 41,2143 04701 TC POSTJUMP # GO TO GOEXTVB WITH VB=40 IN MPAC. 014072,000924: 41,2144 66000 CADR GOEXTVB 014073,000925: 41,2145 00050 LST2CON DEC 40 B-14 # FIRST LIST2 VERB (EXTENDED VERB) 014074,000926: 014075,000927: 41,2146 51001 VBFANDIR INDEX VERBREG 014076,000928: 41,2147 32151 CAF VERBTAB 014077,000929: 41,2150 04704 TC BANKJUMP 014078,000930: 014079,000931: 41,2151 62351 VERBTAB CADR GODSPALM # VB00 ILLEGAL 014080,000932: 41,2152 62365 CADR DSPA # VB01 DISPLAY OCT COMP 1 (R1) 014081,000933: 41,2153 62373 CADR DSPB # VB02 DISPLAY OCT COMP 2 (R1) 014082,000934: 41,2154 62400 CADR DSPC # VB03 DISPLAY OCT COMP 3 (R1) 014083,000935: 41,2155 62360 CADR DSPAB # VB04 DISPLAY OCT COMP 1,2 (R1,R2) 014084,000936: 41,2156 62353 CADR DSPABC # VB05 DISPLAY OCT COMP 1,2,3 (R1,R2,R3) 014085,000937: 41,2157 62523 CADR DECDSP # VB06 DECIMAL DISPLAY 014086,000938: 41,2160 60677 CADR DSPDPDEC # VB07 DP DECIMAL DISPLAY (R1,R2) 014087,000939: 41,2161 62351 CADR GODSPALM # VB08 SPARE 014088,000940: 41,2162 62351 CADR GODSPALM # VB09 SPARE 014089,000941: 41,2163 61325 CADR DSPALARM # VB10 SPARE 014090,000942: 41,2164 63230 CADR MONITOR # VB11 MONITOR OCT COMP 1 (R1) 014091,000943: 41,2165 63230 CADR MONITOR # VB12 MONITOR OCT COMP 2 (R1) 014092,000944: 41,2166 63230 CADR MONITOR # VB13 MONITOR OCT COMP 3 (R1) 014093,000945: 41,2167 63230 CADR MONITOR # VB14 MONITOR OCT COMP 1,2 (R1,R2) 014094,000946: # Page 326 014095,000947: 41,2170 63230 CADR MONITOR # VB15 MONITOR OCT COMP 1,2,3 (R1,R2,R3) 014096,000948: 41,2171 63230 CADR MONITOR # VB16 MONITOR DECIMAL 014097,000949: 41,2172 63230 CADR MONITOR # VB17 MONITOR DP DEC (R1,R2) 014098,000950: 41,2173 62351 CADR GODSPALM # VB18 SPARE 014099,000951: 41,2174 62351 CADR GODSPALM # VB19 SPARE 014100,000952: 41,2175 62351 CADR GODSPALM # VB20 SPARE 014101,000953: 41,2176 62732 CADR ALOAD # VB21 LOAD COMP 1 (R1) 014102,000954: 41,2177 62743 CADR BLOAD # VB22 LOAD COMP 2 (R2) 014103,000955: 41,2200 62760 CADR CLOAD # VB23 LOAD COMP 3 (R3) 014104,000956: 41,2201 62703 CADR ABLOAD # VB24 LOAD COMP 1,2 (R1,R2) 014105,000957: 41,2202 62616 CADR ABCLOAD # VB25 LOAD COMP 1,2,3 (R1,R2,R3) 014106,000958: 41,2203 62351 CADR GODSPALM # VB26 SPARE 014107,000959: 41,2204 63353 CADR DSPFMEM # VB27 FIXED MEMORY DISPLAY 014108,000960: # THE FOLLOWING VERBS MAKE NO NOUN TEST 014109,000961: 41,2205 62351 CADR GODSPALM # VB28 SPARE 014110,000962: 41,2206 62351 CADR GODSPALM # VB29 SPARE 014111,000963: 41,2207 63466 REQEXLQC CADR VBRQEXEC # VB30 REQUEST EXECUTIVE 014112,000964: 41,2210 63512 CADR VBRQWAIT # VB31 REQUEST WAITLIST 014113,000965: 41,2211 61364 CADR VBRESEQ # VB32 RESEQUENCE 014114,000966: 41,2212 61347 CADR VBPROC # VB33 PROCEED WITHOUT DATA 014115,000967: 41,2213 61355 CADR VBTERM # VB34 TERMINATE CURRENT TEST OR LOAD REQ 014116,000968: 41,2214 63613 CADR VBTSTLTS # VB35 TEST LIGHTS 014117,000969: 41,2215 12342 CADR SLAP1 # VB36 FRESH START 014118,000970: 41,2216 63430 CADR MMCHANG # VB37 CHANGE MAJOR MODE 014119,000971: 41,2217 62351 CADR GODSPALM # VB38 SPARE 014120,000972: 41,2220 62351 CADR GODSPALM # VB39 SPARE 014121,000973: 014122,000974: # THE LIST2 VERBFAN IS LOCATED IN THE EXTENDED VERB BANK. 014123,000975: # Page 327 014124,000976: # NNADTAB CONTAINS A RELATIVE ADDRESS, IDADDREL (IN LOW 10 BITS), REFERRING 014125,000977: # TO WHERE 3 CONSECUTIVE ADDRESSES ARE STORED (IN IDADDTAB). 014126,000978: # MIXNOUN GETS DATA AND STORES IN MIXTEMP,+1,+2. IT SETS NOUNADD FOR 014127,000979: # MIXTEMP. 014128,000980: 014129,000981: 41,2221 10146 MIXNOUN CCS NNADTEM 014130,000982: 41,2222 02226 TC +4 # + IN USE 014131,000983: 41,2223 02351 TC GODSPALM # +0 NOT IN USE 014132,000984: 41,2224 02226 TC +2 # - IN USE 014133,000985: 41,2225 02226 TC +1 # -0 IN USE 014134,000986: 41,2226 46211 CS SIX 014135,000987: 41,2227 61001 AD VERBREG 014136,000988: 41,2230 00006 EXTEND 014137,000989: 41,2231 62233 BZMF +2 # VERB L/E 6 014138,000990: 41,2232 02133 TC VERBFAN # AVOID MIXNOUN SWAP IF VB NOT = DISPLAY 014139,000991: 41,2233 35016 CAF TWO 014140,000992: 41,2234 54117 MIXNN1 TS DECOUNT 014141,000993: 41,2235 62260 AD MIXAD 014142,000994: 41,2236 54145 TS NOUNADD # SET NOUNADD TO MIXTEMP +K 014143,000995: 41,2237 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K 014144,000996: 41,2240 30150 CA IDAD1TEM # OF NOUN. 014145,000997: 41,2241 54122 TS NOUNTEM 014146,000998: # TEST FOR DP (FOR OCT DISPLAY). IF SO, GET 014147,000999: # MINOR PART ONLY. 014148,001000: 41,2242 03034 TC SFRUTMIX # GET SF ROUT NUMBER IN A 014149,001001: 41,2243 02261 TC DPTEST 014150,001002: 41,2244 02246 TC MIXNN2 # NO DP 014151,001003: 41,2245 24122 INCR NOUNTEM # DP GET MINOR PART 014152,001004: 41,2246 30122 MIXNN2 CA NOUNTEM 014153,001005: 41,2247 74372 MASK LOW11 # ESUBK (NO DP) OR (ESUBK)+1 FOR DP. 014154,001006: 41,2250 04327 TC SETEBANK # SET EBANK, LEAVE EADRES IN A. 014155,001007: 41,2251 50000 INDEX A # PICK UP C(ESUBK) NOT DP. 014156,001008: 41,2252 30000 CA 0 # OR C((ESUBK)+1) FOR DP MINOR PART 014157,001009: 41,2253 50145 INDEX NOUNADD 014158,001010: 41,2254 56000 XCH 0 # STORE IN MIXTEM + K 014159,001011: 41,2255 10117 CCS DECOUNT 014160,001012: 41,2256 02234 TC MIXNN1 014161,001013: 41,2257 02133 TC VERBFAN 014162,001014: 014163,001015: 41,2260 00125 MIXAD TC MIXTEMP 014164,001016: 014165,001017: # DPTEST ENTER WITH SF ROUT NUMBER IN A. 014166,001018: # RETURNS TO L+1 IF NO DP. 014167,001019: # RETURNS TO L+2 IF DP. 014168,001020: 014169,001021: 41,2261 50000 DPTEST INDEX A 014170,001022: 41,2262 12263 TCF +1 014171,001023: 41,2263 00002 TC Q # OCTAL ONLY NO DP 014172,001024: 41,2264 00002 TC Q # FRACT NO DP 014173,001025: # Page 328 014174,001026: 41,2265 00002 TC Q # DEG NO DP 014175,001027: 41,2266 00002 TC Q # ARITH NO DP 014176,001028: 41,2267 12301 TCF DPTEST1 # DP1OUT 014177,001029: 41,2270 12301 TCF DPTEST1 # DP2OUT 014178,001030: 41,2271 00002 TC Q # OPDEG NO DP 014179,001031: 41,2272 12301 TCF DPTEST1 # DP3OUT 014180,001032: 41,2273 00002 TC Q # HMS NO DP 014181,001033: 41,2274 00002 TC Q # M/S NO DP 014182,001034: 41,2275 12301 TCF DPTEST1 # DP4OUT 014183,001035: 41,2276 00002 TC Q # ARITH1 NO DP 014184,001036: 41,2277 00002 TC Q # 2INTOUT NO DP TO GET HI PART IN MPAC 014185,001037: 41,2300 12301 TCF DPTEST1 # DPFRACOT 014186,001038: 41,2301 50002 DPTEST1 INDEX Q 014187,001039: 41,2302 00001 TC 1 # RETURN TO L+2 014188,001040: 014189,001041: 41,2303 34333 REQDATX CAF R1D1 014190,001042: 41,2304 12310 TCF REQCOM 014191,001043: 41,2305 34334 REQDATY CAF R2D1 014192,001044: 41,2306 12310 TCF REQCOM 014193,001045: 41,2307 34335 REQDATZ CAF R3D1 014194,001046: 41,2310 54777 REQCOM TS DSPCOUNT 014195,001047: 41,2311 40002 CS Q 014196,001048: 41,2312 55013 TS REQRET 014197,001049: 41,2313 04662 TC BANKCALL 014198,001050: 41,2314 60437 CADR 5BLANK 014199,001051: 41,2315 04443 TC FLASHON 014200,001052: 41,2316 00136 ENDRQDAT TC ENTEXIT 014201,001053: 014202,001054: 41,2317 55002 TS NOUNREG 014203,001055: 41,2320 56002 UPDATNN XCH Q 014204,001056: 41,2321 54117 TS UPDATRET 014205,001057: 41,2322 00006 EXTEND 014206,001058: 41,2323 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014207,001059: 41,2324 52006 DXCH Z # ROUTINE. 014208,001060: 41,2325 10146 CCS NNADTEM 014209,001061: 41,2326 65017 AD ONE # NORMAL 014210,001062: 41,2327 12332 TCF PUTADD 014211,001063: 41,2330 12333 TCF PUTADD +1 # MCTBS DON'T CHANGE NOUNADD 014212,001064: 41,2331 12333 TCF PUTADD +1 # MCTBI DON'T CHANGE NOUNADD 014213,001065: 41,2332 04317 PUTADD TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 014214,001066: 41,2333 34375 CAF ND1 014215,001067: 41,2334 54777 TS DSPCOUNT 014216,001068: 41,2335 31002 CA NOUNREG 014217,001069: 41,2336 12345 TCF UPDAT1 014218,001070: 014219,001071: 41,2337 55001 TS VERBREG 014220,001072: 41,2340 56002 UPDATVB XCH Q 014221,001073: 41,2341 54117 TS UPDATRET 014222,001074: 41,2342 34374 CAF VD1 014223,001075: # Page 329 014224,001076: 41,2343 54777 TS DSPCOUNT 014225,001077: 41,2344 31001 CA VERBREG 014226,001078: 41,2345 04701 UPDAT1 TC POSTJUMP # CAN'T USE SWCALL TO GO TC DSPDECVN, SINCE 014227,001079: 41,2346 61224 CADR GOVNUPDT # UPDATVB CAN ITSELF BE CALLED BY SWCALL. 014228,001080: 41,2347 00117 TC UPDATRET 014229,001081: 014230,001082: 41,2350 04161 GOALMCYC TC ALMCYCLE # NEEDED BECAUSE BANKJUMP CAN'T HANDLE F/F. 014231,001083: 014232,001084: 41,2351 04701 GODSPALM TC POSTJUMP 014233,001085: 41,2352 61325 CADR DSPALARM 014234,001086: 014235,001087: # Page 330 014236,001088: # NOUN TABLES 014237,001089: 014238,001090: # NOUN CODE L/40, NORMAL NOUN CASE. NOUN CODE G/E 40, MIXED NOUN CASE. 014239,001091: # FOR NORMAL CASE, NNADTAB CONTAINS ONE ECADR FOR EACH NOUN. 014240,001092: # +0 INDICATES NOUN NOT USED. - ENTRY INDICATES MACHINE CADR (E OR F) TO 014241,001093: # BE SPECIFIED. -1 INDICATES CHANNEL TO BE SPECIFIED. -0 INDICATES AUGMENT 014242,001094: # OF LAST MACHINE CADR SUPPLIED. 014243,001095: 014244,001096: # FOR MIXED CASE, NNADTAB CONTAINS ONE INDIRECT ADDRESS (IDADDREL) IN LOW 014245,001097: # 10 BITS, AND THE COMPONENT CODE NUMBER IN THE HIGH 5 BITS. 014246,001098: 014247,001099: # NNTYPTAB IS A PACKED TABLE OF THE FORM MMMMMNNNNNPPPPP. 014248,001100: 014249,001101: # FOR THE NORMAL CASE, M'S ARE THE COMPONENT CODE NUMBER. 014250,001102: # N'S ARE THE SF ROUTINE CODE NUMBER. 014251,001103: # P'S ARE THE SF CONSTANT CODE NUMBER. 014252,001104: 014253,001105: # MIXED-CASE, M'S ARE THE SF CONSTANT3 CODE NUMBER 3 COMPONENT CASE 014254,001106: # N'S ARE THE SF CONSTANT2 CODE NUMBER 014255,001107: # P'S ARE THE SF CONSTANT1 CODE NUMBER 014256,001108: # N'S ARE THE SF CONSTANT2 CODE NUMBER 2 COMPONENT CASE 014257,001109: # P'S ARE THE SF CONSTANT1 CODE NUMBER 014258,001110: # P'S ARE THE SF CONSTANT1 CODE NUMBER 1 COMPONENT CASE 014259,001111: 014260,001112: # THERE IS ALSO AN INDIRECT ADDRESS TABLE (IDADDTAB) FOR MIXED CASE ONLY 014261,001113: # EACH ENTRY CONTAINS ONE ECADR. IDADDREL IS THE RELATIVE ADDRESS OF 014262,001114: # THE FIRST OF THESE ENTRIES. 014263,001115: 014264,001116: # THERE IS ONE ENTRY IN THIS TABEL FOR EACH COMPONENT OF A MIXED NOUN 014265,001117: # THEY ARE LISTED IN ORDER OF ASCENDING K. 014266,001118: 014267,001119: # THERE IS ALSO A SCALE FACTOR ROUTINE NUMBER TABLE (RUTMXTAB) FOR MIXED 014268,001120: # CASE ONLY. THERE IS ONE ENTRY PER MIXED NOUN. THE FORM IS, 014269,001121: 014270,001122: # QQQQQRRRRRSSSSS 014271,001123: 014272,001124: # Q'S ARE THE SF ROUTINE 3 CODE NUMBER 3 COMPONENT CASE 014273,001125: # R'S ARE THE SF ROUTINE 2 CODE NUMBER 014274,001126: # S'S ARE THE SF ROUTINE 1 CODE NUMBER 014275,001127: # R'S ARE THE SF ROUTINE 2 CODE NUMBER 2 COMPONENT CASE 014276,001128: # S'S ARE THE SF ROUTINE 1 CODE NUMBER 014277,001129: 014278,001130: # IN OCTAL DISPLAY AND LOAD (OCT OR DEC) VERBS, EXCLUDE USE OF VERBS WHOSE 014279,001131: # COMPONENT NUMBER IS GREATER THAN THE NUMBER OF COMONENTS IN NOUN. 014280,001132: # (ALL MACHINE ADDRESS TO BE SPECIFIED NOUNS ARE 3 COMPONENT.) 014281,001133: 014282,001134: # IN MULTI-COMPONENT LOAD VERBS, NO MIXING OF OCTAL AND DECIMAL DATA 014283,001135: # COMPONENT WORDS IS ALLOWED. ALARM IF VIOLATION. 014284,001136: 014285,001137: # IN DECIMAL LOADS OF DATA, 5 NUMERICAL CHARACTERS MUST BE KEYED IN 014286,001138: # BEFORE EACH ENTER. IF NOT, ALARM. 014287,001139: 014288,001140: # Page 331 014289,001141: # DISPLAY VERBS 014290,001142: 014291,001143: 41,2353 45016 DSPABC CS TWO 014292,001144: 41,2354 02424 TC COMPTEST 014293,001145: 41,2355 50145 INDEX NOUNADD 014294,001146: 41,2356 40002 CS 2 014295,001147: 41,2357 56132 XCH BUF +2 014296,001148: 41,2360 45017 DSPAB CS ONE 014297,001149: 41,2361 02424 TC COMPTEST 014298,001150: 41,2362 50145 INDEX NOUNADD 014299,001151: 41,2363 40001 CS 1 014300,001152: 41,2364 56131 XCH BUF +1 014301,001153: 41,2365 02443 DSPA TC DECTEST 014302,001154: 41,2366 02466 TC TSTFORDP 014303,001155: 41,2367 50145 INDEX NOUNADD 014304,001156: 41,2370 40000 CS 0 014305,001157: 41,2371 56130 DSPCOM1 XCH BUF 014306,001158: 41,2372 02405 TC DSPCOM2 014307,001159: 41,2373 45017 DSPB CS ONE 014308,001160: 41,2374 02437 TC DCOMPTST 014309,001161: 41,2375 50145 INDEX NOUNADD 014310,001162: 41,2376 40001 CS 1 014311,001163: 41,2377 02371 TC DSPCOM1 014312,001164: 41,2400 45016 DSPC CS TWO 014313,001165: 41,2401 02437 TC DCOMPTST 014314,001166: 41,2402 50145 INDEX NOUNADD 014315,001167: 41,2403 40002 CS 2 014316,001168: 41,2404 02371 TC DSPCOM1 014317,001169: 41,2405 45016 DSPCOM2 CS TWO # A B C AB ABC 014318,001170: 41,2406 61001 AD VERBREG # -1 -0 +1 +2 +3 IN A 014319,001171: 41,2407 10000 CCS A # +0 +0 +0 +1 +2 IN A AFTER CCS 014320,001172: 41,2410 02413 TC DSPCOM3 014321,001173: 41,2411 00136 TC ENTEXIT 014322,001174: 41,2412 02413 TC +1 014323,001175: 41,2413 54122 DSPCOM3 TS DISTEM # +0 +1 +2 INTO DISTEM 014324,001176: 41,2414 50000 INDEX A 014325,001177: 41,2415 34333 CAF R1D1 014326,001178: 41,2416 54777 TS DSPCOUNT 014327,001179: 41,2417 50122 INDEX DISTEM 014328,001180: 41,2420 40130 CS BUF 014329,001181: 41,2421 03363 TC DSPOCTWO 014330,001182: 41,2422 56122 XCH DISTEM 014331,001183: 41,2423 02407 TC DSPCOM2 +2 014332,001184: 014333,001185: # COMPTEST ALARMS IF COMPONENT NUMBER OF VERB (LOAD OR OCT DISPLAY) IS 014334,001186: # GREATER THAN THE HIGHEST COMPONENT NUMBER OF NOUN. 014335,001187: 014336,001188: 41,2424 54123 COMPTEST TS SFTEMP1 # VERB COMP 014337,001189: 41,2425 22002 LXCH Q 014338,001190: 41,2426 02515 COMPTST1 TC GETCOMP 014339,001191: 41,2427 04345 TC LEFT5 014340,001192: 41,2430 76214 MASK THREE # NOUN COMP 014341,001193: # Page 332 014342,001194: 41,2431 60123 AD SFTEMP1 # NOUN COMP -- VERB COMP 014343,001195: 41,2432 10000 CCS A 014344,001196: 41,2433 00001 TC L # NOUN COMP G/ VERB COMP 014345,001197: 41,2434 05747 TC CCSHOLE 014346,001198: 41,2435 02351 TC GODSPALM # NOUN COMP L/ VERB COMP 014347,001199: 41,2436 00001 NDCMPTST TC L # NOUN COMP = VERB COMP 014348,001200: 014349,001201: # DCOMPTST ALARMS IF DECIMAL ONLY BIT (BIT4 OF COMP CODE NUMBER) = 1. 014350,001202: # IF NOT, IT PERFORMS REGULAR COMPTEST. 014351,001203: 014352,001204: 41,2437 54123 DCOMPTST TS SFTEMP1 # - VERB COMP 014353,001205: 41,2440 22002 LXCH Q 014354,001206: 41,2441 02443 TC DECTEST 014355,001207: 41,2442 02426 TC COMPTST1 014356,001208: 014357,001209: 41,2443 00006 DECTEST EXTEND # ALARMS IF DEC ONLY BIT = 1 (BIT4 OF COMP 014358,001210: 41,2444 22156 QXCH MPAC +2 # CODE NUMBER). RETURNS IF NOT. 014359,001211: 41,2445 02515 TC GETCOMP 014360,001212: 41,2446 75002 MASK BIT14 014361,001213: 41,2447 10000 CCS A 014362,001214: 41,2450 02351 TC GODSPALM 014363,001215: 41,2451 00156 TC MPAC +2 014364,001216: 014365,001217: 41,2452 22002 DCTSTCYC LXCH Q # ALARMS AND RECYCLES IF DEC ONLY BIT = 1 014366,001218: 41,2453 02515 TC GETCOMP # (BIT4 OF COMP CODE NUMBER). RETURNS 014367,001219: 41,2454 75002 MASK BIT14 # IF NOT. USED BY LOAD VERBS. 014368,001220: 41,2455 10000 CCS A 014369,001221: 41,2456 04161 TC ALMCYCLE 014370,001222: 41,2457 00001 TC L 014371,001223: 014372,001224: # NOUNTEST ALARMS IF NO-LOAD BIT (BIT5 OF COMP CODE NUMBER) = 1. 014373,001225: # IF NOT, IT RETURNS. 014374,001226: 014375,001227: 41,2460 22002 NOUNTEST LXCH Q 014376,001228: 41,2461 02515 TC GETCOMP 014377,001229: 41,2462 10000 CCS A 014378,001230: 41,2463 00001 TC L 014379,001231: 41,2464 00001 TC L 014380,001232: 41,2465 02351 TC GODSPALM 014381,001233: 014382,001234: 41,2466 22002 TSTFORDP LXCH Q # TEST FOR DP. IF SO, GET MINOR PART ONLY. 014383,001235: 41,2467 30146 CA NNADTEM 014384,001236: 41,2470 65017 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED 014385,001237: 41,2471 00006 EXTEND 014386,001238: 41,2472 12504 BZF CHANDSP 014387,001239: 41,2473 50140 INDEX MIXBR 014388,001240: 41,2474 02474 TC +0 014389,001241: 41,2475 02477 TC +2 # NORMAL 014390,001242: # Page 333 014391,001243: 41,2476 00001 TC L # MIXED CASE ALREADY HANDLED IN MIXNOUN 014392,001244: 41,2477 03026 TC SFRUTNOR 014393,001245: 41,2500 02261 TC DPTEST 014394,001246: 41,2501 00001 TC L # NO DP 014395,001247: 41,2502 24145 INCR NOUNADD # DP E+1 INTO NOUNADD FOR MINOR PART. 014396,001248: 41,2503 00001 TC L 014397,001249: 014398,001250: 41,2504 31017 CHANDSP CA NOUNCADR 014399,001251: 41,2505 75046 MASK LOW9 014400,001252: 41,2506 00006 EXTEND 014401,001253: 41,2507 50000 INDEX A 014402,001254: 41,2510 00000 READ 0 014403,001255: 41,2511 40000 CS A 014404,001256: 41,2512 12371 TCF DSPCOM1 014405,001257: 014406,001258: 41,2513 00147 COMPICK ADRES NNTYPTEM 014407,001259: 41,2514 00146 ADRES NNADTEM 014408,001260: 014409,001261: 41,2515 50140 GETCOMP INDEX MIXBR # NORMAL MIXED 014410,001262: 41,2516 32512 CAF COMPICK -1 # ADRES NNTYPTEM ADRES NNADTEM 014411,001263: 41,2517 50000 INDEX A 014412,001264: 41,2520 30000 CA 0 # C(NNTYPTEM) C(NNADTEM) 014413,001265: 41,2521 74364 MASK HI5 # GET HI5 OF NNTYPTAB (NORM) OF NNADTAB (MIX) 014414,001266: 41,2522 00002 TC Q 014415,001267: 014416,001268: 41,2523 02515 DECDSP TC GETCOMP 014417,001269: 41,2524 04345 TC LEFT5 014418,001270: 41,2525 76214 MASK THREE 014419,001271: 41,2526 54117 TS DECOUNT # COMP NUMBER INTO DECOUNT 014420,001272: 41,2527 54122 DSPDCGET TS DECTEM # PICKS UP DATA 014421,001273: 41,2530 60145 AD NOUNADD # DECTEM 1COMP +0, 2COMP +1, 3COMP +2 014422,001274: 41,2531 50000 INDEX A 014423,001275: 41,2532 40000 CS 0 014424,001276: 41,2533 50122 INDEX DECTEM 014425,001277: 41,2534 57003 XCH XREG # CAN'T USE BUF SINCE DMP USES IT. 014426,001278: 41,2535 10122 CCS DECTEM 014427,001279: 41,2536 02527 TC DSPDCGET # MORE TO GET 014428,001280: 41,2537 35021 DSPDCPUT CAF ZERO # DISPLAYS DATA 014429,001281: 41,2540 54155 TS MPAC +1 # DECOUNT 1COMP +0, 2COMP +1, 3COMP +2 014430,001282: 41,2541 54156 TS MPAC +2 014431,001283: 41,2542 50117 INDEX DECOUNT 014432,001284: 41,2543 34333 CAF R1D1 014433,001285: 41,2544 54777 TS DSPCOUNT 014434,001286: 41,2545 50117 INDEX DECOUNT 014435,001287: 41,2546 41003 CS XREG 014436,001288: 41,2547 54154 TS MPAC 014437,001289: 41,2550 03047 TC SFCONUM # 2X (SF CON NUMB) IN A 014438,001290: # Page 334 014439,001291: 41,2551 54123 TS SFTEMP1 014440,001292: 41,2552 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE 014441,001293: 41,2553 32565 DCA GTSFOUTL # READING ROUTINE. 014442,001294: 41,2554 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2 014443,001295: 41,2555 50140 INDEX MIXBR 014444,001296: 41,2556 02556 TC +0 014445,001297: 41,2557 02562 TC DSPSFNOR 014446,001298: 41,2560 03034 TC SFRUTMIX 014447,001299: 41,2561 02575 TC DECDSP3 014448,001300: 014449,001301: 41,2562 03026 DSPSFNOR TC SFRUTNOR 014450,001302: 41,2563 02575 TC DECDSP3 014451,001303: 014452,001304: 41,2564 0777 EBANK= DSPCOUNT 014453,001305: 41,2564 02120 64101 GTSFOUTL 2CADR GTSFOUT 014454,001306: 014455,001307: 41,2566 04662 DSPDCEND TC BANKCALL # ALL SFOUT ROUTINES END HERE 014456,001308: 41,2567 61133 CADR DSPDECWD 014457,001309: 41,2570 10117 CCS DECOUNT 014458,001310: 41,2571 02573 TC +2 014459,001311: 41,2572 00136 TC ENTEXIT 014460,001312: 41,2573 54117 TS DECOUNT 014461,001313: 41,2574 02537 TC DSPDCPUT # MORE TO DISPLAY 014462,001314: 014463,001315: 41,2575 50000 DECDSP3 INDEX A 014464,001316: 41,2576 32600 CAF SFOUTABR 014465,001317: 41,2577 04704 TC BANKJUMP 014466,001318: 014467,001319: 41,2600 61323 SFOUTABR CADR PREDSPAL # ALARM IF DEC DISP WITH OCTAL ONLY NOUN 014468,001320: 41,2601 62566 CADR DSPDCEND 014469,001321: 41,2602 60516 CADR DEGOUTSF 014470,001322: 41,2603 60603 CADR ARTOUTSF 014471,001323: 41,2604 60614 CADR DP1OUTSF 014472,001324: 41,2605 60621 CADR DP2OUTSF 014473,001325: 41,2606 60524 CADR OPDEGOUT 014474,001326: 41,2607 60623 CADR DP3OUTSF 014475,001327: 41,2610 65143 CADR HMSOUT 014476,001328: 41,2611 65216 CADR M/SOUT 014477,001329: 41,2612 60621 CADR DP2OUTSF 014478,001330: 41,2613 60610 CADR AROUT1SF 014479,001331: 41,2614 60636 CADR 2INTOUT 014480,001332: 41,2615 60653 CADR DPFRACOT 014481,001333: 41,2616 ENDRTOUT EQUALS 014482,001334: 014483,001335: # THE FOLLOWING IS ATYPICAL SF ROUTINE. IT USES MPAC. LEAVES RESULTS 014484,001336: # IN MPAC, MPAC+1. ENDS WITH TC DSPDCEND 014485,001337: 014486,001338: # Page 335 014487,001339: 014488,001340: 40,2516 SETLOC BLANKCON +1 014489,001341: 014490,001342: 40,2516 COUNT 40/PIN 014491,001343: # DEGOUTSF SCALES BY .18 THE LOW 14 BITS OF ANGLE, ADDING .18 FOR 014492,001344: # NUMBERS IN THE NEGATIVE (AGC) RANGE. 014493,001345: 014494,001346: 40,2516 35021 DEGOUTSF CAF ZERO 014495,001347: 40,2517 54156 TS MPAC +2 # SET INDEX FOR FULL SCALE. 014496,001348: 40,2520 02555 TC FIXRANGE 014497,001349: 40,2521 02523 TC +2 # NO AUGMENT NEEDED (SFTEMP1 AND 2 ARE 0) 014498,001350: 40,2522 02550 TC SETAUG # SET AUGMENTER ACCORDING TO C(MPAC +2) 014499,001351: 40,2523 02566 TC DEGCOM 014500,001352: 014501,001353: # OPDEGOUT SCALES BY .45 (THE RANGE IS 90 DEGREES) AND ADDS A 20 DEG BIAS. 014502,001354: 014503,001355: 40,2524 10154 OPDEGOUT CCS MPAC # RANGE IS 90 DEG 014504,001356: 40,2525 56154 XCH MPAC # IF POS OR POS 0 THEN ADD BIAS AND 014505,001357: 40,2526 02531 TC +3 # CORRECT FOR POSSIBLE OVERFLOW 014506,001358: 40,2527 02540 TC NEGOPT # IF NEG NON ZERO 014507,001359: 40,2530 67716 AD NEG1 # IF NEG ZERO SUBTRACT 1 014508,001360: 40,2531 62602 AD 20BIAS 014509,001361: 40,2532 54154 BIASCOM TS MPAC # TEST FOR OVEFLOW 014510,001362: 40,2533 02536 TC +3 # NO OVFLOW 014511,001363: 40,2534 35001 CAF BIT15 # IF OVFLOW 014512,001364: 40,2535 26154 ADS MPAC 014513,001365: 40,2536 35016 CAF TWO # SET MULTIPLIER TO .45 014514,001366: 40,2537 02517 TC DEGOUTSF +1 014515,001367: 014516,001368: 40,2540 56154 NEGOPT XCH MPAC # NEGATIVE CASE 014517,001369: 40,2541 62602 AD 20BIAS 014518,001370: 40,2542 10000 CCS A 014519,001371: 40,2543 02532 TC BIASCOM # IF POS THEN SUBTRACT 1 BECASUE OF 2SCOM 014520,001372: 40,2544 05747 TC CCSHOLE 014521,001373: 40,2545 65017 AD ONE # IF NEG RESTORE SUM 014522,001374: 40,2546 40000 COM # IF NEG 0 LEAVE NEG 0 014523,001375: 40,2547 02532 TC BIASCOM 014524,001376: 014525,001377: 40,2550 00006 SETAUG EXTEND # LOADS SFTEMP1 AND SFTEMP2 WITH THE 014526,001378: 40,2551 50156 INDEX MPAC +2 # DP AUGMENTER CONSTANT 014527,001379: 40,2552 32577 DCA DEGTAB 014528,001380: 40,2553 52124 DXCH SFTEMP1 014529,001381: 40,2554 00002 TC Q 014530,001382: 014531,001383: 40,2555 10154 FIXRANGE CCS MPAC # IF MPAC IS + RETURN TO L+1 014532,001384: 40,2556 00002 TC Q # IF MPAC IS - RETURN TO L+2 AFTER 014533,001385: 40,2557 00002 TC Q # MASKING OUT THE SIGN BIT 014534,001386: 40,2560 12561 TCF +1 014535,001387: 40,2561 45001 CS BIT15 014536,001388: 40,2562 70154 MASK MPAC 014537,001389: # Page 336 014538,001390: 40,2563 54154 TS MPAC 014539,001391: 40,2564 50002 INDEX Q 014540,001392: 40,2565 00001 TC 1 014541,001393: 014542,001394: 40,2566 00006 DEGCOM EXTEND # LOADS MULTIPLIER, DOES SHORTMP, AND 014543,001395: 40,2567 50156 INDEX MPAC +2 # ADDS AUTMENTER. 014544,001396: 40,2570 32577 DCA DEGTAB 014545,001397: 40,2571 52155 DXCH MPAC # ADJUSTED ANGLE IN A 014546,001398: 40,2572 07256 TC SHORTMP 014547,001399: 40,2573 52124 DXCH SFTEMP1 014548,001400: 40,2574 20155 DAS MPAC 014549,001401: 40,2575 02606 TC SCOUTEND 014550,001402: 014551,001403: 40,2576 05605 DEGTAB OCT 05605 # HI PART OF .18 014552,001404: 40,2577 03656 OCT 03656 # LOW PART OF .18 014553,001405: 40,2600 16314 OCT 16314 # HI PART OF .45 014554,001406: 40,2601 31463 OCT 31463 # LO PART OF .45 014555,001407: 014556,001408: 40,2602 16040 20BIAS OCT 16040 # 20 DEG BIAS FOR OPTICS 014557,001409: 014558,001410: 40,2603 52124 ARTOUTSF DXCH SFTEMP1 # ASSUMES POINT AT LEFT OF DP SFCON 014559,001411: 40,2604 52155 DXCH MPAC 014560,001412: 40,2605 04431 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 014561,001413: 40,2606 04701 SCOUTEND TC POSTJUMP 014562,001414: 40,2607 62566 CADR DSPDCEND 014563,001415: 014564,001416: 40,2610 52124 AROUT1SF DXCH SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS OF 014565,001417: 40,2611 52155 DXCH MPAC # DP SFCON. SHIFTS RESULTS LEFT 14, BY 014566,001418: 40,2612 04431 TC PRSHRTMP # TAKING RESULTS FROM MPAC+1, MPAC+2. 014567,001419: 40,2613 02615 TC L14/OUT 014568,001420: 014569,001421: 40,2614 02627 DP1OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR 014570,001422: 40,2615 56156 L14/OUT XCH MPAC +2 # IN SFTEMP1, SFTEMP2. THEN SCALE RESULT 014571,001423: 40,2616 56155 XCH MPAC +1 # BY B14 014572,001424: 40,2617 54154 TS MPAC 014573,001425: 40,2620 02606 TC SCOUTEND 014574,001426: 014575,001427: 40,2621 02627 DP2OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR 014576,001428: 40,2622 02606 TC SCOUTEND 014577,001429: 014578,001430: 40,2623 02627 DP3OUTSF TC DPOUT # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH 014579,001431: 40,2624 36211 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1 014580,001432: 40,2625 03060 TC TPLEFTN # SHIFT LEFT 7. 014581,001433: 40,2626 02606 TC SCOUTEND 014582,001434: 014583,001435: # Page 337 014584,001436: 014585,001437: 40,2627 0162 MPAC+6 = MPAC +6 # USE MPAC +6 INSTEAD OF OVFIND 014586,001438: 014587,001439: 40,2627 56002 DPOUT XCH Q 014588,001440: 40,2630 54162 TS MPAC+6 014589,001441: 40,2631 02655 TC READLO # GET FRESH DATA FOR BOTH HI AND LO. 014590,001442: 40,2632 07226 TC TPAGREE # MAKE DP DATA AGREE 014591,001443: 40,2633 07052 TC DMP 014592,001444: 40,2634 00123 ADRES SFTEMP1 014593,001445: 40,2635 00162 TC MPAC+6 014594,001446: 014595,001447: # THE FOLLOWING ROUTINE DISPLAYS TWO CONTIGUOUS SP POSITIVE INTEGERS 014596,001448: # AS TWO POSITIVE DECIMAL INTEGERS IN RXD1-RXD2 AND RXD4-RXD5 (RXD3 IS 014597,001449: # BLANKED). THE INTEGER IN THE LOWER NUMBERED ADDRESS IS DISPLAYED IN 014598,001450: # RXD1-RXD2. 014599,001451: 014600,001452: 40,2636 02437 2INTOUT TC 5BLANK # TO BLANK RXD3 014601,001453: 40,2637 02314 TC +ON # TURN ON + SIGN 014602,001454: 40,2640 30154 CA MPAC 014603,001455: 40,2641 03213 TC DSPDECVN # DISPLAY 1ST INTEGER (LIKE VERB AND NOUN) 014604,001456: 40,2642 46214 CS THREE 014605,001457: 40,2643 50117 INDEX DECOUNT 014606,001458: 40,2644 64333 AD R1D1 # RXD4 014607,001459: 40,2645 54777 TS DSPCOUNT 014608,001460: 40,2646 02655 TC READLO # GET 2ND INTEGER 014609,001461: 40,2647 30155 CA MPAC +1 014610,001462: 40,2650 03213 TC DSPDECVN # DISPLAY 2ND INTEGER (LIKE VERB AND NOUN) 014611,001463: 40,2651 04701 TC POSTJUMP 014612,001464: 40,2652 62570 CADR DSPDCEND +2 014613,001465: 014614,001466: 40,2653 02655 DPFRACOT TC READLO # DP FRACTION TO MPAC,+1 014615,001467: 40,2654 02606 TC SCOUTEND 014616,001468: 014617,001469: # READLO PICKS UP FRESHDATA FOR BOTH HI AND LO AND LEAVES IT IN 014618,001470: # MPAC, MPAC+1. THIS IS NEEDED FOR TIME DISPLAY. IT ZEROES MPAC+2, BUT 014619,001471: # DOES NOT FORCE TPAGREE. 014620,001472: 014621,001473: 40,2655 56002 READLO XCH Q 014622,001474: 40,2656 54144 TS TEM4 014623,001475: 40,2657 50140 INDEX MIXBR 014624,001476: 40,2660 02660 TC +0 014625,001477: 40,2661 02675 TC RDLONOR 014626,001478: 40,2662 50117 INDEX DECOUNT 014627,001479: 40,2663 30150 CA IDAD1TEM # GET IDADDTAB ENTRY FOR COMP K OF NOUN. 014628,001480: 40,2664 74372 MASK LOW11 # E SUBK 014629,001481: 40,2665 04327 TC SETEBANK # SET EB, LEAVE EADRES IN A 014630,001482: 40,2666 00006 READLO1 EXTEND # MIXED NORMAL 014631,001483: 40,2667 50000 INDEX A # C(ESUBK) C(E) 014632,001484: 40,2670 30001 DCA 0 # C(E SUBK)+1) C(E+1) 014633,001485: 40,2671 52155 DXCH MPAC 014634,001486: # Page 338 014635,001487: 40,2672 35021 CAF ZERO 014636,001488: 40,2673 54156 TS MPAC +2 014637,001489: 40,2674 00144 TC TEM4 014638,001490: 014639,001491: 40,2675 30145 RDLONOR CA NOUNADD # E 014640,001492: 40,2676 02666 ENDRDLO TC READLO1 014641,001493: 014642,001494: 42,3143 BANK 42 014643,001495: 42,2000 SETLOC PINBALL3 014644,001496: 42,2000 BANK 014645,001497: 014646,001498: 42,3143 COUNT 42/PIN 014647,001499: 014648,001500: 42,3143 04662 HMSOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC. 014649,001501: 42,3144 60655 CADR READLO # MPAC+1. 014650,001502: 42,3145 07226 TC TPAGREE # MAKE DP DATA AGREE. 014651,001503: 42,3146 03332 TC SEPSECNR # LEAVE FRACT SEC/60 IN MPAC, MPAC+1. LEAVE 014652,001504: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE 014653,001505: 42,3147 07052 TC DMP # USE ONLY FRACT SEC/60 MOD 60 014654,001506: 42,3150 03204 ADRES SECON2 # MULT BY .06 014655,001507: 42,3151 34335 CAF R3D1 # GIVES CENTI-SEC/10EXP5 MOD 60 014656,001508: 42,3152 54777 TS DSPCOUNT 014657,001509: 42,3153 04662 TC BANKCALL # DISPLAY SEC MOD 60 014658,001510: 42,3154 61133 CADR DSPDECWD 014659,001511: 42,3155 03350 TC SEPMIN # REMOVE REST OF SECONDS 014660,001512: 42,3156 33206 CAF MINCON2 # LEAVE FRACT MIN/60 IN MPAC+1. LEAVE 014661,001513: 42,3157 56154 XCH MPAC # WHOLE HOURS IN MPAC. 014662,001514: 42,3160 55007 TS HITEMOUT # SAVE WHOLE HOURS. 014663,001515: 42,3161 33207 CAF MINCON2 +1 014664,001516: 42,3162 56155 XCH MPAC +1 # USE ONLY FRACT MIN/60 MOD 60 014665,001517: 42,3163 04431 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 014666,001518: # MULT BY .0006 014667,001519: 42,3164 34334 CAF R2D1 # GIVE MIN/10EXP5 MOD 60 014668,001520: 42,3165 54777 TS DSPCOUNT 014669,001521: 42,3166 04662 TC BANKCALL # DISPLAY MIN MOD 60 014670,001522: 42,3167 61133 CADR DSPDECWD 014671,001523: 42,3170 00006 EXTEND # MINUTES, SECONDS HAVE BEEN REMOVED 014672,001524: 42,3171 33213 DCA HRCON1 014673,001525: 42,3172 52155 DXCH MPAC 014674,001526: 42,3173 31007 CA HITEMOUT # USE WHOLE HOURS 014675,001527: 42,3174 04431 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0. 014676,001528: # MULT BY .16384 014677,001529: 42,3175 34333 CAF R1D1 # GIVES HOURS/10EXP5 014678,001530: 42,3176 54777 TS DSPCOUNT 014679,001531: 42,3177 04662 TC BANKCALL # USE REGULAR DSPDECWD WITH ROUND OFF. 014680,001532: 42,3200 61133 CADR DSPDECWD 014681,001533: 42,3201 00136 TC ENTEXIT 014682,001534: 014683,001535: 42,3202 25660 31742 SECON1 2DEC* 1.666666666 E-4 B12* # 2EXP12/6000 014684,001536: # Page 339 014685,001537: 42,3204 01727 SECON2 OCT 01727 # .06 FOR SECONDS DISPLAY 014686,001538: 42,3205 01217 OCT 01217 014687,001539: 42,3206 00011 MINCON2 OCT 00011 # .0006 FOR MINUTES DISPLAY 014688,001540: 42,3207 32445 OCT 32445 014689,001541: 42,3210 02104 MINCON1 OCT 02104 # .06..66 UPPED BY 2EXP-2B 014690,001542: 42,3211 10422 OCT 10422 014691,001543: 42,3212 05174 13261 HRCON1 2DEC .16384 014692,001544: 42,3214 00000 OCT 00000 014693,001545: 42,3215 00062 RNDCON OCT 00062 # .5 SEC 014694,001546: 014695,001547: 42,3216 04662 M/SOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC. 014696,001548: 42,3217 60655 CADR READLO # MPAC+1. 014697,001549: 42,3220 07226 TC TPAGREE # MAKE DP DATA AGREE 014698,001550: 42,3221 10154 CCS MPAC # IF MAG OF (MPAC, MPAC+1) G/ 59 M 59 S. 014699,001551: 42,3222 03224 TC +2 # DISPLAY 59B59, WITH PROPER SIGN. 014700,001552: 42,3223 03255 TC M/SNORM # MPAC = +0. L/ 59M58.5S 014701,001553: 42,3224 63312 AD M/SCON1 # - HI PART OF (59M58.5) +1 FOR CCS 014702,001554: 42,3225 10000 CCS A # MAG OF MPAC - HI PART OF (59M58.5S) 014703,001555: 42,3226 03241 TC M/SLIMIT # G/ 59M58.5S 014704,001556: 42,3227 03255 TC M/SNORM # ORIGINAL MPAC = -0. L/59M58.5S 014705,001557: 42,3230 03255 TC M/SNORM # L/ 59M58.5S 014706,001558: 42,3231 10155 CCS MPAC +1 # MAG OF MPAC = HI PART OF 59M58.5S 014707,001559: 42,3232 03234 TC +2 014708,001560: 42,3233 03255 TC M/SNORM # MPAC+1 = +0. L/ 59M58.5S 014709,001561: 42,3234 63313 AD M/SCON2 # - LO PART OF (59M58.5S) +1 FOR CCS 014710,001562: 42,3235 10000 CCS A # MAG OF MPAC+1 - LO PART OF (59M58.5S) 014711,001563: 42,3236 03241 TC M/SLIMIT # G/ 59M58.5S 014712,001564: 42,3237 03255 TC M/SNORM # ORIGINAL MPAC+1 = -0. L/ 49M58.5S 014713,001565: 42,3240 03255 TC M/SNORM # L/ 59M58.5S 014714,001566: 42,3241 10154 M/SLIMIT CCS MPAC # = 59M58.5S LIMIT 014715,001567: 42,3242 33315 CAF M/SCON3 # MPAC CANNOT BE +/- 0 AT THIS POINT. 014716,001568: 42,3243 03252 TC +LIMIT # FORCE MPAC, MPAC+1 TO +/- 59M58.5S 014717,001569: 42,3244 43315 CS M/SCON3 014718,001570: 42,3245 54154 TS MPAC # WILL DISPLAY 59M59S IN DSPDECNR 014719,001571: 42,3246 43316 CS M/SCON3 +1 014720,001572: 42,3247 54155 LIMITCOM TS MPAC +1 014721,001573: 42,3250 33314 CAF NORMADR # SET RETURN TO M/SNORM+1. 014722,001574: 42,3251 03333 TC SEPSECNR +1 014723,001575: 42,3252 54154 +LIMIT TS MPAC 014724,001576: 42,3253 33316 CAF M/SCON3 +1 014725,001577: 42,3254 03247 TC LIMITCOM 014726,001578: 42,3255 03317 M/SNORM TC SEPSEC # LEAVE FRACT SEC/60 IN MPAC,MPAC+1. LEAVE 014727,001579: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE 014728,001580: 42,3256 33310 CAF HISECON # USE ONLY FRACT SEC/60 MOD 60 014729,001581: 42,3257 07256 TC SHORTMP # MULT BY .6 + 2EXP-14 014730,001582: 42,3260 46214 CS THREE # GIVES SEC/100 MOD 60 014731,001583: 42,3261 26777 ADS DSPCOUNT # DSPCOUNT ALREADY SET TO RXD1 014732,001584: 42,3262 04662 TC BANKCALL # DISPLAY SEC MOD 60 IN D4D5. 014733,001585: # Page 340 014734,001586: 42,3263 61173 CADR DSPDC2NR 014735,001587: 42,3264 35021 CAF ZERO 014736,001588: 42,3265 54124 TS CODE 014737,001589: 42,3266 45016 CS TWO 014738,001590: 42,3267 50117 INDEX DECOUNT 014739,001591: 42,3270 64333 AD R1D1 # RXD3 014740,001592: 42,3271 54143 TS COUNT 014741,001593: 42,3272 04662 TC BANKCALL # BLANK MIDDLE CHAR 014742,001594: 42,3273 61227 CADR DSPIN 014743,001595: 42,3274 03350 TC SEPMIN # REMOVE REST OF SECONDS 014744,001596: 42,3275 56155 XCH MPAC +1 # LEAVE FRACT MIN/60 IN MPAC+1 014745,001597: 42,3276 00006 EXTEND # USE ONLY FRACT MIN/60 MOD 60 014746,001598: 42,3277 73311 MP HIMINCON # MULT BY .6 + 2EXP-7 014747,001599: 42,3300 52155 DXCH MPAC # GIVES MIN/100 MOD 60 014748,001600: 42,3301 50117 INDEX DECOUNT 014749,001601: 42,3302 34333 CAF R1D1 # RXD1 014750,001602: 42,3303 54777 TS DSPCOUNT 014751,001603: 42,3304 04662 TC BANKCALL # DISPLAY MIN MOD 60 IN D1D2. 014752,001604: 42,3305 61173 CADR DSPDC2NR 014753,001605: 42,3306 04701 TC POSTJUMP 014754,001606: 42,3307 62570 CADR DSPDCEND +2 014755,001607: 014756,001608: 42,3310 23147 HISECON OCT 23147 # .6 + 2EXP-14 014757,001609: 42,3311 23346 HIMINCON OCT 23346 # .6 + 2EXP-7 014758,001610: 014759,001611: 42,3312 77753 M/SCON1 OCT 77753 # - HI PART OF (59M58.5S) 014760,001612: 42,3313 41126 M/SCON2 OCT 41126 # - LO PART OF (59M58.5S) 014761,001613: 42,3314 03256 NORMADR ADRES M/SNORM +1 014762,001614: 42,3315 00025 M/SCON3 OCT 00025 # 59M 59.5S 014763,001615: 42,3316 37016 OCT 37016 014764,001616: 014765,001617: 42,3317 10155 SEPSEC CCS MPAC +1 # IF +, ROUND BY ADDING .5 SEC 014766,001618: 42,3320 13327 TCF POSEC # IF -, ROUND BY SUBTRACING .5 SEC 014767,001619: 42,3321 13327 TCF POSEC # FINDS TIME IN MPAC, MPAC+1 014768,001620: 42,3322 13323 TCF +1 # ROUNDS OFF BY +/- .5 SEC 014769,001621: 42,3323 00006 EXTEND # LEAVES WHOLE MIN IN BIT13 OF 014770,001622: 42,3324 43215 DCS RNDCON -1 # LOTEMOUT AND ABOVE. 014771,001623: 42,3325 20155 SEPSEC1 DAS MPAC # LEAVES FRACT SEC/60 IN MPAC, MPAC+1. 014772,001624: 42,3326 13332 TCF SEPSECNR 014773,001625: 42,3327 00006 POSEC EXTEND 014774,001626: 42,3330 33215 DCA RNDCON -1 014775,001627: 42,3331 13325 TCF SEPSEC1 014776,001628: 42,3332 56002 SEPSECNR XCH Q # THIS ENTRY AVOIDS ROUNDING BY .5 SEC 014777,001629: 42,3333 54144 TS SEPSCRET 014778,001630: 42,3334 07052 TC DMP # MULT BY 2EXP12/6000 014779,001631: 42,3335 03202 ADRES SECON1 # GIVES FRACT SEC/60 IN BIT12 OF MPAC+1 014780,001632: 42,3336 00006 EXTEND # AND BELOW. 014781,001633: 42,3337 30155 DCA MPAC # SAVE MINUTES AND HOURS 014782,001634: 42,3340 53010 DXCH HITEMOUT 014783,001635: # Page 341 014784,001636: 42,3341 04420 TC TPSL1 014785,001637: 42,3342 04420 TC TPSL1 # GIVES FRACT SEC/60 IN MPAC+1, MPAC+2. 014786,001638: 42,3343 35021 CAF ZERO 014787,001639: 42,3344 56156 XCH MPAC +2 # LEAVE FRACT SEC/60 IN MPAC, MPAC+1. 014788,001640: 42,3345 56155 XCH MPAC +1 014789,001641: 42,3346 56154 XCH MPAC 014790,001642: 42,3347 00144 TC SEPSCRET 014791,001643: 014792,001644: 42,3350 56002 SEPMIN XCH Q # FIND WHOLE MINUTES IN BIT13 014793,001645: 42,3351 54144 TS SEPMNRET # OF LOTEMOUT AND ABOVE. 014794,001646: 42,3352 31010 CA LOTEMOUT # REMOVES REST OF SECONDS. 014795,001647: 42,3353 00006 EXTEND # LEAVES FRACT MIN/60 IN MPAC+1. 014796,001648: 42,3354 75015 MP BIT3 # LEAVES WHOLE HOURS IN MPAC. 014797,001649: 42,3355 00006 EXTEND # SR 12, THROW AWAY LP. 014798,001650: 42,3356 75003 MP BIT13 # SR 2, TAKE FROM LP. = SL 12. 014799,001651: 42,3357 22155 LXCH MPAC +1 # THIS FORCES BITS 12-1 TO 0 IF +. 014800,001652: # FORCES BITS 12-1 TO 1 IF -. 014801,001653: 42,3360 31007 CA HITEMOUT 014802,001654: 42,3361 54154 TS MPAC 014803,001655: 42,3362 07052 TC DMP # MULT BY 1/15 014804,001656: 42,3363 03210 ADRES MINCON1 # GIVES FRACT MIN/60 IN MPAC+1. 014805,001657: 42,3364 00144 ENDSPMIN TC SEPMNRET # GIVES WHOLE HOURS IN MPAC. 014806,001658: 014807,001659: # THIS IS A SPECIAL PURPOS VERB FOR DISPLAYING A DOUBLE PRECISION AGC 014808,001660: # WORD AS 10 DECIMAL DIGITS ON THE AGC DISPLAY PANEL. IT CAN BE USED WITH 014809,001661: # ANY NOUN, EXCEPT MIXED NOUNS. IT DISPLAYS THE CONTENTS 014810,001662: # OF THE REGISTER NOUNADD IS POINTING TO. IF USED WITH NOUNS WHICH ARE 014811,001663: # INHERENTLY NOT DP SUCH AS THE CDU COUNTERS THE DISPLAY WILL BE GARBAGE. 014812,001664: # DISPLAY IS IN R1 AND R2 ONLY WITH THE SIGN IN R1. 014813,001665: 014814,001666: 40,2677 SETLOC ENDRDLO +1 014815,001667: 014816,001668: 40,2677 COUNT 40/PIN 014817,001669: 014818,001670: 40,2677 50140 DSPDPDEC INDEX MIXBR 014819,001671: 40,2700 02700 TC +0 014820,001672: 40,2701 02703 TC +2 # NORMAL NOUN 014821,001673: 40,2702 03325 TC DSPALARM 014822,001674: 40,2703 00006 EXTEND 014823,001675: 40,2704 50145 INDEX NOUNADD 014824,001676: 40,2705 30001 DCA 0 014825,001677: 40,2706 52155 DXCH MPAC 014826,001678: 40,2707 34333 CAF R1D1 014827,001679: 40,2710 54777 TS DSPCOUNT 014828,001680: 40,2711 35021 CAF ZERO 014829,001681: 40,2712 54156 TS MPAC +2 014830,001682: 40,2713 07226 TC TPAGREE 014831,001683: # Page 342 014832,001684: 40,2714 03200 TC DSP2DEC 014833,001685: 40,2715 00136 ENDDPDEC TC ENTEXIT 014834,001686: 014835,001687: # Page 343 014836,001688: 014837,001689: # LOAD VERBS IF ALARM CONDITION IS DETECTED DURING EXECUTE, 014838,001690: # CHECK FAIL LIGHT IS TURNED ON AND ENDOFJOB. IF ALARM CONDITION IS 014839,001691: # DETECTED DURING ENTER OF DATA, CHECK FAIL IS TURNED ON AND IT RECYCLES 014840,001692: # TO EXECUTE OF ORIGINAL LOAD VERB. RECYCLE CAUSED BY 1) DECIMAL MACHINE 014841,001693: # CADR 2) MIXTURE OF OCTAL/DECIMAL DATA 3) OCTAL DATA INTO DECIMAL 014842,001694: # ONLY NOUN 4) DEC DATA INTO OCT ONLY NOUN 5) DATA TOO LARGE FOR SCALE 014843,001695: # 6) FEWER THAN 3 DATA WORDS LOADED FOR HRS, MIN, SEC NOUN.8 (2)-(6) ALARM 014844,001696: # AND RECYCLE OCCUR AT FINAL ENTER OF SET. (1) ALARM AND RECYCLE OCCUR AT 014845,001697: # ENTER OF CADR. 014846,001698: 014847,001699: 41,2616 SETLOC ENDRTOUT 014848,001700: 014849,001701: 41,2616 COUNT 41/PIN 014850,001702: 014851,001703: 41,2616 45016 ABCLOAD CS TWO 014852,001704: 41,2617 02424 TC COMPTEST 014853,001705: 41,2620 02460 TC NOUNTEST # TEST IF NOUN CAN BE LOADED. 014854,001706: 41,2621 33006 CAF VBSP1LD 014855,001707: 41,2622 02337 TC UPDATVB -1 014856,001708: 41,2623 02303 TC REQDATX 014857,001709: 41,2624 33007 CAF VBSP2LD 014858,001710: 41,2625 02337 TC UPDATVB -1 014859,001711: 41,2626 02305 TC REQDATY 014860,001712: 41,2627 33010 CAF VBSP3LD 014861,001713: 41,2630 02337 TC UPDATVB -1 014862,001714: 41,2631 02307 TC REQDATZ 014863,001715: 014864,001716: 41,2632 46211 PUTXYZ CS SIX # TEST THAT THE 3 DATA WORDS LOADED ARE 014865,001717: 41,2633 03011 TC ALLDC/OC # ALL DEC OR ALL OCT. 014866,001718: 41,2634 00006 EXTEND 014867,001719: 41,2635 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014868,001720: 41,2636 52006 DXCH Z # ROUTINE. 014869,001721: 41,2637 35021 CAF ZERO # X COMP 014870,001722: 41,2640 03075 TC PUTCOM 014871,001723: 41,2641 50145 INDEX NOUNADD 014872,001724: 41,2642 54000 TS 0 014873,001725: 41,2643 35017 CAF ONE # Y COMP 014874,001726: 41,2644 03075 TC PUTCOM 014875,001727: 41,2645 50145 INDEX NOUNADD 014876,001728: 41,2646 54001 TS 1 014877,001729: 41,2647 35016 CAF TWO # Z COMP 014878,001730: 41,2650 03075 TC PUTCOM 014879,001731: 41,2651 50145 INDEX NOUNADD 014880,001732: 41,2652 54002 TS 2 014881,001733: 41,2653 45023 CS SEVEN # IF NOUN 7 HAS JUST BEEN LOADED, SET 014882,001734: 41,2654 61002 AD NOUNREG # FLAG BITS AS SPECIFIED. 014883,001735: 41,2655 00006 EXTEND 014884,001736: 41,2656 12660 BZF +2 014885,001737: # Page 344 014886,001738: 41,2657 02775 TC LOADLV 014887,001739: 41,2660 31003 CA XREG # ECADR OF ERASABLE CELL 014888,001740: 41,2661 04320 TC SETNCADR +1 # SET EBANK, NOUNADD 014889,001741: 41,2662 31005 CA ZREG # ZERO TO RESET BITS. NON-ZERO TO SET BITS 014890,001742: 41,2663 00004 INHINT 014891,001743: 41,2664 00006 EXTEND 014892,001744: 41,2665 12674 BZF BITSOFF 014893,001745: 41,2666 50145 INDEX NOUNADD 014894,001746: 41,2667 40000 CS 0 014895,001747: 41,2670 71004 MASK YREG # BITS TO BE PROCESSED 014896,001748: 41,2671 50145 INDEX NOUNADD 014897,001749: 41,2672 26000 ADS 0 # SET BITS. 014898,001750: 41,2673 02701 TC BITSOFF1 014899,001751: 014900,001752: 41,2674 41004 BITSOFF CS YREG # BITS TO BE PROCESSED 014901,001753: 41,2675 50145 INDEX NOUNADD 014902,001754: 41,2676 70000 MASK 0 014903,001755: 41,2677 50145 INDEX NOUNADD 014904,001756: 41,2700 54000 TS 0 # RESET BITS 014905,001757: 41,2701 00003 BITSOFF1 RELINT 014906,001758: 41,2702 02775 TC LOADLV 014907,001759: 014908,001760: 41,2703 45017 ABLOAD CS ONE 014909,001761: 41,2704 02424 TC COMPTEST 014910,001762: 41,2705 02460 TC NOUNTEST # TEST IF NOUN CAN BE LOADED 014911,001763: 41,2706 33006 CAF VBSP1LD 014912,001764: 41,2707 02337 TC UPDATVB -1 014913,001765: 41,2710 02303 TC REQDATX 014914,001766: 41,2711 33007 CAF VBSP2LD 014915,001767: 41,2712 02337 TC UPDATVB -1 014916,001768: 41,2713 02305 TC REQDATY 014917,001769: 41,2714 45022 PUTXY CS FIVE # TEST THAT THE 2 DATA WORDS LOADED ARE 014918,001770: 41,2715 03011 TC ALLDC/OC # ALL DEC OR ALL OCT. 014919,001771: 41,2716 00006 EXTEND 014920,001772: 41,2717 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014921,001773: 41,2720 52006 DXCH Z # ROUTINE. 014922,001774: 41,2721 35021 CAF ZERO # X COMP 014923,001775: 41,2722 03075 TC PUTCOM 014924,001776: 41,2723 50145 INDEX NOUNADD 014925,001777: 41,2724 54000 TS 0 014926,001778: 41,2725 35017 CAF ONE # Y COMP 014927,001779: 41,2726 03075 TC PUTCOM 014928,001780: 41,2727 50145 INDEX NOUNADD 014929,001781: 41,2730 54001 TS 1 014930,001782: 41,2731 02775 TC LOADLV 014931,001783: 014932,001784: 41,2732 02303 ALOAD TC REQDATX 014933,001785: 41,2733 00006 EXTEND 014934,001786: 41,2734 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014935,001787: 41,2735 52006 DXCH Z # ROUTINE. 014936,001788: 41,2736 35021 CAF ZERO # X COMP 014937,001789: # Page 345 014938,001790: 41,2737 03075 TC PUTCOM 014939,001791: 41,2740 50145 INDEX NOUNADD 014940,001792: 41,2741 54000 TS 0 014941,001793: 41,2742 02775 TC LOADLV 014942,001794: 014943,001795: 41,2743 45017 BLOAD CS ONE 014944,001796: 41,2744 02424 TC COMPTEST 014945,001797: 41,2745 35001 CAF BIT15 # SET CLPASS FOR PASS0 ONLY 014946,001798: 41,2746 55015 TS CLPASS 014947,001799: 41,2747 02305 TC REQDATY 014948,001800: 41,2750 00006 EXTEND 014949,001801: 41,2751 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014950,001802: 41,2752 52006 DXCH Z # ROUTINE. 014951,001803: 41,2753 35017 CAF ONE 014952,001804: 41,2754 03075 TC PUTCOM 014953,001805: 41,2755 50145 INDEX NOUNADD 014954,001806: 41,2756 54001 TS 1 014955,001807: 41,2757 02775 TC LOADLV 014956,001808: 014957,001809: 41,2760 45016 CLOAD CS TWO 014958,001810: 41,2761 02424 TC COMPTEST 014959,001811: 41,2762 35001 CAF BIT15 # SET CLPASS FOR PASS0 ONLY 014960,001812: 41,2763 55015 TS CLPASS 014961,001813: 41,2764 02307 TC REQDATZ 014962,001814: 41,2765 00006 EXTEND 014963,001815: 41,2766 32114 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING 014964,001816: 41,2767 52006 DXCH Z # ROUTINE. 014965,001817: 41,2770 35016 CAF TWO 014966,001818: 41,2771 03075 TC PUTCOM 014967,001819: 41,2772 50145 INDEX NOUNADD 014968,001820: 41,2773 54002 TS 2 014969,001821: 41,2774 02775 TC LOADLV 014970,001822: 014971,001823: 41,2775 35021 LOADLV CAF ZERO 014972,001824: 41,2776 55000 TS DECBRNCH 014973,001825: 41,2777 45021 CS ZERO 014974,001826: 41,3000 55014 TS LOADSTAT 014975,001827: 41,3001 04473 TC RELDSP # RELEASE FOR PRIORITY DISPLAY PROBLEM. 014976,001828: 41,3002 44374 CS VD1 # TO BLOCK NUMERICAL CHARACTERS AND 014977,001829: 41,3003 54777 TS DSPCOUNT # CLEARS AFTER A COMPLETED LOAD 014978,001830: 41,3004 04701 TC POSTJUMP # AFTER COMPLETED LOAD, GO TO RECALTST 014979,001831: 41,3005 61454 CADR RECALTST # TO SEE IF THERE IS RECALL FROM ENDIDLE. 014980,001832: 014981,001833: 41,3006 00025 VBSP1LD DEC 21 B-14 # VB21 = ALOAD 014982,001834: 41,3007 00026 VBSP2LD DEC 22 B-14 # VB22 = BLOAD 014983,001835: 41,3010 00027 VBSP3LD DEC 23 B-14 # VB23 = CLOAD 014984,001836: 014985,001837: 41,3011 54117 ALLDC/OC TS DECOUNT # TESTS THAT DATA WORDS LOADED ARE EITHER 014986,001838: 41,3012 41000 CS DECBRNCH # ALL DEC OR ALL OCT. ALARMS IF NOT. 014987,001839: # Page 346 014988,001840: 41,3013 54021 TS SR 014989,001841: 41,3014 40021 CS SR 014990,001842: 41,3015 40021 CS SR # SHIFTED RIGHT 2 014991,001843: 41,3016 10000 CCS A # DEC COMP BITS IN LOW 3 014992,001844: 41,3017 13021 TCF +2 # SOME ONES IN LOW 3 014993,001845: 41,3020 00002 TC Q # ALL ZEROS. ALL OCTAL. OK 014994,001846: 41,3021 60117 AD DECOUNT # DEC COMP = 7 FOR 3COMP, =6 FOR 2COMP 014995,001847: 41,3022 00006 EXTEND # (BUT IT HAS BEEN DECREMENTED BY CCS) 014996,001848: 41,3023 13025 BZF +2 # MUST MATCH 6 FOR 3COMP, 5 FOR 2COMP. 014997,001849: 41,3024 04161 TC ALMCYCLE # ALARM AND RECYCLE. 014998,001850: 41,3025 00002 GOQ TC Q # ALL REQUIRED ARE DEC. OK 014999,001851: 015000,001852: 41,3026 56002 SFRUTNOR XCH Q # GETS SF ROUTINE NUMBER FOR NORMAL CASE 015001,001853: 41,3027 54114 TS EXITEM # CAN'T USE L FOR RETURN. TSTFORDP USES L. 015002,001854: 41,3030 34363 CAF MID5 015003,001855: 41,3031 70147 MASK NNTYPTEM 015004,001856: 41,3032 04336 TC RIGHT5 015005,001857: 41,3033 00114 TC EXITEM # SF ROUTINE NUMBER IN A 015006,001858: 015007,001859: 41,3034 56002 SFRUTMIX XCH Q # GETS SF ROUTINE NUMBER FOR MIXED CASE 015008,001860: 41,3035 54114 TS EXITEM 015009,001861: 41,3036 50117 INDEX DECOUNT 015010,001862: 41,3037 33066 CAF DISPLACE # PUT TC GOQ, TC RIGHT5, OR TC LEFT5 IN L 015011,001863: 41,3040 54001 TS L 015012,001864: 41,3041 50117 INDEX DECOUNT 015013,001865: 41,3042 34362 CAF LOW5 # LOW5, MID5, OR HI5 IN A 015014,001866: 41,3043 70153 MASK RUTMXTEM # GET HI5, MID5, OR LOW5 OF RUTMXTAB ENTRY 015015,001867: 41,3044 50001 INDEX L 015016,001868: 41,3045 00000 TC 0 015017,001869: 015018,001870: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2). 015019,001871: 015020,001872: 41,3046 00114 SFRET1 TC EXITEM # SF ROUTINE NUMBER IN A 015021,001873: 015022,001874: 41,3047 56002 SFCONUM XCH Q # GETS 2X(SF CONSTANT NUMBER) 015023,001875: 41,3050 54114 TS EXITEM 015024,001876: 41,3051 50140 INDEX MIXBR 015025,001877: 41,3052 03052 TC +0 015026,001878: 41,3053 03071 TC CONUMNOR # NORMAL NOUN 015027,001879: 41,3054 50117 INDEX DECOUNT # MIXED NOUN 015028,001880: 41,3055 33066 CAF DISPLACE 015029,001881: 41,3056 54001 TS L # PUT TC GOQ, TC RIGHT5, OR TC LEFT5 IN L 015030,001882: 41,3057 50117 INDEX DECOUNT 015031,001883: 41,3060 34362 CAF LOW5 015032,001884: 41,3061 70147 MASK NNTYPTEM 015033,001885: 41,3062 50001 INDEX L 015034,001886: 41,3063 00000 TC 0 015035,001887: 015036,001888: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2). 015037,001889: 015038,001890: 41,3064 60000 SFRET DOUBLE # 2X(SF CONSTANT NUMBER) IN A 015039,001891: 41,3065 00114 TC EXITEM 015040,001892: 015041,001893: # Page 347 015042,001894: 015043,001895: 41,3066 03025 DISPLACE TC GOQ 015044,001896: 41,3067 04336 TC RIGHT5 015045,001897: 41,3070 04345 TC LEFT5 015046,001898: 015047,001899: 41,3071 34362 CONUMNOR CAF LOW5 # NORMAL NOUN ALWAYS GETS LOW 5 OF 015048,001900: 41,3072 70147 MASK NNTYPTEM # NNTYPTAB FOR SF CONUM. 015049,001901: 41,3073 60000 DOUBLE 015050,001902: 41,3074 00114 TC EXITEM # 2X(SF CONSTANT NUMBER) IN A 015051,001903: 015052,001904: 41,3075 54117 PUTCOM TS DECOUNT 015053,001905: 41,3076 56002 XCH Q 015054,001906: 41,3077 54115 TS DECRET 015055,001907: 41,3100 35021 CAF ZERO 015056,001908: 41,3101 54162 TS MPAC+6 015057,001909: 41,3102 50117 INDEX DECOUNT 015058,001910: 41,3103 57006 XCH XREGLP 015059,001911: 41,3104 54155 TS MPAC +1 015060,001912: 41,3105 50117 INDEX DECOUNT 015061,001913: 41,3106 57003 XCH XREG 015062,001914: 41,3107 54154 TS MPAC 015063,001915: 41,3110 50140 INDEX MIXBR 015064,001916: 41,3111 03111 TC +0 015065,001917: 41,3112 03137 TC PUTNORM # NORMAL NOUN 015066,001918: 015067,001919: # IF MIXNOUN, PLACE ADDRESS FOR COMPONENT K INTO NOUNADD, SET EBANK BITS. 015068,001920: 015069,001921: 41,3113 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K 015070,001922: 41,3114 30150 CA IDAD1TEM # OF NOUN. 015071,001923: 41,3115 74372 MASK LOW11 # (ECADR)SUBK FOR CURRENT COMP OF NOUN 015072,001924: 41,3116 04317 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD. 015073,001925: 41,3117 00006 EXTEND # C(NOUNADD) IN A UPON RETURN 015074,001926: 41,3120 60117 SU DECOUNT # PLACE (ESUBK)-K INTO NOUNADD 015075,001927: 41,3121 54145 TS NOUNADD 015076,001928: 41,3122 11000 CCS DECBRNCH 015077,001929: 41,3123 03174 TC PUTDECSF # + DEC 015078,001930: 41,3124 02452 TC DCTSTCYC # +0 OCTAL 015079,001931: 41,3125 03034 TC SFRUTMIX # TEST IF DEC ONLY BIT = 1. IF SO, 015080,001932: 41,3126 02261 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE. 015081,001933: 41,3127 03155 TC PUTCOM2 # NO DP 015082,001934: # TEST FOR DP SCALE FOR OCT LOAD. IF SO, 015083,001935: # +0 INTO MAJOR PART. SET NOUNADD FOR 015084,001936: # LOADING OCTAL WORD INTO MINOR PART. 015085,001937: 41,3130 24145 PUTDPCOM INCR NOUNADD # DP (ESUBK)-K+1 OR E+1 015086,001938: 41,3131 30145 CA NOUNADD # NOUNADD NOW SET FOR MINOR PART 015087,001939: 41,3132 26117 ADS DECOUNT # (ESUBK)+1 OR E+1 INTO DECOUNT 015088,001940: 41,3133 35021 CAF ZERO # NOUNADD SET FOR MINOR PART 015089,001941: 41,3134 50117 INDEX DECOUNT 015090,001942: 41,3135 53777 TS 0 -1 # ZERO MAJOR PART(ESUBK OR E) 015091,001943: 41,3136 03155 TC PUTCOM2 015092,001944: 015093,001945: 41,3137 04325 PUTNORM TC SETNADD # ECADR FROM NOUNCADR. SETS EB, NOUNADD. 015094,001946: # Page 348 015095,001947: 41,3140 11000 CCS DECBRNCH 015096,001948: 41,3141 03174 TC PUTDECSF # + DEC 015097,001949: 41,3142 02452 TC DCTSTCYC # +0 OCTAL 015098,001950: 41,3143 03026 TC SFRUTNOR # TEST IF DEC ONLY BIT (garbled). IF SO, 015099,001951: 41,3144 02261 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE. 015100,001952: 41,3145 03151 TC PUTCOM2 -4 # NO DP 015101,001953: 41,3146 35021 CAF ZERO # DP 015102,001954: 41,3147 54117 TS DECOUNT 015103,001955: 41,3150 03130 TC PUTDPCOM 015104,001956: 015105,001957: 41,3151 30146 CA NNADTEM 015106,001958: 41,3152 65017 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED 015107,001959: 41,3153 00006 EXTEND 015108,001960: 41,3154 13161 BZF CHANLOAD 015109,001961: 41,3155 56154 PUTCOM2 XCH MPAC 015110,001962: 41,3156 00115 TC DECRET 015111,001963: 015112,001964: 41,3157 0777 EBANK= DSPCOUNT 015113,001965: 41,3157 02126 64101 GTSFINLC 2CADR GTSFIN 015114,001966: 015115,001967: 41,3161 45023 CHANLOAD CS SEVEN # DON'T LOAD CHAN 7. (IT'S SUPERBANK). 015116,001968: 41,3162 61017 AD NOUNCADR 015117,001969: 41,3163 00006 EXTEND 015118,001970: 41,3164 12775 BZF LOADLV 015119,001971: 41,3165 31017 CA NOUNCADR 015120,001972: 41,3166 75046 MASK LOW9 015121,001973: 41,3167 56154 XCH MPAC 015122,001974: 41,3170 00006 EXTEND 015123,001975: 41,3171 50154 INDEX MPAC 015124,001976: 41,3172 01000 WRITE 0 015125,001977: 41,3173 02775 TC LOADLV 015126,001978: 015127,001979: # PUTDECSF FINDS MIXBR AND DECOUNT STILL SET FROM PUTCOM. 015128,001980: 015129,001981: 41,3174 03047 PUTDECSF TC SFCONUM # 2X(SF CON NUMB) IN A 015130,001982: 41,3175 54123 TS SFTEMP1 015131,001983: 41,3176 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE 015132,001984: 41,3177 33160 DCA GTSFINLC # READING ROUTINE. 015133,001985: 41,3200 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2. 015134,001986: 41,3201 50140 INDEX MIXBR 015135,001987: 41,3202 03202 TC +0 015136,001988: 41,3203 03206 TC PUTSFNOR 015137,001989: 41,3204 03034 TC SFRUTMIX 015138,001990: 41,3205 03207 TC PUTDCSF2 015139,001991: 41,3206 03026 PUTSFNOR TC SFRUTNOR 015140,001992: 015141,001993: 41,3207 50000 PUTDCSF2 INDEX A 015142,001994: # Page 349 015143,001995: 41,3210 33212 CAF SFINTABR 015144,001996: 41,3211 04704 TC BANKJUMP # SWITCH BANKS FOR EXPANSION ROOM 015145,001997: 41,3212 62350 SFINTABR CADR GOALMCYC # ALARM AND RECYCLE IF DEC LOAD 015146,001998: # WITH OCTAL ONLY NOUN. 015147,001999: 41,3213 60776 CADR BINROUND 015148,002000: 41,3214 60716 CADR DEGINSF 015149,002001: 41,3215 60766 CADR ARTHINSF 015150,002002: 41,3216 61021 CADR DPINSF 015151,002003: 41,3217 61046 CADR DPINSF2 015152,002004: 41,3220 61004 CADR OPTDEGIN 015153,002005: 41,3221 61021 CADR DPINSF # SAME AS ARITHDP1 015154,002006: 41,3222 65365 CADR HMSIN 015155,002007: 41,3223 61325 CADR DSPALARM # MIN/SEC CAN'T BE LOADED. 015156,002008: 41,3224 61053 CADR DPINSF4 015157,002009: 41,3225 61001 CADR ARTIN1SF 015158,002010: 41,3226 61325 CADR DSPALARM # 2INTOUT CAN'T BE LOADED. 015159,002011: 41,3227 61032 CADR DPFRACIN 015160,002012: 41,3230 ENDRUTIN EQUALS 015161,002013: 015162,002014: # SCALE FACTORS FOR THOSE ROUTINES NEEDING THEM ARE AVAILABLE IN SFTEMP1. 015163,002015: # ALL SFIN ROUTINES USE MPAC MPAC+1. LEAVE RESULT IN A. END WITH TC DECRET. 015164,002016: 015165,002017: 40,2716 SETLOC ENDDPDEC +1 015166,002018: 015167,002019: 40,2716 COUNT 40/PIN 015168,002020: 015169,002021: # DEGINSF APPLIES 1000/180 * 5.55555(10) = 5.43434(8) 015170,002022: 015171,002023: 40,2716 07052 DEGINSF TC DMP # SF ROUTINE FOR DEC DEGREES 015172,002024: 40,2717 02761 ADRES DEGCON1 # MULT BY 5.5 5(10)X2EXP-3 015173,002025: 40,2720 10155 CCS MPAC +1 # THIS ROUNDS OFF MPAC+1 BEFORE SHIFT 015174,002026: 40,2721 35005 CAF BIT11 # LEFT 3, AND CAUSES 360.00 TO OF/UF 015175,002027: 40,2722 02724 TC +2 # WHEN SHIFTED LEFT AND ALARM. 015176,002028: 40,2723 45005 CS BIT11 015177,002029: 40,2724 60155 AD MPAC +1 015178,002030: 40,2725 03072 TC 2ROUND +2 015179,002031: 40,2726 04420 TC TPSL1 # LEFT 1 015180,002032: 40,2727 04420 DEGINSF2 TC TPSL1 # LEFT 2 015181,002033: 40,2730 03101 TC TESTOFUF 015182,002034: 40,2731 04420 TC TPSL1 # RETURNS IF NO OF/UF (LEFT3) 015183,002035: 40,2732 10154 CCS MPAC 015184,002036: 40,2733 02737 TC SIGNFIX # IF +, GO TO SIGNFIX 015185,002037: 40,2734 02737 TC SIGNFIX # IF +0, GO TO SIGNFIX 015186,002038: 40,2735 40000 COM # IF -, USE -MAGNITUDE +1 015187,002039: 40,2736 54154 TS MPAC # IF -0, USE +0 015188,002040: 40,2737 10162 SIGNFIX CCS MPAC+6 015189,002041: 40,2740 02755 TC SGNTO1 # IF OVERFLOW 015190,002042: 40,2741 02751 TC ENDSCALE # NO OVERFLOW/UNDERFLOW 015191,002043: # Page 350 015192,002044: 40,2742 10154 CCS MPAC # IF UF FORCE SIGN TO 0 EXCEPT -180 015193,002045: 40,2743 05747 TC CCSHOLE 015194,002046: 40,2744 02753 TC NEG180 015195,002047: 40,2745 02746 TC +1 015196,002048: 40,2746 56154 XCH MPAC 015197,002049: 40,2747 74777 MASK POSMAX 015198,002050: 40,2750 54154 TS MPAC 015199,002051: 40,2751 04701 ENDSCALE TC POSTJUMP 015200,002052: 40,2752 63155 CADR PUTCOM2 015201,002053: 015202,002054: 40,2753 44777 NEG180 CS POSMAX 015203,002055: 40,2754 02750 TC ENDSCALE -1 015204,002056: 015205,002057: 40,2755 40154 SGNTO1 CS MPAC # IF OF FORCE SIGN TO 1 015206,002058: 40,2756 74777 MASK POSMAX 015207,002059: 40,2757 40000 CS A 015208,002060: 40,2760 02750 TC ENDSCALE -1 015209,002061: 015210,002062: 40,2761 26161 30707 DEGCON1 2DEC 5.555555555 B-3 015211,002063: 015212,002064: 40,2763 21616 07071 DEGCON2 2DEC 2.222222222 B-2 015213,002065: 015214,002066: 40,2765 71527 NEG.2 OCT -06250 # = .197753906 I.E., THE BIAS SCALED 015215,002067: 015216,002068: 40,2766 07052 ARTHINSF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2. 015217,002069: 40,2767 00123 ADRES SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS 015218,002070: 40,2770 56156 XCH MPAC +2 # OF SFCON. SHIFTS RESULTS LEFT BY 14. 015219,002071: 40,2771 56155 XCH MPAC +1 # (BY TAKING RESULTS FROM MPAC+1, MPAC+2) 015220,002072: 40,2772 56154 XCH MPAC 015221,002073: 40,2773 00006 EXTEND 015222,002074: 40,2774 12776 BZF BINROUND 015223,002075: 40,2775 04161 TC ALMCYCLE # TOO LARGE A LOAD. ALARM AND RECYCLE. 015224,002076: 40,2776 03070 BINROUND TC 2ROUND 015225,002077: 40,2777 03101 TC TESTOFUF 015226,002078: 40,3000 02751 TC ENDSCALE # RETURNS IF NO OF/UF 015227,002079: 015228,002080: 40,3001 07052 ARTIN1SF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2. 015229,002081: 40,3002 00123 ADRES SFTEMP1 # ROUNDS MPAC+1 INTO MPAC. 015230,002082: 40,3003 02776 TC BINROUND 015231,002083: 015232,002084: 40,3004 10154 OPTDEGIN CCS MPAC # OPTICS SCALING ROUTINE 015233,002085: 40,3005 03011 TC +4 015234,002086: 40,3006 03011 TC +3 015235,002087: 40,3007 04161 TC ALMCYCLE # REJECT -- INPUT. ALARM AND RECYCLE. 015236,002088: 40,3010 04161 TC ALMCYCLE # REJECT -- INPUT. ALARM AND RECYCLE. 015237,002089: 40,3011 32765 OPDEGIN2 CAF NEG.2 # RANGE IS 90 DEG 015238,002090: 40,3012 26154 ADS MPAC # SUBTRACT BIAS 015239,002091: # Page 351 015240,002092: 40,3013 07052 TC DMP # MULT BY 100 / 45 B-2 015241,002093: 40,3014 02763 ADRES DEGCON2 015242,002094: 40,3015 35004 CAF BIT12 # ROUND AS IN DEGINSF 015243,002095: 40,3016 60155 AD MPAC +1 015244,002096: 40,3017 03072 TC 2ROUND +2 015245,002097: 40,3020 02727 TC DEGINSF2 015246,002098: 015247,002099: 40,3021 07052 DPINSF TC DMP # SCALES MPAC, MPAC +1 BY SFTEMP1, 015248,002100: 40,3022 00123 ADRES SFTEMP1 # SFTEMP. STORES LOW PART OF RESULT 015249,002101: 40,3023 56156 XCH MPAC +2 # IN (E SUBK) +1 OR E+1 015250,002102: 40,3024 60000 DOUBLE 015251,002103: 40,3025 54156 TS MPAC +2 015252,002104: 40,3026 35021 CAF ZERO 015253,002105: 40,3027 60155 AD MPAC +1 015254,002106: 40,3030 03072 TC 2ROUND +2 015255,002107: 40,3031 03101 TC TESTOFUF 015256,002108: 40,3032 50140 DPFRACIN INDEX MIXBR # RETURNS IF NO OF/UF 015257,002109: 40,3033 03033 TC +0 015258,002110: 40,3034 03044 TC DPINORM 015259,002111: 40,3035 30117 CA DECOUNT # MIXED NOUN 015260,002112: 40,3036 60145 DPINCOM AD NOUNADD # MIXED NORMAL 015261,002113: 40,3037 54002 TS Q # E SUBK E 015262,002114: 40,3040 56155 XCH MPAC +1 015263,002115: 40,3041 50002 INDEX Q 015264,002116: 40,3042 54001 TS 1 # PLACE LOW PART IN 015265,002117: 40,3043 02751 TC ENDSCALE # (E SUBK) +1 MIXED 015266,002118: 015267,002119: 40,3044 35021 DPINORM CAF ZERO # E +1 NORMAL 015268,002120: 40,3045 03036 TC DPINCOM 015269,002121: 015270,002122: 40,3046 07052 DPINSF2 TC DMP # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH 015271,002123: 40,3047 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS 015272,002124: 40,3050 36211 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1 015273,002125: 40,3051 03060 TC TPLEFTN # SHIFT LEFT 7. 015274,002126: 40,3052 03023 TC DPINSF +2 015275,002127: 015276,002128: 40,3053 07052 DPINSF4 TC DMP # ASSUMES POINT BETWEEN BITS 11-12 OF HIGH 015277,002129: 40,3054 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS 015278,002130: 40,3055 35016 CAF TWO # LEFT BY 3, ROUNDS MPAC+2 INTO MPAC+1. 015279,002131: 40,3056 03060 TC TPLEFTN # SHIFT LEFT 3. 015280,002132: 40,3057 03023 TC DPINSF +2 015281,002133: 015282,002134: 40,3060 56002 TPLEFTN XCH Q # SHIFTS MPAC, +1, +2 LEFT N. SETS OVFIND 015283,002135: 40,3061 54124 TS SFTEMP2 # TO +1 FOR OF, -1 FOR UF. 015284,002136: 40,3062 56002 XCH Q # CALL WITH N-1 IN A. 015285,002137: 40,3063 54123 LEFTNCOM TS SFTEMP1 # LOOP TIME .37 MSEC. 015286,002138: 40,3064 04420 TC TPSL1 015287,002139: 40,3065 10123 CCS SFTEMP1 015288,002140: # Page 352 015289,002141: 40,3066 03063 TC LEFTNCOM 015290,002142: 40,3067 00124 TC SFTEMP2 015291,002143: 015292,002144: 40,3070 56155 2ROUND XCH MPAC +1 015293,002145: 40,3071 60000 DOUBLE 015294,002146: 40,3072 54155 TS MPAC +1 015295,002147: 40,3073 00002 TC Q # IF MPAC+1 DOES NOT OF/UF 015296,002148: 40,3074 60154 AD MPAC 015297,002149: 40,3075 54154 TS MPAC 015298,002150: 40,3076 00002 TC Q # IF MPAC DOES NOT OF/UF 015299,002151: 40,3077 54162 TS MPAC+6 015300,002152: 40,3100 00002 2RNDEND TC Q 015301,002153: 015302,002154: 40,3101 10162 TESTOFUF CCS MPAC+6 # RETURNS IF NO OF/UF 015303,002155: 40,3102 04161 TC ALMCYCLE # OF ALARM AND RECYCLE. 015304,002156: 40,3103 00002 TC Q 015305,002157: 40,3104 04161 TC ALMCYCLE # UF ALARM AND RECYCLE. 015306,002158: 015307,002159: 42,3365 SETLOC ENDSPMIN +1 015308,002160: 015309,002161: 42,3365 COUNT 42/PIN 015310,002162: 015311,002163: 42,3365 03506 HMSIN TC ALL3DEC # IF ALL 3 WORDS WERE NOT LOADED, ALARM. 015312,002164: 42,3366 07052 TC DMP # XREG, XREGLP (=HOURS) WERE ALREADY PUT 015313,002165: 42,3367 03447 ADRES WHOLECON # INTO MPAC, MPAC+1. 015314,002166: 42,3370 03456 TC RND/TST # ROUND OFF TO WHOLE HRS IN MPAC+1. 015315,002167: 42,3371 35021 CAF ZERO # ALARM IF MPAC NON ZERO (G/ 16383). 015316,002168: 42,3372 54156 TS MPAC +2 015317,002169: 42,3373 33451 CAF HRCON 015318,002170: 42,3374 54154 TS MPAC 015319,002171: 42,3375 33452 CAF HRCON +1 015320,002172: 42,3376 56155 XCH MPAC +1 015321,002173: 42,3377 07256 TC SHORTMP 015322,002174: 42,3400 03467 TC MPACTST # ALARM IF MPAC NON ZERO (G/ 745) 015323,002175: 42,3401 52156 DXCH MPAC +1 # STORE HOURS CONTRIBUTION 015324,002176: 42,3402 52124 DXCH HITEMIN 015325,002177: 42,3403 31004 CA YREG # PUT YREG, YREGLP INTO MPAC, +1. 015326,002178: 42,3404 23007 LXCH YREGLP 015327,002179: 42,3405 52155 DXCH MPAC 015328,002180: 42,3406 07052 TC DMP 015329,002181: 42,3407 03447 ADRES WHOLECON 015330,002182: 42,3410 03456 TC RND/TST # ROUND OFF TO WHOLE MIN IN MPAC+1 015331,002183: 42,3411 43454 CS 59MIN # ALARM IF MPAC NON ZERO (G/16383) 015332,002184: 42,3412 03474 TC SIZETST # ALARM IF MPAC+1 G/ 59MIN 015333,002185: 42,3413 56155 XCH MPAC +1 015334,002186: 42,3414 00006 EXTEND 015335,002187: 42,3415 73453 MP MINCON # LEAVES MINUTES CONTRIBUTION IN A,L 015336,002188: # Page 353 015337,002189: 42,3416 20124 DAS HITEMIN # ADD IN MINUTES CONTRIBUTION 015338,002190: 42,3417 00006 EXTEND # IF THIS DAS OVEFLOWS, G/ 745 HR, 39MIN 015339,002191: 42,3420 13422 BZF +2 015340,002192: 42,3421 04161 TC ALMCYCLE 015341,002193: 42,3422 31005 CA ZREG # PUT ZREG, ZREGLP INTO MPAC +1. 015342,002194: 42,3423 23010 LXCH ZREGLP 015343,002195: 42,3424 52155 DXCH MPAC 015344,002196: 42,3425 07052 TC DMP 015345,002197: 42,3426 03447 ADRES WHOLECON 015346,002198: 42,3427 03456 TC RND/TST # ROUND OFF TO WHOLE CENTI-SEC IN MPAC+1 015347,002199: 42,3430 43455 CS 59.99SEC # ALARM IF MPAC NON ZERO (G/163.83 SEC) 015348,002200: 42,3431 03474 TC SIZETST # ALARM IF MPAC+1 G/59.99 SEC 015349,002201: 42,3432 52124 DXCH HITEMIN # ADD IN SECONDS CONTRIBUTION 015350,002202: 42,3433 20155 DAS MPAC # IF THIS DAS OVERFLOWS, 015351,002203: 42,3434 00006 EXTEND # G/ 745 HR, 39 MIN, 14.59 SEC. 015352,002204: 42,3435 13437 BZF +2 015353,002205: 42,3436 04161 TC ALMCYCLE # ALARM AND RECYCLE 015354,002206: 42,3437 35021 CAF ZERO 015355,002207: 42,3440 54156 TS MPAC +2 015356,002208: 42,3441 07226 TC TPAGREE 015357,002209: 42,3442 52155 DXCH MPAC 015358,002210: 42,3443 50145 INDEX NOUNADD 015359,002211: 42,3444 52001 DXCH 0 015360,002212: 42,3445 04701 TC POSTJUMP 015361,002213: 42,3446 62775 CADR LOADLV 015362,002214: 015363,002215: 42,3447 00006 WHOLECON OCT 00006 # (10EXP5/2EXP14)2EXP14 015364,002216: 42,3450 03240 OCT 03240 015365,002217: 42,3451 00025 HRCON OCT 00025 # 1 HOUR IN CENTI-SEC 015366,002218: 42,3452 37100 OCT 37100 015367,002219: 42,3453 13560 MINCON OCT 13560 # 1 MINUTE IN CENTI-SEC 015368,002220: 42,3454 00073 59MIN OCT 00073 # 59 AS WHOLE 015369,002221: 42,3455 13557 59.99SEC OCT 13557 # 5999 SENTI-SEC 015370,002222: 015371,002223: 42,3456 56156 RND/TST XCH MPAC +2 # ROUNDS MPAC+2 INTO MPAC+1. 015372,002224: 42,3457 60000 DOUBLE # ALARMS IF MPAC NOT 0 015373,002225: 42,3460 54156 TS MPAC +2 015374,002226: 42,3461 35021 CAF ZERO 015375,002227: 42,3462 60155 AD MPAC +1 015376,002228: 42,3463 54155 TS MPAC +1 015377,002229: 42,3464 35021 CAF ZERO 015378,002230: 42,3465 60154 AD MPAC # CAN'T OVFLOW 015379,002231: 42,3466 56154 XCH MPAC 015380,002232: 42,3467 10154 MPACTST CCS MPAC # ALARM IF MPAC NON ZERO 015381,002233: 42,3470 04161 TC ALMCYCLE # ALARM AND RECYCLE 015382,002234: 42,3471 00002 TC Q 015383,002235: 42,3472 04161 TC ALMCYCLE # ALARM AND RECYCLE 015384,002236: 42,3473 00002 TC Q 015385,002237: 015386,002238: # Page 354 015387,002239: 015388,002240: 42,3474 54156 SIZETST TS MPAC +2 # CALLED WITH - CON IN A 015389,002241: 42,3475 10155 CCS MPAC +1 # GET MAG OF MPAC+1 015390,002242: 42,3476 65017 AD ONE 015391,002243: 42,3477 13501 TCF +2 015392,002244: 42,3500 65017 AD ONE 015393,002245: 42,3501 60156 AD MPAC +2 015394,002246: 42,3502 00006 EXTEND # MAG OF MPAC+1 - CON 015395,002247: 42,3503 63505 BZMF +2 015396,002248: 42,3504 04161 TC ALMCYCLE # MAG OF MPAC+1 G/ CON. ALARM AND RECYCLE. 015397,002249: 42,3505 00002 TC Q # MAG OF MPAC+1 L/= CON 015398,002250: 015399,002251: # ALL3DEC TESTS THAT ALL 3 WORDS ARE LOADED IN DEC (FOR HMSIN). 015400,002252: # ALARM IF NOT. (TEST THAT BITS 3,4,5 OF DECBRNCH ARE ALL = 1). 015401,002253: 015402,002254: 42,3506 43513 ALL3DEC CS OCT34BAR # GET BITS 3,4,5 IN A 015403,002255: 42,3507 71000 MASK DECBRNCH # GET BITS 3,4,5 OF DECBRNCH IN A 015404,002256: 42,3510 63513 AD OCT34BAR # BITS 3,4,5 OF DECBRNCH MUST ALL = 1 015405,002257: 42,3511 10000 CCS A 015406,002258: 42,3512 03516 TC FORCEV25 015407,002259: 42,3513 77743 OCT34BAR OCT 77743 015408,002260: 42,3514 03516 TC FORCEV25 015409,002261: 42,3515 00002 TC Q 015410,002262: 015411,002263: 42,3516 44113 FORCEV25 CS OCT31 # FORCE VERB 25 TO BE EXECUTED BY RECYCLE 015412,002264: 42,3517 55041 TS VERBSAVE # IN CASE OPERATOR EXECUTED A LOWER LOAD 015413,002265: 42,3520 04161 TC ALMCYCLE # VERB. ALARM AND RECYCLE. 015414,002266: 42,3521 ENDHMSS EQUALS 015415,002267: 015416,002268: # Page 355 015417,002269: # MONITOR ALLOWS OTHER KEYBOARD ACTIVITY. IT IS ENDED BY VERB TERMINATE, 015418,002270: # VERB PROCEED WITHOUT DATA, VERB RESEQUENCE, 015419,002271: # ANOTHER MONITOR, OR ANY NVSUB CALL THAT PASSES THE DSPLOCK (PROVIDED 015420,002272: # THAT THE OPERATOR HAS SOMEHOW ALLOWED THE ENDING OF A MONITOR WHICH 015421,002273: # HE HAS INITIATED THROUGH THE KEYBOARD). 015422,002274: 015423,002275: # MONITOR ACTION IS SUSPENDED, BUT NOT ENDED, BY ANY KEYBOARD ACTION. 015424,002276: # EXCEPT ERROR LIGHT RESET. IT BEGINS AGAIN WHEN KEY RELEASE IS PERFORMED. 015425,002277: # MONITOR SAVES THE NOUN AND APPROPRIATE DISPLAY VERB IN MONSAVE. IT SAVES 015426,002278: # NOUNCADR IN MONSAVE1, IF NOUN = MACHINE CADR TO BE SPECIFIED. BIT 15 OF 015427,002279: # MONSAVE1 IS THE KILL MONITOR SIGNAL (KILLER BIT). BIT 14 OF MONSAVE1 015428,002280: # INDICATES THE CURRENT MONITOR WAS EXTERNALLY INITIATED (EXTERNAL 015429,002281: # MONITOR BIT). IT IS TURNED OFF BY RELDSP AND KILMONON. 015430,002282: 015431,002283: # MONSAVE INDICATES IF MONITOR IS ON (+=ON, +0=OFF) 015432,002284: # IF MONSAVE IS +, MONITOR ENTERS NO REQUEST, BUT TURNS KILLER BIT OFF. 015433,002285: # IF MONSAVE IS +0, MONITOR ENTERS REQUEST AND TURNS KILLER BIT OFF. 015434,002286: 015435,002287: # NVSUB (IF EXTERNAL MONITOR BIT IS OFF), VB=PROCEED WITHOUT DATA, 015436,002288: # VB=RESEQUENCE, AND VB=TERMINATE TURN KILL MONITOR BIT ON. 015437,002289: 015438,002290: # IF KILLER BIT IS ON, MONREQ ENTERS NO FURTHER REQUESTS, ZEROS MONSAVE 015439,002291: # AND MONSAVE1 (TURNING OFF KILLER BIT AND EXTERNAL MONITOR BIT). 015440,002292: 015441,002293: # MONITOR DOESN'T TEST FOR MATBS SINCE NVSUB CAN HANDLE INTERNAL MATBS NOW. 015442,002294: 015443,002295: 41,3230 SETLOC ENDRUTIN 015444,002296: 015445,002297: 41,3230 COUNT 41/PIN 015446,002298: 015447,002299: 41,3230 43237 MONITOR CS BIT15/14 015448,002300: 41,3231 71017 MASK NOUNCADR 015449,002301: 41,3232 54155 MONIT1 TS MPAC +1 # TEMP STORAGE 015450,002302: 41,3233 40136 CS ENTEXIT 015451,002303: 41,3234 64233 AD ENDINST 015452,002304: 41,3235 10000 CCS A 015453,002305: 41,3236 03245 TC MONIT2 015454,002306: 41,3237 60000 BIT15/14 OCT 60000 015455,002307: 41,3240 03245 TC MONIT2 015456,002308: 41,3241 35002 CAF BIT14 # EXTERNALLY INITIATED MONITOR. 015457,002309: 41,3242 26155 ADS MPAC +1 # SET BIT 14 FOR MONSAVE1. 015458,002310: 41,3243 35021 CAF ZERO 015459,002311: 41,3244 55022 TS MONSAVE2 # ZERO NVMONOPT OPTIONS 015460,002312: 41,3245 36043 MONIT2 CAF LOW7 015461,002313: 41,3246 71001 MASK VERBREG 015462,002314: 41,3247 04345 TC LEFT5 015463,002315: 41,3250 54022 TS CYL 015464,002316: 41,3251 40022 CS CYL 015465,002317: 41,3252 56022 XCH CYL 015466,002318: 41,3253 61002 AD NOUNREG 015467,002319: 41,3254 54154 TS MPAC # TEMP STORAGE 015468,002320: # Page 356 015469,002321: 41,3255 35021 CAF ZERO 015470,002322: 41,3256 55012 TS DSPLOCK # +0 INTO DSPLOCK SO MONITOR CAN RUN. 015471,002323: 41,3257 11042 CCS CADRSTOR # TURN OFF KR LITE IF CADRSTOR AND DSPLIST 015472,002324: 41,3260 03262 TC +2 # ARE BOTH EMPTY. (LITE COMES ON IF NEW 015473,002325: 41,3261 04516 TC RELDSP1 # MONITOR IS KEYED IN OVER OLD MONITOR.) 015474,002326: 41,3262 00004 INHINT 015475,002327: 41,3263 11020 CCS MONSAVE 015476,002328: 41,3264 03271 TC +5 # IF MONSAVE WAS +, NO REQUEST 015477,002329: 41,3265 35017 CAF ONE # IF MONSAVE WAS 0, REQUEST MONREQ 015478,002330: 41,3266 05245 TC WAITLIST 015479,002331: 41,3267 0777 EBANK= DSPCOUNT 015480,002332: 41,3267 03275 62101 2CADR MONREQ 015481,002333: 015482,002334: 41,3271 52155 DXCH MPAC # PLACE MONITOR VERB AND NOUN INTO MONSAVE 015483,002335: 41,3272 53021 DXCH MONSAVE # ZERO THE KILL MONITOR BIT 015484,002336: 41,3273 00003 RELINT # SET UP EXTERNAL MONITOR BIT 015485,002337: 41,3274 00136 TC ENTRET 015486,002338: 015487,002339: 41,3275 04414 MONREQ TC LODSAMPT # CALLED BY WAITLIST 015488,002340: 41,3276 11021 CCS MONSAVE1 # TIME IS SNATCHED N RUPT FOR NOUN 65 015489,002341: 41,3277 03303 TC +4 # IF KILLER BIT = 0, ENTER REQUESTS 015490,002342: 41,3300 03303 TC +3 # IF KILLER BIT = 0, ENTER REQUESTS 015491,002343: 41,3301 03314 TC KILLMON # IF KILLER BIT = 1, NO REQUESTS. 015492,002344: 41,3302 03314 TC KILLMON # IF KILLER BIT = 1, NO REQUESTS. 015493,002345: 41,3303 33320 CAF MONDEL 015494,002346: 41,3304 05245 TC WAITLIST # ENTER WAITLIST REQUEST FOR MONREQ 015495,002347: 41,3305 0777 EBANK= DSPCOUNT 015496,002348: 41,3305 03275 62101 2CADR MONREQ 015497,002349: 015498,002350: 41,3307 34371 CAF CHRPRIO 015499,002351: 41,3310 05134 TC NOVAC # ENTER EXEC REQUEST FOR MONDO 015500,002352: 41,3311 0777 EBANK= DSPCOUNT 015501,002353: 41,3311 03321 62101 2CADR MONDO 015502,002354: 015503,002355: 41,3313 05324 TC TASKOVER 015504,002356: 015505,002357: 41,3314 35021 KILLMON CAF ZERO # ZERO MONSAVE AND TURN KILLER BIT OFF 015506,002358: 41,3315 55020 TS MONSAVE 015507,002359: 41,3316 55021 TS MONSAVE1 # TURN OFF KILL MONITOR BIT. 015508,002360: 41,3317 05324 TC TASKOVER # TURN OFF EXTERNAL MONITOR BIT. 015509,002361: 41,3320 00144 MONDEL OCT 144 # FOR 1 SEC MONITOR INTERVALS. 015510,002362: 015511,002363: 41,3321 11021 MONDO CCS MONSAVE1 # CALLED BY EXEC 015512,002364: 41,3322 03326 TC +4 # IF KILLER BIT = 0, CONTINUE 015513,002365: 41,3323 03326 TC +3 # IF KILLER BIT = 0, CONTINUE 015514,002366: 41,3324 05217 TC ENDOFJOB # IN CASE TERMINATE CAME SINCE LAST MONREQ 015515,002367: 41,3325 05217 TC ENDOFJOB # IN CASE TERMINATE CAME SINCE LAST MONREQ 015516,002368: 41,3326 11012 CCS DSPLOCK 015517,002369: # Page 357 015518,002370: 41,3327 03351 TC MONBUSY # NVSUB IS BUSY 015519,002371: 41,3330 36043 CAF LOW7 015520,002372: 41,3331 71020 MASK MONSAVE 015521,002373: 41,3332 02317 TC UPDATNN -1 # PLACE NOUN INTO NOUNREG AND DISPLAY IT 015522,002374: 41,3333 34160 CAF MID7 015523,002375: 41,3334 71020 MASK MONSAVE # CHANGE MONITOR VERB TO DISPLAY VERB 015524,002376: 41,3335 63347 AD MONREF # -DEC10, STARTING IN BIT8 015525,002377: 41,3336 54023 TS EDOP # RIGHT 7 015526,002378: 41,3337 30023 CA EDOP 015527,002379: 41,3340 55001 TS VERBREG 015528,002380: 41,3341 33350 CAF MONBACK # SET RETURN TO PASTEVB AFTER DATA DISPLAY 015529,002381: 41,3342 54136 TS ENTRET 015530,002382: 41,3343 43237 CS BIT15/14 015531,002383: 41,3344 71021 MASK MONSAVE1 # PUT ECADR INTO MPAC +2. INTMCTBS WILL 015532,002384: 41,3345 54156 TS MPAC +2 # DISPLAY IT AND SET NOUNCADR, NOUNADD, 015533,002385: 41,3346 02046 ENDMONDO TC TESTNN # EBANK. 015534,002386: 015535,002387: 4140 BLOCK 2 015536,002388: 015537,002389: 4000 SETLOC FFTAG8 015538,002390: 4000 BANK 015539,002391: 015540,002392: 4140 COUNT 02/PIN 015541,002393: 015542,002394: 4140 34160 PASTEVB CAF MID7 015543,002395: 4141 71022 MASK MONSAVE2 # NVMONOPT PASTE OPTION 015544,002396: 4142 00006 EXTEND 015545,002397: 4143 14145 BZF +2 015546,002398: 4144 04146 TC PASTEOPT # PASTE PLEASE VERB FOR NVMONOPT 015547,002399: 4145 31020 CA MONSAVE # PASTE MONITOR VERB -- PASTE OPTION IS 0 015548,002400: 4146 54023 PASTEOPT TS EDOP # RIGHT 7 015549,002401: 4147 30023 CA EDOP # PLACE MONITOR VERB OR PLEASE VERB INTO 015550,002402: 4150 04662 TC BANKCALL # VERBREG AND DISPLAY IT. 015551,002403: 4151 62337 CADR UPDATVB -1 015552,002404: 4152 35021 CAF ZERO # ZERO REQRET SO THAT PASTED VERBS CAN 015553,002405: 4153 55013 TS REQRET # BE EXECUTED BY OPERATOR. 015554,002406: 4154 31022 CA MONSAVE2 015555,002407: 4155 04271 TC BLANKSUB # PROCESS NVMONOPT BLANK OPTION IF ANY 015556,002408: 4156 04157 TC +1 015557,002409: 4157 05217 ENDPASTE TC ENDOFJOB 015558,002410: 015559,002411: 4160 37600 MID7 OCT 37600 015560,002412: 015561,002413: 41,3347 SETLOC ENDMONDO +1 015562,002414: 41,3347 COUNT 41/PIN 015563,002415: 015564,002416: 41,3347 75377 MONREF OCT 75377 # -DEC10, STARTING IN BIT8 015565,002417: 41,3350 04140 MONBACK ADRES PASTEVB 015566,002418: 015567,002419: # Page 358 015568,002420: 41,3351 04410 MONBUSY TC RELDSPON # TURN KEY RELEASE LIGHT 015569,002421: 41,3352 05217 TC ENDOFJOB 015570,002422: 015571,002423: # DSPFMEM IS USED TO DISPLAY (IN OCTAL) ANY FIXED REGISTER. 015572,002424: # IT IS USED WITH NOUN = MACHINE CADR TO BE SPECIFIED. THE FCADR OF THE 015573,002425: # DESIRED LOCATION IS THEN PUNCHED IN. IT HANDLES F/F (FCADR 4000-7777) 015574,002426: # 015575,002427: # FOR BANKS L/E 27, THIS IS ENOUGH. 015576,002428: 015577,002429: # FOR BANKS G/E 30, THE THIRD COMPONENT OF NOUN 26 (PRIO, ADRES, BBCON) 015578,002430: # MUST BE PRELOADED WITH THE DESIRED SUPERBANK BITS (BITS 5,6,7). 015579,002431: # V23N26 SHOULD BE USED. 015580,002432: 015581,002433: # SUMMARY 015582,002434: # FOR BANKS L/E 27, V27N01E(FCADR)E 015583,002435: # FOR BANKS G/E 30, V23N26E(SUPERBITS)E V27N01E(FCADR)E 015584,002436: 015585,002437: 41,3353 34333 DSPFMEM CAF R1D1 # IF F/F, DATACALL USES BANK 02 OR 03. 015586,002438: 41,3354 54777 TS DSPCOUNT 015587,002439: 41,3355 31047 CA DSPTEM1 +2 # SUPERBANK BITS WERE PRELOADED INTO 015588,002440: 41,3356 54001 TS L # 3RD COMPONENT OF NOUN 26. 015589,002441: 41,3357 31017 CA NOUNCADR # ORIGINAL FCADR LOADED STILL IN NOUNCADR. 015590,002442: 41,3360 04715 TC SUPDACAL # CALL WITH FCADR IN A, SUPERBITS IN L. 015591,002443: 41,3361 03363 TC DSPOCTWO 015592,002444: 41,3362 05217 ENDSPF TC ENDOFJOB 015593,002445: 015594,002446: # Page 359 015595,002447: # WORD DISPLAY ROUTINES 015596,002448: 40,3105 SETLOC TESTOFUF +4 015597,002449: 40,3105 COUNT 40/PIN 015598,002450: 015599,002451: 40,3105 56002 DSPSIGN XCH Q 015600,002452: 40,3106 54144 TS DSPWDRET 015601,002453: 40,3107 10154 CCS MPAC 015602,002454: 40,3110 03120 TC +8D 015603,002455: 40,3111 03120 TC +7 015604,002456: 40,3112 65017 AD ONE 015605,002457: 40,3113 54154 TS MPAC 015606,002458: 40,3114 02334 TC -ON 015607,002459: 40,3115 40155 CS MPAC +1 015608,002460: 40,3116 54155 TS MPAC +1 015609,002461: 40,3117 00144 TC DSPWDRET 015610,002462: 40,3120 02314 TC +ON 015611,002463: 40,3121 00144 TC DSPWDRET 015612,002464: 015613,002465: 40,3122 00006 DSPRND EXTEND # ROUND BY 5 EXP-6 015614,002466: 40,3123 33166 DCA DECROUND -1 015615,002467: 40,3124 20155 DAS MPAC 015616,002468: 40,3125 00006 EXTEND 015617,002469: 40,3126 13132 BZF +4 015618,002470: 40,3127 00006 EXTEND 015619,002471: 40,3130 34777 DCA DPOSMAX 015620,002472: 40,3131 52155 DXCH MPAC 015621,002473: 40,3132 00002 TC Q 015622,002474: 015623,002475: # DSPDECWD CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 5 CHAR DECIMAL 015624,002476: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT ROUNDS BY 5 EXP-6. 015625,002477: 015626,002478: 40,3133 56002 DSPDECWD XCH Q 015627,002479: 40,3134 54115 TS WDRET 015628,002480: 40,3135 03105 TC DSPSIGN 015629,002481: 40,3136 03122 TC DSPRND 015630,002482: 40,3137 35015 CAF FOUR 015631,002483: 40,3140 54137 DSPDCWD1 TS WDCNT 015632,002484: 40,3141 34377 CAF BINCON 015633,002485: 40,3142 07256 TC SHORTMP 015634,002486: 40,3143 50154 TRACE1 INDEX MPAC 015635,002487: 40,3144 34072 CAF RELTAB 015636,002488: 40,3145 74362 MASK LOW5 015637,002489: 40,3146 54124 TS CODE 015638,002490: 40,3147 35021 CAF ZERO 015639,002491: 40,3150 56156 XCH MPAC +2 015640,002492: 40,3151 56155 XCH MPAC +1 015641,002493: 40,3152 54154 TS MPAC 015642,002494: 40,3153 56777 XCH DSPCOUNT 015643,002495: 40,3154 54143 TRACE1S TS COUNT 015644,002496: # Page 360 015645,002497: 40,3155 10000 CCS A # DECREMENT DSPCOUNT EXCEPT AT +0 015646,002498: 40,3156 54777 TS DSPCOUNT 015647,002499: 40,3157 03227 TC DSPIN 015648,002500: 40,3160 10137 CCS WDCNT 015649,002501: 40,3161 03140 TC DSPDCWD1 015650,002502: 40,3162 44374 CS VD1 015651,002503: 40,3163 54777 TS DSPCOUNT 015652,002504: 40,3164 00115 TC WDRET 015653,002505: 015654,002506: 40,3165 00000 OCT 00000 015655,002507: 40,3166 02476 DECROUND OCT 02476 015656,002508: 015657,002509: # DSPDECNR CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 5 CHAR DECIMAL 015658,002510: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT DOES NOT ROUND 015659,002511: 015660,002512: 40,3167 56002 DSPDECNR XCH Q 015661,002513: 40,3170 54115 TS WDRET 015662,002514: 40,3171 03105 TC DSPSIGN 015663,002515: 40,3172 03137 TC DSPDCWD1 -1 015664,002516: 015665,002517: # DSPDC2NR CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 2 CHAR DECIMAL 015666,002518: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT DOES NOT ROUND 015667,002519: 015668,002520: 40,3173 56002 DSPDC2NR XCH Q 015669,002521: 40,3174 54115 TS WDRET 015670,002522: 40,3175 03105 TC DSPSIGN 015671,002523: 40,3176 35017 CAF ONE 015672,002524: 40,3177 03140 TC DSPDCWD1 015673,002525: 015674,002526: # DSP2DEC CONVERTS C(MPAC) AND C(MPAC+1) INTO A SIGN AND 10 CHAR DECIMAL 015675,002527: # STARTING IN THE LOC SPECIFIED IN DSPCOUNT. 015676,002528: 015677,002529: 40,3200 56002 DSP2DEC XCH Q 015678,002530: 40,3201 54115 TS WDRET 015679,002531: 40,3202 35021 CAF ZERO 015680,002532: 40,3203 54124 TS CODE 015681,002533: 40,3204 36214 CAF THREE 015682,002534: 40,3205 03311 TC 11DSPIN # -R2 OFF 015683,002535: 40,3206 35015 CAF FOUR 015684,002536: 40,3207 03311 TC 11DSPIN # +R2 OFF 015685,002537: 40,3210 03105 TC DSPSIGN 015686,002538: 40,3211 34334 CAF R2D1 015687,002539: 40,3212 03140 END2DEC TC DSPDCWD1 015688,002540: 015689,002541: # DSPDECVN DISPLAYS C(A) UPON ENTRY AS A 2 CHAR DECIMAL BEGINNING IN THE 015690,002542: # DSP LOC SPECIFIED IN DSPCOUNT. 015691,002543: 015692,002544: # C(A) SHOULD BE IN FORM N X 2EXP-14. THIS IS SCALED TO FORM N/100 BEFORE 015693,002545: # DISPLAY CONVERSION. 015694,002546: # Page 361 015695,002547: 015696,002548: 40,3213 00006 DSPDECVN EXTEND 015697,002549: 40,3214 73223 MP VNDSPCON # MULT BY .01 015698,002550: 40,3215 22154 LXCH MPAC # TAKE RESULTS FROM L. (MULT BY 2EXP14). 015699,002551: 40,3216 35021 CAF ZERO 015700,002552: 40,3217 54155 TS MPAC +1 015701,002553: 40,3220 56002 XCH Q 015702,002554: 40,3221 54115 TS WDRET 015703,002555: 40,3222 03176 TC DSPDC2NR +3 # NO SIGN, NO ROUND, 2 CHAR 015704,002556: 015705,002557: 40,3223 00244 VNDSPCON OCT 00244 # .01 ROUNDED UP 015706,002558: 015707,002559: 40,3224 03213 GOVNUPDT TC DSPDECVN # THIS IS NOT FOR GENERAL USE. REALLY PART 015708,002560: 40,3225 04701 TC POSTJUMP # OF UPDATVB. 015709,002561: 40,3226 62347 CADR UPDAT1 +2 015710,002562: 015711,002563: 40,3227 ENDECVN EQUALS 015712,002564: 015713,002565: 41,3363 SETLOC ENDSPF +1 015714,002566: 41,3363 COUNT 41/PIN 015715,002567: 015716,002568: # DSPOCTWD DISPLAYS C(A) UPON ENTRY AS A 5 CHAR OCT STARTING IN THE DSP 015717,002569: # CHAR SPECIFIED IN DSPCOUNT. IT STOPS AFTER 5 CHAR HAVE BEEN DISPLAYED. 015718,002570: 015719,002571: 41,3363 54022 DSPOCTWO TS CYL 015720,002572: 41,3364 56002 XCH Q 015721,002573: 41,3365 54115 TS WDRET # MUST USE SAME RETURN AS DSP2BIT. 015722,002574: 41,3366 35002 CAF BIT14 # TO BLANK SIGNS 015723,002575: 41,3367 26777 ADS DSPCOUNT 015724,002576: 41,3370 35015 CAF FOUR 015725,002577: 41,3371 54137 WDAGAIN TS WDCNT 015726,002578: 41,3372 40022 CS CYL 015727,002579: 41,3373 40022 CS CYL 015728,002580: 41,3374 40022 CS CYL 015729,002581: 41,3375 40000 CS A 015730,002582: 41,3376 75023 MASK DSPMSK 015731,002583: 41,3377 50000 INDEX A 015732,002584: 41,3400 34072 CAF RELTAB 015733,002585: 41,3401 74362 MASK LOW5 015734,002586: 41,3402 54124 TS CODE 015735,002587: 41,3403 56777 XCH DSPCOUNT 015736,002588: 41,3404 54143 TS COUNT 015737,002589: 41,3405 10000 CCS A # DECREMENT DSPCOUNT EXCEPT AT +0 015738,002590: 41,3406 54777 TS DSPCOUNT 015739,002591: 41,3407 04701 TC POSTJUMP 015740,002592: 41,3410 61317 CADR DSPOCTIN 015741,002593: 41,3411 10137 OCTBACK CCS WDCNT 015742,002594: 41,3412 03371 TC WDAGAIN # + 015743,002595: 41,3413 44374 DSPLV CS VD1 # TO BLOCK NUMERICAL CHARACTERS, CLEARS, 015744,002596: # Page 362 015745,002597: 41,3414 54777 TS DSPCOUNT # AND SIGNS AFTER A COMPLETED DISPLAY. 015746,002598: 41,3415 00115 TC WDRET 015747,002599: 015748,002600: 41,3416 5023 DSPMSK = SEVEN 015749,002601: 015750,002602: # DSP2BIT DISPLAYS C(A) UPON ENTRY AS A 2 CHAR OCT BEGINNING IN THE DSP 015751,002603: # LOC SPECIFIED IN DSPCOUNT BY PRE CYCLING RIGHT C(A) AND USING THE LOGIC 015752,002604: # OF THE 5 CHAR OCTAL DISPLAY 015753,002605: 015754,002606: 41,3416 54020 DSP2BIT TS CYR 015755,002607: 41,3417 56002 XCH Q 015756,002608: 41,3420 54115 TS WDRET 015757,002609: 41,3421 35017 CAF ONE 015758,002610: 41,3422 54137 TS WDCNT 015759,002611: 41,3423 40020 CS CYR 015760,002612: 41,3424 40020 CS CYR 015761,002613: 41,3425 56020 XCH CYR 015762,002614: 41,3426 54022 TS CYL 015763,002615: 41,3427 03376 TC WDAGAIN +5 015764,002616: 015765,002617: # FOR DSPIN PLACE 0/25 OCT INTO COUNT, 5 BIT RELAY CODE INTO CODE. BOTH 015766,002618: # ARE DESTROYED. IF BIT14 OF COUNT IS 1, SIGN IS BLANKED WITH LEFT CHAR. 015767,002619: # FOR DSPIN1 PLACE 0,1 INTO BIT11 OF CODE, 2 INTO COUNT, REL ADDRESS OF 015768,002620: # DSPTAB ENTRY INTO DSREL. 015769,002621: 015770,002622: 40,3227 SETLOC ENDECVN 015771,002623: 015772,002624: 40,3227 COUNT 40/PIN 015773,002625: 015774,002626: 40,3227 56002 DSPIN XCH Q # CAN'T USE L FOR RETURN, SINCE MANY OF THE 015775,002627: 40,3230 54114 TS DSEXIT # ROUTINES CALLING DSPIN USE L AS RETURN. 015776,002628: 40,3231 34362 CAF LOW5 015777,002629: 40,3232 70143 MASK COUNT 015778,002630: 40,3233 54021 TS SR 015779,002631: 40,3234 56021 XCH SR 015780,002632: 40,3235 54141 TS DSREL 015781,002633: 40,3236 35017 CAF BIT1 015782,002634: 40,3237 70143 MASK COUNT 015783,002635: 40,3240 10000 CCS A 015784,002636: 40,3241 03243 TC +2 # LEFT IF COUNT IS ODD 015785,002637: 40,3242 03253 TC DSPIN1 -1 # RIGHT IF COUNT IS EVEN 015786,002638: 40,3243 56124 XCH CODE 015787,002639: 40,3244 04354 TC SLEFT5 # DOES NOT USE CYL 015788,002640: 40,3245 54124 TS CODE 015789,002641: 40,3246 35002 CAF BIT14 015790,002642: 40,3247 70143 MASK COUNT 015791,002643: 40,3250 10000 CCS A 015792,002644: 40,3251 35016 CAF TWO # BIT14 = 1, BLANK SIGN 015793,002645: # Page 363 015794,002646: 40,3252 65017 AD ONE # BIT14 = 0, LEAVE SIGN ALONE 015795,002647: 40,3253 54143 TS COUNT # +0 INTO COUNT FOR RIGHT 015796,002648: # +1 INTO COUNT FOR LEFT (SIGN LEFT ALONE) 015797,002649: # +3 INTO COUNT FOR LEFT (TO BLANK SIGN) 015798,002650: 40,3254 00004 DSPIN1 INHINT 015799,002651: 40,3255 50141 INDEX DSREL 015800,002652: 40,3256 11023 CCS DSPTAB 015801,002653: 40,3257 03261 TC +2 # IF + 015802,002654: 40,3260 05747 TC CCSHOLE 015803,002655: 40,3261 65017 AD ONE # IF - 015804,002656: 40,3262 54142 TS DSMAG 015805,002657: 40,3263 50143 INDEX COUNT 015806,002658: 40,3264 73305 MASK DSMSK 015807,002659: 40,3265 00006 EXTEND 015808,002660: 40,3266 60124 SU CODE 015809,002661: 40,3267 00006 EXTEND 015810,002662: 40,3270 13303 BZF DSLV # SAME 015811,002663: 40,3271 50143 DFRNT INDEX COUNT 015812,002664: 40,3272 43305 CS DSMSK # MASK WITH 77740, 76037, 76777, OR 74037 015813,002665: 40,3273 70142 MASK DSMAG 015814,002666: 40,3274 60124 AD CODE 015815,002667: 40,3275 40000 CS A 015816,002668: 40,3276 50141 INDEX DSREL 015817,002669: 40,3277 57023 XCH DSPTAB 015818,002670: 40,3300 00006 EXTEND 015819,002671: 40,3301 63303 BZMF DSLV # DSPTAB ENTRY WAS - 015820,002672: 40,3302 25016 INCR NOUT # DSPTAB ENTRY WAS + 015821,002673: 40,3303 00003 DSLV RELINT 015822,002674: 40,3304 00114 TC DSEXIT 015823,002675: 015824,002676: 40,3305 00037 DSMSK OCT 37 015825,002677: 40,3306 01740 OCT 1740 015826,002678: 40,3307 02000 OCT 2000 015827,002679: 40,3310 03740 OCT 3740 015828,002680: 015829,002681: # FOR 11DSPIN, PUT REL ADDRESS OF DSPTAB ENTRY INTO A, 1 IN BIT11 OR 0 IN 015830,002682: # BIT11 OF CODE. 015831,002683: 015832,002684: 40,3311 54141 11DSPIN TS DSREL 015833,002685: 40,3312 35016 CAF TWO 015834,002686: 40,3313 54143 TS COUNT 015835,002687: 40,3314 56002 XCH Q # MUST USE SAME RETURN AS DSPIN 015836,002688: 40,3315 54114 TS DSEXIT 015837,002689: 40,3316 03254 TC DSPIN1 015838,002690: 015839,002691: 40,3317 03227 DSPOCTIN TC DSPIN # SO DSPOCTWD DOESN'T USE SWCALL 015840,002692: 40,3320 33322 CAF +2 015841,002693: 40,3321 04704 TC BANKJUMP 015842,002694: # Page 364 015843,002695: 40,3322 63411 ENDSPOCT CADR OCTBACK 015844,002696: 015845,002697: # DSPALARM FINDS TC NVSUBEND IN ENTRET FOR NVSUB INITIATED ROUTINES 015846,002698: # ABORT WITH 01501. 015847,002699: 015848,002700: # DSPALARM FINDS TC ENDOFJOB IN ENTRET FOR KEYBOARD INITIATED ROUTINES. 015849,002701: # DC TC ENTRET. 015850,002702: 015851,002703: 40,3323 44374 PREDSPAL CS VD1 015852,002704: 40,3324 54777 TS DSPCOUNT 015853,002705: 40,3325 43346 DSPALARM CS NVSBENDL 015854,002706: 40,3326 60136 AD ENTEXIT 015855,002707: 40,3327 00006 EXTEND 015856,002708: 40,3330 13343 BZF CHARALRM +2 015857,002709: 40,3331 43345 CS MONADR # IF THIS IS A MONITOR, KILL IT 015858,002710: 40,3332 60136 AD ENTEXIT 015859,002711: 40,3333 00006 EXTEND 015860,002712: 40,3334 13336 BZF +2 015861,002713: 40,3335 03341 TC CHARALRM 015862,002714: 40,3336 04220 TC KILMONON 015863,002715: 40,3337 04400 TC FALTON 015864,002716: 40,3340 04140 TC PASTEVB # PUT MONITOR VERB BACK IN VERBREG 015865,002717: 40,3341 04400 CHARALRM TC FALTON # NOT NVSUB INITATED TURN ON OPR ERROR 015866,002718: 40,3342 05217 TC ENDOFJOB 015867,002719: 40,3343 05721 TC P00DOO 015868,002720: 40,3344 01501 OCT 01501 015869,002721: 40,3345 04140 MONADR GENADR PASTEVB 015870,002722: 40,3346 04216 NVSBENDL TC NVSUBEND 015871,002723: 015872,002724: # ALMCYCLE TURNS ON CHECK FAIL LIGHT, REDISPLAYS THE ORIGINAL VERB THAT 015873,002725: # WAS EXECUTED, AND RECYCLES TO EXECUTE THE ORIGINAL VERB/NOUN COMBINATION 015874,002726: # THAT WAS LAST EXECUTED. USED FOR BAD DATA DURING LOAD VERBS AND BY 015875,002727: # MCTBS. ALSO BY MMCHANG IF 2 NUMERICAL CHARACTERS WERE NOT PUNCHED IN 015876,002728: # FOR MM CODE 015877,002729: 015878,002730: 4161 SETLOC MID7 +1 015879,002731: 4161 COUNT 02/PIN 015880,002732: 015881,002733: 4161 04400 ALMCYCLE TC FALTON # TURN ON CHECK FAIL LIGHT. 015882,002734: 4162 41041 CS VERBSAVE # GET ORIGINAL VERB THAT WAS EXECUTED 015883,002735: 4163 55013 TS REQRET # SET FOR ENTPAS0 015884,002736: 4164 04662 TC BANKCALL # PUTS ORIGINAL VERB INTO VERBREG AND 015885,002737: 4165 62337 CADR UPDATVB -1 # DISPLAYS IT IN VERB LIGHTS. 015886,002738: 4166 04701 TC POSTJUMP 015887,002739: 4167 62002 ENDALM CADR ENTER 015888,002740: 015889,002741: # MMCHANG USES NOUN DISPLAY UNTIL ENTER. THEN IT USES MODE DISP. 015890,002742: # IT GOES TO MODROUT WITH THE NEW M M CODE IN A, BUT NOT DISPLAYED IN 015891,002743: # Page 365 015892,002744: # MM LIGHTS. 015893,002745: 015894,002746: # IT DEMANDS 2 NUMERICAL CHARACTERS BE PUNCHED IN FOR NEW MM CODE. 015895,002747: # IF NOT, IT RECYCLES. 015896,002748: 015897,002749: 41,3430 SETLOC DSP2BIT +10D 015898,002750: 015899,002751: 41,3430 COUNT 41/PIN 015900,002752: 015901,002753: 41,3430 03452 MMCHANG TC REQMM # ENTPASHI ASSUMES THE TC REQMM AT MMCHANG 015902,002754: # IF THIS MOVES AT ALL, MUST CHANGE 015903,002755: # MMADREF AT ENTPASHI. 015904,002756: 41,3431 35013 CAF BIT5 # OCT20 = ND2. 015905,002757: 41,3432 60777 AD DSPCOUNT # DSPCOUNT MUST = -ND2. 015906,002758: 41,3433 00006 EXTEND # DEMAND THAT 2 NUM CHAR WERE PUNCHED IN. 015907,002759: 41,3434 13436 BZF +2 015908,002760: 41,3435 04161 TC ALMCYCLE # DSPCOUNT NOT= -ND2. ALARM AND RECYCLE. 015909,002761: 41,3436 35021 CAF ZERO # DSPCOUNT = -ND2. 015910,002762: 41,3437 57002 XCH NOUNREG 015911,002763: 41,3440 54154 TS MPAC 015912,002764: 41,3441 34375 CAF ND1 015913,002765: 41,3442 54777 TS DSPCOUNT 015914,002766: 41,3443 04662 TC BANKCALL 015915,002767: 41,3444 60502 CADR 2BLANK 015916,002768: 41,3445 44374 CS VD1 # BLOCK NUM CHAR IN 015917,002769: 41,3446 54777 TS DSPCOUNT 015918,002770: 41,3447 30154 CA MPAC 015919,002771: 41,3450 04701 TC POSTJUMP 015920,002772: 41,3451 10011 CADR MODROUTB # GO THRU STANDARD LOC. 015921,002773: 015922,002774: 41,3452 04,2011 MODROUTB = V37 015923,002775: 41,3452 40002 REQMM CS Q 015924,002776: 41,3453 55013 TS REQRET 015925,002777: 41,3454 34375 CAF ND1 015926,002778: 41,3455 54777 TS DSPCOUNT 015927,002779: 41,3456 35021 CAF ZERO 015928,002780: 41,3457 55002 TS NOUNREG 015929,002781: 41,3460 04662 TC BANKCALL 015930,002782: 41,3461 60502 CADR 2BLANK 015931,002783: 41,3462 04443 TC FLASHON 015932,002784: 41,3463 35017 CAF ONE 015933,002785: 41,3464 55000 TS DECBRNCH # SET FOR DEC 015934,002786: 41,3465 00136 TC ENTEXIT 015935,002787: 015936,002788: # VBRQEXEC ENTERS REQUEST TO EXEC FOR ANY ADDRESS WITH ANY PRIORITY. 015937,002789: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED. 015938,002790: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WITH 015939,002791: # COMPONENT 1 PRIORITY (BITS 10-14) BIT1=0 FOR NOVAC, BIT1=1 FOR FINDVAC. 015940,002792: # COMPONENT 2 JOB ADRES (12 BIT) 015941,002793: # Page 366 015942,002794: # COMPONENT 3 BBCON 015943,002795: 015944,002796: 41,3466 35017 VBRQEXEC CAF BIT1 015945,002797: 41,3467 71045 MASK DSPTEM1 015946,002798: 41,3470 10000 CCS A 015947,002799: 41,3471 03510 TC SETVAC # IF BIT1 = 1, FINDVAC 015948,002800: 41,3472 34365 CAF TCNOVAC # IF BIT1 = 0, NOVAC 015949,002801: 41,3473 54154 REQEX1 TS MPAC # TC NOVAC OR TC FINDVAC INTO MPAC 015950,002802: 41,3474 45017 CS BIT1 015951,002803: 41,3475 71045 MASK DSPTEM1 015952,002804: 41,3476 54160 TS MPAC +4 # PRIO INTO MPAC+4 AS A TEMP 015953,002805: 41,3477 04473 REQUESTC TC RELDSP 015954,002806: 41,3500 34233 CA ENDINST 015955,002807: 41,3501 54157 TS MPAC +3 # TC ENDOFJOB INTO MPAC+3 015956,002808: 41,3502 00006 EXTEND 015957,002809: 41,3503 31047 DCA DSPTEM1 +1 # JOB ADRES INTO MPAC+1 015958,002810: 41,3504 52156 DXCH MPAC +1 # BBCON INTO MPAC+2 015959,002811: 41,3505 30160 CA MPAC +4 # PRIO IN A 015960,002812: 41,3506 00004 INHINT 015961,002813: 41,3507 00154 TC MPAC 015962,002814: 015963,002815: 41,3510 34370 SETVAC CAF TCFINDVC 015964,002816: 41,3511 03473 TC REQEX1 015965,002817: 015966,002818: # VBRQWAIT ENTERS REQUEST TO WAITLIST FOR ANY ADDRESS WITH ANY DELAY. 015967,002819: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED. 015968,002820: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WTIH 015969,002821: # COMPONENT 1 DELAY (LOW BITS) 015970,002822: # COMPONENT 2 TASK ADRES (12 BIT) 015971,002823: # COMPONENT 3 BBCON 015972,002824: 015973,002825: 41,3512 34366 VBRQWAIT CAF TCWAIT 015974,002826: 41,3513 54154 TS MPAC # TC WAITLIST INTO MPAC 015975,002827: 41,3514 31045 CA DSPTEM1 # TIME DELAY 015976,002828: 41,3515 03476 ENDRQWT TC REQUESTC -1 015977,002829: 015978,002830: # REQUESTC WILL PUT TASK ADRES INTO MPAC+1, BBCON INTO MPAC+2, 015979,002831: # TC ENDOFJOB INTO MPAC+3. IT WILL TAKE TIME DELAY OUT OF MPAC+4 AND 015980,002832: # LEAVE IT IN A, INHINT AND TC MPAC. 015981,002833: 015982,002834: 40,3347 SETLOC NVSBENDL +1 015983,002835: 40,3347 COUNT 40/PIN 015984,002836: 015985,002837: 40,3347 35017 VBPROC CAF ONE # PROCEED WITHOUT DATA 015986,002838: 40,3350 55014 TS LOADSTAT 015987,002839: 40,3351 04220 TC KILMONON # TURN ON KILL MONITOR BIT 015988,002840: 40,3352 04473 TC RELDSP 015989,002841: 40,3353 04447 TC FLASHOFF 015990,002842: 40,3354 03454 TC RECALTST # SEE IF THERE IS ANY RECALL FROM ENDIDLE 015991,002843: 015992,002844: # Page 367 015993,002845: 40,3355 45017 VBTERM CS ONE 015994,002846: 40,3356 03350 TC VBPROC +1 # TERM VERB SETS LOADSTAT NEG 015995,002847: 015996,002848: # PROCKEY PERFORMS THE SAME FUNCTION AS VBPROC. IT MUST BE CALLED UNDER 015997,002849: # EXECUTIVE CONTROL, WITH CHRPRIO. 015998,002850: 015999,002851: 40,3357 35021 PROCKEY CAF ZERO # SET REQRET FOR ENTER PASS 0. 016000,002852: 40,3360 55013 TS REQRET 016001,002853: 40,3361 44374 CS VD1 # BLOCK NUMERICAL CHARACTERS, SIGNS, CLEAR 016002,002854: 40,3362 54777 TS DSPCOUNT 016003,002855: 40,3363 03347 TC VBPROC 016004,002856: 016005,002857: # VBRESEQ WAKES ENDIDLE AT SAME LINE AS FINAL ENTER OF LOAD (L+3). 016006,002858: # (MAIN USE IS INTENDED AS RESPONSE TO INTERNALLY INITIATED FLASHING 016007,002859: # DISPLAYS IN ENDIDLE. SHOULD NOT BE USED WITH LOAD VERBS, PLEASE PERFORM, 016008,002860: # OR PLEASE MARK VERBS BECAUSE THEY ALREADY USE L+3 IN ANOTHER CONTEXT.) 016009,002861: 016010,002862: 40,3364 45021 VBRESEQ CS ZERO # MAKE IT LOOK LIKE DATA IN. 016011,002863: 40,3365 03350 TC VBPROC +1 016012,002864: 016013,002865: # FLASH IS TURNED OFF BY PROCEED WITHOUT DATA, TERMINATE, RESEQUENCE, 016014,002866: # END OF LOAD. 016015,002867: # Page 368 016016,002868: 016017,002869: # KEY RELEASE ROUTINE 016018,002870: 016019,002871: # THIS ROUTINE ALWAYS TURNS OFF THE UPACT LIGHT AND ALWAYS CLEARS DSPLOCK. 016020,002872: 016021,002873: # THE HIGHEST PRIORITY FUNCTION OF THE KEY RELEASE BUTTON IS THE 016022,002874: # UNSUSPENDING OF A SUSPENDED MONITOR WHICH WAS EXTERNALLY INITIATED. 016023,002875: # THIS FUNCTION IS ACCOMPLISHED BY CLEARING DSPLOCK AND TURNING OFF 016024,002876: # THE KEY RELEASE LIGHT IF BOTH DSPLIST AND CADRSTOR ARE EMPTY. 016025,002877: 016026,002878: # IF NO SUCH MONITOR EXISTS, THEN RELDSP IS EXECUTED TO CLEAR DSPLOCK 016027,002879: # AND THE EXTERNAL MONITOR BIT (FREEING THE DISPLAY SYSTEM FOR INTERNAL 016028,002880: # USE), TURN OFF THE KEY RELEASE LIGHT, AND WAKE UP ANY JOB IN DSPLIST. 016029,002881: 016030,002882: # IN ADDITION IF THERE IS A JOB IN ENDIDLE, THEN CONTROL IS TRANSFERRED 016031,002883: # TO PINBRNCH (IN DISPLAY INTERFACE ROUTINE) TO RE-EXECUTE THE SERIES OF 016032,002884: # NVSUB CALLS ETC. THAT PRECEDED THE ENDIDLE CALL STILL AWAITING RESPONSE. 016033,002885: # THIS FEATURE IS INTENDED FOR USE WHEN THE OPERATOR HAS BEEN REQUESTED TO 016034,002886: # RESPOND TO SOME INTERNAL ACTION THAT USED ENDIDLE, BUT HE HAS WRITTEN 016035,002887: # OVER THE INFORMATION ON THE DISPLAY PANEL BY SOME DISPLAYS OF HIS OWN 016036,002888: # INITIATION WHICH DO NOT SERVE AS RESPONSES. HITTING KEYRLSE WILL 016037,002889: # RE-ESTABLISH THE DISPLAYS TO THE STATE THEY WERE IN BEOFRE HE OBSCURED 016038,002890: # THEM, SO THAT HE CAN SEE THE WAITING REQUEST. THIS WORKS ONLY FOR 016039,002891: # INTERNAL PROGRAMS THAT USED ENDIDLE THROUGH MARGARET'S DISPLAY 016040,002892: # SUBROUTINES. 016041,002893: 016042,002894: 40,3366 45015 VBRELDSP CS BIT3 016043,002895: 40,3367 00006 EXTEND 016044,002896: 40,3370 03011 WAND DSALMOUT # TURN OF UPACT LITE 016045,002897: 40,3371 10115 CCS 21/22REG # OLD DSPLOCK 016046,002898: 40,3372 35002 CAF BIT14 016047,002899: 40,3373 71021 MASK MONSAVE1 # EXTERNAL MONITOR BIT (EMB) 016048,002900: 40,3374 10000 CCS A 016049,002901: 40,3375 03404 TC UNSUSPEN # OLD DSPLOCK AND EMB BOTH 1, UNSUSPEND, 016050,002902: 40,3376 04473 TSTLTS4 TC RELDSP # NOT UNSUSPENDING EXTERNAL MONITOR 016051,002903: 40,3377 11042 CCS CADRSTOR # RELEASE DISPLAY SYSTEM AND 016052,002904: 40,3400 03402 TC +2 # DO RE-ESTABLISH IF CADRSTOR IS FULL. 016053,002905: 40,3401 05217 TC ENDOFJOB 016054,002906: 40,3402 04701 TC POSTJUMP 016055,002907: 40,3403 21272 CADR PINBRNCH 016056,002908: 40,3404 35021 UNSUSPEN CAF ZERO # EXTERNAL MONITOR IS SUSPENDED, 016057,002909: 40,3405 55012 TS DSPLOCK # JUST UNSUSPEND IT BY CLEARING DSPLOCK. 016058,002910: 40,3406 11042 CCS CADRSTOR # TURN KEY RELEASE LIGHT OFF IF BOTH 016059,002911: 40,3407 05217 TC ENDOFJOB # CADRSTOR AND DSPLIST ARE EMPTY. 016060,002912: 40,3410 04516 TC RELDSP1 016061,002913: 40,3411 05217 TC ENDOFJOB 016062,002914: 016063,002915: 40,3412 ENDRELDS EQUALS 016064,002916: 016065,002917: # Page 369 016066,002918: # NVSUB IS USED FOR SUBROUTINE CALLS FROM WITHIN COMPUTER. IT CAN BE 016067,002919: # USED TO CALL THE COMBINATION OF ANY DISPLAY, LOAD, OR MONITOR VERB 016068,002920: # TOGETHER WITH ANY NOUN AVAILABLE TO THE KEYBOARD. 016069,002921: # PLACE 0VVVVVVVNNNNNNN INTO A. 016070,002922: # V'S ARE THE 7-BIT VERB CODE. N'S ARE THE 7-BIT NOUN CODE. 016071,002923: 016072,002924: # IF NVSUB IS CALLED WTIH THE FOLLOWING NEGATIVE NUMBERS (RATHER THAN THE 016073,002925: # VERB-NOUN CODE) IN A, THEN THE DISPLAY IS BLANKED AS FOLLOWS --- 016074,002926: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY. 016075,002927: 016076,002928: # NVSUB CAN BE USED WTIH MACHINE CADR TO BE SPECIFIED BY PLACING THE CADR INTO 016077,002929: # MPAC+2 BEFORE THE STANDARD NVSUB CALL. 016078,002930: 016079,002931: # NVSUB RETURNS TO 2+ CALLING LOC AFTER PERFORMING TASK, IF DISPLAY 016080,002932: # SYSTEM IS AVAILABLE. THE NEW NOUN AND VERB CODES ARE DISPLAYED. 016081,002933: # IF V'S =0, THE NEW NOUN CODE IS DISPLAYED ONLY (RETURN WITH NO FURTHER 016082,002934: # ACTION). IF N'S =0, THE NEW VERB CODE IS DISPLAYED ONLY (RETURN WITH NO 016083,002935: # FURTHER ACTION). 016084,002936: 016085,002937: # IT RETURNS TO 1+ CALLING LOC WITHOUT PERFORMING TASK, IF DISPLAY 016086,002938: # SYSTEM IS BLOCKED (NOTHING IS DISPLAYED IN THIS CASE). 016087,002939: # IT DOES TC ABORT (WITH OCT 01501) IF IT ENCOUNTERS A DISPLAY PROGRAM 016088,002940: # ALARM CONDITION BEFORE RETURN TO CALLER. 016089,002941: 016090,002942: # THE DISPLAY SYSTEM IS BLOCKED BY THE DEPRESSION OF ANY 016091,002943: # KEY, EXCEPT ERROR LIGHT RESET. 016092,002944: # IT IS RELEASED BY THE KEY RELEASE BUTTON, ALL EXTENDED VERBS, 016093,002945: # PROCED WITOHOUT DATA, TERMINATE, RESEQUENCE, INITIALIZE EXECUTIVE, 016094,002946: # RECALL PART OF RECALTST IF ENDIDLE WAS USED, 016095,002947: # VB = REQUEST EXECUTIVE, VB = REQUEST WAITLIST, 016096,002948: # MONITOR SET UP. 016097,002949: 016098,002950: # THE DISPLAY SYSTEM IS ALSO BLOCKED BY THE EXTERNAL MONITOR BIT, WHICH 016099,002951: # INDICATES AND EXTERNALLY INITIATED MONITOR IS RUNNING (SEE MONITOR). 016100,002952: 016101,002953: # A NVSUB CALL THAT PASSES DSPLOCK AND THE EXTERNAL MONITOR BIT ENDS OLD 016102,002954: # MONITOR. 016103,002955: 016104,002956: # DSPLOCK IS THE INTERLOCK FOR USE OF KEYBOARD AND DISPLAY SYSTEM WHICH 016105,002957: # LOCKS OUT INTERNAL USE WHENEVER THERE IS EXTERNAL KEYBOARD ACTION. 016106,002958: 016107,002959: # NVSUB SHOULD BE USED TWICE IN SUCCESSION FOR `PLEASE PERFORM' SITUATIONS 016108,002960: # (SIMILARLY FOR PLEASE MARK). FIRST PLACE THE CODED NUMBER FOR WHAT 016109,002961: # ACTION IS DESIRED OF OPERATOR INTO THEREGISTERS REFERRED TO BY THE 016110,002962: # `CHECKLIST' NOUN. GO TO NVSUB WITH A DISPLAY VERB AND THE `CHECKLIST' 016111,002963: # NOUN. GO TO NVSUB AGAIN WTIH THE `PLEASE PERFORM' VERB AND ZEROS IN THE 016112,002964: # LOW 7 BITS. THIS `PASTES UP' THE `PLEASE PERFORM' VERB INTO THE VERB 016113,002965: # LIGHTS. 016114,002966: 016115,002967: # NVMONOPT IS AN ENTRY SIMILAR TO NVSUB, BUT REQUIRING AN ADDITIONAL 016116,002968: # Page 370 016117,002969: # PARAMETER IN L. IT SHOULD BE USED ONLY WITH A MONITOR VERB-NOUN CODE IN 016118,002970: # A. AFTER EACH MONITOR DISPLAY A *PLEASE* VERB WILL BE PASED INT THE VERB 016119,002971: # LIGHTS OR DATA WILL BE BLANKED (OR BOTH) ACCORDING TO THE OPTIONS 016120,002972: # SPECIFIED IN L. IF BITS 8-14 OF L ARE OTHER THAN ZERO, THEN THEY WILL 016121,002973: # BE INTERPRETED AS A VERB CODE AND PASTED IN THE VERB LIGHTS. (THIS VERB 016122,002974: # CODE SHOULD DESIGNATE ONE OF THE *PLEASE* VERBS.) IF BITS 1-3 OF L ARE 016123,002975: # OTHER THAN ZERO, THEN THEY WILL BE USED BO BLANK DATA BY BEING FED TO 016124,002976: # BLANKSUB. IF NVMONOPT IS USED WITH A VERB OTHER THAN A MONITOR VERB, 016125,002977: # THE PARAMETER IN L HAS NO EFFECT. 016126,002978: 016127,002979: # NVSUB IN FIXED-FIXED PLACES 2+CALLING LOC INTO NVQTEM, TC NVSUBEND INTO 016128,002980: # ENTRET. (THIS WILL RESTORE OLD CALLING BANK BITS) 016129,002981: 016130,002982: 4170 SETLOC ENDALM +1 016131,002983: 016132,002984: 4170 COUNT 02/PIN 016133,002985: 016134,002986: 4170 22007 NVSUB LXCH 7 # ZERO NVMONOPT OPTIONS 016135,002987: 4171 54123 NVMONOPT TS NVTEMP 016136,002988: 4172 35002 CAF BIT14 016137,002989: 4173 71021 MASK MONSAVE1 # EXTERNAL MONITOR BIT 016138,002990: 4174 61012 AD DSPLOCK 016139,002991: 4175 10000 CCS A 016140,002992: 4176 00002 TC Q # DSP SYST BLOCKED. RET TO 1. CALLING LOC 016141,002993: 4177 35017 CAF ONE # DSP SYST AVAILABLE. 016142,002994: 4200 60002 NVSBCOM AD Q 016143,002995: 4201 55037 TS NVQTEM # 2+ CALLING LOC INTO NVQTEM 016144,002996: 4202 23022 LXCH MONSAVE2 # STORE NVMONOPT OPTIONS 016145,002997: 4203 04220 TC KILMONON # TURN ON KILL MONITOR BIT 016146,002998: 4204 34215 NVSUBCOM CAF NVSBBBNK 016147,002999: 016148,003000: 4205 56006 XCH BBANK 016149,003001: 4206 00006 EXTEND # SAVE OLD SUPERBITS 016150,003002: 4207 04007 ROR SUPERBNK 016151,003003: 4210 55040 TS NVBNKTEM 016152,003004: 4211 34215 CAF PINSUPBT 016153,003005: 4212 00006 EXTEND 016154,003006: 4213 01007 WRITE SUPERBNK 016155,003007: 4214 02000 TC NVSUBB # GO TO NVSUB1 THRU STANDARD LOC 016156,003008: 4215 0777 EBANK= DSPCOUNT 016157,003009: 4215 62101 NVSBBBNK BBCON NVSUB1 016158,003010: 016159,003011: 4216 4215 PINSUPBT = NVSBBBNK # CONTAINS THE PINBALL SUPERBIT. 016160,003012: 016161,003013: 4216 53040 NVSUBEND DXCH NVQTEM # NVBNKTEM MUST = NVQTEM+1 016162,003014: 4217 05227 TC SUPDXCHZ # DTCB WITH SUPERBIT SWITCHING 016163,003015: 016164,003016: 41,3516 SETLOC ENDRQWT +1 016165,003017: 016166,003018: 41,3516 COUNT 41/PIN 016167,003019: # Page 371 016168,003020: 016169,003021: # BLANKDSP BLANKS DISPLAY ACCORDING TO OPTION NUMBER IN NVTEMP AS FOLLOWS: 016170,003022: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY. 016171,003023: 016172,003024: 41,3516 65023 BLANKDSP AD SEVEN # 7,8,9, OR 10 (A HAD 0,1,2,OR 3) 016173,003025: 41,3517 00004 INHINT 016174,003026: 41,3520 54124 TS CODE # BLANK SPECIFIED DSPTABS 016175,003027: 41,3521 45004 CS BIT12 016176,003028: 41,3522 50124 INDEX CODE 016177,003029: 41,3523 57023 XCH DSPTAB 016178,003030: 41,3524 10000 CCS A 016179,003031: 41,3525 25016 INCR NOUT 016180,003032: 41,3526 03527 TC +1 016181,003033: 41,3527 10124 CCS CODE 016182,003034: 41,3530 03520 TC BLANKDSP +2 016183,003035: 41,3531 00003 RELINT 016184,003036: 41,3532 50123 INDEX NVTEMP 016185,003037: 41,3533 03540 TC +5 016186,003038: 41,3534 03535 TC +1 # NVTEMP HAS -4 (NEVER TOUCH MODREG) 016187,003039: 41,3535 55001 TS VERBREG # -3 016188,003040: 41,3536 55002 TS NOUNREG # -2 016189,003041: 41,3537 55015 TS CLPASS # -1 016190,003042: 41,3540 44374 CS VD1 016191,003043: 41,3541 54777 TS DSPCOUNT 016192,003044: 41,3542 04447 TC FLASHOFF # PROTECT AGAINST INVISIBLE FLASH 016193,003045: 41,3543 03566 TC ENTSET -2 # ZEROS REQRET 016194,003046: 016195,003047: 41,3544 33570 NVSUB1 CAF ENTSET # IN BANK 016196,003048: 41,3545 54136 TS ENTRET # SET RETURN TO NVSUBEND 016197,003049: 41,3546 10123 CCS NVTEMP # WHAT NOW 016198,003050: 41,3547 03553 TC +4 # NORMAL NVSUB CALL (EXECUTE VN OR PASTE) 016199,003051: 41,3550 02351 TC GODSPALM 016200,003052: 41,3551 03516 TC BLANKDSP # BLANK DISPLAY AS SPECIFIED 016201,003053: 41,3552 02351 TC GODSPALM 016202,003054: 41,3553 36043 CAF LOW7 016203,003055: 41,3554 70123 MASK NVTEMP 016204,003056: 41,3555 54157 TS MPAC +3 # TEMP FOR NOUN (CAN'T USE MPAC. DSPDECVN 016205,003057: 41,3556 30123 CA NVTEMP # USES MPAC, +1, +2). 016206,003058: 41,3557 54023 TS EDOP # RIGHT 7 016207,003059: 41,3560 30023 CA EDOP 016208,003060: 41,3561 54160 TS MPAC +4 # TEMP FOR VERB (CAN'T USE MPAC+1. DSPDECVN 016209,003061: # USES MPAC, +1, +2) 016210,003062: 41,3562 10157 CCS MPAC +3 # TEST NOUN 016211,003063: 41,3563 03571 TC NVSUB2 # IF NOUN NOT +0, GO ON 016212,003064: 41,3564 30160 CA MPAC +4 016213,003065: 41,3565 02337 TC UPDATVB -1 # IF NOUN = +0, DISPLAY VERB. THEN RETURN 016214,003066: 41,3566 35021 CAF ZERO # ZERO REQRET SO THAT PASTED VERBS CAN 016215,003067: 41,3567 55013 TS REQRET # BE EXECUTED BY OPERATOR. 016216,003068: 41,3570 04216 ENTSET TC NVSUBEND 016217,003069: 41,3571 10160 NVSUB2 CCS MPAC +4 # TEST VERB 016218,003070: 41,3572 03576 TC +4 # IF VERB NOT +0, GO ON 016219,003071: # Page 372 016220,003072: 41,3573 30157 CA MPAC +3 016221,003073: 41,3574 02317 TC UPDATNN -1 # IF VERB = +0, DISPLAY NOUN. THEN RETURN 016222,003074: 41,3575 04216 TC NVSUBEND 016223,003075: 41,3576 30156 CA MPAC +2 # TEMP FOR MACH CADR TO BE SPEC. (DSPDECVN 016224,003076: 41,3577 54161 TS MPAC +5 # USES MPAC, +1, +2) 016225,003077: 41,3600 30160 CA MPAC +4 016226,003078: 41,3601 02337 TC UPDATVB -1 # IF BOTH NOUN AND VERB NOT +0, DISPLAY 016227,003079: 41,3602 30157 CA MPAC +3 # BOTH AND GO TO ENTPAS0. 016228,003080: 41,3603 02317 TC UPDATNN -1 016229,003081: 41,3604 35021 CAF ZERO 016230,003082: 41,3605 55014 TS LOADSTAT # SET FOR WAITING FOR DATA CONDITION 016231,003083: 41,3606 55015 TS CLPASS 016232,003084: 41,3607 55013 TS REQRET # SET REQRET FOR PASS 0. 016233,003085: 41,3610 30161 CA MPAC +5 # RESTORES MACH CADR TO BE SPEC TO MPAC+2 016234,003086: 41,3611 54156 TS MPAC +2 # FOR USE IN INTMCTBS (IN ENTPAS0). 016235,003087: 41,3612 02035 ENDNVSB1 TC ENTPAS0 016236,003088: 016237,003089: # IF INTERNAL MACH CADR TO BE SPECIFIED, MPAC+2 WILL BE PLACED INTO 016238,003090: # NOUNCADR IN ENTPAS0 (INTMCTBS). 016239,003091: 016240,003092: 4220 SETLOC NVSUBEND +2 016241,003093: 4220 COUNT 02/PIN 016242,003094: # FORCE BIT 15 OF MONSAVE1 TO . 016243,003095: 4220 35001 KILMONON CAF BIT15 # THIS IS THE KILL MONITOR BIT. 016244,003096: 4221 55021 TS MONSAVE1 # TURN OFF BIT 14, THE EXTERNAL 016245,003097: # MONITOR BIT. 016246,003098: 4222 00002 TC Q 016247,003099: 016248,003100: # LOADSTAT +0 INACTIVE (WAITING FOR DATA). SET BY NVSUB 016249,003101: # +1 PROCEED NO DATA. SET BY SPECIAL VERB 016250,003102: # -1 TERMINATE. SET BY SPECIAL VERB. 016251,003103: # -0 DATA IN. SET BY END OF LOAD ROUTINE. 016252,003104: # OR RESEQUENCE. SET BY VERB 32 016253,003105: 016254,003106: # L TO ENDIDLE (FIXED FIXED). 016255,003107: # ROUTINES THAT REQUEST LOADS THROUGH NVSUB SHOULD USE ENDIDLE WHILE 016256,003108: # WAITING FOR THE DATA TO BE LOADED. ENDIDLE PUTS CURRENT JOB TO SLEEP. 016257,003109: # ENDIDLE CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY, 016258,003110: # SINCE JOB SLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS. 016259,003111: # RECALTST TESTS LOADSTAT AND WAKES JOB UP TO, 016260,003112: # L+1 FOR TERMINATE 016261,003113: # L+2 FOR PROCEED WITHOUT DATA 016262,003114: # L+3 FOR DATA IN, OR RESEQUENCE 016263,003115: # IT DOES NOTHING IF LOADSTAT INDICATES WAITING FOR DTA. 016264,003116: # Page 373 016265,003117: 016266,003118: # ENDIDLE ABORTS (WITH CODE 1206) IF A SECOND JOB ATTEMPTS TO GO TO SLEEP 016267,003119: # IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MADE TO GO TO ENDIDLE WHEN 016268,003120: # 1) CADRSTOR NOT= +0. THIS IS THE CASE WHERE THE CAPACITY OF ENDIDLE IS 016269,003121: # EXCEEDED. (+-NZ INDICATES A JOB IS ALREADY ASLEEP DUE TO ENDIDDLE.) 016270,003122: # 2) DSPLIST NOT= +0. THIS INDICATES A JOB IS ALREADY ASLEEP DUE TO 016271,003123: # NVSUBUSY. 016272,003124: 016273,003125: 4223 22002 ENDIDLE LXCH Q # RETURN ADDRESS INTO L. 016274,003126: 4224 04234 TC ISCADR+0 # ABORT IF CADRSTOR NOT= +0. 016275,003127: 4225 04240 TC ISLIST+0 # ABORT IF DSPLIST NOT= +0 016276,003128: 4226 30001 CA L # DON'T SET DSPLOC TO 1 SO CAN USE 016277,003129: 4227 75054 MASK LOW10 # ENDIDLE WITH NVSUB INITIATE MONITOR. 016278,003130: 4230 60004 AD FBANK # SAME STRATEGY FOR CADR AS MAKECADR. 016279,003131: 4231 55042 TS CADRSTOR 016280,003132: 4232 05175 TC JOBSLEEP 016281,003133: 016282,003134: 4233 05217 ENDINST TC ENDOFJOB 016283,003135: 016284,003136: 4234 11042 ISCADR+0 CCS CADRSTOR # ABORTS (CODE 01206) IF CADRSTOR NOT= +0. 016285,003137: 4235 04243 TC DSPABORT # RETURNS IF CADRSTOR = +0. 016286,003138: 4236 00002 TC Q 016287,003139: 4237 04243 TC DSPABORT 016288,003140: 016289,003141: 4240 11043 ISLIST+0 CCS DSPLIST # ABORTS (CODE 01206) IF DSPLIST NOT= +0. 016290,003142: 4241 04243 TC DSPABORT # RETURNS IF DSPLIST = +0. 016291,003143: 4242 00002 TC Q 016292,003144: 4243 05721 DSPABORT TC P00DOO 016293,003145: 4244 01206 OCT 01206 016294,003146: 016295,003147: # JAMTERM ALLOWS PROGRAMS TO PERFORM THE TERMINATE FUNCTION. 016296,003148: # IT DOES ENDOFJOB. 016297,003149: 016298,003150: 4245 34215 JAMTERM CAF PINSUPBT 016299,003151: 4246 00006 EXTEND 016300,003152: 4247 01007 WRITE SUPERBNK 016301,003153: 4250 34256 CAF 34DEC 016302,003154: 4251 55013 TS REQRET # LEAVE ENTER SET FOR ENTPASS0. 016303,003155: 4252 44374 CS VD1 016304,003156: 4253 54777 TS DSPCOUNT 016305,003157: 4254 04701 TC POSTJUMP 016306,003158: 4255 61355 CADR VBTERM 016307,003159: 016308,003160: 4256 00042 34DEC DEC 34 B-14 016309,003161: 016310,003162: # JAMPROC ALLOWS PROGRAMS TO PERFORM THE PROCEED/PROCEED WITHOUT DATA 016311,003163: # FUNCTION. IT DOES ENDOFJOB. 016312,003164: # Page 374 016313,003165: 016314,003166: 4257 34215 JAMPROC CAF PINSUPBT 016315,003167: 4260 00006 EXTEND 016316,003168: 4261 01007 WRITE SUPERBNK 016317,003169: 4262 34270 CAF 33DEC 016318,003170: 4263 55013 TS REQRET # LEAVE ENTER SET FOR ENTPASS0. 016319,003171: 4264 44374 CS VD1 016320,003172: 4265 54777 TS DSPCOUNT 016321,003173: 4266 04701 TC POSTJUMP 016322,003174: 4267 61347 CADR VBPROC 016323,003175: 016324,003176: 4270 00041 33DEC DEC 33 B-14 016325,003177: 016326,003178: # BLANKSUB BLANKS ANY COMBINATION OF R1, R2, R3. 016327,003179: # CALL WITH BLANKING CODE IN A. 016328,003180: # BIT1=1 BLANKS R1, BIT2=1 BLANKS R2, BIT3=1 BLANKS R3. 016329,003181: # ANY COMBINATION OF THESE BITS IS ACCEPTED. 016330,003182: 016331,003183: # DSPCOUNT IS RESTORED TO STATE IT WAS IN BEFORE BLANKSUB WAS EXECUTED. 016332,003184: 016333,003185: 4271 75023 BLANKSUB MASK SEVEN 016334,003186: 4272 54123 TS NVTEMP # STORE BLANKING CODE IN NVTEMP. 016335,003187: 4273 35002 CAF BIT14 016336,003188: 4274 71021 MASK MONSAVE1 # EXTERNAL MONITOR BIT 016337,003189: 4275 61012 AD DSPLOCK 016338,003190: 4276 10000 CCS A 016339,003191: 4277 00002 TC Q # DSP SYST BLOCKED. RET TO 1+ CALLING LOC 016340,003192: 4300 24002 INCR Q # DSP SYST AVAILABLE 016341,003193: # SET RETURN FOR 2+ CALLING LOC 016342,003194: 4301 10123 CCS NVTEMP 016343,003195: 4302 14304 TCF +2 016344,003196: 4303 00002 TC Q # NOTHING TO BLANK. RET TO 2+ CALLING LOC 016345,003197: 4304 22002 LXCH Q # SET RETURN FOR 2 + CALLING LOC 016346,003198: 4305 34316 CAF BLNKBBNK 016347,003199: 4306 56006 XCH BBANK 016348,003200: 4307 00006 EXTEND 016349,003201: 4310 04007 ROR SUPERBNK # SAVE OLD SUPERBITS. 016350,003202: 4311 52131 DXCH BUF 016351,003203: 4312 34215 CAF PINSUPBT 016352,003204: 4313 00006 EXTEND 016353,003205: 4314 01007 WRITE SUPERBNK 016354,003206: 4315 03412 TC BLNKSUB1 016355,003207: 016356,003208: 4316 0777 EBANK= DSPCOUNT 016357,003209: 4316 60101 BLNKBBNK BBCON BLNKSUB1 016358,003210: 4317 ENDBLFF EQUALS 016359,003211: 016360,003212: 40,3412 SETLOC ENDRELDS 016361,003213: 40,3412 COUNT 40/PIN 016362,003214: 016363,003215: # Page 375 016364,003216: 40,3412 30777 BLNKSUB1 CA DSPCOUNT # SAVE OLD DSPCOUNT FOR LATER RESTORATION 016365,003217: 40,3413 54132 TS BUF +2 016366,003218: 40,3414 35017 CAF BIT1 # TEST BIT1. SEE IF R1 TO BE BLANKED. 016367,003219: 40,3415 03434 TC TESTBIT 016368,003220: 40,3416 34333 CAF R1D1 016369,003221: 40,3417 02436 TC 5BLANK -1 016370,003222: 40,3420 35016 CAF BIT2 # TEST BIT2. SEE IF R2 TO BE BLANKED. 016371,003223: 40,3421 03434 TC TESTBIT 016372,003224: 40,3422 34334 CAF R2D1 016373,003225: 40,3423 02436 TC 5BLANK -1 016374,003226: 40,3424 35015 CAF BIT3 # TEST BIT3. SEE IF R3 TO BE BLANKED. 016375,003227: 40,3425 03434 TC TESTBIT 016376,003228: 40,3426 34335 CAF R3D1 016377,003229: 40,3427 02436 TC 5BLANK -1 016378,003230: 40,3430 30132 CA BUF +2 # RESTORE DSPCOUNT TO STATE IT HAD 016379,003231: 40,3431 54777 TS DSPCOUNT # BEFORE BLANKSUB. 016380,003232: 40,3432 52131 DXCH BUF # CALL L+2 DIRECTORY. 016381,003233: 40,3433 05230 TC SUPDXCHZ +1 # DTCB WITH SUPERBIT SWITCHING 016382,003234: 016383,003235: 40,3434 70123 TESTBIT MASK NVTEMP # NVTEMP CONTAINS BLANKING CODE 016384,003236: 40,3435 10000 CCS A 016385,003237: 40,3436 00002 TC Q # IF CURRENT BIT = 1, RETURN TO L+1. 016386,003238: 40,3437 50002 INDEX Q # IF CURRENT BIT = 0, RETURN TO L+3. 016387,003239: 40,3440 00002 TC 2 016388,003240: 016389,003241: 40,3441 ENDBSUB1 EQUALS 016390,003242: 016391,003243: # DSPMM DOES NOT DISPLAY MODREG DIRECTLY. IT PUTS IN EXEC REQUEST WITH 016392,003244: # PRIO 30000 FOR DSPMMJB AND RETURNS TO CALLER. 016393,003245: 016394,003246: # IF MODREG CONTAINS -0, DSPMMJB BLANKS THE MODE LIGHTS. 016395,003247: 016396,003248: # DSPMM MUST BE IN BANK 27 OR LOWER, SO IT CAN BE CALLED VIA BANKCALL. 016397,003249: 016398,003250: 07,2441 BANK 7 016399,003251: 04,2000 SETLOC PINBALL4 016400,003252: 04,2000 BANK 016401,003253: 016402,003254: 04,2566 COUNT 07/PIN 016403,003255: 016404,003256: 04,2566 56002 DSPMM XCH Q 016405,003257: 04,2567 54154 TS MPAC 016406,003258: 04,2570 00004 INHINT 016407,003259: 04,2571 34371 CAF CHRPRIO 016408,003260: 04,2572 05134 TC NOVAC 016409,003261: 04,2573 0777 EBANK= DSPCOUNT 016410,003262: 04,2573 03441 60101 2CADR DSPMMJB 016411,003263: 016412,003264: 04,2575 00003 RELINT 016413,003265: # Page 376 016414,003266: 04,2576 00154 ENDSPMM TC MPAC 016415,003267: 016416,003268: # DSPMM PLACE MAJOR MODE CODE INTO MODREG 016417,003269: 016418,003270: 40,3441 SETLOC ENDBSUB1 016419,003271: 016420,003272: 40,3441 COUNT 40/PIN 016421,003273: 016422,003274: 40,3441 34376 DSPMMJB CAF MD1 # GETS HERE THRU DSPMM 016423,003275: 40,3442 56777 XCH DSPCOUNT 016424,003276: 40,3443 54140 TS DSPMMTEM # SAVE DSPCOUNT 016425,003277: 40,3444 11011 CCS MODREG 016426,003278: 40,3445 65017 AD ONE 016427,003279: 40,3446 03213 TC DSPDECVN # IF MODREG IS + OR +0, DISPLAY MODREG 016428,003280: 40,3447 03451 TC +2 # IF MODREG IS -NZ, DO NOTHING 016429,003281: 40,3450 02502 TC 2BLANK # IF MODREG IS -0, BLANK MM 016430,003282: 40,3451 56140 XCH DSPMMTEM # RESTORE DSPCOUNT 016431,003283: 40,3452 54777 TS DSPCOUNT 016432,003284: 40,3453 05217 TC ENDOFJOB 016433,003285: 016434,003286: # RECALTST IS ENTERED DIRECTLY AFTER DATA IS LOADED (OR RESEQUENCE VERB IS 016435,003287: # EXECUTED), TERMINATE VERB IS EXECUTED, OR PROCEED WITHOUT DATA VERB IS 016436,003288: # EXECUTED. IT WAKES UP JOB THAT DID TC ENDIDLE. 016437,003289: # 016438,003290: # IF CADRSTOR NOT= +0, IT PUTS +0 INTO DSPLOCK, AND TURNS OFF KEY RLSE 016439,003291: # LIGHT IF DSPLIST IS EMPTY (LEAVES KEY RLSE LIGHT ALONE IF NOT EMPTY). 016440,003292: 016441,003293: 40,3454 11042 RECALTST CCS CADRSTOR 016442,003294: 40,3455 03457 TC RECAL1 016443,003295: 40,3456 05217 TC ENDOFJOB # NORMAL EXIT IF KEYBOARD INITIATED 016444,003296: 40,3457 35021 RECAL1 CAF ZERO 016445,003297: 40,3460 57042 XCH CADRSTOR 016446,003298: 40,3461 00004 INHINT 016447,003299: 40,3462 05201 TC JOBWAKE 016448,003300: 40,3463 11014 CCS LOADSTAT 016449,003301: 40,3464 03506 TC DOPROC # + PROCEED WITHOUT DATA 016450,003302: 40,3465 05217 TC ENDOFJOB # PATHOLOGICAL CASE EXIT 016451,003303: 40,3466 03504 TC DOTERM # - TERMINATE 016452,003304: 40,3467 35016 CAF TWO # -0 DATA IN OR RESEQUENCE 016453,003305: 40,3470 50064 RECAL2 INDEX LOCCTR 016454,003306: 40,3471 60164 AD LOC # LOC IS + FOR BASIC JOBS 016455,003307: 40,3472 50064 INDEX LOCCTR 016456,003308: 40,3473 54164 TS LOC 016457,003309: 40,3474 31002 CA NOUNREG # SAVE VERB IN MPAC, NOUN IN MPAC+1 AT 016458,003310: 40,3475 54001 TS L # TIME OF RESPONSE TO ENDIDLE FOR 016459,003311: 40,3476 31001 CA VERBREG # POSSIBLE LATER TESTING BY JOB THAT HAS 016460,003312: 40,3477 50064 INDEX LOCCTR # BEEN WAKED UP. 016461,003313: 40,3500 52155 DXCH MPAC 016462,003314: 40,3501 00003 RELINT 016463,003315: # Page 377 016464,003316: 40,3502 04473 RECAL3 TC RELDSP 016465,003317: 40,3503 05217 TC ENDOFJOB 016466,003318: 016467,003319: 40,3504 35021 DOTERM CAF ZERO 016468,003320: 40,3505 03470 TC RECAL2 016469,003321: 016470,003322: 40,3506 35017 DOPROC CAF ONE 016471,003323: 40,3507 03470 TC RECAL2 016472,003324: 016473,003325: 40,3510 30,2000 SBANK= LOWSUPER 016474,003326: # Page 378 016475,003327: # MISCELLANEOUS SERVICE ROUTINES IN FIXED/FIXED 016476,003328: 016477,003329: 4317 SETLOC ENDBLFF 016478,003330: 016479,003331: 4317 COUNT 02/PIN 016480,003332: 016481,003333: # SETNCADR E CADR ARRIVES IN A. IT IS STORED IN NOUNCADR. EBANK BITS 016482,003334: # ARE SET. E ADRES IS DERIVED AND PUT INTO NOUNADD. 016483,003335: 016484,003336: 4317 55017 SETNCADR TS NOUNCADR # STORE ECADR 016485,003337: 4320 54003 TS EBANK # SET EBANK BITS 016486,003338: 4321 74373 MASK LOW8 016487,003339: 4322 65051 AD OCT1400 016488,003340: 4323 54145 TS NOUNADD # PUT E ADRES INTO NOUNADD 016489,003341: 4324 00002 TC Q 016490,003342: 016491,003343: # SETNADD GETS E CADR FROM NOUNCADR, SETS EBANK BITS, DERIVES 016492,003344: # E ADRES AND PUTS IT INTO NOUNADD. 016493,003345: 016494,003346: 4325 31017 SETNADD CA NOUNCADR 016495,003347: 4326 14320 TCF SETNCADR +1 016496,003348: 016497,003349: # SETEBANK E CADR ARRIVES IN A. EBANK BITS ARE SET. E ADRES IS 016498,003350: # DERIVED AND LEFT IN A. 016499,003351: 016500,003352: 4327 54003 SETEBANK TS EBANK # SET EBANK BITS 016501,003353: 4330 74373 MASK LOW8 016502,003354: 4331 65051 AD OCT1400 # E ADRES LEFT IN A 016503,003355: 4332 00002 TC Q 016504,003356: 016505,003357: 4333 00016 R1D1 OCT 16 # THESE 3 CONSTANTS FORM A PACKED TABLE. 016506,003358: 4334 00011 R2D1 OCT 11 # DON'T SEPARATE. 016507,003359: 4335 00004 R3D1 OCT 4 016508,003360: 016509,003361: 4336 54020 RIGHT5 TS CYR 016510,003362: 4337 40020 CS CYR 016511,003363: 4340 40020 CS CYR 016512,003364: 4341 40020 CS CYR 016513,003365: 4342 40020 CS CYR 016514,003366: 4343 56020 XCH CYR 016515,003367: 4344 00002 TC Q 016516,003368: 016517,003369: 4345 54022 LEFT5 TS CYL 016518,003370: 4346 40022 CS CYL 016519,003371: 4347 40022 CS CYL 016520,003372: 4350 40022 CS CYL 016521,003373: # Page 379 016522,003374: 4351 40022 CS CYL 016523,003375: 4352 56022 XCH CYL 016524,003376: 4353 00002 TC Q 016525,003377: 016526,003378: 4354 60000 SLEFT5 DOUBLE 016527,003379: 4355 60000 DOUBLE 016528,003380: 4356 60000 DOUBLE 016529,003381: 4357 60000 DOUBLE 016530,003382: 4360 60000 DOUBLE 016531,003383: 4361 00002 TC Q 016532,003384: 016533,003385: 4362 00037 LOW5 OCT 37 # THESE 3 CONSTANTS FORM A PACKED TABLE. 016534,003386: 4363 01740 MID5 OCT 1740 # DON'T SEPARATE. 016535,003387: 4364 76000 HI5 OCT 76000 # MUST STAY HERE 016536,003388: 016537,003389: 4365 05134 TCNOVAC TC NOVAC 016538,003390: 4366 05245 TCWAIT TC WAITLIST 016539,003391: 4367 05324 TCTSKOVR TC TASKOVER 016540,003392: 4370 05147 TCFINDVC TC FINDVAC 016541,003393: 016542,003394: 4371 30000 CHRPRIO OCT 30000 # EXEC PRIORITY OF CHARIN 016543,003395: 016544,003396: 4372 03777 LOW11 OCT 3777 016545,003397: 4373 4372 B12-1 EQUALS LOW11 016546,003398: 4373 00377 LOW8 OCT 377 016547,003399: 016548,003400: 4374 00023 VD1 OCT 23 # THESE 3 CONSTANTS FORM A PACKED TABLE. 016549,003401: 4375 00021 ND1 OCT 21 # DON'T SEPARATE. 016550,003402: 4376 00025 MD1 OCT 25 016551,003403: 016552,003404: 4377 00012 BINCON DEC 10 B-14 016553,003405: 016554,003406: 4400 35011 FALTON CA BIT7 # TURN ON OPERATOR ERROR LIGHT. 016555,003407: 4401 00006 EXTEND 016556,003408: 4402 05011 WOR DSALMOUT # BIT 7 OF CHANNEL 11 016557,003409: 4403 00002 TC Q 016558,003410: 016559,003411: 4404 45011 FALTOF CS BIT7 # TURN OFF OPERATOR ERROR LIGHT 016560,003412: 4405 00006 EXTEND 016561,003413: 4406 03011 WAND DSALMOUT # BIT 7 OF CHANNEL 11 016562,003414: 4407 00002 TC Q 016563,003415: 016564,003416: 4410 35013 RELDSPON CAF BIT5 # TURN ON KEY RELEASE LIGHT 016565,003417: 4411 00006 EXTEND 016566,003418: 4412 05011 WOR DSALMOUT # BIT 5 OF CHANNEL 11 016567,003419: 4413 00002 TC Q 016568,003420: 016569,003421: # Page 380 016570,003422: 4414 00006 LODSAMPT EXTEND 016571,003423: 4415 30025 DCA TIME2 016572,003424: 4416 52014 DXCH SAMPTIME 016573,003425: 4417 00002 TC Q 016574,003426: 016575,003427: 4420 00006 TPSL1 EXTEND # SHIFTS MPAC, +1, +2 LEFT 1 016576,003428: 4421 30156 DCA MPAC +1 # LEAVES OVFIND SET TO +/- 1 FOR OF/UF 016577,003429: 4422 20156 DAS MPAC +1 016578,003430: 4423 60154 AD MPAC 016579,003431: 4424 26154 ADS MPAC 016580,003432: 4425 54007 TS 7 # TS A DOES NOT CHANGE A ON OF/UF. 016581,003433: 4426 00002 TC Q # NO NET OF/UF 016582,003434: 4427 54162 TS MPAC+6 # MPAC +6 SET TO +/- 1 FOR OF/UF 016583,003435: 4430 00002 TC Q 016584,003436: 016585,003437: # IF MPAC, +1 ARE EACH +NZ OR +0 AND C(A)=-0, SHORTMP WRONGLY GIVES +0. 016586,003438: # IF MPAC, +1 ARE EACH -NZ OR -0 AND C(A)=+0, SHORTMP WRONGLY GIVES +0. 016587,003439: # PRSHRTMP FIXES FIRST CASE ONLY, BY MERELY TESTING C(A) AND IF IT = -0, 016588,003440: # SETTING RESULT TO -0. 016589,003441: 016590,003442: # (DO NOT USE PRSHRTMP UNLESS MPAC, +1 ARE EACH +NZ OR +0, AS THEY ARE 016591,003443: # WHEN THEY CONTAIN THE SF CONSTANTS.) 016592,003444: 016593,003445: 4431 54135 PRSHRTMP TS MPTEMP 016594,003446: 4432 10000 CCS A 016595,003447: 4433 30135 CA MPTEMP # C(A) +, DO REGULAR SHORTMP 016596,003448: 4434 17257 TCF SHORTMP +1 # C(A) +0, DO REGULAR SHORTMP 016597,003449: 4435 14433 TCF -2 # C(A) -, DO REGULAR SHORTMP 016598,003450: 4436 45021 CS ZERO # C(A) -0, FORCE RESULT TO -0 AND RETURN. 016599,003451: 4437 54154 TS MPAC 016600,003452: 4440 54155 TS MPAC +1 016601,003453: 4441 54156 TS MPAC +2 016602,003454: 4442 00002 TC Q 016603,003455: 016604,003456: 4443 35012 FLASHON CAF BIT6 # TURN ON V/N FLASH 016605,003457: 4444 00006 EXTEND # BIT 6 OF CHANNEL 11 016606,003458: 4445 05011 WOR DSALMOUT 016607,003459: 4446 00002 TC Q 016608,003460: 016609,003461: 4447 45012 FLASHOFF CS BIT6 # TURN OFF V/N FLASH 016610,003462: 4450 00006 EXTEND 016611,003463: 4451 03011 WAND DSALMOUT # BIT 6 OF CHANNEL 11 016612,003464: 4452 00002 TC Q 016613,003465: 016614,003466: # Page 381 016615,003467: # INTERNAL USE OF KEYBOARD AND DISPLAY PROGRAM. 016616,003468: 016617,003469: # USER MUST SCHEDULE CALLS TO NVSUB SO THAT THERE IS NO CONFLICT OF USE OR 016618,003470: # CONFUSION TO OPERATOR. THE OLD CRABLOCK (INTERNAL/INTERNAL INTERLOCK) 016619,003471: # HAS BEEN REMOVED AND THE INTERNAL USER NO LONGER HAS THE PROTECTION THIS 016620,003472: # OFFERED. 016621,003473: 016622,003474: # THERE ARE TWO WAYS A JOB CAN BE PUT TO SLEEP BY TEH KEYBOARD + DISPLAY 016623,003475: # PROGRAM. 1) BY ENDIDLE 016624,003476: # 2) BY NVSUBUSY 016625,003477: # THE BASIC CONVENTION IS THAT ONLY ONE JOB WILL BE PERITTED ASLEEP VIA 016626,003478: # THE KEYBOARD + DISPLAY PROGRAM AT A TIME. IF A JOB ATTEMPTS TO GO TO 016627,003479: # SLEEP BY MEANS OF (1) OR (2) AND THERE IS ALREADY AJOB ASLEEP THAT WAS 016628,003480: # PUT TO SLEEP BY (1) OR (2), THEN AN ABORT IS CAUSED. 016629,003481: 016630,003482: # THE CALLING SEQUENCE FOR NVSUB IS 016631,003483: # CAF V/N 016632,003484: # L TC NVSUB 016633,003485: # L+1 RETURN HERE IF OPERATOR HAS INTERVENED 016634,003486: # L+2 RETURN HERE AFTER EXECUTION 016635,003487: 016636,003488: # A ROUTINE CALLED NVSUBUSY IS PROVIDED (USE IS OPTIONAL) TO PUT 016637,003489: # YOUR JOB TO SLEEP UNTIL THE OPERATOR RELEASES THE KEYBOARD + DISPLAY 016638,003490: # SYSTEM. NVSUBUSY ALSO TURNS ON THE KEY RELEASE LIGHT. 016639,003491: # NVSUBUSY CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY, 016640,003492: # SINCE JOBSLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS. 016641,003493: 016642,003494: # THE CALLING SEQUENCE IS 016643,003495: # CAF WAKEFCADR 016644,003496: # TC NVSUBUSY 016645,003497: # . 016646,003498: 016647,003499: # NVSUBUSY IS INTENDED FOR USE WHEN AN INTERNAL PROGRAM FINDS THE OPERATOR 016648,003500: # IS NOT USING THE KEYBOARD + DISPLAY PROGRAM (BY HIS OWN INITIATION). IT IS 016649,003501: # NOT INTENDED FOR USE WHEN ONE INTERNAL PROGRAM FINDS ANOTHER INTERNAL 016650,003502: # PROGRAM USING THE KEYBOARD + DISPLAY PROGRAM. 016651,003503: 016652,003504: # NVSUBUSY ABORTS (WITH CODE 01206) IF A SECOND JOB ATTEMPTS TO GO TO 016653,003505: # SLEEP IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MAKE TO GO TO NVSUBUSY 016654,003506: # WHEN 016655,003507: 016656,003508: # 1) DSPLIST NOT= +0. THIS IS THE CASE WHERE THE CAPACITY FO THE DSPLIST 016657,003509: # IS EXCEEDED. 016658,003510: # 2) CADRSTOR NOT= +0. THIS INDICATES THAT A JOB IS ALREADY USING 016659,003511: # Page 382 016660,003512: # ENDIDLE. (+-NZ INDICATES A JOB IS ALREADY ASLEEP DUE TO ENDIDLE.) 016661,003513: 016662,003514: 4453 44460 PRENVBSY CS 2K+3 # SPECIAL ENTRANCE FOR ROUTINES IN FIXED 016663,003515: 4454 60002 AD Q # BANKS ONLY DESIRING THE FCADR OF (LOC 016664,003516: 4455 60004 AD FBANK # FROM WHICH THE TC PRENVBSY WAS DONE) -2 016665,003517: 4456 04701 NVSUBUSY TC POSTJUMP # TO BE ENTERED. 016666,003518: 4457 10577 CADR NVSUBSY1 016667,003519: 4460 02003 2K+3 OCT 2003 016668,003520: 016669,003521: # NVSUBSY1 MUST BE IN BANK 27 OR LOWER, SO IT WILL PUT CALLER TO SLEEP 016670,003522: # WITH HIS PROPER SUPERBITS. 016671,003523: 016672,003524: 04,2577 SETLOC ENDSPMM +1 016673,003525: 04,2577 COUNT 07/PIN 016674,003526: 016675,003527: 04,2577 54001 NVSUBSY1 TS L 016676,003528: 04,2600 04234 TC ISCADR+0 # ABORT IF CADRSTOR NOT= +0. 016677,003529: 04,2601 04240 TC ISLIST+0 # ABORT IF DSPLIST NOT= +0. 016678,003530: 04,2602 04410 TC RELDSPON 016679,003531: 04,2603 30001 CA L 016680,003532: 04,2604 55043 TS DSPLIST 016681,003533: 04,2605 05175 ENDNVBSY TC JOBSLEEP 016682,003534: 016683,003535: # NVSBWAIT IS A SPECIAL ENTRANCE FOR ROUTINES IN FIXED BANKS ONLY. IF 016684,003536: # SYSTEM IS NOT BUSY, IT EXECUTES V/N AND RETURNS TO L+1 (L= LOC FROM 016685,003537: # WHICH THE TC NVSBWAIT WAS DONE). IF SYSTEM IS BUSY, IT PUTS CALLING JOB 016686,003538: # TO SLEEP WITH L-1 GOING INTO LIST FOR EVENTUAL WAKING UP WHEN SYSTEM 016687,003539: # IS NOT BUSY. 016688,003540: 016689,003541: 4461 SETLOC NVSUBUSY +3 016690,003542: 4461 COUNT 02/PIN 016691,003543: 016692,003544: 4461 22007 NVSBWAIT LXCH 7 # ZERO NVMONOPT OPTIONS 016693,003545: 4462 54123 TS NVTEMP 016694,003546: 4463 35002 CAF BIT14 016695,003547: 4464 71021 MASK MONSAVE1 # EXTERNAL MONITOR BIT 016696,003548: 4465 61012 AD DSPLOCK 016697,003549: 4466 10000 CCS A 016698,003550: 4467 14471 TCF NVSBWT1 # BUSY 016699,003551: 4470 14200 TCF NVSBCOM # FREE. NVSUB WILL SAVE L+1 FOR RETURN 016700,003552: # AFTER EXECUTION. 016701,003553: 4471 24002 NVSBWT1 INCR Q # L+2. PRENVBSY WILL PUT L-1 INTO LIST AND 016702,003554: 4472 14453 TCF PRENVBSY # GO TO SLEEP. 016703,003555: 016704,003556: # RELDSP IS USED BY VBPROC, VBTERM, VBRQEXEC, VBRQWAIT, VBRELDSP, EXTENDED 016705,003557: # VERB DISPATCHER, VBRESEQ, RECALTST. 016706,003558: 016707,003559: # RELDSP1 IS USED BY MONITOR SET UP, VBRELDSP. 016708,003560: 016709,003561: 4473 56002 RELDSP XCH Q # SET DSPLOCK TO +0, TURN RELDSP LIGHT 016710,003562: # Page 383 016711,003563: 4474 54144 TS RELRET # OFF, SEARCH DSPLIST 016712,003564: 4475 45002 CS BIT14 016713,003565: 4476 00004 INHINT 016714,003566: 4477 71021 MASK MONSAVE1 016715,003567: 4500 55021 TS MONSAVE1 # TURN OFF EXTERNAL MONITOR BIT 016716,003568: 4501 11043 CCS DSPLIST 016717,003569: 4502 04504 TC +2 016718,003570: 4503 04507 TC RELDSP2 # LIST EMPTY 016719,003571: 4504 35021 CAF ZERO 016720,003572: 4505 57043 XCH DSPLIST 016721,003573: 4506 05201 TC JOBWAKE 016722,003574: 4507 00003 RELDSP2 RELINT 016723,003575: 4510 45013 CS BIT5 # TURN OFF KEY RELEASE LIGHT 016724,003576: 4511 00006 EXTEND # (BIT 5 OF CHANNEL 11) 016725,003577: 4512 03011 WAND DSALMOUT 016726,003578: 4513 35021 CAF ZERO 016727,003579: 4514 55012 TS DSPLOCK 016728,003580: 4515 00144 TC RELRET 016729,003581: 4516 56002 RELDSP1 XCH Q # SET DSPLOCK TO +0. NO DSPLIST SEARCH. 016730,003582: 4517 54144 TS RELRET # TURN KEY RLSE LIGHT OFF IF DSPLIST IS 016731,003583: # EMPTY. LEAVE KEY RLSE LIGHT ALONE IF 016732,003584: # DSPLIST IS NOT EMPTY. 016733,003585: 4520 11043 CCS DSPLIST 016734,003586: 4521 04523 TC +2 # + NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE. 016735,003587: 4522 04507 TC RELDSP2 # +0 EMPTY. TURN OFF KEY RLSE LIGHT 016736,003588: 4523 35021 CAF ZERO # - NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE 016737,003589: 4524 55012 TS DSPLOCK 016738,003590: 4525 00144 TC RELRET 016739,003591: 016740,003592: 4526 ENDPINBF EQUALS 016741,003593: 016742,003594: # Page 384 016743,003595: # PINTEST IS NEEDED FOR AUTO CHECK OF PINBALL. 016744,003596: 016745,003597: 4526 43,2002 PINTEST EQUALS LST2FAN 016746,003598: 016747,003599: # Page 385 016748,003600: # VBTSTLTS TURNS ON ALL DISPLAY PANEL LIGHTS. AFTER 5 SEC, IT TURNS 016749,003601: # OFF THE CAUTION AND STATUS LIGHTS. 016750,003602: 016751,003603: 41,3613 SETLOC ENDNVSB1 +1 016752,003604: 016753,003605: 41,3613 COUNT 41/PIN 016754,003606: 016755,003607: 41,3613 04662 VBTSTLTS TC BANKCALL 016756,003608: 41,3614 66730 CADR CHKP00H 016757,003609: 016758,003610: 41,3615 00004 INHINT 016759,003611: 41,3616 45017 CS BIT1 # SET BIT 1 OF IMODES33 SO IMUMON WON'T 016760,003612: 41,3617 71321 MASK IMODES33 # TURN OUT ANY LAMPS. 016761,003613: 41,3620 65017 AD BIT1 016762,003614: 41,3621 55321 TS IMODES33 016763,003615: 016764,003616: 41,3622 33656 CAF TSTCON1 # TURN ON UPLINK ACTIVITY, TEMP, KEY RLSE, 016765,003617: 41,3623 00006 EXTEND # V/N FLASH, OPERATOR ERROR. 016766,003618: 41,3624 05011 WOR DSALMOUT 016767,003619: 41,3625 33657 CAF TSTCON2 # TURN ON NO ATT, GIMBAL LOCK, TRACKER, 016768,003620: 41,3626 55036 TS DSPTAB +11D # PROG ALM. 016769,003621: 41,3627 35006 CAF BIT10 # TURN ON TEST ALARM OUTBIT 016770,003622: 41,3630 00006 EXTEND 016771,003623: 41,3631 05013 WOR CHAN13 016772,003624: 41,3632 34377 CAF TEN 016773,003625: 41,3633 54117 TSTLTS1 TS ERCNT 016774,003626: 41,3634 43654 CS FULLDSP 016775,003627: 41,3635 50117 INDEX ERCNT 016776,003628: 41,3636 55023 TS DSPTAB 016777,003629: 41,3637 10117 CCS ERCNT 016778,003630: 41,3640 03633 TC TSTLTS1 016779,003631: 41,3641 43655 CS FULLDSP1 016780,003632: 41,3642 55024 TS DSPTAB +1 # TURN ON 3 PLUS SIGNS 016781,003633: 41,3643 55027 TS DSPTAB +4 016782,003634: 41,3644 55031 TS DSPTAB +6 016783,003635: 41,3645 35024 CAF ELEVEN 016784,003636: 41,3646 55016 TS NOUT 016785,003637: 41,3647 33661 CAF SHOLTS 016786,003638: 41,3650 05245 TC WAITLIST 016787,003639: 41,3651 1023 EBANK= DSPTAB 016788,003640: 41,3651 03662 62102 2CADR TSTLTS2 016789,003641: 016790,003642: 41,3653 05217 TC ENDOFJOB # DSPLOCK IS LEFT BUSY (FROM KEYBOARD 016791,003643: # ACTION) UNTIL TSTLTS3 TO INSURE THAT 016792,003644: # LIGHTS TEST WILL BE SEEN. 016793,003645: 016794,003646: 41,3654 05675 FULLDSP OCT 05675 # DISPLAY ALL 8'S 016795,003647: 41,3655 07675 FULLDSP1 OCT 07675 # DISPLAY ALL 8'S AND + 016796,003648: 41,3656 00175 TSTCON1 OCT 00175 016797,003649: # Page 386 016798,003650: # UPLINK ACTIVITY, TEMP, KEY RLSE, 016799,003651: # V/N FLASH, OPERATOR ERROR. 016800,003652: 41,3657 40650 TSTCON2 OCT 40650 # DSPTAB+11D BITS 4,6,8,9, 016801,003653: # NO ATT, GIMBAL LOCK, TRACKER, PROG ALM. 016802,003654: 41,3660 00115 TSTCON3 OCT 00115 # CHAN 11 BITS 1, 3, 4, 7. 016803,003655: # UPLINK ACITIVY, TEMP, OPERATOR ERROR. 016804,003656: 41,3661 00764 SHOLTS OCT 764 # 5 SEC 016805,003657: 016806,003658: 41,3662 34371 TSTLTS2 CAF CHRPRIO # CALLED BY WAITLIST 016807,003659: 41,3663 05134 TC NOVAC 016808,003660: 41,3664 1023 EBANK= DSPTAB 016809,003661: 41,3664 03667 62102 2CADR TSTLTS3 016810,003662: 016811,003663: 41,3666 05324 TC TASKOVER 016812,003664: 016813,003665: 41,3667 43660 TSTLTS3 CS TSTCON3 # CALLED BY EXECUTIVE 016814,003666: 41,3670 00004 INHINT 016815,003667: 41,3671 00006 EXTEND # TURN OFF UPLINK ACTIVITY, TEMP, 016816,003668: 41,3672 03011 WAND DSALMOUT # OPERATOR ERROR. 016817,003669: 41,3673 45006 CS BIT10 # TURN OFF TEST ALARM OUTBIT 016818,003670: 41,3674 00006 EXTEND 016819,003671: 41,3675 03013 WAND CHAN13 016820,003672: 41,3676 35014 CAF BIT4 # MAKE NO ATT FOLLOW BIT 4 OF CHANNEL 12 016821,003673: 41,3677 00006 EXTEND # (NO TT LIGHT ON IF IN COARSE ALIGN) 016822,003674: 41,3700 02012 RAND CHAN12 016823,003675: 41,3701 65001 AD BIT15 # TURN OFF AUTO, HOLD, FREE, SPARE, 016824,003676: 41,3702 55036 TS DSPTAB +11D # GIMBAL LOCK, SPARE, TRACKER, PROG ALM 016825,003677: 41,3703 43725 CS 13-11,1 # SET BITS TO INDICATE ALL LAMPS OUT. TEST 016826,003678: 41,3704 71321 MASK IMODES33 # LIGHTS COMPLETE. 016827,003679: 41,3705 65070 AD PRIO16 016828,003680: 41,3706 55321 TS IMODES33 016829,003681: 016830,003682: 41,3707 43726 CS OCT55000 016831,003683: 41,3710 71320 MASK IMODES30 016832,003684: 41,3711 65067 AD PRIO15 # 15000. 016833,003685: 41,3712 55320 TS IMODES30 016834,003686: 016835,003687: 41,3713 41331 CS OPTMODES 016836,003688: 41,3714 75011 MASK BIT7 016837,003689: 41,3715 27331 ADS OPTMODES 016838,003690: 41,3716 00003 RELINT 016839,003691: 016840,003692: 41,3717 04662 TC BANKCALL # REDISPLAY C(MODREG) 016841,003693: 41,3720 10566 CADR DSPMM 016842,003694: 41,3721 04220 TC KILMONON # TURN ON KILL MONITOR BIT. 016843,003695: 41,3722 04447 TC FLASHOFF # TURN OFF V/N FLASH. 016844,003696: 41,3723 04701 TC POSTJUMP # DOES RELDSP AND GOES TO PINBRNCH IF 016845,003697: 41,3724 61376 CADR TSTLTS4 # ENDIDLE IS AWAITING OPERATOR RESPONSE. 016846,003698: # Page 387 016847,003699: 41,3725 16001 13-11,1 OCT 16001 016848,003700: 41,3726 55000 OCT55000 OCT 55000 016849,003701: 41,3727 ENDPINS2 EQUALS 016850,003702: 016851,003703: # Page 388 016852,003704: # ERROR LIGHT RESET (RSET) TURNS OFF: 016853,003705: # UPLINK ACTIVITY, AUTO, HOLD, FREE, OPERATOR ERROR, 016854,003706: # PROG ALM, TRACKER FAIL. 016855,003707: 016856,003708: # LEAVES GIMBAL LOCK AND NO ATT ALONE. 016857,003709: # 016858,003710: # IT ALSO ZEROS THE `TEST ALARM' OUT BIT, WHICH TURNS OFF STBY, RESTART. 016859,003711: # IT ALSO SETS `CAUTION RESET' TO 1. 016860,003712: # IT ALSO FORCES BIT 12 OF ALL DSPTAB ENTRIES TO 1. 016861,003713: 016862,003714: 40,3510 SETLOC DOPROC +2 016863,003715: 40,3510 COUNT 40/PIN 016864,003716: 016865,003717: 40,3510 56115 ERROR XCH 21/22REG # RESTORE ORIGINAL C(DSPLOCK). THUS ERROR 016866,003718: 40,3511 55012 TS DSPLOCK # LIGHT RESET LEAVES DSPLOCK CHANGED. 016867,003719: 40,3512 00004 INHINT 016868,003720: 40,3513 35006 CAF BIT10 # TURN ON `CAUTION RESET' OUTBIT 016869,003721: 40,3514 00006 EXTEND 016870,003722: 40,3515 05011 WOR DSALMOUT # BIT10 CHAN 11 016871,003723: 40,3516 33576 CAF GL+NOATT # LEAVE GIMBAL LOCK AND NO ATT INTACT, 016872,003724: 40,3517 71036 MASK DSPTAB +11D # TURNING OFF AUTO, HOLD, FREE, 016873,003725: 40,3520 65001 AD BIT15 # PROG ALARM, AND TRACKER. 016874,003726: 40,3521 55036 TS DSPTAB +11D 016875,003727: 40,3522 45070 CS PRIO16 # RESET FAIL BITS WHICH GENERATE PROG 016876,003728: 40,3523 71321 MASK IMODES33 # ALARM SO THAT IF THE FAILURE STILL 016877,003729: 40,3524 65070 AD PRIO16 # EXISTS, THE ALARM WILL COME BACK. 016878,003730: 40,3525 55321 TS IMODES33 016879,003731: 40,3526 45006 CS BIT10 016880,003732: 40,3527 71320 MASK IMODES30 016881,003733: 40,3530 65006 AD BIT10 016882,003734: 40,3531 55320 TS IMODES30 016883,003735: 016884,003736: 40,3532 41331 CS OPTMODES 016885,003737: 40,3533 75011 MASK BIT7 016886,003738: 40,3534 27331 ADS OPTMODES 016887,003739: 40,3535 45006 CS BIT10 # TURN OFF 'TEST ALARM' OUTBIT 016888,003740: 40,3536 00006 EXTEND 016889,003741: 40,3537 03013 WAND CHAN13 016890,003742: 40,3540 43574 CS ERCON # TURN OFF UPLINK ACTIVITY, 016891,003743: 40,3541 00006 EXTEND # OPERATOR ERROR. 016892,003744: 40,3542 03011 WAND DSALMOUT 016893,003745: 40,3543 34377 TSTAB CAF BINCON # (DEC 10) 016894,003746: 40,3544 54117 TS ERCNT # ERCNT = COUNT 016895,003747: 40,3545 00004 INHINT 016896,003748: 40,3546 50117 INDEX ERCNT 016897,003749: 40,3547 11023 CCS DSPTAB 016898,003750: 40,3550 65017 AD ONE 016899,003751: 40,3551 03556 TC ERPLUS 016900,003752: 40,3552 65017 AD ONE 016901,003753: 40,3553 40000 ERMINUS CS A 016902,003754: 40,3554 73577 MASK NOTBIT12 016903,003755: 40,3555 03561 TC ERCOM 016904,003756: # Page 389 016905,003757: 40,3556 40000 ERPLUS CS A 016906,003758: 40,3557 73577 MASK NOTBIT12 016907,003759: 40,3560 40000 CS A # MIGHT WANT TO RESET CLPASS, DECBRNCH, 016908,003760: 40,3561 50117 ERCOM INDEX ERCNT # ETC. 016909,003761: 40,3562 55023 TS DSPTAB 016910,003762: 40,3563 00003 RELINT 016911,003763: 40,3564 10117 CCS ERCNT 016912,003764: 40,3565 03544 TC TSTAB +1 016913,003765: 40,3566 35021 CAF ZERO 016914,003766: 40,3567 54375 TS FAILREG 016915,003767: 40,3570 54376 TS FAILREG +1 016916,003768: 40,3571 54377 TS FAILREG +2 016917,003769: 40,3572 55357 TS SFAIL 016918,003770: 40,3573 05217 TC ENDOFJOB 016919,003771: 016920,003772: 40,3574 00104 ERCON OCT 104 # CHAN 11 BITS 3,7. 016921,003773: # UPLINK ACTIVITY, AND OPERATOR ERROR. 016922,003774: 40,3575 00240 BITS6,8 OCT 240 016923,003775: 40,3576 00050 GL+NOATT OCT 00050 # NO ATT AND GIMBAL LOCK LAMPS 016924,003776: 40,3577 73777 NOTBIT12 OCT 73777 016925,003777: 016926,003778: 40,3600 ENDPINS1 EQUALS 016927,003779: 016928,003780: 40,3600 30,2000 SBANK= LOWSUPER 016929,003781: End of include-file PINBALL_GAME_BUTTONS_AND_LIGHTS.agc. Parent file is MAIN.agc