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