Source Code

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