Source Code
![]() |
These source-code files were obtained by digitally photographing
an Artemis 72 program listing from a private collection and then
modifying pre-existing Comanche 55 (Apollo 11) source files to
incorporate changes. Note that the page images
presented online are of reduced quality, and that additional images
may be available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 072 OF AGC PROGRAM ARTEMIS BY NASA 2021114-011 11:40 FEB. 26, 1971 THIS AGC PROGRAM SHALL ALSO BE REFERRED TO AS COLOSSUS 3 THIS PROGRAM IS INTENDED FOR USE IN THE CM AS SPECIFIED IN REPORT R-577. THIS PROGRAM WAS PREPARED UNDER OSR PROJECT 55-23890, SPONSORED BY THE MANNED SPACECRAFT CENTER OF THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION THROUGH CONTRACT NAS 9-4065 WITH THE CHARLES STARK DRAPER LABORATORY, MASSACHUSETTS INSTITUTE OF TECHNOLOGY, CAMBRIDGE, MASS. |
013902,000002: # Copyright: Public domain.
013903,000003: # Filename: PINBALL_GAME_BUTTONS_AND_LIGHTS.agc
013904,000004: # Purpose: Part of the source code for Artemis (i.e., Colossus 3),
013905,000005: # build 072. This is for the Command Module's (CM)
013906,000006: # Apollo Guidance Computer (AGC), we believe for
013907,000007: # Apollo 15-17.
013908,000008: # Assembler: yaYUL
013909,000009: # Contact: Jim Lawton <jim DOT lawton AT gmail DOT com>
013910,000010: # Website: www.ibiblio.org/apollo/index.html
013911,000011: # Page scans: www.ibiblio.org/apollo/ScansForConversion/Artemis072/
013912,000012: # Mod history: 2009-08-10 JL Adapted from corresponding Comanche 055 file.
013913,000013: # 2009-09-03 JL Fixed conversion error (duplicate declaration of NEG.2).
013914,000014: # 2009-09-04 JL Fixed page comment.
013915,000015: # 2010-01-31 JL Fixed build errors.
013916,000016: # 2010-02-02 JL Removed extra instruction (TS DSPCOUNT). Fixed page numbers.
013917,000017: # 2010-02-05 JL Fixed code errors.
013918,000018: # 2010-02-07 JL Added missing BANK opcode on p369. Removed extra instruction on p383.
013919,000019: # 2010-02-10 JL Fixed line on p381.
013920,000020: # 2010-02-13 JL Fixed errors on pages 327, 354, 356, 362, 363, 368, 370, 374, 379, 380, 391, 392.
013921,000021: # 2010-02-20 RSB Un-##'d this header.
013922,000022: # 2011-05-07 JL Removed obsolete link.
013923,000023:
013924,000024: # # Page 318
013925,000025:
013926,000026: # PROGRAM NAME - KEYBOARD AND DISPLAY PROGRAM
013927,000027: # MOD BY - BARNERT DATE - 20 AUG 1969
013928,000028: # LOG SECTION - PINBALL GAME BUTTONS AND LIGHTS
013929,000029:
013930,000030: # FUNCTIONAL DESCRIPTION-
013931,000031:
013932,000032: # THE KEYBOARD AND DISPLAY SYSTEM PROGRAM OPERATES UNDER EXECUTIVE
013933,000033: # CONTROL AND PROCESSES INFORMATION EXCHANGED BETWEEN THE AGC AND THE
013934,000034: # COMPUTER OPERATOR. THE INPUTS TO THE PROGRAM ARE FROM THE KEYBOARD,
013935,000035: # FROM INTERNAL PROGRAM, AND FROM THE UPLINK.
013936,000036:
013937,000037: # THE LANGUAGE OF COMMUNICATION WITH THE PROGRAM IS A PAIR OF WORDS
013938,000038: # KNOWN AS VERB AND NOUN. EACH OF THESE IS REPRESENTED BY A 2 CHARACTER
013939,000039: # DECIMAL NUMBER. THE VERB CODE INDICATES WHAT ACTION IS TO BE TAKEN, THE
013940,000040: # NOUN CODE INDICATES TO WHAT THIS ACTION IS APPLIED. NOUNS USUALLY
013941,000041: # REFER TO A GROUP OF ERASABLE REGISTERS.
013942,000042:
013943,000043: # VERBS ARE GROUPED INTO DISPLAYS, LOADS, MONITORS (DISPLAYS THAT ARE
013944,000044: # UPDATED ONCE PER SECOND), SPECIAL FUNCTIONS, AND EXTENDED VERBS (THESE
013945,000045: # ARE OUTSIDE OF THE DOMAIN OF PINBALL AND CAN BE FOUND UNDER LOG SECTION
013946,000046: # 'EXTENDED VERBS').
013947,000047:
013948,000048: # A LIST OF VERBS AND NOUNS IS GIVEN IN LOG SECTION 'ASSEMBLY AND
013949,000049: # OPERATION INFORMATION'.
013950,000050:
013951,000051: # CALLING SEQUENCES-
013952,000052:
013953,000053: # KEYBOARD:
013954,000054: # EACH DEPRESSION OF A MAIN (NAVIGATION) KEYBOARD BUTTON ACTIVATES
013955,000055: # INTERRUPT KEYRUPT1 (KEYRUPT2) AND PLACES THE 5 BIT KEY CODE INTO
013956,000056: # CHANNEL 15 (CHANNEL 16). KEYRUPT1 (KEYRUPT2) PLACES THE KEY
013957,000057: # CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE KEYBOARD AND DISPLAY
013958,000058: # PROGRAM (AT 'CHARIN'), AND EXECUTES A RESUME.
013959,000059:
013960,000060: # UPLINK:
013961,000061: # EACH WORD RECEIVED BY THE UPLINK ACTIVATES INTERRUPT UPRUPT, WHICH
013962,000062: # PLACES THE 5 BIT KEY CODE INTO MPAC, ENTERS AN EXECUTIVE REQUEST FOR THE
013963,000063: # KEYBOARD AND DISPLAY PROGRAM (AT 'CHARIN') AND EXECUTES A RESUME.
013964,000064:
013965,000065: # INTERNAL PROGRAMS:
013966,000066: # INTERNAL PROGRAMS CALL PINBALL AT 'NVSUB' WITH THE DESIRED VERB/NOUN
013967,000067: # CODE IN A (LOW 7 BITS FOR NOUN, NEXT 7 BITS FOR VERB). DETAILS
013968,000068: # DESCRIBED ON REMARKS CARDS JUST BEFORE 'NVSUB' AND 'NVSBWAIT' (SEE
013969,000069: # SYMBOL TABLE FOR PAGE NUMBERS).
013970,000070:
013971,000071: # NORMAL EXIT MODES-
013972,000072:
013973,000073: # IF PINBALL WAS CALLED BY EXTERNAL ACTION, THERE ARE FOUR EXITS:
013974,000074: # 1) ALL BUT (2), (3), AND (4) EXIT DIRECTLY TO ENDOFJOB.
013975,000075: # 2) EXTENDED VERBS GO TO THE EXTENDED VERB FAN AS PART OF THE
013976,000076: # # Page 319
013977,000077: # PINBALL EXECUTIVE JOB WITH PRIORITY 30000. IT IS THE
013978,000078: # RESPONSIBILITY OF THE EXTENDED VERB CALLED TO EVENTUALLY
013979,000079: # CHANGE PRIORITY (IF NECESSARY) AD DO AN ENDOFJOB.
013980,000080: # ALSO PINBALL IS A NOVAC JOB. EBANK SET FOR COMMON.
013981,000081: # 3) VERB 37. CHANGE OF PROGRAM (MAJOR MODE) CALLS 'V37' IN THE
013982,000082: # SERVICE ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO
013983,000083: # 30000. THE NEW PROGRAM CODE (MAJOR MODE) IS LEFT IN A.
013984,000084: # 4) KEY RELEASE BUTTON CALLS 'PINBRNCH' IN THE DISPLAY INTERFACE
013985,000085: # ROUTINES AS PART OF THE PINBALL EXEC JOB WITH PRIO 30000 IF
013986,000086: # THE KEY RELEASE LIGHT IS OFF AND 'CADRSTOR' IS NOT +0.
013987,000087:
013988,000088: # IF PINBALL WAS CALLED BY INTERNAL PROGRAMS, EXIT FROM PINBALL IS BACK
013989,000089: # TO CALLING ROUTINE. DETAILS DESCRIBED IN REMARKS CARDS JUST BEFORE
013990,000090: # 'NVSUB'.
013991,000091:
013992,000092: # ALARM OR ABORT EXIT MODES-
013993,000093:
013994,000094: # EXTERNAL INITIATION:
013995,000095: # IF SOME IMPROPER SEQUENCE OF KEY CODES IS DETECTED, THE OPERATOR
013996,000096: # ERROR LIGHT IS TURNED ON AND EXIT IS TO 'ENDOFJOB'.
013997,000097:
013998,000098: # INTERNAL PROGRAM INITIATION:
013999,000099: # IF AN ILLEGAL V/N COMBINATION IS ATTEMPTED, AN ABORT IS CAUSED
014000,000100: # (WITH OCTAL 21501).
014001,000101: # IF A SECOND ATTEMPT IS MADE TO GO TO SLEEP IN PINBALL, AN ABORT IS
014002,000102: # CAUSED (WITH OCTAL 21206). THERE ARE TWO WAYS TO GO TO SLEEP IN PINBALL:
014003,000103: # 1) ENDIDLE
014004,000104: # 2) NVSUBUSY
014005,000105:
014006,000106: # OUTPUT-
014007,000107:
014008,000108: # INFORMATION TO BE SENT TO THE DISPLAY PANEL IS LEFT IN THE 'DSPTAB'
014009,000109: # BUFFERS REGISTERS (UNDER EXEC CONTROL). 'DSPOUT' (A PART OF T4RUPT)
014010,000110: # HANDLES THE PLACING OF THE 'DSPTAB' INFORMATION INTO OUTPUT CHANNEL 10
014011,000111: # IN INTERRUPT.
014012,000112:
014013,000113: # ERASABLE INITIALIZATION-
014014,000114:
014015,000115: # FRESH START AND RESTART INITIALIZE THE NECESSARY E REGISTERS FOR
014016,000116: # PINBALL IN 'STARTSUB'. REGISTERS ARE: DSPTAB BUFFER, CADRSTOR,
014017,000117: # REQRET, CLPASS, DSPLOCK, MONSAVE, MONSAVE1, VERBREG, NOUNREG, DSPLIST,
014018,000118: # DSPCOUNT, NOUT.
014019,000119:
014020,000120: # # Page 320
014021,000121: # A COMPLETE LIST OF ALL THE ERASABLES (BOTH RESERVED AND TEMPORARIES) FOR
014022,000122: # PINBALL IS GIVEN BELOW.
014023,000123:
014024,000124: # THE FOLLOWING ARE OF GENERAL INTEREST-
014025,000125:
014026,000126: # REMARKS CARDS PRECEDE THE REFERENCED SYMBOL DEFINITION. SEE SYMBOL
014027,000127: # TABLE TO FIND APPROPRIATE PAGE NUMBERS.
014028,000128:
014029,000129: # NVSUB CALLING POINT FOR INTERNAL USE OF PINBALL.
014030,000130: # OF RELATED INTEREST - NVSUBUSY
014031,000131:
014032,000132: # ENDIDLE ROUTINE FOR INTERNAL PROGRAMS WISHING TO TO SLEEP WHILE
014033,000133: # AWAITING OPERATORS RESPONSE.
014034,000134:
014035,000135: # DSPMMJOB ROUTINE CALL WITH PRIO 30000, USED TO DISPLAY A DECIMAL
014036,000136: # PROGRAM CODE (MAJOR MODE) IN THE PROGRAM (MAJOR MODE) LIGHTS.
014037,000137:
014038,000138: # BLANKSUB ROUTINE BY WHICH AN INTERNAL PROGRAM MAY BLANK ANY
014039,000139: # COMBINATION OF THE DISPLAY REGISTERS R1, R2, R3.
014040,000140:
014041,000141: # JAMTERM ROUTINE BY WHICH AN INTERNAL PROGRAM MAY PERFORM THE
014042,000142: # TERMINATE (V 34) FUNCTION.
014043,000143:
014044,000144: # MONITOR VERBS FOR PERIODIC (1 PER SEC) DISPLAY.
014045,000145:
014046,000146: # PLEASE PERFORM, PLEASE MARK SITUATIONS
014047,000147: # REMARKS DESCRIBING HOW AN INTERNAL ROUTINE SHOULD HANDLE
014048,000148: # THESE SITUATIONS CAN BE FOUND JUST BEFORE 'NVSUB' (SEE
014049,000149: # SYMBOL TABLE FOR PAGE NUMBER).
014050,000150:
014051,000151: # THE NOUN TABLE FORMAT IS DESCRIBED ON A PAGE OF REMARKS CARDS JUST
014052,000152: # BEFORE 'DSPABC' (SEE SYMBOL TABLE FOR PAGE NUMBER).
014053,000153:
014054,000154: # THE NOUN TABLES THEMSELVES ARE FOUND IN LOG SECTION 'PINBALL NOUN
014055,000155: # TABLES'.
014056,000156:
014057,000157: # FOR FURTHER DETAILS ABOUT OPERATION OF THE KEYBOARD AND DISPLAY SYSTEM
014058,000158: # PROGRAM, SEE THE MISSION PLAN AND/OR MIT/IL E-2129
014059,000159: # DESCRIBING KEYBOARD AND DISPLAY OPERATION FOR 278.
014060,000160:
014061,000161: # THE FOLLOWING QUOTATION IS PROVIDED THROUGH THE COURTESY OF THE AUTHORS.
014062,000162:
014063,000163: # "IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT
014064,000164: # USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO
014065,000165: # CHRISTIAN EAR CAN ENDURE TO HEAR."
014066,000166: # HENRY 6, ACT 2, SCENE 4
014067,000167:
014068,000168: # THE FOLLOWING ASSIGNMENTS FOR PINBALL ARE MADE ELSEWHERE
014069,000169:
014070,000170: # RESERVED FOR PINBALL EXECUTIVE ACTION
014071,000171:
014072,000172: # DSPCOUNT ERASE # DISPLAY POSITION INDICATOR
014073,000173: # DECBRNCH ERASE # +DEC, -DEC, OCT INDICATOR
014074,000174: # VERBREG ERASE # VERB CODE
014075,000175: # NOUNREG ERASE # NOUN CODE
014076,000176: # XREG ERASE # R1 INPUT BUFFER
014077,000177: # # Page 321
014078,000178: # YREG ERASE # R2 INPUT BUFFER
014079,000179: # ZREG ERASE # R3 INPUT BUFFER
014080,000180: # XREGLP ERASE # LO PART OF XREG (FOR DEC CONV ONLY)
014081,000181: # YREGLP ERASE # LO PART OF YREG (FOR DEC CONV ONLY)
014082,000182: # HITEMOUT = YREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC
014083,000183: # # MUST = LOTEMOUT-1.
014084,000184: # ZREGLP ERASE # LO PART OF ZREG (FOR DEC CONV ONLY)
014085,000185: # LOTEMOUT = ZREGLP # TEMP FOR DISPLAY OF HRS,MIN,SEC
014086,000186: # # MUST = HITEMOUT+1
014087,000187: # MODREG ERASE # MODE CODE
014088,000188: # DSPLOCK ERASE # KEYBOARD/SUBROUTINE CALL INTERLOCK
014089,000189: # REQRET ERASE # RETURN REGISTER FOR LOAD
014090,000190: # LOADSTAT ERASE # STATUS INDICATOR FOR LOADTST
014091,000191: # CLPASS ERASE # PASS INDICATOR CLEAR
014092,000192: # NOUT ERASE # ACTIVITY COUNTER FOR DSPTAB
014093,000193: # NOUNCADR ERASE # MACHINE CADR FOR NOUN
014094,000194: # MONSAVE ERASE # N/V CODE FOR MONITOR. (= MONSAVE1-1)
014095,000195: # MONSAVE1 ERASE # NOUNCADR FOR MONITOR (MATBS) = MONSAVE+1
014096,000196: # MONSAVE2 ERASE # NVMONOPT OPTIONS
014097,000197: # DSPTAB ERASE +13D # 0-10, DISPLAY PANEL BUFFER. 11-13, C RELAYS.
014098,000198: # CADRSTOR ERASE # ENDIDLE STORAGE
014099,000199: # NVQTEM ERASE # NVSUB STORAGE FOR CALLING ADDRESS
014100,000200: # # MUST = NVBNKTEM-1
014101,000201: # NVBNKTEM ERASE # NVSUB STORAGE FOR CALLING BANK
014102,000202: # # MUST = NVQTEM+1
014103,000203: # VERBSAVE ERASE # NEEDED FOR RECYCLE
014104,000204: # DSPLIST ERASE # WAITING REG FOR DSP SYST INTERNAL USE
014105,000205: # EXTVBACT ERASE # EXTENDED VERB ACTIVITY INTERLOCK
014106,000206: # DSPTEM1 ERASE +2 # BUFFER STORAGE AREA 1 (MOSTLY FOR TIME)
014107,000207: # DSPTEM2 ERASE +2 # BUFFER STORAGE AREA 2 (MOSTLY FOR DEG)
014108,000208:
014109,000209: # END OF ERASABLES RESERVED FOR PINBALL EXECUTIVE ACTION.
014110,000210:
014111,000211: # TEMPORARIES FOR PINBALL EXECUTIVE ACTION
014112,000212:
014113,000213: # DSEXIT = INTB15+ # RETURN FOR DSPIN
014114,000214: # EXITEM = INTB15+ # RETURN FOR SCALE FACTOR ROUTINE SELECT
014115,000215: # BLANKRET = INTB15+ # RETURN FOR 2BLANK
014116,000216:
014117,000217: # WRDRET = INTBIT15 # RETURN FOR 5BLANK.
014118,000218: # WDRET = INTBIT15 # RETURN FOR DSPWD
014119,000219: # DECRET = INTBIT15 # RETURN FOR PUTCOM(DEC LOAD)
014120,000220: # 21/22REG = INTBIT15 # TEMP FOR CHARIN
014121,000221:
014122,000222: # UPDATRET = POLISH # RETURN FOR UPDATNN, UPDATVB
014123,000223: # CHAR = POLISH # TEMP FOR CHARIN
014124,000224: # ERCNT = POLISH # COUNTER FOR ERROR LIGHT RESET
014125,000225: # DECOUNT = POLISH # COUNTER FOR SCALING AND DISPLAY (DEC)
014126,000226:
014127,000227: # SGNON = VBUF # TEMP FOR +,- ON
014128,000228: # # Page 322
014129,000229: # NOUNTEM = VBUF # COUNTER FOR MIXNOUN FETCH
014130,000230: # DISTEM = VBUF # COUNTER FOR OCTAL DISPLAY VERBS
014131,000231: # DECTEM = VBUF # COUNTER FOR FETCH (DEC DISPLAY VERBS)
014132,000232:
014133,000233: # SGNOFF = VBUF +1 # TEMP FOR +,- ON
014134,000234: # NVTEMP = VBUF +1 # TEMP FOR NVSUB
014135,000235: # SFTEMP1 = VBUF +1 # STORAGE FOR SF CONST HI PART (=SFTEMP2-1)
014136,000236: # HITEMIN = VBUF +1 # TEMP FOR LOAD OF HRS, MIN, SEC
014137,000237: # # MUST = LOTEMIN-1.
014138,000238: # CODE = VBUF +2 # FOR DSPIN
014139,000239: # SFTEMP2 = VBUF +2 # STORAGE FOR SF CONST LO PART (=SFTEMP1+1)
014140,000240: # LOTEMIN = VBUF +2 # TEMP FOR LOAD OF HRS, MIN, SEC
014141,000241: # # MUST = HITEMIN+1
014142,000242: # MIXTEMP = VBUF +3 # FOR MIXNOUN DATA
014143,000243: # SIGNRET = VBUF +3 # RETURN FOR +,- ON
014144,000244:
014145,000245: # ALSO MIXTEMP+1 = VBUF+4, MIXTEMP+2 = VBUF+5.
014146,000246:
014147,000247: # ENTRET = DOTINC # EXIT FROM ENTER
014148,000248:
014149,000249: # WDCNT = DOTRET # CHAR COUNTER FOR DSPWD
014150,000250: # INREL = DOTRET # INPUT BUFFER SELECTOR (X,Y,Z, REG)
014151,000251:
014152,000252: # DSPMMTEM = MATINC # DSPCOUNT SAVE FOR DSPMM
014153,000253: # MIXBR = MATINC # INDICATOR FOR MIXED OR NORMAL NOUN
014154,000254:
014155,000255: # TEM1 ERASE # EXEC TEMP
014156,000256: # DSREL = TEM1 # REL ADDRESS FOR DSPIN
014157,000257:
014158,000258: # TEM2 ERASE # EXEC TEMP
014159,000259: # DSMAG = TEM2 # MAGNITUDE STORE FOR DSPIN
014160,000260: # IDADDTEM = TEM2 # MIXNOUN INDIRECT ADDRESS STORAGE
014161,000261:
014162,000262: # TEM3 ERASE # EXEC TEMP
014163,000263: # COUNT = TEM3 # FOR DSPIN
014164,000264:
014165,000265: # TEM4 ERASE # EXEC TEMP
014166,000266: # LSTPTR = TEM4 # LIST POINTER FOR GRABUSY
014167,000267: # RELRET = TEM4 # RETURN FOR RELDSP
014168,000268: # FREERET = TEM4 # RETURN FOR FREEDSP
014169,000269: # DSPWDRET = TEM4 # RETURN FOR DSPSIGN
014170,000270: # SEPSCRET = TEM4 # RETURN FOR SEPSEC
014171,000271: # SEPMNRET = TEM4 # RETURN FOR SEPMIN
014172,000272:
014173,000273: # TEM5 ERASE # EXEC TEMP
014174,000274: # NOUNADD = TEM5 # TEMP STORAGE FOR NOUN ADDRESS
014175,000275:
014176,000276: # NNADTEM ERASE # TEMP FOR NOUN ADDRESS TABLE ENTRY
014177,000277: # NNTYPTEM ERASE # TEMP FOR NOUN TYPE TABLE ENTRY
014178,000278: # IDAD1TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN)
014179,000279: # # Page 323
014180,000280: # # MUST = IDAD2TEM-1, = IDAD3TEM-2.
014181,000281: # IDAD2TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN)
014182,000282: # # MUST = IDAD1TEM+1, IDAD3TEM-1.
014183,000283: # IDAD3TEM ERASE # TEMP FOR INDIR ADDRESS TABLE ENTRY (MIXNN)
014184,000284: # # MUST = IDAD1TEM+2, IDAD2TEM+1.
014185,000285: # RUTMXTEM ERASE # TEMP FOR SF ROUT TABLE ENTRY (MIXNN ONLY)
014186,000286:
014187,000287: # END OF TEMPORARIES FOR PINBALL EXECUTIVE ACTION.
014188,000288:
014189,000289: # ADDITIONAL TEMPORARIES FOR PINBALL EXECUTIVE ACTION
014190,000290:
014191,000291: # MPAC, THRU MPAC +6
014192,000292: # BUF, +1, +2
014193,000293: # BUF2, +1, +2
014194,000294: # MPTEMP
014195,000295: # ADDRWD
014196,000296:
014197,000297: # END OF ADDITIONAL TEMPS FOR PINBALL EXEC ACTION
014198,000298:
014199,000299: # RESERVED FOR PINBALL INTERRUPT ACTION
014200,000300:
014201,000301: # DSPCNT ERASE # COUNTER FOR DSPOUT
014202,000302: # UPLOCK ERASE # BIT1 = UPLINK INTERLOCK (ACTIVATED BY
014203,000303: # # RECEPTION OF A BAD MESSAGE IN UPLINK)
014204,000304:
014205,000305: # END OF ERASABLES RESERVED FOR PINBALL INTERRUPT ACTION
014206,000306:
014207,000307: # TEMPORARIES FOR PINBALL INTERRUPT ACTION
014208,000308:
014209,000309: # KEYTEMP1 = WAITEXIT # TEMP FOR KEYRUPT, UPRUPT
014210,000310: # DSRUPTEM = WAITEXIT # TEMP FOR DSPOUT
014211,000311: # KEYTEMP2 = RUPTAGN # TEMP FOR KEYRUPT, UPRUPT
014212,000312:
014213,000313: # END OF TEMPORARIES FOR PINBALL INTERRUPT ACTION
014214,000314:
014215,000315: # # Page 324
014216,000316: # THE INPUT CODES ASSUMED FOR THE KEYBOARD ARE,
014217,000317: # 0 10000
014218,000318: # 1 00001
014219,000319: # 9 01001
014220,000320: # VERB 10001
014221,000321: # ERROR RES 10010
014222,000322: # KEY RLSE 11001
014223,000323: # + 11010
014224,000324: # - 11011
014225,000325: # ENTER 11100
014226,000326: # CLEAR 11110
014227,000327: # NOUN 11111
014228,000328:
014229,000329: # OUTPUT FORMAT FOR DISPLAY PANEL. SET OUT0 TO AAAABCCCCCDDDDD.
014230,000330: # A'S SELECTS A RELAYWORD. THIS DETERMINES WHICH PAIR OF CHARACTERS ARE
014231,000331: # ENERGIZED.
014232,000332: # B FOR SPECIAL RELAYS SUCH AS SIGNS ETC.
014233,000333: # C'S 5 BIT RELAY CODE FOR LEFT CHAR OF PAIR SELECTED BY RELAYWORD.
014234,000334: # D'S 5 BIT RELAY CODE FOR RIGHT CHAR OF PAIR SELECTED BY RELAYWORD.
014235,000335:
014236,000336: # THE PANEL APPEARS AS FOLLOWS,
014237,000337: # MD1 MD2 (MAJOR MODE)
014238,000338: # VD1 VD2 (VERB) ND1 ND2 (NOUN)
014239,000339: # R1D1 R1D2 R1D3 R1D4 R1D5 (R1)
014240,000340: # R2D1 R2D2 R2D3 R2D4 R2D5 (R2)
014241,000341: # R3D1 R3D2 R3D3 R3D4 R3D5 (R3)
014242,000342:
014243,000343: # EACH OF THESE IS GIVEN A DSPCOUNT NUMBER FOR USE WITHIN COMPUTATION ONLY
014244,000344:
014245,000345: # MD1 25 R2D1 11 ALL ARE OCTAL
014246,000346: # MD2 24 R2D2 10
014247,000347: # VD1 23 R2D3 7
014248,000348: # VD2 22 R2D4 6
014249,000349: # ND1 21 R2D5 5
014250,000350: # ND2 20 R3D1 4
014251,000351: # R1D1 16 R3D2 3
014252,000352: # R1D2 15 R3D3 2
014253,000353: # R1D3 14 R3D4 1
014254,000354: # R1D4 13 R3D5 0
014255,000355: # R1D5 12
014256,000356:
014257,000357: # THERE IS AN 11-REGISTER TABLE (DSPTAB) FOR THE DISPLAY PANEL.
014258,000358:
014259,000359: # DSPTAB RELAYWD BIT11 BITS 10-6 BITS 5-1
014260,000360: # RELADD
014261,000361: # 10 1011 MD1 (25) MD2 (24)
014262,000362: # 9 1010 VD1 (23) VD2 (22)
014263,000363: # 8 1001 ND1 (21) ND2 (20)
014264,000364: # 7 1000 R1D1 (16)
014265,000365: # # Page 325
014266,000366: # 6 0111 +R1 R1D2 (15) R1D3 (14)
014267,000367: # 5 0110 -R1 R1D4 (13) R1D5 (12)
014268,000368: # 4 0101 +R2 R2D1 (11) R2D2 (10)
014269,000369: # 3 0100 -R2 R2D3 (7) R2D4 (6)
014270,000370: # 2 0011 R2D5 (5) R3D1 (4)
014271,000371: # 1 0010 +R3 R3D2 (3) R3D3 (2)
014272,000372: # 0 0001 -R3 R3D4 (1) R3D5 (0)
014273,000373: # 0000 NO RELAYWORD
014274,000374:
014275,000375: # THE 5-BIT OUTOUT RELAY CODES ARE:
014276,000376:
014277,000377: # BLANK 00000
014278,000378: # 0 10101
014279,000379: # 1 00011
014280,000380: # 2 11001
014281,000381: # 3 11011
014282,000382: # 4 01111
014283,000383: # 5 11110
014284,000384: # 6 11100
014285,000385: # 7 10011
014286,000386: # 8 11101
014287,000387: # 9 11111
014288,000388:
014289,000389: # OUTPUT BITS USED BY PINBALL:
014290,000390:
014291,000391: # KEY RELEASE LIGHT - BIT 5 OF CHANNEL 11
014292,000392: # VERB/NOUN FLASH - BIT 6 OF CHANNEL 11
014293,000393: # OPERATOR ERROR LIGHT - BIT 7 OF CHANNEL 11
014294,000394:
014295,000395: # # Page 326
014296,000396: # START OF EXECUTIVE SECTION OF PINBALL
014297,000397:
014298,000398: 40,2000 SETLOC PINBALL1
014299,000399: 40,2000 BANK
014300,000400:
014301,000401: 40,2000 COUNT* $$/PIN
014302,000402: 40,2000 34770 CHARIN CAF ONE # BLOCK DISPLAY SYST
014303,000403: 40,2001 57215 XCH DSPLOCK # MAKE DSP SYST BUSY, BUT SAVE OLD
014304,000404: 40,2002 54115 TS 21/22REG # C(DSPLOCK) FOR ERROR LIGHT RESET.
014305,000405: 40,2003 11245 CCS CADRSTOR # ALL KEYS EXCEPT ER TURN ON KR LITE IF
014306,000406: 40,2004 02006 TC +2 # CADRSTOR IS FULL. THIS REMINDS OPERATOR
014307,000407: 40,2005 02013 TC CHARIN2 # TO RE-ESTABLISH A FLASHING DISPLAY
014308,000408: 40,2006 42212 CS ELRCODE1 # WHICH HE HAS OBSCURED WITH DISPLAYS OF
014309,000409: 40,2007 60154 AD MPAC # HIS OWN (SEE REMARKS PRECEDING ROUTINE
014310,000410: 40,2010 00006 EXTEND # VBRELDSP).
014311,000411: 40,2011 12013 BZF CHARIN2
014312,000412: 40,2012 04356 TC RELDSPON
014313,000413: 40,2013 56154 CHARIN2 XCH MPAC
014314,000414: 40,2014 54117 TS CHAR
014315,000415: 40,2015 50000 INDEX A
014316,000416: 40,2016 02017 TC +1 # INPUT CODE FUNCTION
014317,000417: 40,2017 03275 TC CHARALRM # 0
014318,000418: 40,2020 02074 TC NUM # 1
014319,000419: 40,2021 02074 TC NUM # 2
014320,000420: 40,2022 02074 TC NUM # 3
014321,000421: 40,2023 02074 TC NUM # 4
014322,000422: 40,2024 02074 TC NUM # 5
014323,000423: 40,2025 02074 TC NUM # 6
014324,000424: 40,2026 02074 TC NUM # 7
014325,000425: 40,2027 02064 TC 89TEST # 10 8
014326,000426: 40,2030 02064 TC 89TEST # 11 9
014327,000427: 40,2031 03275 TC CHARALRM # 12
014328,000428: 40,2032 03275 TC CHARALRM # 13
014329,000429: 40,2033 03275 TC CHARALRM # 14
014330,000430: 40,2034 03275 TC CHARALRM # 15
014331,000431: 40,2035 03275 TC CHARALRM # 16
014332,000432: 40,2036 03275 TC CHARALRM # 17
014333,000433: 40,2037 02072 TC NUM -2 # 20 0
014334,000434: 40,2040 02251 TC VERB # 21 VERB
014335,000435: 40,2041 03553 TC ERROR # 22 ERROR LIGHT RESET
014336,000436: 40,2042 03275 TC CHARALRM # 23
014337,000437: 40,2043 03275 TC CHARALRM # 24
014338,000438: 40,2044 03275 TC CHARALRM # 25
014339,000439: 40,2045 03275 TC CHARALRM # 26
014340,000440: 40,2046 03275 TC CHARALRM # 27
014341,000441: 40,2047 03275 TC CHARALRM # 30
014342,000442: 40,2050 03325 TC VBRELDSP # 31 KEY RELEASE
014343,000443: 40,2051 02304 TC POSGN # 32 +
014344,000444: 40,2052 02271 TC NEGSGN # 33 -
014345,000445: # # Page 327
014346,000446: 40,2053 04200 TC ENTERJMP # 34 ENTER
014347,000447: 40,2054 03275 TC CHARALRM # 35
014348,000448: 40,2055 02364 TC CLEAR # 36 CLEAR
014349,000449: 40,2056 02265 TC NOUN # 37 NOUN
014350,000450:
014351,000451: 40,2057 11202 CHKDSP CCS DSPCOUNT
014352,000452: 40,2060 00002 TC Q
014353,000453: 40,2061 00002 TC Q
014354,000454: 40,2062 15205 TCF ENDOFJOB # BLOCK DATA IN IF DSPCOUNT NEG.
014355,000455: 40,2063 15205 TCF ENDOFJOB
014356,000456:
014357,000457: 40,2064 02057 89TEST TC CHKDSP
014358,000458: 40,2065 36214 CAF THREE
014359,000459: 40,2066 71203 MASK DECBRNCH
014360,000460: 40,2067 10000 CCS A
014361,000461: 40,2070 02074 TC NUM # IF DECBRNCH IS +, 8 OR 9 OK
014362,000462: 40,2071 03275 TC CHARALRM # IF DECBRNCH IS +0, REJECT 8 OR 9
014363,000463:
014364,000464: # NUM ASSEMBLES OCTAL 3 BITS AT A TIME. FOR DECIMAL IT CONVERTS INCOMING
014365,000465: # WORD AS A FRACTION, KEEPING RESULTS TO DP.
014366,000466: # OCTAL RESULTS ARE LEFT IN XREG, YREG, OR ZREG. HI PART OF DEC IN XREG,
014367,000467: # YREG, ZREG. THE LOW PARTS IN XREGLP, YREGLP, OR ZREGLP.
014368,000468: # DECBRNCH IS LEFT AT +0 FOR OCT, +1 FOR + DEC, +2 FOR - DEC.
014369,000469: # IF DSPCOUNT WAS LEFT -, NO MORE DATA IS ACCEPTED.
014370,000470:
014371,000471: 40,2072 34772 -2 CAF ZERO
014372,000472: 40,2073 54117 TS CHAR
014373,000473: 40,2074 02057 NUM TC CHKDSP
014374,000474: 40,2075 02221 TC GETINREL
014375,000475: 40,2076 11220 CCS CLPASS # IF CLPASS IS + OR +0, MAKE IT +0.
014376,000476: 40,2077 34772 CAF ZERO
014377,000477: 40,2100 55220 TS CLPASS
014378,000478: 40,2101 02102 TC +1
014379,000479: 40,2102 30117 CA CHAR
014380,000480: 40,2103 04423 TC CODSTOR
014381,000481: 40,2104 03161 TC DSPIN
014382,000482: 40,2105 36214 CAF THREE
014383,000483: 40,2106 71203 MASK DECBRNCH
014384,000484: 40,2107 10000 CCS A # +0, OCTAL. +1, + DEC. +2, - DEC.
014385,000485: 40,2110 02121 TC DECTOBIN # +
014386,000486: 40,2111 50137 INDEX INREL # +0 OCTAL
014387,000487: 40,2112 57204 XCH VERBREG
014388,000488: 40,2113 54022 TS CYL
014389,000489: 40,2114 40022 CS CYL
014390,000490: 40,2115 40022 CS CYL
014391,000491: 40,2116 56022 XCH CYL
014392,000492: 40,2117 60117 AD CHAR
014393,000493: 40,2120 02136 TC ENDNMTST
014394,000494: # # Page 328
014395,000495: 40,2121 50137 DECTOBIN INDEX INREL
014396,000496: 40,2122 57204 XCH VERBREG
014397,000497: 40,2123 54154 TS MPAC # SUM X 2EXP-14 IN MPAC
014398,000498: 40,2124 34772 CAF ZERO
014399,000499: 40,2125 54155 TS MPAC +1
014400,000500: 40,2126 34355 CAF TEN # 10 X 2EXP-14
014401,000501: 40,2127 07256 TC SHORTMP # 10SUM X 2EXP-28 IN MPAC, MPAC+1
014402,000502: 40,2130 56155 XCH MPAC +1
014403,000503: 40,2131 60117 AD CHAR
014404,000504: 40,2132 54155 TS MPAC +1
014405,000505: 40,2133 02136 TC ENDNMTST # NO OF
014406,000506: 40,2134 26154 ADS MPAC # OF MUST BE 5TH CHAR
014407,000507: 40,2135 02156 TC DECCEND
014408,000508: 40,2136 50137 ENDNMTST INDEX INREL
014409,000509: 40,2137 55204 TS VERBREG
014410,000510: 40,2140 41202 CS DSPCOUNT
014411,000511: 40,2141 50137 INDEX INREL
014412,000512: 40,2142 62212 AD CRITCON
014413,000513: 40,2143 00006 EXTEND
014414,000514: 40,2144 12150 BZF ENDNUM # -0, DSPCOUNT = CRITCON
014415,000515: 40,2145 11202 MORNUM CCS DSPCOUNT # -, DSPCOUNT G/ CRITCON
014416,000516: 40,2146 55202 TS DSPCOUNT # DECREMENT DSPCOUNT
014417,000517: 40,2147 05205 TC ENDOFJOB
014418,000518: 40,2150 36214 ENDNUM CAF THREE
014419,000519: 40,2151 71203 MASK DECBRNCH
014420,000520: 40,2152 10000 CCS A
014421,000521: 40,2153 02156 TC DECCEND
014422,000522: 40,2154 41202 ENDALL CS DSPCOUNT # BLOCK NUMIN BY PLACING DSPCOUNT
014423,000523: 40,2155 02146 TC MORNUM +1 # NEGATIVELY
014424,000524: 40,2156 04636 DECCEND TC BANKCALL
014425,000525: 40,2157 60161 CADR DECEND
014426,000526: 40,2160 02154 TC ENDALL
014427,000527: 40,2161 44770 DECEND CS ONE
014428,000528: 40,2162 60137 AD INREL
014429,000529: 40,2163 00006 EXTEND
014430,000530: 40,2164 62154 BZMF ENDALL # IF INREL=0,1 (VBREG,NNREG) LEAVE WHOLE
014431,000531: 40,2165 02221 +4 TC GETINREL
014432,000532: 40,2166 50137 INDEX INREL
014433,000533: 40,2167 31204 CA VERBREG
014434,000534: 40,2170 54155 TS MPAC +1
014435,000535: 40,2171 07052 TC DMP # IF INREL=2,3,4 (R1,R2,R3), CONVERT TO FRAC
014436,000536: # MULT SUM X 2EXP-28 IN MPAC, MPAC+1 BY
014437,000537: 40,2172 02217 ADRES DECON # 2EXP14/10EXP5, GIVES (SUM/10EXP5)X2EXP-14
014438,000538: 40,2173 36214 CAF THREE # IN MPAC, +1, +2.
014439,000539: 40,2174 71203 MASK DECBRNCH
014440,000540: 40,2175 50000 INDEX A
014441,000541: 40,2176 02176 TC +0
014442,000542: 40,2177 02203 TC +DECSGN
014443,000543: 40,2200 00006 EXTEND # - CASE
014444,000544: 40,2201 40156 DCS MPAC +1
014445,000545: # # Page 329
014446,000546: 40,2202 52156 DXCH MPAC +1
014447,000547: 40,2203 56156 +DECSGN XCH MPAC +2
014448,000548: 40,2204 50137 INDEX INREL
014449,000549: 40,2205 55207 TS XREGLP -2
014450,000550: 40,2206 56155 XCH MPAC +1
014451,000551: 40,2207 50137 INDEX INREL
014452,000552: 40,2210 55204 TS VERBREG
014453,000553: 40,2211 04651 TC SWRETURN
014454,000554: 40,2212 40,2212 ELRCODE1 EQUALS CRITCON
014455,000555: 40,2212 00022 CRITCON OCT 22 # (DEC 18)
014456,000556: 40,2213 00020 OCT 20 # (DEC 16)
014457,000557: 40,2214 00012 OCT 12 # (DEC 10)
014458,000558: 40,2215 00005 OCT 5
014459,000559: 40,2216 00000 OCT 0
014460,000560:
014461,000561: 40,2217 05174 13261 DECON 2DEC 1 E-5 B14 # 2EXP14/10EXP5 = .16384 DEC
014462,000562:
014463,000563: # GETINREL GETS PROPER DATA REG REL ADDRESS FOR CURRENT C(DSPCOUNT) AND
014464,000564: # PUTS IT INTO INREL. +0 VERBREG, 1 NOUNREG, 2 XREG, 3 YREG, 4 ZREG.
014465,000565:
014466,000566: 40,2221 51202 GETINREL INDEX DSPCOUNT
014467,000567: 40,2222 32225 CAF INRELTAB
014468,000568: 40,2223 54137 TS INREL # (A TEMP, REG)
014469,000569: 40,2224 00002 TC Q
014470,000570:
014471,000571: 40,2225 00004 INRELTAB OCT 4 # R3D5 (DSPCOUNT = 0)
014472,000572: 40,2226 00004 OCT 4 # R3D4 =(1)
014473,000573: 40,2227 00004 OCT 4 # R3D3 =(2)
014474,000574: 40,2230 00004 OCT 4 # R3D2 =(3)
014475,000575: 40,2231 00004 OCT 4 # R3D1 =(4)
014476,000576: 40,2232 00003 OCT 3 # R2D5 =(5)
014477,000577: 40,2233 00003 OCT 3 # R2D4 =(6)
014478,000578: 40,2234 00003 OCT 3 # R2D3 =(7)
014479,000579: 40,2235 00003 OCT 3 # R2D2 =(8D)
014480,000580: 40,2236 00003 OCT 3 # R2D1 =(9D)
014481,000581: 40,2237 00002 OCT 2 # R1D5 =(10D)
014482,000582: 40,2240 00002 OCT 2 # R1D4 =(11D)
014483,000583: 40,2241 00002 OCT 2 # R1D3 =(12D)
014484,000584: 40,2242 00002 OCT 2 # R1D2 =(13D)
014485,000585: 40,2243 00002 OCT 2 # R1D1 =(14D)
014486,000586: 40,2244 00244 VNDSPCON OCT 244 # .01 ROUNDED UP. CANNOT GET HERE
014487,000587: 40,2245 00001 OCT 1 # ND2 =(16D)
014488,000588: 40,2246 00001 OCT 1 # ND1 =(17D)
014489,000589: 40,2247 00000 OCT 0 # VD2 =(18D)
014490,000590: 40,2250 00000 OCT 0 # VD1 =(19D)
014491,000591: 40,2251 34772 VERB CAF ZERO
014492,000592: # # Page 330
014493,000593:
014494,000594: 40,2252 55204 TS VERBREG
014495,000595: 40,2253 34351 CAF VD1
014496,000596: 40,2254 55202 NVCOM TS DSPCOUNT
014497,000597: 40,2255 02473 TC 2BLANK
014498,000598: 40,2256 34770 CAF ONE
014499,000599: 40,2257 55203 TS DECBRNCH # SET FOR DEC V/N CODE
014500,000600: 40,2260 34772 CAF ZERO
014501,000601: 40,2261 55216 TS REQRET # SET FOR ENTPAS0
014502,000602: 40,2262 34170 CAF ENDINST # IF DSPALARM OCCURS BEFORE FIRST ENTPAS0
014503,000603: 40,2263 54136 TS ENTRET # OR NVSUB, ENTRET MUST ALREADY BE SET
014504,000604: # TO TC ENDOFJOB
014505,000605: 40,2264 05205 TC ENDOFJOB
014506,000606: 40,2265 34772 NOUN CAF ZERO
014507,000607: 40,2266 55205 TS NOUNREG
014508,000608: 40,2267 34352 CAF ND1 # ND1, OCT 21 (DEC 17)
014509,000609: 40,2270 02254 TC NVCOM
014510,000610:
014511,000611: 40,2271 02344 NEGSGN TC SIGNTEST
014512,000612: 40,2272 02330 TC -ON
014513,000613: 40,2273 34767 CAF TWO
014514,000614: 40,2274 50137 BOTHSGN INDEX INREL # SET DEC COMP BIT TO 1 (IN DECBRNCH)
014515,000615: 40,2275 64762 AD BIT7 # BIT 5 FOR R1. BIT 4 FOR R2.
014516,000616: 40,2276 27203 ADS DECBRNCH # BIT 3 FOR R3.
014517,000617: 40,2277 11220 FIXCLPAS CCS CLPASS # IF CLPASS IS + OR +0, MAKE IT +0.
014518,000618: 40,2300 34772 CAF ZERO
014519,000619: 40,2301 55220 TS CLPASS
014520,000620: 40,2302 02303 TC +1
014521,000621: 40,2303 05205 TC ENDOFJOB
014522,000622:
014523,000623: 40,2304 02344 POSGN TC SIGNTEST
014524,000624: 40,2305 02310 TC +ON
014525,000625: 40,2306 34770 CAF ONE
014526,000626: 40,2307 02274 TC BOTHSGN
014527,000627:
014528,000628: 40,2310 22002 +ON LXCH Q
014529,000629: 40,2311 02221 TC GETINREL
014530,000630: 40,2312 50137 INDEX INREL
014531,000631: 40,2313 32336 CAF SGNTAB -2
014532,000632: 40,2314 54123 TS SGNOFF
014533,000633: 40,2315 64770 AD ONE
014534,000634: 40,2316 54122 TS SGNON
014535,000635: 40,2317 34772 SGNCOM CAF ZERO
014536,000636: 40,2320 54124 TS CODE
014537,000637: 40,2321 56123 XCH SGNOFF
014538,000638: 40,2322 03247 TC 11DSPIN
014539,000639: 40,2323 34756 CAF BIT11
014540,000640: 40,2324 54124 TS CODE
014541,000641: 40,2325 56122 XCH SGNON
014542,000642: 40,2326 03247 TC 11DSPIN
014543,000643: # # Page 331
014544,000644: 40,2327 00001 -1 TC L
014545,000645: 40,2330 22002 -ON LXCH Q
014546,000646: 40,2331 02221 TC GETINREL
014547,000647: 40,2332 50137 INDEX INREL
014548,000648: 40,2333 32336 CAF SGNTAB -2
014549,000649: 40,2334 54122 TS SGNON
014550,000650: 40,2335 64770 AD ONE
014551,000651: 40,2336 54123 TS SGNOFF
014552,000652: 40,2337 02317 TC SGNCOM
014553,000653:
014554,000654: 40,2340 00005 SGNTAB OCT 5 # -R1
014555,000655: 40,2341 00003 OCT 3 # -R2
014556,000656: 40,2342 00000 -1 OCT 00000 # -R3
014557,000657: 40,2343 02476 DECROUND OCT 02476 # MUST FOLLOW ZERO WORD
014558,000658: 40,2344 22002 SIGNTEST LXCH Q # ALLOWS +,- ONLY WHEN DSPCOUNT=R1D1,
014559,000659: 40,2345 36214 CAF THREE # R2D1, OR R3D1. ALLOWS ONLY FIRST OF
014560,000660: 40,2346 71203 MASK DECBRNCH # CONSECUTIVE +/- CHARACTERS.
014561,000661: 40,2347 10000 CCS A # IF LOW2 BITS OF DECBRNCH NOT= 0, SIGN
014562,000662: 40,2350 05205 TC ENDOFJOB # FOR THIS WORD ALREADY IN. REJECT.
014563,000663: 40,2351 44321 CS R1D1
014564,000664: 40,2352 02360 TC SGNTST1
014565,000665: 40,2353 44322 CS R2D1
014566,000666: 40,2354 02360 TC SGNTST1
014567,000667: 40,2355 44323 CS R3D1
014568,000668: 40,2356 02360 TC SGNTST1
014569,000669: 40,2357 05205 TC ENDOFJOB # NO MATCH FOUND. SIGN ILLEGAL
014570,000670: 40,2360 61202 SGNTST1 AD DSPCOUNT
014571,000671: 40,2361 00006 EXTEND
014572,000672: 40,2362 12327 BZF -ON -1 # MATCH FOUND. SIGN LEGAL
014573,000673: 40,2363 00002 TC Q
014574,000674:
014575,000675: # CLEAR BLANKS WHICH R1, R2, R3 IS CURRENT OR LAST TO BE DISPLAYED (PERTINENT
014576,000676: # XREG, YREG, ZREG IS CLEARED). SUCCESSIVE CLEARS TAKE CARE OF EACH RX
014577,000677: # L/ RC UNTIL R1 IS DONE. THEN NO FURTHER ACTION.
014578,000678:
014579,000679: # CLPASS +0 PASS0, CAN BE BACKED UP
014580,000680: # +NZ HIPASS, CAN BE BACKED UP
014581,000681: # -NZ PASS0, CANNOT BE BACKED UP
014582,000682:
014583,000683: 40,2364 11202 CLEAR CCS DSPCOUNT
014584,000684: 40,2365 64770 AD ONE
014585,000685: 40,2366 02370 TC +2
014586,000686: 40,2367 64770 AD ONE
014587,000687: 40,2370 50000 INDEX A # DO NOT CHANGE DSPCOUNT BECAUSE MAY LATER
014588,000688: 40,2371 32225 CAF INRELTAB # FAIL LEGALTST.
014589,000689: 40,2372 54137 TS INREL # MUST SET INREL, EVEN FOR HIPASS.
014590,000690: 40,2373 11220 CCS CLPASS
014591,000691: 40,2374 02402 TC CLPASHI # +
014592,000692: # # Page 332
014593,000693: 40,2375 02377 TC +2 # +0 IF CLPASS IS +0 OR -, IT IS PASS0
014594,000694: 40,2376 02377 TC +1 # -
014595,000695: 40,2377 30137 CA INREL
014596,000696: 40,2400 02424 TC LEGALTST
014597,000697: 40,2401 02417 TC CLEAR1
014598,000698: 40,2402 10137 CLPASHI CCS INREL
014599,000699: 40,2403 54137 TS INREL
014600,000700: 40,2404 02424 TC LEGALTST
014601,000701: 40,2405 32472 CAF DOUBLK +2 # +3 TO - NUMBER, BACKS DATA REQUESTS.
014602,000702: 40,2406 27216 ADS REQRET
014603,000703: 40,2407 30137 CA INREL
014604,000704: 40,2410 54125 TS MIXTEMP # TEMP STORAGE FOR INREL
014605,000705: 40,2411 00006 EXTEND
014606,000706: 40,2412 27204 DIM VERBREG # DECREMENT VERB AND RE-DISPLAY
014607,000707: 40,2413 04636 TC BANKCALL
014608,000708: 40,2414 62337 CADR UPDATVB
014609,000709: 40,2415 30125 CA MIXTEMP
014610,000710: 40,2416 54137 TS INREL # RESTORE INREL
014611,000711: 40,2417 02422 CLEAR1 TC CLR5
014612,000712: 40,2420 25220 INCR CLPASS # ONLY IF CLPASS IS + OR +0,
014613,000713: 40,2421 05205 TC ENDOFJOB # SET FOR HIGHER PASS.
014614,000714: 40,2422 22002 CLR5 LXCH Q # USED 5BLANK BUT AVOIDS ITS TC GETINREL
014615,000715: 40,2423 02433 TC 5BLANK +2
014616,000716: 40,2424 67702 LEGALTST AD NEG1
014617,000717: 40,2425 00006 EXTEND
014618,000718: 40,2426 65205 BZMF ENDOFJOB # ILLEGAL. INREL=0,1
014619,000719: 40,2427 00002 TC Q # LEGAL. INREL GE 2
014620,000720:
014621,000721: # 5BLANK BLANKS 5 CHAR DISPLAY WORD IN R1, R2, OR R3. IT ALSO ZEROES XREG,
014622,000722: # YREG, OR ZREG. PLACE ANY + DSPCOUNT NUMBER FOR PERTINENT RC INTO DSPCOUNT.
014623,000723: # DSPCOUNT IS LEFT SET TO LEFT MOST DSP NUMB FOR RC JUST BLANKED.
014624,000724:
014625,000725: 40,2430 55202 -1 TS DSPCOUNT # NEEDED FOR BLANKSUB
014626,000726: 40,2431 22002 5BLANK LXCH Q
014627,000727: 40,2432 02221 TC GETINREL
014628,000728: 40,2433 34772 +2 CAF ZERO
014629,000729: 40,2434 50137 INDEX INREL
014630,000730: 40,2435 55204 TS VERBREG # ZERO X, Y, Z, REG.
014631,000731: 40,2436 50137 INDEX INREL
014632,000732: 40,2437 55207 TS XREGLP -2
014633,000733: 40,2440 54124 TS CODE
014634,000734: 40,2441 50137 INDEX INREL # ZERO PERTINENT DEC COMP BIT.
014635,000735: 40,2442 44762 CS BIT7 # PROTECT OTHERS
014636,000736: 40,2443 71203 MASK DECBRNCH
014637,000737: 40,2444 77700 MASK BRNCHCON # ZERO LOW 2 BITS.
014638,000738: 40,2445 55203 TS DECBRNCH
014639,000739: 40,2446 50137 INDEX INREL
014640,000740: 40,2447 32463 CAF SINBLANK -2 # BLANK ISOLATED CHAR SEPARATELY
014641,000741: 40,2450 54143 TS COUNT
014642,000742: 40,2451 03161 TC DSPIN
014643,000743: 40,2452 50137 5BLANK1 INDEX INREL
014644,000744: # # Page 333
014645,000745: 40,2453 32466 CAF DOUBLK -2
014646,000746: 40,2454 55202 TS DSPCOUNT
014647,000747: 40,2455 02473 TC 2BLANK
014648,000748: 40,2456 44767 CS TWO
014649,000749: 40,2457 27202 ADS DSPCOUNT
014650,000750: 40,2460 02473 TC 2BLANK
014651,000751: 40,2461 50137 INDEX INREL
014652,000752: 40,2462 34317 CAF R1D1 -2
014653,000753: 40,2463 55202 TS DSPCOUNT # SET DSPCOUNT TO LEFT MOST DSP NUMBER
014654,000754: 40,2464 00001 TC L # OF REG. JUST BLANKED
014655,000755:
014656,000756: 40,2465 00016 SINBLANK OCT 16 # DEC 14
014657,000757: 40,2466 00005 OCT 5
014658,000758: 40,2467 00004 OCT 4
014659,000759: 40,2470 00015 DOUBLK OCT 15 # DEC 13
014660,000760: 40,2471 00011 OCT 11 # DEC 9
014661,000761: 40,2472 00003 +2 OCT 3
014662,000762: 40,2473 7700 BRNCHCON EQUALS NEG3
014663,000763:
014664,000764: # 2BLANK BLANKS TWO CHAR. PLACE DSP NUMBER OF LEFT CHAR OF THE PAIR INTO
014665,000765: # DSPCOUNT. THIS NUMBER IS LEFT IN DSPCOUNT
014666,000766:
014667,000767: 40,2473 31202 2BLANK CA DSPCOUNT
014668,000768: 40,2474 54021 TS SR
014669,000769: 40,2475 44755 CS BLANKCON
014670,000770: 40,2476 00004 INHINT
014671,000771: 40,2477 50021 INDEX SR
014672,000772: 40,2500 57226 XCH DSPTAB
014673,000773: 40,2501 00006 EXTEND
014674,000774: 40,2502 62504 BZMF +2 # IF OLD CONTENTS -, NOUT OK
014675,000775: 40,2503 25221 INCR NOUT # IF OLD CONTENTS +, +1 TO NOUT
014676,000776: 40,2504 15642 TCF REQ # IF -, NOUT OK
014677,000777: 40,2505 4755 BLANKCON EQUALS BIT12
014678,000778:
014679,000779: # # Page 334
014680,000780: # ENTER PASS 0 IS THE EXECUTE FUNCTION. HIGHER ORDER ENTERS ARE TO LOAD
014681,000781: # DATA. THE SIGN OF REQRET DETERMINES THE PASS, + FOR PASS 0, - FOR HIGHER
014682,000782: # PASSES.
014683,000783:
014684,000784: # MACHINE CADR TO BE SPECIFIED (MCTBS) NOUNS DESIRE AN ECADR TO BE LOADED
014685,000785: # WHEN USED WITH LOAD VERBS, MONITOR VERBS, OR DISPLAY VERBS (EXCEPT
014686,000786: # VERB = FIXED MEMORY DISPLAY, WHICH REQUIRES AN FCADR).
014687,000787:
014688,000788: 41,2000 SETLOC PINBALL2
014689,000789: 41,2000 BANK
014690,000790:
014691,000791: 41,2000 COUNT* $$/PIN
014692,000792: 41,2000 41,3513 NVSUBB EQUALS NVSUB1
014693,000793: 41,2000 41,3001 LOADLV1 EQUALS LOADLV
014694,000794: 41,2000 34772 ENTER CAF ZERO
014695,000795: 41,2001 55220 TS CLPASS
014696,000796: 41,2002 34170 CAF ENDINST
014697,000797: 41,2003 54136 TS ENTRET
014698,000798: 41,2004 11216 CCS REQRET
014699,000799: 41,2005 02040 TC ENTPAS0 # IF +, PASS 0
014700,000800: 41,2006 02040 TC ENTPAS0 # IF +, PASS 0
014701,000801: 41,2007 02010 TC +1 # IF -, NOT PASS 0
014702,000802: 41,2010 32036 ENTPASHI CAF MMADREF
014703,000803: 41,2011 61216 AD REQRET # IF L/ 2 CHAR IN FOR MM CODE, ALARM
014704,000804: 41,2012 00006 EXTEND # AND RECYCLE (DECIDE AT MCHANG+1).
014705,000805: 41,2013 12025 BZF ACCEPTWD
014706,000806: 41,2014 36214 CAF THREE # IF DEC, L/ 5 CHAR IN FOR DATA MUST BE
014707,000807: 41,2015 71203 MASK DECBRNCH # SCALED (DECEND); IF 5 CHAR IN, DATA
014708,000808: 41,2016 10000 CCS A # HAS ALREADY BEEN SCALED. ANY NUMBER
014709,000809: 41,2017 02021 TC +2 # OF DECIMAL CHARACTERS ARE ACCEPTABLE.SCR
014710,000810: 41,2020 02025 TC ACCEPTWD # OCTAL. ANY NUMBER OF CHAR OK.
014711,000811: 41,2021 11202 CCS DSPCOUNT
014712,000812: 41,2022 02031 TC LT5
014713,000813: 41,2023 02031 TC LT5
014714,000814: 41,2024 02025 TC +1 # 5 CHAR IN (DSPCOUNT IS -)
014715,000815: 41,2025 41216 ACCEPTWD CS REQRET # 5 CHAR IN (DSPCOUNT IS -)
014716,000816: 41,2026 55216 TS REQRET # SET REQRET +.
014717,000817: 41,2027 04417 TC FLASHOFF
014718,000818: 41,2030 01216 TC REQRET
014719,000819:
014720,000820: 41,2031 34772 LT5 CAF ZERO
014721,000821: 41,2032 54154 TS MPAC
014722,000822: 41,2033 04636 TC BANKCALL
014723,000823: 41,2034 60165 CADR DECEND +4
014724,000824: 41,2035 02025 TC ACCEPTWD
014725,000825: 41,2036 03377 MMADREF ADRES MMCHANG +1 # ASSUMES TC REQMM AT MMCHANG.
014726,000826:
014727,000827: 41,2037 00034 LOWVERB DEC 28 B-14 # LOWER VERB THAT AVOIDS NOUN TEST.
014728,000828:
014729,000829: # # Page 335
014730,000830: 41,2040 34772 ENTPAS0 CAF ZERO # NOUN VERB SUB ENTERS HERE
014731,000831: 41,2041 55203 TS DECBRNCH
014732,000832: 41,2042 04261 TC -VD1SET
014733,000833: 41,2043 41204 TESTVB CS VERBREG # IF VERB IS G/E LOWVB, SKIP NOUN TEST.
014734,000834: 41,2044 55244 TS VERBSAVE # SAVE VERB FOR POSSIBLE RECYCLE.
014735,000835: 41,2045 62037 AD LOWVERB # LOWVERB - VB
014736,000836: 41,2046 00006 EXTEND
014737,000837: 41,2047 62133 BZMF VERBFAN # VERB G/E LOWVERB
014738,000838: 41,2050 00006 TESTNN EXTEND # VERB L/ LOWVERB
014739,000839: 41,2051 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
014740,000840: 41,2052 52006 DXCH Z # ROUTINE.
014741,000841: 41,2053 50140 INDEX MIXBR
014742,000842: 41,2054 02054 TC +0
014743,000843: 41,2055 02057 TC +2 # NORMAL
014744,000844: 41,2056 02220 TC MIXNOUN # MIXED
014745,000845: 41,2057 10146 CCS NNADTEM # NORMAL
014746,000846: 41,2060 02131 TC VERBFAN -2 # NORMAL IF +
014747,000847: 41,2061 02350 TC GODSPALM # NOT IN USE IF +0
014748,000848: 41,2062 02066 TC REQADD # SPECIFY MACHINE CADR IF -
014749,000849: 41,2063 25222 INCR NOUNCADR # AUGMENT MACHINE CADR IF -0
014750,000850: 41,2064 04313 TC SETNADD # ECADR FROM NOUNCADR, SETS EB, NOUNADD.
014751,000851: 41,2065 02120 TC INTMCTBS +2
014752,000852: 41,2066 34752 REQADD CAF BIT15 # SET CLPASS FOR PASS 0 ONLY
014753,000853: 41,2067 55220 TS CLPASS
014754,000854: 41,2070 44170 CS ENDINST # TEST IF REACHED HERE FROM INTERNAL OR
014755,000855: 41,2071 60136 AD ENTEXIT # FROM EXTERNAL
014756,000856: 41,2072 00006 EXTEND
014757,000857: 41,2073 12075 BZF +2 # EXTERNAL MACH CADR TO BE SPECIFIED
014758,000858: 41,2074 02116 TC INTMCTBS
014759,000859: 41,2075 02304 TC REQDATZ # EXTERNAL MACH CADR TO BE SPECIFIED
014760,000860: 41,2076 11203 CCS DECBRNCH # ALARM AND RECYCLE IF DECIMAL USED
014761,000861: 41,2077 04173 TC ALMCYCLE # FOR MCTBS.
014762,000862: 41,2100 04261 TC -VD1SET
014763,000863: 41,2101 11245 CCS CADRSTOR
014764,000864: 41,2102 02105 TC +3 # EXTERNAL MCTBS DISPLAY WILL LEAVE FLASH
014765,000865: 41,2103 02106 TC USEADD # ON IF ENDIDLE NOT = +0.
014766,000866: 41,2104 02105 TC +1
014767,000867: 41,2105 04360 TC FLASHON
014768,000868: 41,2106 57210 USEADD XCH ZREG
014769,000869: 41,2107 04305 TC SETNCADR # ECADR INTO NOUNCADR, SET EB, NOUNADD.
014770,000870: 41,2110 00006 EXTEND
014771,000871: 41,2111 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
014772,000872: 41,2112 52006 DXCH Z # ROUTINE.
014773,000873: 41,2113 02133 TC VERBFAN
014774,000874:
014775,000875: 41,2114 1202 EBANK= DSPCOUNT
014776,000876: 41,2114 02056 64102 LODNNLOC 2CADR LODNNTAB
014777,000877:
014778,000878: 41,2116 30156 INTMCTBS CA MPAC +2 # INTERNAL MACH CADR TO BE SPECIFIED.
014779,000879: # # Page 336
014780,000880: 41,2117 04305 TC SETNCADR # ECADR INTO NOUNCADR. SET EB, NOUNADD.
014781,000881: 41,2120 44773 +2 CS FIVE # NVSUB CALL LEFT CADR IN MPAC+2 FOR MACH
014782,000882: 41,2121 61204 AD VERBREG # CADR TO BE SPECIFIED.
014783,000883: 41,2122 00006 EXTEND
014784,000884: 41,2123 12133 BZF VERBFAN # DONT DISPLAY CADR IF VB = 05.
014785,000885: 41,2124 34323 CAF R3D1 # VB NOT = 05. DISPLAY CADR.
014786,000886: 41,2125 55202 TS DSPCOUNT
014787,000887: 41,2126 31222 CA NOUNCADR
014788,000888: 41,2127 03351 TC DSPOCTWO
014789,000889: 41,2130 02133 TC VERBFAN
014790,000890:
014791,000891: 41,2131 64770 -2 AD ONE
014792,000892: 41,2132 04305 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD.
014793,000893: 41,2133 45004 VERBFAN CS LST2CON
014794,000894: 41,2134 61204 AD VERBREG # VERB-LST2CON
014795,000895: 41,2135 10000 CCS A
014796,000896: 41,2136 64770 AD ONE # VERB G/ LST2CON
014797,000897: 41,2137 02141 TC +2
014798,000898: 41,2140 02145 TC VBFANDIR # VERB L/ LST2CON
014799,000899: 41,2141 54154 TS MPAC
014800,000900: 41,2142 04432 TC RELDSP # RELEASE DISPLAY SYST
014801,000901: 41,2143 04655 TC POSTJUMP # GO TO GOEXTVB WITH VB-40 IN MPAC.
014802,000902: 41,2144 66000 CADR GOEXTVB
014803,000903: 41,2145 5004 LST2CON EQUALS OCT50 # DEC40-FIRST EXTENDED VERB
014804,000904: 41,2145 51204 VBFANDIR INDEX VERBREG
014805,000905: 41,2146 32150 CAF VERBTAB
014806,000906: 41,2147 04660 TC BANKJUMP
014807,000907:
014808,000908: 41,2150 62350 VERBTAB CADR GODSPALM # VB00 ILLEGAL
014809,000909: 41,2151 62364 CADR DSPA # VB01 DISPLAY OCT COMP 1 (R1)
014810,000910: 41,2152 62372 CADR DSPB # VB02 DISPLAY OCT COMP 2 (R1)
014811,000911: 41,2153 62377 CADR DSPC # VB03 DISPLAY OCT COMP 3 (R1)
014812,000912: 41,2154 62357 CADR DSPAB # VB04 DISPLAY OCT COMP 1,2 (R1,R2)
014813,000913: 41,2155 62352 CADR DSPABC # VB05 DISPLAY OCT COMP 1,2,3 (R1,R2,R3)
014814,000914: 41,2156 62516 CADR DECDSP # VB06 DECIMAL DISPLAY
014815,000915: 41,2157 60657 CADR DSPDPDEC # VB07 DP DECIMAL DISPLAY (R1,R2)
014816,000916: 41,2160 62350 CADR GODSPALM # VB08 SPARE
014817,000917: 41,2161 62350 CADR GODSPALM # VB09 SPARE
014818,000918: 41,2162 61261 CADR DSPALARM # VB10 SPARE
014819,000919: 41,2163 63224 CADR MONITOR # VB11 MONITOR OCT COMP 1 (R1)
014820,000920: 41,2164 63224 CADR MONITOR # VB12 MONITOR OCT COMP 2 (R1)
014821,000921: 41,2165 63224 CADR MONITOR # VB13 MONITOR OCT COMP 3 (R1)
014822,000922: 41,2166 63224 CADR MONITOR # VB14 MONITOR OCT COMP 1,2 (R1,R2)
014823,000923: 41,2167 63224 CADR MONITOR # VB15 MONITOR OCT COMP 1,2,3 (R1,R2,R3)
014824,000924: 41,2170 63224 CADR MONITOR # VB16 MONITOR DECIMAL
014825,000925: 41,2171 63224 CADR MONITOR # VB17 MONITOR DP DEC (R1,R2)
014826,000926: 41,2172 62350 CADR GODSPALM # VB18 SPARE
014827,000927: 41,2173 62350 CADR GODSPALM # VB19 SPARE
014828,000928: 41,2174 62350 CADR GODSPALM # VB20 SPARE
014829,000929: 41,2175 62741 CADR ALOAD # VB21 LOAD COMP 1 (R1)
014830,000930: # # Page 337
014831,000931: 41,2176 62750 CADR BLOAD # VB22 LOAD COMP 2 (R2)
014832,000932: 41,2177 62765 CADR CLOAD # VB23 LOAD COMP 3 (R3)
014833,000933: 41,2200 62716 CADR ABLOAD # VB24 LOAD COMP 1,2 (R1,R2)
014834,000934: 41,2201 62611 CADR ABCLOAD # VB25 LOAD COMP 1,2,3 (R1,R2,R3)
014835,000935: 41,2202 62350 CADR GODSPALM # VB26 SPARE
014836,000936: 41,2203 63341 CADR DSPFMEM # VB27 FIXED MEMORY DISPLAY
014837,000937: # THE FOLLOWING VERBS MAKE NO NOUN TEST
014838,000938: 41,2204 62350 CADR GODSPALM # VB28 SPARE
014839,000939: 41,2205 62350 CADR GODSPALM # VB29 SPARE
014840,000940: 41,2206 63433 REQEXLQC CADR VBRQEXEC # VB30 REQUEST EXECUTIVE
014841,000941: 41,2207 63462 CADR VBRQWAIT # VB31 REQUEST WAITLIST
014842,000942: 41,2210 61323 CADR VBRESEQ # VB32 RESEQUENCE
014843,000943: 41,2211 61301 CADR VBPROC # VB33 PROCEED WITHOUT DATA
014844,000944: 41,2212 61307 CADR VBTERM # VB34 TERMINATE CURRENT TEST OR LOAD REQ
014845,000945: 41,2213 61432 CADR VBTSTLTS # VB35 TEST LIGHTS
014846,000946: 41,2214 12367 CADR SLAP1 # VB36 FRESH START
014847,000947: 41,2215 63376 CADR MMCHANG # VB37 CHANGE MAJOR MODE
014848,000948: 41,2216 62350 CADR GODSPALM # VB38 SPARE
014849,000949: 41,2217 62350 CADR GODSPALM # VB39 SPARE
014850,000950:
014851,000951: # THE LIST2 VERBFAN IS LOCATED IN THE EXTENDED VERB BANK.
014852,000952:
014853,000953: # # Page 338
014854,000954:
014855,000955: # NNADTAB CONTAINS A RELATIVE ADDRESS, IDADDREL (IN LOW 10 BITS), REFERRING
014856,000956: # TO WHERE 3 CONSECUTIVE ADDRESSES ARE STORED (IN IDADDTAB).
014857,000957: # MIXNOUN GETS DATA AND STORES IN MIXTEMP,+1,+2. IT SETS NOUNADD FOR
014858,000958: # MIXTEMP.
014859,000959:
014860,000960: 41,2220 10146 MIXNOUN CCS NNADTEM
014861,000961: 41,2221 02225 TC +4 # + IN USE
014862,000962: 41,2222 02350 TC GODSPALM # +0 NOT IN USE
014863,000963: 41,2223 02225 TC +2 # - IN USE
014864,000964: 41,2224 02225 TC +1 # -0 IN USE
014865,000965: 41,2225 46211 CS SIX
014866,000966: 41,2226 61204 AD VERBREG
014867,000967: 41,2227 00006 EXTEND
014868,000968: 41,2230 62232 BZMF +2 # VERB L/E 6
014869,000969: 41,2231 02133 TC VERBFAN # AVOID MIXNOUN SWAP IF VB NOT = DISPLAY
014870,000970: 41,2232 34767 CAF TWO
014871,000971: 41,2233 54117 MIXNN1 TS DECOUNT
014872,000972: 41,2234 62257 AD MIXAD
014873,000973: 41,2235 54145 TS NOUNADD # SET NOUNADD TO MIXTEMP + K
014874,000974: 41,2236 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K
014875,000975: 41,2237 30150 CA IDAD1TEM # OF NOUN.
014876,000976: 41,2240 54122 TS NOUNTEM
014877,000977: # TEST FOR DP (FOR OCT DISPLAY). IF SO, GET
014878,000978: # MINOR PART ONLY.
014879,000979: 41,2241 03033 TC SFRUTMIX # GET SF ROUT NUMBER IN A
014880,000980: 41,2242 02260 TC DPTEST
014881,000981: 41,2243 02245 TC MIXNN2 # NO DP
014882,000982: 41,2244 24122 INCR NOUNTEM # DP GET MINOR PART
014883,000983: 41,2245 30122 MIXNN2 CA NOUNTEM
014884,000984: 41,2246 74347 MASK LOW11 # ESUBK (NO DP) OR (ESUBK)+1 FOR DP.
014885,000985: 41,2247 04315 TC SETEBANK # SET EBANK, LEAVE EADRES IN A.
014886,000986: 41,2250 50000 INDEX A # PICK UP C(ESUBK) NOT DP.
014887,000987: 41,2251 30000 CA 0 # OR C((ESUBK)+1) FOR DP MINOR PART
014888,000988: 41,2252 50145 INDEX NOUNADD
014889,000989: 41,2253 56000 XCH 0 # STORE IN MIXTEM + K
014890,000990: 41,2254 10117 CCS DECOUNT
014891,000991: 41,2255 02233 TC MIXNN1
014892,000992: 41,2256 02133 TC VERBFAN
014893,000993:
014894,000994: 41,2257 00125 MIXAD TC MIXTEMP
014895,000995:
014896,000996: # DPTEST ENTER WITH SF ROUT NUMBER IN A.
014897,000997: # RETURNS TO L+1 IF NO DP.
014898,000998: # RETURNS TO L+2 IF DP.
014899,000999:
014900,001000: 41,2260 50000 DPTEST INDEX A
014901,001001: 41,2261 12262 TCF +1
014902,001002: 41,2262 00002 TC Q # OCTAL ONLY NO DP
014903,001003: 41,2263 00002 TC Q # FRACT NO DP
014904,001004: # # Page 339
014905,001005: 41,2264 00002 TC Q # DEG NO DP
014906,001006: 41,2265 00002 TC Q # ARITH NO DP
014907,001007: 41,2266 16706 TCF DPTEST1 # DP1OUT
014908,001008: 41,2267 16706 TCF DPTEST1 # DP2OUT
014909,001009: 41,2270 00002 TC Q # DPDEG NO DP
014910,001010: 41,2271 16706 TCF DPTEST1 # DP3OUT
014911,001011: 41,2272 00002 TC Q # HMS NO DP
014912,001012: 41,2273 00002 TC Q # M/S NO DP
014913,001013: 41,2274 16706 TCF DPTEST1 # DP4OUT
014914,001014: 41,2275 00002 TC Q # ARITH1 NO DP
014915,001015: 41,2276 00002 TC Q # 2INTOUT NO DP TO GET HI PART IN MPAC
014916,001016: 41,2277 16706 TCF DPTEST1 # DPFRACOT
014917,001017: 41,2300 6706 DPTEST1 EQUALS Q+1
014918,001018: 41,2300 34321 REQDATX CAF R1D1
014919,001019: 41,2301 12305 TCF REQCOM
014920,001020: 41,2302 34322 REQDATY CAF R2D1
014921,001021: 41,2303 12305 TCF REQCOM
014922,001022: 41,2304 34323 REQDATZ CAF R3D1
014923,001023: 41,2305 55202 REQCOM TS DSPCOUNT
014924,001024: 41,2306 40002 CS Q
014925,001025: 41,2307 55216 TS REQRET
014926,001026: 41,2310 04636 TC BANKCALL
014927,001027: 41,2311 60431 CADR 5BLANK
014928,001028: 41,2312 04360 TC FLASHON
014929,001029: 41,2313 00136 ENDRQDAT TC ENTEXIT
014930,001030:
014931,001031: 41,2314 30157 -2 CA MPAC +3
014932,001032: 41,2315 55205 -1 TS NOUNREG
014933,001033: 41,2316 56002 UPDATNN XCH Q
014934,001034: 41,2317 54117 TS UPDATRET
014935,001035: 41,2320 00006 EXTEND
014936,001036: 41,2321 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
014937,001037: 41,2322 52006 DXCH Z # ROUTINE.
014938,001038: 41,2323 10146 CCS NNADTEM
014939,001039: 41,2324 64770 AD ONE # NORMAL
014940,001040: 41,2325 12330 TCF PUTADD
014941,001041: 41,2326 12331 TCF PUTADD +1 # MCTBS DONT CHANGE NOUNADD
014942,001042: 41,2327 12331 TCF PUTADD +1 # MCTBI DONT CHANGE NOUNADD
014943,001043: 41,2330 04305 PUTADD TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD.
014944,001044: 41,2331 34352 CAF ND1
014945,001045: 41,2332 55202 TS DSPCOUNT
014946,001046: 41,2333 31205 CA NOUNREG
014947,001047: 41,2334 12344 TCF UPDAT1
014948,001048:
014949,001049: 41,2335 30160 -2 CA MPAC +4
014950,001050: 41,2336 55204 -1 TS VERBREG
014951,001051: 41,2337 56002 UPDATVB XCH Q
014952,001052: 41,2340 54117 TS UPDATRET
014953,001053: 41,2341 34351 CAF VD1
014954,001054: 41,2342 55202 TS DSPCOUNT
014955,001055: # # Page 340
014956,001056: 41,2343 31204 CA VERBREG
014957,001057: 41,2344 04655 UPDAT1 TC POSTJUMP # CANT USE SWCALL TO GO TC DSPDECVN, SINCE
014958,001058: 41,2345 61156 CADR GOVNUPDT # UPDATVB CAN ITSELF BE CALLED BY SWCALL.
014959,001059: 41,2346 00117 +2 TC UPDATRET
014960,001060:
014961,001061: 41,2347 04173 GOALMCYC TC ALMCYCLE # NEEDED BECAUSE BANKJUMP CANT HANDLE F/F.
014962,001062:
014963,001063: 41,2350 04655 GODSPALM TC POSTJUMP
014964,001064: 41,2351 61261 CADR DSPALARM
014965,001065:
014966,001066: # # Page 341
014967,001067:
014968,001068: # NOUN TABLES
014969,001069:
014970,001070: # NOUN CODE L/40, NORMAL NOUN CASE. NOUN CODE G/E 40, MIXED NOUN CASE.
014971,001071: # FOR NORMAL CASE, NNADTAB CONTAINS ONE ECADR FOR EACH NOUN.
014972,001072: # +0 INDICATES NOUN NOT USED. - ENTRY INDICATES MACHINE CADR (E OR F) TO
014973,001073: # BE SPECIFIED. -1 INDICATES CHANNEL TO BE SPECIFIED. -0 INDICATES AUGMENT
014974,001074: # OF LAST MACHINE CADR SUPPLIED.
014975,001075:
014976,001076: # FOR MIXED CASE, NNADTAB CONTAINS ONE INDIRECT ADDRESS (IDADDREL) IN LOW
014977,001077: # 10 BITS, AND THE COMPONENT CODE NUMBER IN THE HIGH 5 BITS.
014978,001078:
014979,001079: # NNTYPTAB IS A PACKED TABLE OF THE FORM MMMMMNNNNNPPPPP.
014980,001080:
014981,001081: # FOR THE NORMAL CASE, M'S ARE THE COMPONENT CODE NUMBER.
014982,001082: # N'S ARE THE SF ROUTINE CODE NUMBER.
014983,001083: # P'S ARE THE SF CONSTANT CODE NUMBER.
014984,001084:
014985,001085: # MIXED-CASE, M'S ARE THE SF CONSTANT3 CODE NUMBER 3 COMPONENT CASE
014986,001086: # N'S ARE THE SF CONSTANT2 CODE NUMBER
014987,001087: # P'S ARE THE SF CONSTANT1 CODE NUMBER
014988,001088: # N'S ARE THE SF CONSTANT2 CODE NUMBER 2 COMPONENT CASE
014989,001089: # P'S ARE THE SF CONSTANT1 CODE NUMBER
014990,001090: # P'S ARE THE SF CONSTANT1 CODE NUMBER 1 COMPONENT CASE
014991,001091:
014992,001092: # THERE IS ALSO AN INDIRECT ADDRESS TABLE (IDADDTAB) FOR MIXED CASE ONLY.
014993,001093: # EACH ENTRY CONTAINS ONE ECADR. IDADDREL IS THE RELATIVE ADDRESS OF
014994,001094: # THE FIRST OF THESE ENTRIES.
014995,001095: # THERE IS ONE ENTRY IN THIS TABLE FOR EACH COMPONENT OF A MIXED NOUN
014996,001096: # THEY ARE LISTED IN ORDER OF ASCENDING K.
014997,001097:
014998,001098: # THERE IS ALSO A SCALE FACTOR ROUTINE NUMBER TABLE (RUTMXTAB) FOR MIXED
014999,001099: # CASE ONLY. THERE IS ONE ENTRY PER MIXED NOUN. THE FORM IS,
015000,001100:
015001,001101: # QQQQQRRRRRSSSSS
015002,001102:
015003,001103: # Q'S ARE THE SF ROUTINE 3 CODE NUMBER 3 COMPONENT CASE
015004,001104: # R'S ARE THE SF ROUTINE 2 CODE NUMBER
015005,001105: # S'S ARE THE SF ROUTINE 1 CODE NUMBER
015006,001106: # R'S ARE THE SF ROUTINE 2 CODE NUMBER 2 COMPONENT CASE
015007,001107: # S'S ARE THE SF ROUTINE 1 CODE NUMBER
015008,001108:
015009,001109: # IN OCTAL DISPLAY AND LOAD (OCT OR DEC) VERBS, EXCLUDE USE OF VERBS WHOSE
015010,001110: # COMPONENT NUMBER IS GREATER THAN THE NUMBER OF COMONENTS IN NOUN.
015011,001111: # (ALL MACHINE ADDRESS TO BE SPECIFIED NOUNS ARE 3 COMPONENT.)
015012,001112:
015013,001113: # IN MULTI-COMPONENT LOAD VERBS, NO MIXING OF OCTAL AND DECIMAL DATA
015014,001114: # COMPONENT WORDS IS ALLOWED. ALARM IF VIOLATION.
015015,001115:
015016,001116: # IN DECIMAL LOADS OF DATA, 5 NUMERICAL CHARACTERS MUST BE KEYED IN
015017,001117: # BEFORE EACH ENTER. IF NOT, ALARM.
015018,001118:
015019,001119: # # Page 342
015020,001120:
015021,001121: # DISPLAY VERBS
015022,001122:
015023,001123: 41,2352 44767 DSPABC CS TWO
015024,001124: 41,2353 02423 TC COMPTEST
015025,001125: 41,2354 50145 INDEX NOUNADD
015026,001126: 41,2355 40002 CS 2
015027,001127: 41,2356 56132 XCH BUF +2
015028,001128: 41,2357 44770 DSPAB CS ONE
015029,001129: 41,2360 02423 TC COMPTEST
015030,001130: 41,2361 50145 INDEX NOUNADD
015031,001131: 41,2362 40001 CS 1
015032,001132: 41,2363 56131 XCH BUF +1
015033,001133: 41,2364 44772 DSPA CS ZERO
015034,001134: 41,2365 02436 TC DCOMPTST
015035,001135: 41,2366 02461 TC TSTFORDP
015036,001136: 41,2367 50145 INDEX NOUNADD
015037,001137: 41,2370 40000 CS 0
015038,001138: 41,2371 02403 TC DSPCOM1
015039,001139: 41,2372 44770 DSPB CS ONE
015040,001140: 41,2373 02436 TC DCOMPTST
015041,001141: 41,2374 50145 INDEX NOUNADD
015042,001142: 41,2375 40001 CS 1
015043,001143: 41,2376 02403 TC DSPCOM1
015044,001144: 41,2377 44767 DSPC CS TWO
015045,001145: 41,2400 02436 TC DCOMPTST
015046,001146: 41,2401 50145 INDEX NOUNADD
015047,001147: 41,2402 40002 CS 2
015048,001148: 41,2403 56130 DSPCOM1 XCH BUF
015049,001149: 41,2404 44767 DSPCOM2 CS TWO # A B C AB ABC
015050,001150: 41,2405 61204 AD VERBREG # -1 -0 +1 +2 +3 IN A
015051,001151: 41,2406 10000 +2 CCS A # +0 +0 +0 +1 +2 IN A AFTER CCS
015052,001152: 41,2407 02412 TC DSPCOM3
015053,001153: 41,2410 00136 TC ENTEXIT
015054,001154: 41,2411 02412 TC +1
015055,001155: 41,2412 54122 DSPCOM3 TS DISTEM # +0 +1 +2 INTO DISTEM
015056,001156: 41,2413 50000 INDEX A
015057,001157: 41,2414 34321 CAF R1D1
015058,001158: 41,2415 55202 TS DSPCOUNT
015059,001159: 41,2416 50122 INDEX DISTEM
015060,001160: 41,2417 40130 CS BUF
015061,001161: 41,2420 03351 TC DSPOCTWO
015062,001162: 41,2421 56122 XCH DISTEM
015063,001163: 41,2422 02406 TC DSPCOM2 +2
015064,001164:
015065,001165: # COMPTEST ALARMS IF COMPONENT NUMBER OF VERB (LOAD OR OCT DISPLAY) IS
015066,001166: # GREATER THAN THE HIGHEST COMPONENT NUMBER OF NOUN.
015067,001167:
015068,001168: 41,2423 54123 COMPTEST TS SFTEMP1 # - VERB COMP
015069,001169: 41,2424 22002 LXCH Q
015070,001170: 41,2425 02510 COMPTST1 TC GETCOMP
015071,001171: 41,2426 04333 TC LEFT5
015072,001172: 41,2427 76214 MASK THREE # NOUN COMP
015073,001173: # # Page 343
015074,001174: 41,2430 60123 AD SFTEMP1 # NOUN COMP - VERB COMP
015075,001175: 41,2431 10000 CCS A
015076,001176: 41,2432 00001 TC L # NOUN COMP G/ VERB COMP
015077,001177: 41,2433 04151 MONBACK ADRES PASTEVB # CANNOT GET HERE
015078,001178: 41,2434 02350 TC GODSPALM # NOUN COMP L/ VERB COMP
015079,001179: 41,2435 00001 NDCMPTST TC L # NOUN COMP = VERB COMP
015080,001180:
015081,001181: # DCOMPTST ALARMS IF DECIMAL ONLY BIT (BIT4 OF COMP CODE NUMBER) = 1.
015082,001182: # IF NOT, IT PERFORMS REGULAR COMPTEST.
015083,001183:
015084,001184: 41,2436 54123 DCOMPTST TS SFTEMP1 # - VERB COMP
015085,001185: 41,2437 22002 LXCH Q
015086,001186: 41,2440 02510 TC GETCOMP
015087,001187: 41,2441 74753 MASK BIT14
015088,001188: 41,2442 10000 CCS A
015089,001189: 41,2443 02350 TC GODSPALM
015090,001190: 41,2444 02425 TC COMPTST1
015091,001191: 41,2445 22002 DCTSTCYC LXCH Q # ALARMS AND RECYCLES IF DEC ONLY BIT = 1
015092,001192: 41,2446 02510 TC GETCOMP # (BIT4 OF COMP CODE NUMBER). RETURNS
015093,001193: 41,2447 74753 MASK BIT14 # IF NOT. USED BY LOAD VERBS.
015094,001194: 41,2450 10000 CCS A
015095,001195: 41,2451 04173 TC ALMCYCLE
015096,001196: 41,2452 00001 TC L
015097,001197:
015098,001198: # NOUNTEST ALARMS IF NO-LOAD BIT (BIT5 OF COMP CODE NUMBER) = 1.
015099,001199: # IF NOT, IT RETURNS.
015100,001200:
015101,001201: 41,2453 22002 NOUNTEST LXCH Q
015102,001202: 41,2454 02510 TC GETCOMP
015103,001203: 41,2455 10000 CCS A
015104,001204: 41,2456 00001 TC L
015105,001205: 41,2457 00001 TC L
015106,001206: 41,2460 02350 TC GODSPALM
015107,001207:
015108,001208: 41,2461 22002 TSTFORDP LXCH Q # TEST FOR DP. IF SO, GET MINOR PART ONLY.
015109,001209: 41,2462 30146 CA NNADTEM
015110,001210: 41,2463 64770 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED
015111,001211: 41,2464 00006 EXTEND
015112,001212: 41,2465 12477 BZF CHANDSP
015113,001213: 41,2466 50140 INDEX MIXBR
015114,001214: 41,2467 02467 TC +0
015115,001215: 41,2470 02472 TC +2 # NORMAL
015116,001216: 41,2471 00001 TC L # MIXED CASE ALREADY HANDLED IN MIXNOUN
015117,001217: 41,2472 03025 TC SFRUTNOR
015118,001218: 41,2473 02260 TC DPTEST
015119,001219: 41,2474 00001 TC L # NO DP
015120,001220: 41,2475 24145 INCR NOUNADD # DP E+1 INTO NOUNADD FOR MINOR PART.
015121,001221: 41,2476 00001 TC L
015122,001222:
015123,001223: # # Page 344
015124,001224:
015125,001225: 41,2477 31222 CHANDSP CA NOUNCADR
015126,001226: 41,2500 75021 MASK LOW9
015127,001227: 41,2501 00006 EXTEND
015128,001228: 41,2502 50000 INDEX A
015129,001229: 41,2503 00000 READ 0
015130,001230: 41,2504 40000 CS A
015131,001231: 41,2505 12403 TCF DSPCOM1
015132,001232:
015133,001233: 41,2506 00147 COMPICK ADRES NNTYPTEM
015134,001234: 41,2507 00146 ADRES NNADTEM
015135,001235:
015136,001236: 41,2510 50140 GETCOMP INDEX MIXBR # NORMAL MIXED
015137,001237: 41,2511 32505 CAF COMPICK -1 # ADRES NNTYPTEM ADRES NNADTEM
015138,001238: 41,2512 50000 INDEX A
015139,001239: 41,2513 30000 CA 0 # C(NNTYPTEM) C(NNADTEM)
015140,001240: 41,2514 74344 MASK HI5 # GET HI5 OF NNTYPTAB (NORM) OF NNADTAB (MIX)
015141,001241: 41,2515 00002 TC Q
015142,001242:
015143,001243: 41,2516 02510 DECDSP TC GETCOMP
015144,001244: 41,2517 04333 TC LEFT5
015145,001245: 41,2520 76214 MASK THREE
015146,001246: 41,2521 54117 TS DECOUNT # COMP NUMBER INTO DECOUNT
015147,001247: 41,2522 54122 DSPDCGET TS DECTEM # PICKS UP DATA
015148,001248: 41,2523 60145 AD NOUNADD # DECTEM 1COMP +0, 2COMP +1, 3COMP +2
015149,001249: 41,2524 50000 INDEX A
015150,001250: 41,2525 40000 CS 0
015151,001251: 41,2526 50122 INDEX DECTEM
015152,001252: 41,2527 57206 XCH XREG # CANT USE BUF SINCE DMP USES IT.
015153,001253: 41,2530 10122 CCS DECTEM
015154,001254: 41,2531 02522 TC DSPDCGET # MORE TO GET
015155,001255: 41,2532 34772 DSPDCPUT CAF ZERO # DISPLAYS DATA
015156,001256: 41,2533 54155 TS MPAC +1 # DECOUNT 1COMP +0, 2COMP +1, 3COMP +2
015157,001257: 41,2534 54156 TS MPAC +2
015158,001258: 41,2535 50117 INDEX DECOUNT
015159,001259: 41,2536 34321 CAF R1D1
015160,001260: 41,2537 55202 TS DSPCOUNT
015161,001261: 41,2540 50117 INDEX DECOUNT
015162,001262: 41,2541 41206 CS XREG
015163,001263: 41,2542 54154 TS MPAC
015164,001264: 41,2543 03042 TC SFCONUM # 2X (SF CON NUMB) IN A
015165,001265: 41,2544 54123 TS SFTEMP1
015166,001266: 41,2545 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE
015167,001267: 41,2546 32560 DCA GTSFOUTL # READING ROUTINE.
015168,001268: 41,2547 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2
015169,001269: 41,2550 50140 INDEX MIXBR
015170,001270: 41,2551 02551 TC +0
015171,001271: 41,2552 02555 TC DSPSFNOR
015172,001272: 41,2553 03033 TC SFRUTMIX
015173,001273: # # Page 345
015174,001274: 41,2554 02570 TC DECDSP3
015175,001275:
015176,001276: 41,2555 03025 DSPSFNOR TC SFRUTNOR
015177,001277: 41,2556 02570 TC DECDSP3
015178,001278:
015179,001279: 41,2557 1202 EBANK= DSPCOUNT
015180,001280: 41,2557 02114 64102 GTSFOUTL 2CADR GTSFOUT
015181,001281:
015182,001282: 41,2561 04636 DSPDCEND TC BANKCALL # ALL SFOUT ROUTINES END HERE
015183,001283: 41,2562 61072 CADR DSPDECWD
015184,001284: 41,2563 10117 +2 CCS DECOUNT
015185,001285: 41,2564 02566 TC +2
015186,001286: 41,2565 00136 TC ENTEXIT
015187,001287: 41,2566 54117 TS DECOUNT
015188,001288: 41,2567 02532 TC DSPDCPUT # MORE TO DISPLAY
015189,001289:
015190,001290: 41,2570 50000 DECDSP3 INDEX A
015191,001291: 41,2571 32573 CAF SFOUTABR
015192,001292: 41,2572 04660 TC BANKJUMP
015193,001293:
015194,001294: 41,2573 61260 SFOUTABR CADR PREDSPAL # ALARM IF DEC DISP WITH OCTAL ONLY NOUN
015195,001295: 41,2574 62561 CADR DSPDCEND
015196,001296: 41,2575 60531 CADR DEGOUTSF
015197,001297: 41,2576 60563 CADR ARTOUTSF
015198,001298: 41,2577 60574 CADR DP1OUTSF
015199,001299: 41,2600 60601 CADR DP2OUTSF
015200,001300: 41,2601 60505 CADR OPDEGOUT
015201,001301: 41,2602 60603 CADR DP3OUTSF
015202,001302: 41,2603 65137 CADR HMSOUT
015203,001303: 41,2604 65212 CADR M/SOUT
015204,001304: 41,2605 60601 CADR DP2OUTSF
015205,001305: 41,2606 60570 CADR AROUT1SF
015206,001306: 41,2607 60616 CADR 2INTOUT
015207,001307: 41,2610 60633 CADR DPFRACOT
015208,001308:
015209,001309: # THE FOLLOWING IS A TYPICAL SF ROUTINE. IT USES MPAC. LEAVES RESULTS
015210,001310: # IN MPAC, MPAC+1. ENDS WITH TC DSPDCEND
015211,001311:
015212,001312: 40,2000 SETLOC PINBALL1
015213,001313: 40,2000 BANK
015214,001314: 40,2505 COUNT* $$/PIN
015215,001315:
015216,001316: # OPDEGOUT SCALES BY .45 (THE RANGE IS 90 DEGREES) AND ADDS A 20 DEG BIAS.
015217,001317:
015218,001318: 40,2505 10154 OPDEGOUT CCS MPAC # RANGE IS 90 DEG
015219,001319: 40,2506 56154 XCH MPAC # IF POS OR POS 0 THEN ADD BIAS AND
015220,001320: 40,2507 02512 TC +3 # CORRECT FOR POSSIBLE OVERFLOW
015221,001321: 40,2510 02521 TC NEGOPT # IF NEG NON ZERO
015222,001322: # # Page 346
015223,001323: 40,2511 67702 AD NEG1 # IF NEG ZERO SUBTRACT 1
015224,001324: 40,2512 62562 AD 20BIAS
015225,001325: 40,2513 54154 BIASCOM TS MPAC # TEST FOR OVEFLOW
015226,001326: 40,2514 02517 TC +3 # NO OVFLOW
015227,001327: 40,2515 34752 CAF BIT15 # IF OVFLOW
015228,001328: 40,2516 26154 ADS MPAC
015229,001329: 40,2517 34767 CAF TWO # SET MULTIPLIER TO .45
015230,001330: 40,2520 02532 TC DEGOUTSF +1
015231,001331:
015232,001332: 40,2521 56154 NEGOPT XCH MPAC # NEGATIVE CASE
015233,001333: 40,2522 62562 AD 20BIAS
015234,001334: 40,2523 10000 CCS A
015235,001335: 40,2524 02513 TC BIASCOM # IF POS THEN SUBTRACT 1 BECASUE OF 2SCOM
015236,001336: 40,2525 71527 NEG.2 OCT -06250 # =.197753906 TRUN BIAS (CANNOT GET HERE)
015237,001337: 40,2526 64770 AD ONE # IF NEG RESTORE SUM
015238,001338: 40,2527 40000 COM # IF NEG 0 LEAVE NEG 0
015239,001339: 40,2530 02513 TC BIASCOM
015240,001340:
015241,001341: # DEGOUTSF SCALES BY .18 THE LOW 14 BITS OF ANGLE, ADDING .18 FOR
015242,001342: # NUMBERS IN THE NEGATIVE (AGC) RANGE.
015243,001343:
015244,001344: 40,2531 34772 DEGOUTSF CAF ZERO
015245,001345: 40,2532 54156 +1 TS MPAC +2 # SET INDEX FOR FULL SCALE
015246,001346: 40,2533 10154 CCS MPAC
015247,001347: 40,2534 12546 TCF DEGCOM # NO AUGMENT NEEDED (SFTEMP1,SFTEMP2 ARE 0,
015248,001348: 40,2535 12546 TCF DEGCOM # MPAC IS +)
015249,001349: 40,2536 12537 TCF +1
015250,001350: 40,2537 44752 CS BIT15 # MPAC IS -, MASK OUT SIGN BIT AND ADD
015251,001351: 40,2540 70154 MASK MPAC # AUGMENTER ACCORDING TO C(MPAC +2)
015252,001352: 40,2541 54154 TS MPAC
015253,001353: 40,2542 00006 EXTEND
015254,001354: 40,2543 50156 INDEX MPAC +2
015255,001355: 40,2544 32557 DCA DEGTAB # LOADS SFTEMP1 AND SFTEMP2 WITH DP AUGMENTER
015256,001356: 40,2545 52124 DXCH SFTEMP1 # CONSTANT
015257,001357: 40,2546 00006 DEGCOM EXTEND # LOADS MULTIPLIER, DOES SHORTMP, AND
015258,001358: 40,2547 50156 INDEX MPAC +2 # ADDS AUTMENTER.
015259,001359: 40,2550 32557 DCA DEGTAB
015260,001360: 40,2551 52155 DXCH MPAC # ADJUSTED ANGLE IN A
015261,001361: 40,2552 07256 TC SHORTMP
015262,001362: 40,2553 52124 DXCH SFTEMP1
015263,001363: 40,2554 20155 DAS MPAC
015264,001364: 40,2555 02566 TC SCOUTEND
015265,001365:
015266,001366: 40,2556 05605 DEGTAB OCT 05605 # HI PART OF .18
015267,001367: 40,2557 03656 OCT 03656 # LOW PART OF .18
015268,001368: 40,2560 16314 OCT 16314 # HI PART OF .45
015269,001369: 40,2561 31463 OCT 31463 # LO PART OF .45
015270,001370:
015271,001371: 40,2562 16040 20BIAS OCT 16040 # 20 DEG BIAS FOR OPTICS
015272,001372:
015273,001373: # # Page 347
015274,001374:
015275,001375: 40,2563 52124 ARTOUTSF DXCH SFTEMP1 # ASSUMES POINT AT LEFT OF DP SFCON
015276,001376: 40,2564 52155 DXCH MPAC
015277,001377: 40,2565 04403 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0.
015278,001378: 40,2566 04655 SCOUTEND TC POSTJUMP
015279,001379: 40,2567 62561 CADR DSPDCEND
015280,001380:
015281,001381: 40,2570 52124 AROUT1SF DXCH SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS OF
015282,001382: 40,2571 52155 DXCH MPAC # DP SFCON. SHIFTS RESULTS LEFT 14, BY
015283,001383: 40,2572 04403 TC PRSHRTMP # TAKING RESULTS FROM MPAC+1, MPAC+2.
015284,001384: 40,2573 02575 TC L14/OUT
015285,001385:
015286,001386: 40,2574 02607 DP1OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR
015287,001387: 40,2575 56156 L14/OUT XCH MPAC +2 # IN SFTEMP1, SFTEMP2. THEN SCALE RESULT
015288,001388: 40,2576 56155 XCH MPAC +1 # BY B14.
015289,001389: 40,2577 54154 TS MPAC
015290,001390: 40,2600 02566 TC SCOUTEND
015291,001391:
015292,001392: 40,2601 02607 DP2OUTSF TC DPOUT # SCALES MPAC, MPAC +1 BY DP SCALE FACTOR
015293,001393: 40,2602 02566 TC SCOUTEND
015294,001394:
015295,001395: 40,2603 02607 DP3OUTSF TC DPOUT # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH
015296,001396: 40,2604 36211 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1.
015297,001397: 40,2605 03034 TC TPLEFTN # SHIFT LEFT 7.
015298,001398: 40,2606 02566 TC SCOUTEND
015299,001399:
015300,001400: 40,2607 0162 MPAC+6 = MPAC +6 # USE MPAC +6 INSTEAD OF OVFIND
015301,001401:
015302,001402: 40,2607 56002 DPOUT XCH Q
015303,001403: 40,2610 54162 TS MPAC+6
015304,001404: 40,2611 02635 TC READLO # GET FRESH DATA FOR BOTH HI AND LO.
015305,001405: 40,2612 07226 TC TPAGREE # MAKE DP DATA AGREE
015306,001406: 40,2613 07052 TC DMP
015307,001407: 40,2614 00123 ADRES SFTEMP1
015308,001408: 40,2615 00162 TC MPAC+6
015309,001409:
015310,001410: # THE FOLLOWING ROUTINE DISPLAYS TWO CONTIGUOUS SP POSITIVE INTEGERS
015311,001411: # AS TWO POSITIVE DECIMAL INTEGERS IN RXD1-RXD2 AND RXD4-RXD5 (RXD3 IS
015312,001412: # BLANKED). THE INTEGER IN THE LOWER NUMBERED ADDRESS IS DISPLAYED IN
015313,001413: # RXD1-RXD2.
015314,001414:
015315,001415: 40,2616 02431 2INTOUT TC 5BLANK # TO BLANK RXD3
015316,001416: 40,2617 02310 TC +ON # TURN ON + SIGN
015317,001417: 40,2620 30154 CA MPAC
015318,001418: 40,2621 03146 TC DSPDECVN # DISPLAY 1ST INTEGER (LIKE VERB AND NOUN)
015319,001419: 40,2622 46214 CS THREE
015320,001420: 40,2623 50117 INDEX DECOUNT
015321,001421: 40,2624 64321 AD R1D1 # RXD4
015322,001422: # # Page 348
015323,001423: 40,2625 55202 TS DSPCOUNT
015324,001424: 40,2626 02635 TC READLO # GET 2ND INTEGER
015325,001425: 40,2627 30155 CA MPAC +1
015326,001426: 40,2630 03146 TC DSPDECVN # DISPLAY 2ND INTEGER (LIKE VERB AND NOUN)
015327,001427: 40,2631 04655 TC POSTJUMP
015328,001428: 40,2632 62563 CADR DSPDCEND +2
015329,001429:
015330,001430: 40,2633 02635 DPFRACOT TC READLO # DP FRACTION TO MPAC,+1
015331,001431: 40,2634 02566 TC SCOUTEND
015332,001432:
015333,001433: # READLO PICKS UP FRESH DATA FOR BOTH HI AND LO AND LEAVES IT IN
015334,001434: # MPAC, MPAC+1. THIS IS NEEDED FOR TIME DISPLAY. IT ZEROES MPAC+2, BUT
015335,001435: # DOES NOT FORCE TPAGREE.
015336,001436:
015337,001437: 40,2635 56002 READLO XCH Q
015338,001438: 40,2636 54144 TS TEM4
015339,001439: 40,2637 50140 INDEX MIXBR
015340,001440: 40,2640 02640 TC +0
015341,001441: 40,2641 02655 TC RDLONOR
015342,001442: 40,2642 50117 INDEX DECOUNT
015343,001443: 40,2643 30150 CA IDAD1TEM # GET IDADDTAB ENTRY FOR COMP K OF NOUN.
015344,001444: 40,2644 74347 MASK LOW11 # E SUBK
015345,001445: 40,2645 04315 TC SETEBANK # SET EB, LEAVE EADRES IN A.
015346,001446: 40,2646 00006 READLO1 EXTEND # MIXED NORMAL
015347,001447: 40,2647 50000 INDEX A # C(ESUBK) C(E)
015348,001448: 40,2650 30001 DCA 0 # C((E SUBK)+1) C(E+1)
015349,001449: 40,2651 52155 DXCH MPAC
015350,001450: 40,2652 34772 CAF ZERO
015351,001451: 40,2653 54156 TS MPAC +2
015352,001452: 40,2654 00144 TC TEM4
015353,001453:
015354,001454: 40,2655 30145 RDLONOR CA NOUNADD # E
015355,001455: 40,2656 02646 ENDRDLO TC READLO1
015356,001456:
015357,001457:
015358,001458: 42,2000 SETLOC PINBALL3
015359,001459: 42,2000 BANK
015360,001460:
015361,001461: 42,3137 COUNT* $$/PIN
015362,001462: 42,3137 04636 HMSOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC,
015363,001463: 42,3140 60635 CADR READLO # MPAC+1.
015364,001464: 42,3141 07226 TC TPAGREE # MAKE DP DATA AGREE
015365,001465: 42,3142 03326 TC SEPSECNR # LEAVE FRACT SEC/60 IN MPAC, MPAC+1. LEAVE
015366,001466: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE
015367,001467: 42,3143 07052 TC DMP # USE ONLY FRACT SEC/60 MOD 60
015368,001468: 42,3144 03200 ADRES SECON2 # MULT BY .06
015369,001469: 42,3145 34323 CAF R3D1 # GIVES CENTI-SEC/10EXP5 MOD 60
015370,001470: 42,3146 55202 TS DSPCOUNT
015371,001471: # # Page 349
015372,001472: 42,3147 04636 TC BANKCALL # DISPLAY SEC MOD 60
015373,001473: 42,3150 61072 CADR DSPDECWD
015374,001474: 42,3151 03344 TC SEPMIN # REMOVE REST OF SECONDS
015375,001475: 42,3152 33202 CAF MINCON2 # LEAVE FRACT MIN/60 IN MPAC+1. LEAVE
015376,001476: 42,3153 56154 XCH MPAC # WHOLE HOURS IN MPAC.
015377,001477: 42,3154 55212 TS HITEMOUT # SAVE WHOLE HOURS.
015378,001478: 42,3155 33203 CAF MINCON2 +1
015379,001479: 42,3156 56155 XCH MPAC +1 # USE ONLY FRACT MIN/60 MOD 60
015380,001480: 42,3157 04403 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0.
015381,001481: # MULT BY .0006
015382,001482: 42,3160 34322 CAF R2D1 # GIVES MIN/10EXP5 MOD 60
015383,001483: 42,3161 55202 TS DSPCOUNT
015384,001484: 42,3162 04636 TC BANKCALL # DISPLAY MIN MOD 60
015385,001485: 42,3163 61072 CADR DSPDECWD
015386,001486: 42,3164 00006 EXTEND # MINUTES, SECONDS HAVE BEEN REMOVED
015387,001487: 42,3165 33207 DCA HRCON1
015388,001488: 42,3166 52155 DXCH MPAC
015389,001489: 42,3167 31212 CA HITEMOUT # USE WHOLE HOURS
015390,001490: 42,3170 04403 TC PRSHRTMP # IF C(A) = -0, SHORTMP FAILS TO GIVE -0.
015391,001491: # MULT BY .16384
015392,001492: 42,3171 34321 CAF R1D1 # GIVES HOURS/10EXP5
015393,001493: 42,3172 55202 TS DSPCOUNT
015394,001494: 42,3173 04636 TC BANKCALL # USE REGULAR DSPDECWD, WITH ROUND OFF.
015395,001495: 42,3174 61072 CADR DSPDECWD
015396,001496: 42,3175 00136 TC ENTEXIT
015397,001497:
015398,001498: 42,3176 25660 31742 SECON1 2DEC* 1.666666666 E-4 B12* # 2EXP12/6000
015399,001499:
015400,001500: 42,3200 01727 SECON2 OCT 01727 # .06 FOR SECONDS DISPLAY
015401,001501: 42,3201 01217 OCT 01217
015402,001502: 42,3202 00011 MINCON2 OCT 00011 # .0006 FOR MINUTES DISPLAY
015403,001503: 42,3203 32445 +1 OCT 32445
015404,001504: 42,3204 02104 MINCON1 OCT 02104 # .066..66 UPPED BY 2EXP-28
015405,001505: 42,3205 10422 OCT 10422
015406,001506: 42,3206 05174 13261 HRCON1 2DEC .16384
015407,001507:
015408,001508: 42,3210 00000 -1 OCT 00000
015409,001509: 42,3211 00062 RNDCON DEC 50 B-14 # *** USED DP WITH PRECEDING ZERO ***
015410,001510:
015411,001511: 42,3212 04636 M/SOUT TC BANKCALL # READ FRESH DATA FOR HI AND LO INTO MPAC,
015412,001512: 42,3213 60635 CADR READLO # MPAC+1.
015413,001513: 42,3214 07226 TC TPAGREE # MAKE DP DATA AGREE
015414,001514: 42,3215 10154 CCS MPAC # IF MAG OF (MPAC, MPAC+1) G/ 59 M 59 S,
015415,001515: 42,3216 03220 TC +2 # DISPLAY 59B59, WITH PROPER SIGN.
015416,001516: 42,3217 03251 TC M/SNORM # MPAC = +0. L/ 59M58.5S
015417,001517: 42,3220 63306 AD M/SCON1 # - HI PART OF (59M58.5) +1 FOR CCS
015418,001518: 42,3221 10000 CCS A # MAG OF MPAC - HI PART OF (59M58.5S)
015419,001519: 42,3222 03235 TC M/SLIMIT # G/ 59M58.5S
015420,001520: 42,3223 03251 TC M/SNORM # ORIGINAL MPAC = -0. L/ 59M58.5S
015421,001521: 42,3224 03251 TC M/SNORM # L/ 59M58.5S
015422,001522: 42,3225 10155 CCS MPAC +1 # MAG OF MPAC = HI PART OF 59M58.5S
015423,001523: # # Page 350
015424,001524: 42,3226 03230 TC +2
015425,001525: 42,3227 03251 TC M/SNORM # MPAC+1 = +0. L/ 59M58.5S
015426,001526: 42,3230 63307 AD M/SCON2 # - LO PART OF (59M58.5S) +1 FOR CCS
015427,001527: 42,3231 10000 CCS A # MAG OF MPAC+1 - LO PART OF (59M58.5S)
015428,001528: 42,3232 03235 TC M/SLIMIT # G/ 59M58.5S
015429,001529: 42,3233 03251 TC M/SNORM # ORIGINAL MPAC+1 = -0. L/ 59M58.5S
015430,001530: 42,3234 03251 TC M/SNORM # L/ 59M58.5S
015431,001531: 42,3235 10154 M/SLIMIT CCS MPAC # = 59M58.5S LIMIT
015432,001532: 42,3236 33311 CAF M/SCON3 # MPAC CANNOT BE +/- 0 AT THIS POINT.
015433,001533: 42,3237 03246 TC +LIMIT # FORCE MPAC, MPAC+1 TO +/- 59M59.5S
015434,001534: 42,3240 43311 CS M/SCON3
015435,001535: 42,3241 54154 TS MPAC # WILL DISPLAY 59M59S IN DSPDECNR
015436,001536: 42,3242 43312 CS M/SCON3 +1
015437,001537: 42,3243 54155 LIMITCOM TS MPAC +1
015438,001538: 42,3244 33310 CAF NORMADR # SET RETURN TO M/SNORM+1.
015439,001539: 42,3245 03327 TC SEPSECNR +1
015440,001540: 42,3246 54154 +LIMIT TS MPAC
015441,001541: 42,3247 33312 CAF M/SCON3 +1
015442,001542: 42,3250 03243 TC LIMITCOM
015443,001543: 42,3251 03313 M/SNORM TC SEPSEC # LEAVE FRACT SEC/60 IN MPAC,MPAC+1. LEAVE
015444,001544: # WHOLE MIN IN BIT13 OF LOTEMOUT AND ABOVE
015445,001545: 42,3252 33304 +1 CAF HISECON # USE ONLY FRACT SEC/60 MOD 60
015446,001546: 42,3253 07256 TC SHORTMP # MULT BY .6 + 2EXP-14
015447,001547: 42,3254 46214 CS THREE # GIVES SEC/100 MOD 60
015448,001548: 42,3255 27202 ADS DSPCOUNT # DSPCOUNT ALREADY SET TO RXD1
015449,001549: 42,3256 04636 TC BANKCALL # DISPLAY SEC MOD 60 IN D4D5.
015450,001550: 42,3257 61126 CADR DSPDC2NR
015451,001551: 42,3260 34772 CAF ZERO
015452,001552: 42,3261 54124 TS CODE
015453,001553: 42,3262 44767 CS TWO
015454,001554: 42,3263 50117 INDEX DECOUNT
015455,001555: 42,3264 64321 AD R1D1 # RXD3
015456,001556: 42,3265 54143 TS COUNT
015457,001557: 42,3266 04636 TC BANKCALL # BLANK MIDDLE CHAR
015458,001558: 42,3267 61161 CADR DSPIN
015459,001559: 42,3270 03344 TC SEPMIN # REMOVE REST OF SECONDS
015460,001560: 42,3271 56155 XCH MPAC +1 # LEAVE FRACT MIN/60 IN MPAC+1
015461,001561: 42,3272 00006 EXTEND # USE ONLY FRACT MIN/60 MOD 60
015462,001562: 42,3273 73305 MP HIMINCON # MULT BY .6 + 2EXP-7
015463,001563: 42,3274 52155 DXCH MPAC # GIVES MIN/100 MOD 60
015464,001564: 42,3275 50117 INDEX DECOUNT
015465,001565: 42,3276 34321 CAF R1D1 # RXD1
015466,001566: 42,3277 55202 TS DSPCOUNT
015467,001567: 42,3300 04636 TC BANKCALL # DISPLAY MIN MOD 60 IN D1D2.
015468,001568: 42,3301 61126 CADR DSPDC2NR
015469,001569: 42,3302 04655 TC POSTJUMP
015470,001570: 42,3303 62563 CADR DSPDCEND +2
015471,001571:
015472,001572: 42,3304 23147 HISECON OCT 23147 # .6 + 2EXP-14
015473,001573: 42,3305 23346 HIMINCON OCT 23346 # .6 + 2EXP-7
015474,001574:
015475,001575: # # Page 351
015476,001576:
015477,001577: 42,3306 77753 M/SCON1 OCT 77753 # - HI PART OF (59M58.5S) +1
015478,001578: 42,3307 41126 M/SCON2 OCT 41126 # - LO PART OF (59M58.5S) +1
015479,001579: 42,3310 03252 NORMADR ADRES M/SNORM +1
015480,001580: 42,3311 00025 M/SCON3 OCT 00025 # 59M 59.5S
015481,001581: 42,3312 37016 +1 OCT 37016
015482,001582: 42,3313 10155 SEPSEC CCS MPAC +1 # IF +, ROUND BY ADDING .5 SEC
015483,001583: 42,3314 13323 TCF POSEC # IF -, ROUND BY SUBTRACING .5 SEC
015484,001584: 42,3315 13323 TCF POSEC # FINDS TIME IN MPAC, MPAC+1
015485,001585: 42,3316 13317 TCF +1 # ROUNDS OFF BY +/- .5 SEC
015486,001586: 42,3317 00006 EXTEND # LEAVES WHOLE MIN IN BIT13 OF
015487,001587: 42,3320 43211 DCS RNDCON -1 # LOTEMOUT AND ABOVE.
015488,001588: 42,3321 20155 SEPSEC1 DAS MPAC # LEAVES FRACT SEC/60 IN MPAC, MPAC+1.
015489,001589: 42,3322 13326 TCF SEPSECNR
015490,001590: 42,3323 00006 POSEC EXTEND
015491,001591: 42,3324 33211 DCA RNDCON -1
015492,001592: 42,3325 13321 TCF SEPSEC1
015493,001593: 42,3326 56002 SEPSECNR XCH Q # THIS ENTRY AVOIDS ROUNDING BY .5 SEC
015494,001594: 42,3327 54144 +1 TS SEPSCRET
015495,001595: 42,3330 07052 TC DMP # MULT BY 2EXP12/6000
015496,001596: 42,3331 03176 ADRES SECON1 # GIVES FRACT SEC/60 IN BIT12 OF MPAC+1
015497,001597: 42,3332 00006 EXTEND # AND BELOW.
015498,001598: 42,3333 30155 DCA MPAC # SAVE MINUTES AND HOURS
015499,001599: 42,3334 53213 DXCH HITEMOUT
015500,001600: 42,3335 04372 TC TPSL1
015501,001601: 42,3336 04372 TC TPSL1 # GIVES FRACT SEC/60 IN MPAC+1, MPAC+2.
015502,001602: 42,3337 34772 CAF ZERO
015503,001603: 42,3340 56156 XCH MPAC +2 # LEAVE FRACT SEC/60 IN MPAC, MPAC+1.
015504,001604: 42,3341 56155 XCH MPAC +1
015505,001605: 42,3342 56154 XCH MPAC
015506,001606: 42,3343 00144 TC SEPSCRET
015507,001607:
015508,001608: 42,3344 56002 SEPMIN XCH Q # FIND WHOLE MINUTES IN BIT13
015509,001609: 42,3345 54144 TS SEPMNRET # OF LOTEMOUT AND ABOVE.
015510,001610: 42,3346 31213 CA LOTEMOUT # REMOVES REST OF SECONDS.
015511,001611: 42,3347 00006 EXTEND # LEAVES FRACT MIN/60 IN MPAC+1.
015512,001612: 42,3350 74766 MP BIT3 # LEAVES WHOLE HOURS IN MPAC.
015513,001613: 42,3351 00006 EXTEND # SR 12, THROW AWAY LP.
015514,001614: 42,3352 74754 MP BIT13 # SR 2, TAKE FROM LP. = SL 12.
015515,001615: 42,3353 22155 LXCH MPAC +1 # THIS FORCES BITS 12-1 TO 0 IF +.
015516,001616: # FORCES BITS 12-1 TO 1 IF -.
015517,001617: 42,3354 31212 CA HITEMOUT
015518,001618: 42,3355 54154 TS MPAC
015519,001619: 42,3356 07052 TC DMP # MULT BY 1/15
015520,001620: 42,3357 03204 ADRES MINCON1 # GIVES FRACT MIN/60 IN MPAC+1.
015521,001621: 42,3360 00144 ENDSPMIN TC SEPMNRET # GIVES WHOLE HOURS IN MPAC.
015522,001622:
015523,001623: # THIS IS A SPECIAL PURPOS VERB FOR DISPLAYING A DOUBLE PRECISION AGC
015524,001624: # WORD AS 10 DECIMAL DIGITS ON THE AGC DISPLAY PANEL. IT CAN BE USED WITH
015525,001625: # # Page 352
015526,001626: # ANY NOUN, EXCEPT MIXED NOUNS. IT DISPLAYS THE CONTENTS
015527,001627: # OF THE REGISTER NOUNADD IS POINTING TO. IF USED WITH NOUNS WHICH ARE
015528,001628: # INHERENTLY NOT DP SUCH AS THE CDU COUNTERS THE DISPLAY WILL BE GARBAGE.
015529,001629: # DISPLAY IS IN R1 AND R2 ONLY WITH THE SIGN IN R1.
015530,001630:
015531,001631: 40,2000 SETLOC PINBALL1
015532,001632: 40,2000 BANK
015533,001633: 40,2657 COUNT* $$/PIN
015534,001634: 40,2657 50140 DSPDPDEC INDEX MIXBR
015535,001635: 40,2660 02660 TC +0
015536,001636: 40,2661 02663 TC +2 # NORMAL NOUN
015537,001637: 40,2662 03261 TC DSPALARM
015538,001638: 40,2663 00006 EXTEND
015539,001639: 40,2664 50145 INDEX NOUNADD
015540,001640: 40,2665 30001 DCA 0
015541,001641: 40,2666 52155 DXCH MPAC
015542,001642: 40,2667 34321 CAF R1D1
015543,001643: 40,2670 55202 TS DSPCOUNT
015544,001644: 40,2671 07224 TC DPAGREE
015545,001645: 40,2672 03133 TC DSP2DEC
015546,001646: 40,2673 00136 ENDDPDEC TC ENTEXIT
015547,001647:
015548,001648: # # Page 353
015549,001649: # LOAD VERBS IF ALARM CONDITION IS DETECTED DURING EXECUTE,
015550,001650: # CHECK FAIL LIGHT IS TURNED ON AND ENDOFJOB. IF ALARM CONDITION IS
015551,001651: # DETECTED DURING ENTER OF DATA, CHECK FAIL IS TURNED ON AND IT RECYCLES
015552,001652: # TO EXECUTE OF ORIGINAL LOAD VERB. RECYCLE CAUSED BY 1) DECIMAL MACHINE
015553,001653: # CADR 2) MIXTURE OF OCTAL/DECIMAL DATA 3) OCTAL DATA INTO DECIMAL
015554,001654: # ONLY NOUN 4) DEC DATA INTO OCT ONLY NOUN 5) DATA TOO LARGE FOR SCALE
015555,001655: # 6) FEWER THAN 3 DATA WORDS LOADED FOR HRS, MIN, SEC NOUN.8 (2)-(6) ALARM
015556,001656: # AND RECYCLE OCCUR AT FINAL ENTER OF SET. (1) ALARM AND RECYCLE OCCUR AT
015557,001657: # ENTER OF CADR.
015558,001658:
015559,001659: 41,2000 SETLOC PINBALL2
015560,001660: 41,2000 BANK
015561,001661: 41,2611 COUNT* $$/PIN
015562,001662: 41,2611 44767 ABCLOAD CS TWO
015563,001663: 41,2612 02423 TC COMPTEST
015564,001664: 41,2613 02453 TC NOUNTEST # TEST IF NOUN CAN BE LOADED.
015565,001665: 41,2614 34353 CAF VBSP1LD
015566,001666: 41,2615 02336 TC UPDATVB -1
015567,001667: 41,2616 02300 TC REQDATX
015568,001668: 41,2617 34354 CAF VBSP2LD
015569,001669: 41,2620 02336 TC UPDATVB -1
015570,001670: 41,2621 02302 TC REQDATY
015571,001671: 41,2622 34615 CAF VBSP3LD
015572,001672: 41,2623 02336 TC UPDATVB -1
015573,001673: 41,2624 02304 TC REQDATZ
015574,001674:
015575,001675: 41,2625 46211 PUTXYZ CS SIX # TEST THAT THE 3 DATA WORDS LOADED ARE
015576,001676: 41,2626 03011 TC ALLDC/OC # ALL DEC OR ALL OCT.
015577,001677: 41,2627 00006 EXTEND
015578,001678: 41,2630 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
015579,001679: 41,2631 52006 DXCH Z # ROUTINE.
015580,001680: 41,2632 34772 CAF ZERO # X COMP
015581,001681: 41,2633 03071 TC PUTCOM
015582,001682: 41,2634 50145 INDEX NOUNADD
015583,001683: 41,2635 54000 TS 0
015584,001684: 41,2636 34770 CAF ONE # Y COMP
015585,001685: 41,2637 03071 TC PUTCOM
015586,001686: 41,2640 50145 INDEX NOUNADD
015587,001687: 41,2641 54001 TS 1
015588,001688: 41,2642 34767 CAF TWO # Z COMP
015589,001689: 41,2643 03071 TC PUTCOM
015590,001690: 41,2644 50145 INDEX NOUNADD
015591,001691: 41,2645 54002 TS 2
015592,001692: 41,2646 44774 CS SEVEN # IF NOUN 7 HAS JUST BEEN LOADED, SET
015593,001693: 41,2647 61205 AD NOUNREG # FLAG BITS AS SPECIFIED.
015594,001694: 41,2650 00006 EXTEND
015595,001695: 41,2651 12653 BZF +2
015596,001696: 41,2652 03001 TC LOADLV
015597,001697: # # Page 354
015598,001698: 41,2653 00004 INHINT
015599,001699: 41,2654 45001 CS OCT30 # IS IT A CHANNEL (30 OR UNDER)
015600,001700: 41,2655 61206 AD XREG
015601,001701: 41,2656 00006 EXTEND
015602,001702: 41,2657 62667 BZMF CHANBITS # YES
015603,001703:
015604,001704: 41,2660 31206 CA XREG # ECADR OF ERASABLE CELL
015605,001705: 41,2661 04306 TC SETNCADR +1 # SET EBANK, NOUNADD
015606,001706:
015607,001707: 41,2662 50145 INDEX NOUNADD
015608,001708: 41,2663 30000 CA 0
015609,001709: 41,2664 54001 TS L
015610,001710: 41,2665 34770 CAF ONE
015611,001711: 41,2666 55206 TS XREG # MAKE IT LOOK LIKE A CHANNEL FOR A WHILE
015612,001712:
015613,001713: 41,2667 64352 CHANBITS AD OCT21
015614,001714: 41,2670 00006 EXTEND
015615,001715: 41,2671 12714 BZF BITSOFF2 # DONT TOUCH CHAN7 (SUPERBANK)
015616,001716:
015617,001717: 41,2672 31210 CA ZREG
015618,001718: 41,2673 00006 EXTEND
015619,001719: 41,2674 62702 BZMF BITSOFF # R3 IS ZERO FOR OFF, NONZERO FOR ON
015620,001720:
015621,001721: 41,2675 31207 CA YREG
015622,001722: 41,2676 00006 EXTEND
015623,001723: 41,2677 51206 INDEX XREG
015624,001724: 41,2700 05000 WOR 0
015625,001725: 41,2701 12706 TCF BITSOFF1
015626,001726:
015627,001727: 41,2702 41207 BITSOFF CS YREG
015628,001728: 41,2703 00006 EXTEND
015629,001729: 41,2704 51206 INDEX XREG
015630,001730: 41,2705 03000 WAND 0
015631,001731:
015632,001732: 41,2706 11206 BITSOFF1 CCS XREG # WAS IT REALLY A CHANNEL
015633,001733: 41,2707 10000 CCS A
015634,001734: 41,2710 12714 TCF BITSOFF2 # YES
015635,001735:
015636,001736: 41,2711 22000 LXCH A
015637,001737: 41,2712 50145 -2 INDEX NOUNADD
015638,001738: 41,2713 54000 TS 0
015639,001739: 41,2714 00003 BITSOFF2 RELINT
015640,001740: 41,2715 03001 TC LOADLV
015641,001741:
015642,001742: 41,2716 5001 OCT30 = BITS4&5
015643,001743: 41,2716 4352 OCT21 = ND1
015644,001744:
015645,001745: 41,2716 44770 ABLOAD CS ONE
015646,001746: 41,2717 02423 TC COMPTEST
015647,001747: 41,2720 02453 TC NOUNTEST # TEST IF NOUN CAN BE LOADED.
015648,001748: # # Page 355
015649,001749: 41,2721 34353 CAF VBSP1LD
015650,001750: 41,2722 02336 TC UPDATVB -1
015651,001751: 41,2723 02300 TC REQDATX
015652,001752: 41,2724 34354 CAF VBSP2LD
015653,001753: 41,2725 02336 TC UPDATVB -1
015654,001754: 41,2726 02302 TC REQDATY
015655,001755: 41,2727 44773 PUTXY CS FIVE # TEST THAT THE 2 DATA WORDS LOADED ARE
015656,001756: 41,2730 03011 TC ALLDC/OC # ALL DEC OR ALL OCT.
015657,001757: 41,2731 00006 EXTEND
015658,001758: 41,2732 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
015659,001759: 41,2733 52006 DXCH Z # ROUTINE.
015660,001760: 41,2734 34772 CAF ZERO # X COMP
015661,001761: 41,2735 03071 TC PUTCOM
015662,001762: 41,2736 50145 INDEX NOUNADD
015663,001763: 41,2737 54000 TS 0
015664,001764: 41,2740 12760 TCF COMBLOAD # Y COMP
015665,001765: 41,2741 02300 ALOAD TC REQDATX
015666,001766: 41,2742 00006 EXTEND
015667,001767: 41,2743 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
015668,001768: 41,2744 52006 DXCH Z # ROUTINE.
015669,001769: 41,2745 34772 CAF ZERO # X COMP
015670,001770: 41,2746 03071 TC PUTCOM
015671,001771: 41,2747 12712 TCF BITSOFF2 -2
015672,001772: 41,2750 44770 BLOAD CS ONE
015673,001773: 41,2751 02423 TC COMPTEST
015674,001774: 41,2752 34752 CAF BIT15 # SET CLPASS FOR PASS0 ONLY
015675,001775: 41,2753 55220 TS CLPASS
015676,001776: 41,2754 02302 TC REQDATY
015677,001777: 41,2755 00006 EXTEND
015678,001778: 41,2756 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
015679,001779: 41,2757 52006 DXCH Z # ROUTINE.
015680,001780: 41,2760 34770 COMBLOAD CAF ONE
015681,001781: 41,2761 03071 TC PUTCOM
015682,001782: 41,2762 50145 INDEX NOUNADD
015683,001783: 41,2763 54001 TS 1
015684,001784: 41,2764 03001 TC LOADLV
015685,001785:
015686,001786: 41,2765 44767 CLOAD CS TWO
015687,001787: 41,2766 02423 TC COMPTEST
015688,001788: 41,2767 34752 CAF BIT15 # SET CLPASS FOR PASS0 ONLY
015689,001789: 41,2770 55220 TS CLPASS
015690,001790: 41,2771 02304 TC REQDATZ
015691,001791: 41,2772 00006 EXTEND
015692,001792: 41,2773 32115 DCA LODNNLOC # SWITCH BANKS TO NOUN TABLE READING
015693,001793: 41,2774 52006 DXCH Z # ROUTINE.
015694,001794: 41,2775 34767 CAF TWO
015695,001795: 41,2776 03071 TC PUTCOM
015696,001796: 41,2777 50145 INDEX NOUNADD
015697,001797: 41,3000 54002 TS 2
015698,001798: 41,3001 34772 LOADLV CAF ZERO
015699,001799: # # Page 356
015700,001800: 41,3002 55203 TS DECBRNCH
015701,001801: 41,3003 44772 CS ZERO
015702,001802: 41,3004 55217 TS LOADSTAT
015703,001803: 41,3005 04432 TC RELDSP # RELEASE FOR PRIORITY DISPLAY PROBLEM.
015704,001804: 41,3006 04261 TC -VD1SET
015705,001805: 41,3007 04655 TC POSTJUMP # AFTER COMPLETED LOAD, GO TO RECALTST
015706,001806: 41,3010 61412 CADR RECALTST # TO SEE IF THERE IS RECALL FROM ENDIDLE.
015707,001807:
015708,001808: 41,3011 54117 ALLDC/OC TS DECOUNT # TESTS THAT DATA WORDS LOADED ARE EITHER
015709,001809: 41,3012 41203 CS DECBRNCH # ALL DEC OR ALL OCT. ALARMS IF NOT.
015710,001810: 41,3013 54021 TS SR
015711,001811: 41,3014 40021 CS SR
015712,001812: 41,3015 40021 CS SR # SHIFTED RIGHT 2
015713,001813: 41,3016 10000 CCS A # DEC COMP BITS IN LOW 3
015714,001814: 41,3017 13021 TCF +2 # SOME ONES IN LOW 3
015715,001815: 41,3020 00002 GOQ TC Q # ALL ZEROS. ALL OCTAL. OK
015716,001816: 41,3021 60117 AD DECOUNT # DEC COMP = 7 FOR 3COMP, =6 FOR 2COMP
015717,001817: 41,3022 00006 EXTEND # (BUT IT HAS BEEN DECREMENTED BY CCS)
015718,001818: 41,3023 16711 BZF TCQ # MUST MATCH 6 FOR 3COMP, 5 FOR 2COMP.
015719,001819: 41,3024 04173 TC ALMCYCLE # ALARM AND RECYCLE.
015720,001820: 41,3025 56002 SFRUTNOR XCH Q # GETS SF ROUTINE NUMBER FOR NORMAL CASE
015721,001821: 41,3026 54114 TS EXITEM # CANT USE L FOR RETURN. TSTFORDP USES L.
015722,001822: 41,3027 34343 CAF MID5
015723,001823: 41,3030 70147 MASK NNTYPTEM
015724,001824: 41,3031 04324 TC RIGHT5
015725,001825: 41,3032 00114 TC EXITEM # SF ROUTINE NUMBER IN A
015726,001826:
015727,001827: 41,3033 56002 SFRUTMIX XCH Q # GETS SF ROUTINE NUMBER FOR MIXED CASE
015728,001828: 41,3034 54114 TS EXITEM
015729,001829: 41,3035 03063 TC GETTCRLQ
015730,001830: 41,3036 70153 MASK RUTMXTEM # GET HI5, MID5, OR LOW5 OF RUTMXTAB ENTRY
015731,001831: 41,3037 50001 INDEX L
015732,001832: 41,3040 00000 TC 0
015733,001833: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2).
015734,001834: 41,3041 00114 SFRET1 TC EXITEM # SF ROUTINE NUMBER IN A
015735,001835:
015736,001836: 41,3042 56002 SFCONUM XCH Q # GETS 2X(SF CONSTANT NUMBER)
015737,001837: 41,3043 54114 TS EXITEM
015738,001838: 41,3044 50140 INDEX MIXBR
015739,001839: 41,3045 03045 TC +0
015740,001840: 41,3046 03060 TC CONUMNOR # NORMAL NOUN
015741,001841: 41,3047 03063 TC GETTCRLQ
015742,001842: 41,3050 70147 MASK NNTYPTEM
015743,001843: 41,3051 50001 INDEX L
015744,001844: 41,3052 00000 TC 0
015745,001845: # DO TC GOQ(DECOUNT=0), DO TC RIGHT5(DECOUNT=1), DO TC LEFT5(DECOUNT=2).
015746,001846: 41,3053 60000 SFRET DOUBLE # 2X(SF CONSTANT NUMBER) IN A
015747,001847: 41,3054 00114 TC EXITEM
015748,001848:
015749,001849: 41,3055 03020 DISPLACE TC GOQ
015750,001850: # # Page 357
015751,001851: 41,3056 04324 TC RIGHT5
015752,001852: 41,3057 04333 TC LEFT5
015753,001853:
015754,001854: 41,3060 34342 CONUMNOR CAF LOW5 # NORMAL NOUN ALWAYS GETS LOW 5 OF
015755,001855: 41,3061 70147 MASK NNTYPTEM # NNTYPTAB FOR SF CONUM.
015756,001856: 41,3062 13053 TCF SFRET
015757,001857: 41,3063 50117 GETTCRLQ INDEX DECOUNT
015758,001858: 41,3064 33055 CAF DISPLACE
015759,001859: 41,3065 54001 TS L # PUT TC GOQ, TC RIGHT5, TC LEFT5 IN L.
015760,001860: 41,3066 50117 INDEX DECOUNT
015761,001861: 41,3067 34342 CAF LOW5 # LOW5, MID5, HI5 IN A
015762,001862: 41,3070 00002 TC Q
015763,001863: 41,3071 54117 PUTCOM TS DECOUNT
015764,001864: 41,3072 56002 XCH Q
015765,001865: 41,3073 54115 TS DECRET
015766,001866: 41,3074 34772 CAF ZERO
015767,001867: 41,3075 54162 TS MPAC+6
015768,001868: 41,3076 50117 INDEX DECOUNT
015769,001869: 41,3077 57211 XCH XREGLP
015770,001870: 41,3100 54155 TS MPAC +1
015771,001871: 41,3101 50117 INDEX DECOUNT
015772,001872: 41,3102 57206 XCH XREG
015773,001873: 41,3103 54154 TS MPAC
015774,001874: 41,3104 50140 INDEX MIXBR
015775,001875: 41,3105 03105 TC +0
015776,001876: 41,3106 03133 TC PUTNORM # NORMAL NOUN
015777,001877: # IF MIXNOUN, PLACE ADDRESS FOR COMPONENT K INTO NOUNADD, SET EBANK BITS.
015778,001878: 41,3107 50117 INDEX DECOUNT # GET IDADDTAB ENTRY FOR COMPONENT K
015779,001879: 41,3110 30150 CA IDAD1TEM # OF NOUN.
015780,001880: 41,3111 74347 MASK LOW11 # (ECADR)SUBK FOR CURRENT COMP OF NOUN
015781,001881: 41,3112 04305 TC SETNCADR # ECADR INTO NOUNCADR. SETS EB, NOUNADD.
015782,001882: 41,3113 00006 EXTEND # C(NOUNADD) IN A UPON RETURN
015783,001883: 41,3114 60117 SU DECOUNT # PLACE (ESUBK)-K INTO NOUNADD
015784,001884: 41,3115 54145 TS NOUNADD
015785,001885: 41,3116 11203 CCS DECBRNCH
015786,001886: 41,3117 03170 TC PUTDECSF # + DEC
015787,001887: 41,3120 02445 TC DCTSTCYC # +0 OCTAL
015788,001888: 41,3121 03033 TC SFRUTMIX # TEST IF DEC ONLY BIT = 1. IF SO,
015789,001889: 41,3122 02260 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE.
015790,001890: 41,3123 03151 TC PUTCOM2 # NO DP
015791,001891: # TEST FOR DP SCALE FOR OCT LOAD. IF SO,
015792,001892: # +0 INTO MAJOR PART. SET NOUNADD FOR
015793,001893: # LOADING OCTAL WORD INTO MINOR PART.
015794,001894: 41,3124 24145 PUTDPCOM INCR NOUNADD # DP (ESUBK)-K+1 OR E+1
015795,001895: 41,3125 30145 CA NOUNADD # NOUNADD NOW SET FOR MINOR PART
015796,001896: 41,3126 26117 ADS DECOUNT # (ESUBK)+1 OR E+1 INTO DECOUNT
015797,001897: 41,3127 34772 CAF ZERO # NOUNADD SET FOR MINOR PART
015798,001898: 41,3130 50117 INDEX DECOUNT
015799,001899: 41,3131 53777 TS 0 -1 # ZERO MAJOR PART(ESUBK OR E)
015800,001900: 41,3132 03151 TC PUTCOM2
015801,001901:
015802,001902: # # Page 358
015803,001903: 41,3133 04313 PUTNORM TC SETNADD # ECADR FROM NOUNCADR. SETS EB, NOUNADD.
015804,001904: 41,3134 11203 CCS DECBRNCH
015805,001905: 41,3135 03170 TC PUTDECSF # + DEC
015806,001906: 41,3136 02445 TC DCTSTCYC # +0 OCTAL
015807,001907: 41,3137 03025 TC SFRUTNOR # TEST IF DEC ONLY BIT = 1. IF SO,
015808,001908: 41,3140 02260 TC DPTEST # ALARM AND RECYCLE. IF NOT, CONTINUE.
015809,001909: 41,3141 03145 TC PUTCOM2 -4 # NO DP
015810,001910: 41,3142 34772 CAF ZERO # DP
015811,001911: 41,3143 54117 TS DECOUNT
015812,001912: 41,3144 03124 TC PUTDPCOM
015813,001913:
015814,001914: 41,3145 30146 -4 CA NNADTEM
015815,001915: 41,3146 64770 AD ONE # IF NNADTEM = -1, CHANNEL TO BE SPECIFIED
015816,001916: 41,3147 00006 EXTEND
015817,001917: 41,3150 13155 BZF CHANLOAD
015818,001918: 41,3151 56154 PUTCOM2 XCH MPAC
015819,001919: 41,3152 00115 TC DECRET
015820,001920:
015821,001921: 41,3153 1202 EBANK= DSPCOUNT
015822,001922: 41,3153 02122 64102 GTSFINLC 2CADR GTSFIN
015823,001923:
015824,001924: 41,3155 44774 CHANLOAD CS SEVEN # DONT LOAD CHAN 7. (IT = SUPERBANK)
015825,001925: 41,3156 61222 AD NOUNCADR
015826,001926: 41,3157 00006 EXTEND
015827,001927: 41,3160 13001 BZF LOADLV
015828,001928: 41,3161 31222 CA NOUNCADR
015829,001929: 41,3162 75021 MASK LOW9
015830,001930: 41,3163 56154 XCH MPAC
015831,001931: 41,3164 00006 EXTEND
015832,001932: 41,3165 50154 INDEX MPAC
015833,001933: 41,3166 01000 WRITE 0
015834,001934: 41,3167 03001 TC LOADLV
015835,001935:
015836,001936: # PUTDECSF FINDS MIXBR AND DECOUNT STILL SET FROM PUTCOM
015837,001937:
015838,001938: 41,3170 03042 PUTDECSF TC SFCONUM # 2X(SF CON NUMB) IN A
015839,001939: 41,3171 54123 TS SFTEMP1
015840,001940: 41,3172 00006 EXTEND # SWITCH BANKS TO SF CONSTANT TABLE
015841,001941: 41,3173 33154 DCA GTSFINLC # READING ROUTINE.
015842,001942: 41,3174 52006 DXCH Z # LOADS SFTEMP1, SFTEMP2.
015843,001943: 41,3175 50140 INDEX MIXBR
015844,001944: 41,3176 03176 TC +0
015845,001945: 41,3177 03202 TC PUTSFNOR
015846,001946: 41,3200 03033 TC SFRUTMIX
015847,001947: 41,3201 03203 TC PUTDCSF2
015848,001948: 41,3202 03025 PUTSFNOR TC SFRUTNOR
015849,001949:
015850,001950: # # Page 359
015851,001951: 41,3203 50000 PUTDCSF2 INDEX A
015852,001952: 41,3204 33206 CAF SFINTABR
015853,001953: 41,3205 04660 TC BANKJUMP # SWITCH BANKS FOR EXPANSION ROOM
015854,001954: 41,3206 62347 SFINTABR CADR GOALMCYC # ALARM AND RECYCLE IF DEC LOAD
015855,001955: # WITH OCTAL ONLY NOUN.
015856,001956: 41,3207 60753 CADR BINROUND
015857,001957: 41,3210 60674 CADR DEGINSF
015858,001958: 41,3211 60743 CADR ARTHINSF
015859,001959: 41,3212 60776 CADR DPINSF
015860,001960: 41,3213 61023 CADR DPINSF2
015861,001961: 41,3214 60761 CADR OPTDEGIN
015862,001962: 41,3215 60776 CADR DPINSF # SAME AS ARITHDP1
015863,001963: 41,3216 65361 CADR HMSIN
015864,001964: 41,3217 61261 CADR DSPALARM # MIN/SEC CANT BE LOADED.
015865,001965: 41,3220 61027 CADR DPINSF4
015866,001966: 41,3221 60756 CADR ARTIN1SF
015867,001967: 41,3222 61261 CADR DSPALARM # 2INTOUT CANT BE LOADED.
015868,001968: 41,3223 61007 CADR DPFRACIN
015869,001969:
015870,001970: # SCALE FACTORS FOR THOSE ROUTINES NEEDING THEM ARE AVAILABLE IN SFTEMP1.
015871,001971: # ALL SFIN ROUTINES USE MPAC MPAC+1. LEAVE RESULT IN A. END WITH TC DECRET
015872,001972:
015873,001973: 40,2000 SETLOC PINBALL1
015874,001974: 40,2000 BANK
015875,001975: 40,2674 COUNT* $$/PIN
015876,001976:
015877,001977: # DEGINSF APPLIES 1000/180 * 5.55555(10) = 5.43434(8)
015878,001978:
015879,001979: 40,2674 07052 DEGINSF TC DMP # SF ROUTINE FOR DEC DEGREES
015880,001980: 40,2675 02737 ADRES DEGCON1 # MULT BY 5.5 5(10)X2EXP-3
015881,001981: 40,2676 10155 CCS MPAC +1 # THIS ROUNDS OFF MPAC+1 BEFORE SHIFT
015882,001982: 40,2677 34756 CAF BIT11 # LEFT 3, AND CAUSES 360.00 TO OF/UF
015883,001983: 40,2700 02702 TC +2 # WHEN SHIFTED LEFT AND ALARM.
015884,001984: 40,2701 44756 CS BIT11
015885,001985: 40,2702 60155 AD MPAC +1
015886,001986: 40,2703 03046 TC 2ROUND +2
015887,001987: 40,2704 04372 TC TPSL1 # LEFT 1
015888,001988: 40,2705 04372 DEGINSF2 TC TPSL1 # LEFT 2
015889,001989: 40,2706 03051 TC TESTOFUF
015890,001990: 40,2707 04372 TC TPSL1 # RETURNS IF NO OF/UF (LEFT3)
015891,001991: 40,2710 10154 CCS MPAC
015892,001992: 40,2711 02715 TC SIGNFIX # IF +, GO TO SIGNFIX
015893,001993: 40,2712 02715 TC SIGNFIX # IF +0, GO TO SIGNFIX
015894,001994: 40,2713 40000 COM # IF -, USE -MAGNITUDE +1
015895,001995: 40,2714 54154 TS MPAC # IF -0, USE +0
015896,001996: 40,2715 10162 SIGNFIX CCS MPAC+6
015897,001997: 40,2716 02733 TC SGNTO1 # IF OVERFLOW
015898,001998: 40,2717 02727 TC ENDSCALE # NO OVERFLOW/UNDERFLOW
015899,001999: 40,2720 10154 CCS MPAC # IF UF FORCE SIGN TO 0 EXCEPT -180
015900,002000: 40,2721 04151 MONADR GENADR PASTEVB # CANNOT GET HERE
015901,002001: 40,2722 02731 TC NEG180
015902,002002: # # Page 360
015903,002003: 40,2723 02724 TC +1
015904,002004: 40,2724 56154 XCH MPAC
015905,002005: 40,2725 74750 MASK POSMAX
015906,002006: 40,2726 54154 -1 TS MPAC
015907,002007: 40,2727 04655 ENDSCALE TC POSTJUMP
015908,002008: 40,2730 63151 CADR PUTCOM2
015909,002009:
015910,002010: 40,2731 44750 NEG180 CS POSMAX
015911,002011: 40,2732 02726 TC ENDSCALE -1
015912,002012:
015913,002013: 40,2733 40154 SGNTO1 CS MPAC # IF OF FORCE SIGN TO 1
015914,002014: 40,2734 74750 MASK POSMAX
015915,002015: 40,2735 40000 CS A
015916,002016: 40,2736 02726 TC ENDSCALE -1
015917,002017:
015918,002018: 40,2737 26161 30707 DEGCON1 2DEC 5.555555555 B-3
015919,002019:
015920,002020: 40,2741 21616 07071 DEGCON2 2DEC 2.222222222 B-2
015921,002021:
015922,002022: 40,2743 07052 ARTHINSF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2.
015923,002023: 40,2744 00123 ADRES SFTEMP1 # ASSUMES POINT BETWEEN HI AND LO PARTS
015924,002024: 40,2745 56156 XCH MPAC +2 # OF SFCON. SHIFTS RESULTS LEFT BY 14.
015925,002025: 40,2746 56155 XCH MPAC +1 # (BY TAKING RESULTS FROM MPAC+1, MPAC+2)
015926,002026: 40,2747 56154 XCH MPAC
015927,002027: 40,2750 00006 EXTEND
015928,002028: 40,2751 12753 BZF BINROUND
015929,002029: 40,2752 04173 TC ALMCYCLE # TOO LARGE A LOAD. ALARM AND RECYCLE.
015930,002030: 40,2753 03044 BINROUND TC 2ROUND
015931,002031: 40,2754 03051 TC TESTOFUF
015932,002032: 40,2755 02727 TC ENDSCALE # RETURNS IF NO OF/UF
015933,002033:
015934,002034: 40,2756 07052 ARTIN1SF TC DMP # SCALES MPAC, +1 BY SFTEMP1, SFTEMP2.
015935,002035: 40,2757 00123 ADRES SFTEMP1 # ROUNDS MPAC+1 INTO MPAC.
015936,002036: 40,2760 02753 TC BINROUND
015937,002037:
015938,002038: 40,2761 10154 OPTDEGIN CCS MPAC # OPTICS SCALING ROUTINE
015939,002039: 40,2762 02766 TC +4
015940,002040: 40,2763 02766 TC +3
015941,002041: 40,2764 04173 TC ALMCYCLE # REJECT - INPUT. ALARM AND RECYCLE.
015942,002042: 40,2765 04173 TC ALMCYCLE # REJECT - INPUT. ALARM AND RECYCLE.
015943,002043: 40,2766 32525 OPDEGIN2 CAF NEG.2 # RANGE IS 90 DEG
015944,002044: 40,2767 26154 ADS MPAC # SUBTRACT BIAS
015945,002045: 40,2770 07052 TC DMP # MULT BY 100 / 45 B-2
015946,002046: 40,2771 02741 ADRES DEGCON2
015947,002047: 40,2772 34755 CAF BIT12 # ROUND AS IN DEGINSF
015948,002048: 40,2773 60155 AD MPAC +1
015949,002049: 40,2774 03046 TC 2ROUND +2
015950,002050: # # Page 361
015951,002051: 40,2775 02705 TC DEGINSF2
015952,002052:
015953,002053: 40,2776 07052 DPINSF TC DMP # SCALES MPAC, MPAC +1 BY SFTEMP1,
015954,002054: 40,2777 00123 ADRES SFTEMP1 # SFTEMP. STORES LOW PART OF RESULT
015955,002055: 40,3000 56156 +2 XCH MPAC +2 # IN (E SUBK) +1 OR E+1
015956,002056: 40,3001 60000 DOUBLE
015957,002057: 40,3002 54156 TS MPAC +2
015958,002058: 40,3003 34772 CAF ZERO
015959,002059: 40,3004 60155 AD MPAC +1
015960,002060: 40,3005 03046 TC 2ROUND +2
015961,002061: 40,3006 03051 TC TESTOFUF
015962,002062: 40,3007 50140 DPFRACIN INDEX MIXBR # RETURNS IF NO OF/UF
015963,002063: 40,3010 03010 TC +0
015964,002064: 40,3011 03021 TC DPINORM
015965,002065: 40,3012 30117 CA DECOUNT # MIXED NOUN
015966,002066: 40,3013 60145 DPINCOM AD NOUNADD # MIXED NORMAL
015967,002067: 40,3014 54002 TS Q # E SUBK E
015968,002068: 40,3015 56155 XCH MPAC +1
015969,002069: 40,3016 50002 INDEX Q
015970,002070: 40,3017 54001 TS 1 # PLACE LOW PART IN
015971,002071: 40,3020 02727 TC ENDSCALE # (E SUBK) +1 MIXED
015972,002072: 40,3021 34772 DPINORM CAF ZERO # E +1 NORMAL
015973,002073: 40,3022 03013 TC DPINCOM
015974,002074:
015975,002075: 40,3023 07052 DPINSF2 TC DMP # ASSUMES POINT BETWEEN BITS 7-8 OF HIGH
015976,002076: 40,3024 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS
015977,002077: 40,3025 36211 CAF SIX # LEFT BY 7, ROUNDS MPAC+2 INTO MPAC+1
015978,002078: 40,3026 13032 TCF +4 # SHIFT LEFT 7.
015979,002079: 40,3027 07052 DPINSF4 TC DMP # ASSUMES POINT BETWEEN BITS 11-12 OF HIGH
015980,002080: 40,3030 00123 ADRES SFTEMP1 # PART OF SF CONST. DPINSF2 SHIFTS RESULTS
015981,002081: 40,3031 34767 CAF TWO # LEFT BY 3, ROUNDS MPAC+2 INTO MPAC+1.
015982,002082: 40,3032 03034 TC TPLEFTN # SHIFT LEFT 3.
015983,002083: 40,3033 03000 TC DPINSF +2
015984,002084:
015985,002085: 40,3034 56002 TPLEFTN XCH Q # SHIFTS MPAC, +1, +2 LEFT N. SETS OVFIND
015986,002086: 40,3035 54124 TS SFTEMP2 # TO +1 FOR OF, -1 FOR UF.
015987,002087: 40,3036 56002 XCH Q # CALL WITH N-1 IN A.
015988,002088: 40,3037 54123 LEFTNCOM TS SFTEMP1 # LOOP TIME .37 MSEC.
015989,002089: 40,3040 04372 TC TPSL1
015990,002090: 40,3041 10123 CCS SFTEMP1
015991,002091: 40,3042 03037 TC LEFTNCOM
015992,002092: 40,3043 00124 TC SFTEMP2
015993,002093:
015994,002094: 40,3044 56155 2ROUND XCH MPAC +1
015995,002095: 40,3045 60000 DOUBLE
015996,002096: 40,3046 54155 +2 TS MPAC +1
015997,002097: 40,3047 00002 TC Q # IF MPAC+1 DOES NOT OF/UF
015998,002098: # # Page 362
015999,002099: 40,3050 14376 TCF TPSL1 +4 # CHECK FOR MPAC OF/UF
016000,002100: 40,3051 30162 TESTOFUF CA MPAC+6 # RETURNS IF NO OF/UF
016001,002101: 40,3052 00006 EXTEND
016002,002102: 40,3053 16711 BZF TCQ
016003,002103: 40,3054 04173 TC ALMCYCLE # UF ALARM AND RECYCLE.
016004,002104:
016005,002105: 42,2000 SETLOC PINBALL3
016006,002106: 42,2000 BANK
016007,002107: 42,3361 COUNT* $$/PIN
016008,002108: 42,3361 41203 HMSIN CS DECBRNCH # CHECK FOR ALL 3 COMPS DEC
016009,002109: 42,3362 74172 MASK OCT34 # BITS 3,4,5
016010,002110: 42,3363 10000 CCS A
016011,002111: 42,3364 03501 TC FORCEV25
016012,002112: 42,3365 07052 TC DMP # XREG, XREGLP (=HOURS) WERE ALREADY PUT
016013,002113: 42,3366 03444 ADRES WHOLECON # INTO MPAC, MPAC+1.
016014,002114: 42,3367 03453 TC RND/TST # ROUND OFF TO WHOLE HRS IN MPAC+1.
016015,002115: 42,3370 34772 CAF ZERO # ALARM IF MPAC NON ZERO (G/ 16383).
016016,002116: 42,3371 54156 TS MPAC +2
016017,002117: 42,3372 33446 CAF HRCON
016018,002118: 42,3373 54154 TS MPAC
016019,002119: 42,3374 33447 CAF HRCON +1
016020,002120: 42,3375 56155 XCH MPAC +1
016021,002121: 42,3376 07256 TC SHORTMP
016022,002122: 42,3377 03464 TC MPACTST # ALARM IF MPAC NON ZERO (G/ 745)
016023,002123: 42,3400 52156 DXCH MPAC +1 # STORE HOURS CONTRIBUTION
016024,002124: 42,3401 52124 DXCH HITEMIN
016025,002125: 42,3402 31207 CA YREG # PUT YREG, YREGLP INTO MPAC, +1.
016026,002126: 42,3403 23212 LXCH YREGLP
016027,002127: 42,3404 52155 DXCH MPAC
016028,002128: 42,3405 07052 TC DMP
016029,002129: 42,3406 03444 ADRES WHOLECON
016030,002130: 42,3407 03453 TC RND/TST # ROUND OFF TO WHOLE MIN IN MPAC+1
016031,002131: 42,3410 43451 CS 59MIN # ALARM IF MPAC NON ZERO (G/16383)
016032,002132: 42,3411 03470 TC SIZETST # ALARM IF MPAC+1 G/ 59MIN
016033,002133: 42,3412 56155 XCH MPAC +1
016034,002134: 42,3413 00006 EXTEND
016035,002135: 42,3414 73450 MP MINCON # LEAVES MINUTES CONTRIBUTION IN A,L
016036,002136: 42,3415 20124 DAS HITEMIN # ADD IN MINUTES CONTRIBUTION
016037,002137: 42,3416 00006 EXTEND # IF THIS DAS OVEFLOWS, G/ 745 HR,39MIN
016038,002138: 42,3417 13421 BZF +2
016039,002139: 42,3420 04173 TC ALMCYCLE
016040,002140: 42,3421 31210 CA ZREG # PUT ZREG, ZREGLP INTO MPAC, +1.
016041,002141: 42,3422 23213 LXCH ZREGLP
016042,002142: 42,3423 52155 DXCH MPAC
016043,002143: 42,3424 07052 TC DMP
016044,002144: 42,3425 03444 ADRES WHOLECON
016045,002145: 42,3426 03453 TC RND/TST # ROUND OFF TO WHOLE CENTI-SEC IN MPAC+1
016046,002146: 42,3427 43452 CS 59.99SEC # ALARM IF MPAC NON ZERO (G/163.83 SEC)
016047,002147: 42,3430 03470 TC SIZETST # ALARM IF MPAC+1 G/59.99 SEC
016048,002148: # # Page 363
016049,002149: 42,3431 52124 DXCH HITEMIN # ADD IN SECONDS CONTRIBUTION
016050,002150: 42,3432 20155 DAS MPAC # IF THIS DAS OVERFLOWS,
016051,002151: 42,3433 00006 EXTEND # G/ 745 HR, 39 MIN, 14.55 SEC.
016052,002152: 42,3434 13436 BZF +2
016053,002153: 42,3435 04173 TC ALMCYCLE # ALARM AND RECYCLE
016054,002154: 42,3436 07224 TC DPAGREE
016055,002155: 42,3437 52155 DXCH MPAC
016056,002156: 42,3440 50145 INDEX NOUNADD
016057,002157: 42,3441 52001 DXCH 0
016058,002158: 42,3442 04655 TC POSTJUMP
016059,002159: 42,3443 63001 CADR LOADLV
016060,002160:
016061,002161: 42,3444 00006 WHOLECON OCT 00006 # (10EXP5/2EXP14)2EXP14
016062,002162: 42,3445 03240 OCT 03240
016063,002163: 42,3446 00025 HRCON OCT 00025 # 1 HOUR IN CENTI-SEC
016064,002164: 42,3447 37100 +1 OCT 37100
016065,002165: 42,3450 13560 MINCON OCT 13560 # 1 MINUTE IN CENTI-SEC
016066,002166: 42,3451 00073 59MIN OCT 00073 # 59 AS WHOLE
016067,002167: 42,3452 13557 59.99SEC OCT 13557 # 5999 SENTI-SEC
016068,002168:
016069,002169: 42,3453 56156 RND/TST XCH MPAC +2 # ROUNDS MPAC+2 INTO MPAC+1.
016070,002170: 42,3454 60000 DOUBLE # ALARMS IF MPAC NOT 0
016071,002171: 42,3455 54156 TS MPAC +2
016072,002172: 42,3456 34772 CAF ZERO
016073,002173: 42,3457 60155 AD MPAC +1
016074,002174: 42,3460 54155 TS MPAC +1
016075,002175: 42,3461 34772 CAF ZERO
016076,002176: 42,3462 60154 AD MPAC # CANT OVFLOW
016077,002177: 42,3463 56154 XCH MPAC
016078,002178: 42,3464 30154 MPACTST CA MPAC # ALARM IF MPAC NON ZERO
016079,002179: 42,3465 00006 EXTEND
016080,002180: 42,3466 16711 BZF TCQ
016081,002181: 42,3467 04173 TC ALMCYCLE # ALARM AND RECYCLE.
016082,002182: 42,3470 54156 SIZETST TS MPAC +2 # CALLED WITH - CON IN A
016083,002183: 42,3471 10155 CCS MPAC +1 # GET MAG OF MPAC+1
016084,002184: 42,3472 64770 AD ONE
016085,002185: 42,3473 13475 TCF +2
016086,002186: 42,3474 64770 AD ONE
016087,002187: 42,3475 60156 AD MPAC +2
016088,002188: 42,3476 00006 EXTEND # MAG OF MPAC+1 - CON
016089,002189: 42,3477 66711 BZMF TCQ
016090,002190: 42,3500 04173 TC ALMCYCLE # MAG OF MPAC+1 G/ CON. ALARM AND RECYCLE.
016091,002191: 42,3501 44125 FORCEV25 CS OCT31 # FORCE VERB 25 TO BE EXECUTED BY RECYCLE
016092,002192: 42,3502 55244 TS VERBSAVE # IN CASE OPERATOR EXECUTED A LOWER LOAD
016093,002193: 42,3503 04173 TC ALMCYCLE # VERB. ALARM AND RECYCLE.
016094,002194:
016095,002195: # # Page 364
016096,002196:
016097,002197: # MONITOR ALLOWS OTHER KEYBOARD ACTIVITY. IT IS ENDED BY VERB TERMINATE,
016098,002198: # VERB PROCEED WITHOUT DATA, VERB RESEQUENCE,
016099,002199: # ANOTHER MONITOR, OR ANY NVSUB CALL THAT PASSES THE DSPLOCK (PROVIDED
016100,002200: # THAT THE OPERATOR HAS SOMEHOW ALLOWED THE ENDING OF A MONITOR WHICH
016101,002201: # HE HAS INITIATED THROUGH THE KEYBOARD).
016102,002202:
016103,002203: # MONITOR ACTION IS SUSPENDED, BUT NOT ENDED, BY ANY KEYBOARD ACTION.
016104,002204: # EXCEPT ERROR LIGHT RESET. IT BEGINS AGAIN WHEN KEY RELEASE IS PERFORMED.
016105,002205: # MONITOR SAVES THE NOUN AND APPROPRIATE DISPLAY VERB IN MONSAVE. IT SAVES
016106,002206: # NOUNCADR IN MONSAVE1, IF NOUN = MACHINE CADR TO BE SPECIFIED. BIT 15 OF
016107,002207: # MONSAVE1 IS THE KILL MONITOR SIGNAL (KILLER BIT). BIT 14 OF MONSAVE1
016108,002208: # INDICATES THE CURRENT MONITOR WAS EXTERNALLY INITIATED (EXTERNAL
016109,002209: # MONITOR BIT). IT IS TURNED OFF BY RELDSP AND KILMONON.
016110,002210:
016111,002211: # MONSAVE INDICATES IF MONITOR IS ON (+=ON, +0=OFF)
016112,002212: # IF MONSAVE IS +, MONITOR ENTERS NO REQUEST, BUT TURNS KILLER BIT OFF.
016113,002213: # IF MONSAVE IS +0, MONITOR ENTERS REQUEST AND TURNS KILLER BIT OFF.
016114,002214:
016115,002215: # NVSUB (IF EXTERNAL MONITOR BIT IS OFF), VB=PROCEED WITHOUT DATA,
016116,002216: # VB=RESEQUENCE, AND VB=TERMINATE TURN KILL MONITOR BIT ON.
016117,002217:
016118,002218: # IF KILLER BIT IS ON, MONREQ ENTERS NO FURTHER REQUESTS, ZEROS MONSAVE
016119,002219: # AND MONSAVE1 (TURNING OFF KILLER BIT AND EXTERNAL MONITOR BIT).
016120,002220:
016121,002221: # MONITOR DOESNT TEST FOR MATBS SINCE NVSUB CAN HANDLE INTERNAL MATBS NOW.
016122,002222:
016123,002223: 41,2000 SETLOC PINBALL2
016124,002224: 41,2000 BANK
016125,002225: 41,3224 COUNT* $$/PIN
016126,002226: 41,3224 44076 MONITOR CS BIT15/14
016127,002227: 41,3225 71222 MASK NOUNCADR
016128,002228: 41,3226 54155 MONIT1 TS MPAC +1 # TEMP STORAGE
016129,002229: 41,3227 40136 CS ENTEXIT
016130,002230: 41,3230 64170 AD ENDINST
016131,002231: 41,3231 10000 CCS A
016132,002232: 41,3232 03241 TC MONIT2
016133,002233: 41,3233 75377 MONREF OCT 75377 # -DEC10, STARTING IN BIT8. CANNOT GET HERE
016134,002234: 41,3234 03241 TC MONIT2
016135,002235: 41,3235 34753 CAF BIT14 # EXTERNALLY INITIATED MONITOR.
016136,002236: 41,3236 26155 ADS MPAC +1 # SET BIT 14 FOR MONSAVE1.
016137,002237: 41,3237 34772 CAF ZERO
016138,002238: 41,3240 55225 TS MONSAVE2 # ZERO NVMONOPT OPTIONS
016139,002239: 41,3241 36043 MONIT2 CAF LOW7
016140,002240: 41,3242 71204 MASK VERBREG
016141,002241: 41,3243 04333 TC LEFT5
016142,002242: 41,3244 54022 TS CYL
016143,002243: 41,3245 40022 CS CYL
016144,002244: 41,3246 56022 XCH CYL
016145,002245: 41,3247 61205 AD NOUNREG
016146,002246: 41,3250 54154 TS MPAC # TEMP STORAGE
016147,002247: 41,3251 34772 CAF ZERO
016148,002248: # # Page 365
016149,002249: 41,3252 55215 TS DSPLOCK # +0 INTO DSPLOCK SO MONITOR CAN RUN.
016150,002250: 41,3253 11245 CCS CADRSTOR # TURN OFF KR LITE IF CADRSTOR AND DSPLIST
016151,002251: 41,3254 03256 TC +2 # ARE BOTH EMPTY. (LITE COMES ON IF NEW
016152,002252: 41,3255 04455 TC RELDSP1 # MONITOR IS KEYED IN OVER OLD MONITOR.)
016153,002253: 41,3256 00004 INHINT
016154,002254: 41,3257 11223 CCS MONSAVE
016155,002255: 41,3260 03263 TC +3 # IF MONSAVE WAS +, NO REQUEST
016156,002256: 41,3261 05222 TC TWIDBIT1 # IF MONSAVE WAS 0, REQUEST MONREQ
016157,002257: 41,3262 03267 ADRES MONREQ
016158,002258: 41,3263 52155 DXCH MPAC # PLACE MONITOR VERB AND NOUN INTO MONSAVE
016159,002259: 41,3264 53224 DXCH MONSAVE # ZERO THE KILL MONITOR BIT
016160,002260: 41,3265 00003 RELINT # SET UP EXTERNAL MONITOR BIT
016161,002261: 41,3266 00136 TC ENTRET
016162,002262:
016163,002263: 41,3267 04366 MONREQ TC LODSAMPT # CALLED BY WAITLIST
016164,002264: 41,3270 03307 TC B15MONCK # CHECK FOR KILLER BIT
016165,002265: 41,3271 03303 TC KILLMON # IF KILLER BIT = 1, NO REQUESTS
016166,002266: 41,3272 35016 CAF MONDEL
016167,002267: 41,3273 05233 TCWAIT TC WAITLIST # ENTER WAITLIST REQUEST FOR MONREQ
016168,002268: 41,3274 1202 EBANK= DSPCOUNT
016169,002269: 41,3274 03267 62102 2CADR MONREQ
016170,002270:
016171,002271: 41,3276 34346 CAF CHRPRIO
016172,002272: 41,3277 05121 TCNOVAC TC NOVAC # ENTER EXEC REQUEST FOR MONDO
016173,002273: 41,3300 1202 EBANK= DSPCOUNT
016174,002274: 41,3300 03314 62102 2CADR MONDO
016175,002275:
016176,002276: 41,3302 05314 TC TASKOVER
016177,002277:
016178,002278: 41,3303 34772 KILLMON CAF ZERO # ZERO MONSAVE AND TURN KILLER BIT OFF
016179,002279: 41,3304 55223 TS MONSAVE
016180,002280: 41,3305 55224 TS MONSAVE1 # TURN OFF KILL MONITOR BIT.
016181,002281: 41,3306 05314 TC TASKOVER # TURN OFF EXTERNAL MONITOR BIT.
016182,002282: 41,3307 5016 MONDEL EQUALS 1SEC
016183,002283: 41,3307 11224 B15MONCK CCS MONSAVE1 # CHECK FOR KILLER BIT=1
016184,002284: 41,3310 13311 TCF +1 # =0
016185,002285: 41,3311 24002 INCR Q # =0
016186,002286: 41,3312 00002 TC Q # =1
016187,002287: 41,3313 00002 TC Q # =1
016188,002288: 41,3314 03307 MONDO TC B15MONCK # CHECK FOR KILLER BIT
016189,002289: 41,3315 05205 TC ENDOFJOB # IN CASE TERMINATE CAME SINCE LAST MONREQ
016190,002290: 41,3316 11215 CCS DSPLOCK
016191,002291: 41,3317 03337 TC MONBUSY # NVSUB IS BUSY
016192,002292: 41,3320 36043 CAF LOW7
016193,002293: 41,3321 71223 MASK MONSAVE
016194,002294: 41,3322 02315 TC UPDATNN -1 # PLACE NOUN INTO NOUNREG AND DISPLAY IT
016195,002295: 41,3323 34171 CAF MID7
016196,002296: 41,3324 71223 MASK MONSAVE # CHANGE MONITOR VERB TO DISPLAY VERB
016197,002297: 41,3325 63233 AD MONREF # -DEC10, STARTING IN BIT8
016198,002298: # # Page 366
016199,002299: 41,3326 54023 TS EDOP # RIGHT 7
016200,002300: 41,3327 30023 CA EDOP
016201,002301: 41,3330 55204 TS VERBREG
016202,002302: 41,3331 32433 CAF MONBACK # SET RETURN TO PASTEVB AFTER DATA DISPLAY
016203,002303: 41,3332 54136 TS ENTRET
016204,002304: 41,3333 44076 CS BIT15/14
016205,002305: 41,3334 71224 MASK MONSAVE1 # PUT ECADR INTO MPAC +2. INTMCTBS WILL
016206,002306: 41,3335 54156 TS MPAC +2 # DISPLAY IT AND SET NOUNCADR, NOUNADD,
016207,002307: 41,3336 02050 ENDMONDO TC TESTNN # EBANK.
016208,002308:
016209,002309: 41,3337 4076 BIT15/14 EQUALS RELTAB11 # OCT 60000
016210,002310: 4000 SETLOC FFTAG8
016211,002311: 4000 BANK
016212,002312:
016213,002313: 4151 COUNT* $$/PIN
016214,002314: 4151 34171 PASTEVB CAF MID7
016215,002315: 4152 71225 MASK MONSAVE2 # NVMONOPT PASTE OPTION
016216,002316: 4153 00006 EXTEND
016217,002317: 4154 14156 BZF +2
016218,002318: 4155 04157 TC PASTEOPT # PASTE PLEASE VERB FOR NVMONOPT
016219,002319: 4156 31223 CA MONSAVE # PASTE MONITOR VERB - PASTE OPTION IS 0
016220,002320: 4157 54023 PASTEOPT TS EDOP # RIGHT 7
016221,002321: 4160 30023 CA EDOP # PLACE MONITOR VERB OR PLEASE VERB INTO
016222,002322: 4161 04636 TC BANKCALL # VERBREG AND DISPLAY IT.
016223,002323: 4162 62336 CADR UPDATVB -1
016224,002324: 4163 34772 CAF ZERO # ZERO REQRET SO THAT PASTED VERBS CAN
016225,002325: 4164 55216 TS REQRET # BE EXECUTED BY OPERATOR.
016226,002326: 4165 31225 CA MONSAVE2
016227,002327: 4166 04264 TC BLANKSUB # PROCESS NVMONOPT BLANK OPTION IF ANY
016228,002328: 4167 04170 TC +1
016229,002329: 4170 05205 ENDPASTE TC ENDOFJOB
016230,002330:
016231,002331: 4171 4170 ENDINST EQUALS ENDPASTE
016232,002332:
016233,002333: 4171 37600 MID7 OCT 37600
016234,002334:
016235,002335: 4172 00034 OCT34 OCT 34
016236,002336: 41,2000 SETLOC PINBALL2
016237,002337: 41,2000 BANK
016238,002338: 41,3337 COUNT* $$/PIN
016239,002339: 41,3337 04356 MONBUSY TC RELDSPON # TURN KEY RELEASE LIGHT
016240,002340: 41,3340 05205 TC ENDOFJOB
016241,002341:
016242,002342: # DSPFMEM IS USED TO DISPLAY (IN OCTAL) ANY FIXED REGISTER.
016243,002343: # IT IS USED WITH NOUN = MACHINE CADR TO BE SPECIFIED. THE FCADR OF THE
016244,002344: # DESIRED LOCATION IS THEN PUNCHED IN. IT HANDLES F/F (FCADR 4000-7777)
016245,002345:
016246,002346: # FOR BANKS L/E 27, THIS IS ENOUGH.
016247,002347: # # Page 367
016248,002348:
016249,002349: # FOR BANKS G/E 30, THE THIRD COMPONENT OF NOUN 26 (PRIO, ADRES, BBCON)
016250,002350: # MUST BE PRELOADED WITH THE DESIRED SUPERBANK BITS (BITS 5,6,7).
016251,002351: # V23N26 SHOULD BE USED.
016252,002352:
016253,002353: # SUMMARY
016254,002354: # FOR BANKS L/E 27, V27N01E(FCADR)E
016255,002355: # FOR BANKS G/E 30, V23N26E(SUPERBITS)E V27N01E(FCADR)E
016256,002356:
016257,002357: 41,3341 34321 DSPFMEM CAF R1D1 # IF F/F, DATACALL USES BANK 02 OR 03.
016258,002358: 41,3342 55202 TS DSPCOUNT
016259,002359: 41,3343 31252 CA DSPTEM1 +2 # SUPERBANK BITS WERE PRELOADED INTO
016260,002360: 41,3344 54001 TS L # 3RD COMPONENT OF NOUN 26.
016261,002361: 41,3345 31222 CA NOUNCADR # ORIGINAL FCADR LOADED STILL IN NOUNCADR.
016262,002362: 41,3346 04671 TC SUPDACAL # CALL WITH FCADR IN A, SUPERBITS IN L.
016263,002363: 41,3347 03351 TC DSPOCTWO
016264,002364: 41,3350 05205 ENDSPF TC ENDOFJOB
016265,002365:
016266,002366: # # Page 368
016267,002367: # WORD DISPLAY ROUTINES
016268,002368: 40,2000 SETLOC PINBALL1
016269,002369: 40,2000 BANK
016270,002370: 40,3055 COUNT* $$/PIN
016271,002371: 40,3055 56002 DSPSIGN XCH Q
016272,002372: 40,3056 54144 TS DSPWDRET
016273,002373: 40,3057 10154 CCS MPAC
016274,002374: 40,3060 13070 TCF TCPLON
016275,002375: 40,3061 13070 TCF TCPLON
016276,002376: 40,3062 64770 AD ONE
016277,002377: 40,3063 54154 TS MPAC
016278,002378: 40,3064 02330 TC -ON
016279,002379: 40,3065 40155 CS MPAC +1
016280,002380: 40,3066 54155 TS MPAC +1
016281,002381: 40,3067 00144 TC DSPWDRET
016282,002382: 40,3070 02310 TCPLON TC +ON
016283,002383: 40,3071 00144 TC DSPWDRET
016284,002384:
016285,002385: # DSPDECWD CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 5 CHAR DECIMAL
016286,002386: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT ROUNDS BY 5 EXP-6.
016287,002387:
016288,002388: 40,3072 56002 DSPDECWD XCH Q
016289,002389: 40,3073 54115 TS WDRET
016290,002390: 40,3074 03055 TC DSPSIGN
016291,002391: 40,3075 00006 EXTEND # ROUND BY 5 EXP-6
016292,002392: 40,3076 32343 DCA DECROUND -1
016293,002393: 40,3077 20155 DAS MPAC
016294,002394: 40,3100 00006 EXTEND
016295,002395: 40,3101 13105 BZF +4
016296,002396: 40,3102 00006 EXTEND
016297,002397: 40,3103 34750 DCA DPOSMAX
016298,002398: 40,3104 52155 DXCH MPAC
016299,002399: 40,3105 34766 CAF FOUR
016300,002400: 40,3106 54137 DSPDCWD1 TS WDCNT
016301,002401: 40,3107 34355 CAF BINCON
016302,002402: 40,3110 07256 TC SHORTMP
016303,002403: 40,3111 30154 CA MPAC
016304,002404: 40,3112 04423 TC CODSTOR
016305,002405: 40,3113 34772 CAF ZERO
016306,002406: 40,3114 56156 XCH MPAC +2
016307,002407: 40,3115 56155 XCH MPAC +1
016308,002408: 40,3116 54154 TS MPAC
016309,002409: 40,3117 10143 CCS COUNT
016310,002410: 40,3120 55202 TS DSPCOUNT
016311,002411: 40,3121 03161 TC DSPIN
016312,002412: 40,3122 10137 CCS WDCNT
016313,002413: 40,3123 03106 TC DSPDCWD1
016314,002414: 40,3124 04261 TC -VD1SET
016315,002415: 40,3125 00115 TC WDRET
016316,002416:
016317,002417: # # Page 369
016318,002418:
016319,002419: # DSPDC2NR CONVERTS C(MPAC,MPAC+1) INTO A SIGN AND 2 CHAR DECIMAL
016320,002420: # STARTING IN LOC SPECIFIED IN DSPCOUNT. IT DOES NOT ROUND
016321,002421:
016322,002422: 40,3126 56002 DSPDC2NR XCH Q
016323,002423: 40,3127 54115 TS WDRET
016324,002424: 40,3130 03055 TC DSPSIGN
016325,002425: 40,3131 34770 +3 CAF ONE
016326,002426: 40,3132 03106 TC DSPDCWD1
016327,002427:
016328,002428: # DSP2DEC CONVERTS C(MPAC) AND C(MPAC+1) INTO A SIGN AND 10 CHAR DECIMAL
016329,002429: # STARTING IN THE LOC SPECIFIED IN DSPCOUNT.
016330,002430:
016331,002431: 40,3133 56002 DSP2DEC XCH Q
016332,002432: 40,3134 54115 TS WDRET
016333,002433: 40,3135 34772 CAF ZERO
016334,002434: 40,3136 54124 TS CODE
016335,002435: 40,3137 36214 CAF THREE
016336,002436: 40,3140 03247 TC 11DSPIN # -R2 OFF
016337,002437: 40,3141 34766 CAF FOUR
016338,002438: 40,3142 03247 TC 11DSPIN # +R2 OFF
016339,002439: 40,3143 03055 TC DSPSIGN
016340,002440: 40,3144 34322 CAF R2D1
016341,002441: 40,3145 03106 END2DEC TC DSPDCWD1
016342,002442:
016343,002443: # DSPDECVN DISPLAYS C(A) UPON ENTRY AS A 2 CHAR DECIMAL BEGINNING IN THE
016344,002444: # DSP LOC SPECIFIED IN DSPCOUNT.
016345,002445: # C(A) SHOULD BE IN FORM N X 2EXP-14. THIS IS SCALED TO FORM N/100 BEFORE
016346,002446: # DISPLAY CONVERSION.
016347,002447:
016348,002448: 40,3146 00006 DSPDECVN EXTEND
016349,002449: 40,3147 72244 MP VNDSPCON # MULT BY .01
016350,002450: 40,3150 22154 LXCH MPAC # TAKE RESULTS FROM L. (MULT BY 2EXP14).
016351,002451: 40,3151 34772 CAF ZERO
016352,002452: 40,3152 54155 TS MPAC +1
016353,002453: 40,3153 56002 XCH Q
016354,002454: 40,3154 54115 TS WDRET
016355,002455: 40,3155 03131 TC DSPDC2NR +3 # NO SIGN, NO ROUND, 2 CHAR
016356,002456:
016357,002457: 40,3156 03146 GOVNUPDT TC DSPDECVN # THIS IS NOT FOR GENERAL USE. REALLY PART
016358,002458: 40,3157 04655 TC POSTJUMP # OF UPDATVB.
016359,002459: 40,3160 62346 CADR UPDAT1 +2
016360,002460:
016361,002461: 41,2000 SETLOC PINBALL2
016362,002462: 41,2000 BANK
016363,002463: 41,3351 COUNT* $$/PIN
016364,002464:
016365,002465: # DSPOCTWD DISPLAYS C(A) UPON ENTRY AS A 5 CHAR OCT STARTING IN THE DSP
016366,002466: # CHAR SPECIFIED IN DSPCOUNT. IT STOPS AFTER 5 CHAR HAVE BEEN DISPLAYED.
016367,002467: # # Page 370
016368,002468:
016369,002469: 41,3351 54022 DSPOCTWO TS CYL
016370,002470: 41,3352 56002 XCH Q
016371,002471: 41,3353 54115 TS WDRET # MUST USE SAME RETURN AS DSP2BIT.
016372,002472: 41,3354 34753 CAF BIT14 # TO BLANK SIGNS
016373,002473: 41,3355 27202 ADS DSPCOUNT
016374,002474: 41,3356 34766 CAF FOUR
016375,002475: 41,3357 54137 WDAGAIN TS WDCNT
016376,002476: 41,3360 40022 CS CYL
016377,002477: 41,3361 40022 CS CYL
016378,002478: 41,3362 40022 CS CYL
016379,002479: 41,3363 40000 CS A
016380,002480: 41,3364 74774 MASK DSPMSK
016381,002481: 41,3365 04423 TC CODSTOR
016382,002482: 41,3366 10000 CCS A # DECREMENT DSPCOUNT EXCEPT AT +0
016383,002483: 41,3367 55202 TS DSPCOUNT
016384,002484: 41,3370 04655 TC POSTJUMP
016385,002485: 41,3371 61255 CADR DSPOCTIN
016386,002486: 41,3372 10137 OCTBACK CCS WDCNT
016387,002487: 41,3373 03357 TC WDAGAIN # +
016388,002488: 41,3374 04261 DSPLV TC -VD1SET
016389,002489: 41,3375 00115 TC WDRET
016390,002490:
016391,002491: 41,3376 4774 DSPMSK = SEVEN
016392,002492:
016393,002493: # FOR DSPIN PLACE 0/25 OCT INTO COUNT, 5 BIT RELAY CODE INTO CODE. BOTH
016394,002494: # ARE DESTROYED. IF BIT14 OF COUNT IS 1, SIGN IS BLANKED WITH LEFT CHAR.
016395,002495: # FOR DSPIN1 PLACE 0,1 INTO BIT11 OF CODE, 2 INTO COUNT, REL ADDRESS OF
016396,002496: # DSPTAB ENTRY INTO DSREL.
016397,002497:
016398,002498: 40,2000 SETLOC PINBALL1
016399,002499: 40,2000 BANK
016400,002500: 40,3161 COUNT* $$/PIN
016401,002501: 40,3161 56002 DSPIN XCH Q # CANT USE L FOR RETURN, SINCE MANY OF THE
016402,002502: 40,3162 54114 TS DSEXIT # ROUTINES CALLING DSPIN USE L AS RETURN.
016403,002503: 40,3163 34342 CAF LOW5
016404,002504: 40,3164 70143 MASK COUNT
016405,002505: 40,3165 54021 TS SR
016406,002506: 40,3166 56021 XCH SR
016407,002507: 40,3167 54141 TS DSREL
016408,002508: 40,3170 34770 CAF BIT1
016409,002509: 40,3171 70143 MASK COUNT
016410,002510: 40,3172 10000 CCS A
016411,002511: 40,3173 03175 TC +2 # LEFT IF COUNT IS ODD
016412,002512: 40,3174 03211 TC DSPIN1 -1 # RIGHT IF COUNT IS EVEN
016413,002513: 40,3175 56124 XCH CODE
016414,002514: 40,3176 60000 DOUBLE
016415,002515: 40,3177 60000 DOUBLE
016416,002516: 40,3200 60000 DOUBLE
016417,002517: 40,3201 60000 DOUBLE
016418,002518: # # Page 371
016419,002519: 40,3202 60000 DOUBLE
016420,002520: 40,3203 54124 TS CODE
016421,002521: 40,3204 34753 CAF BIT14
016422,002522: 40,3205 70143 MASK COUNT
016423,002523: 40,3206 10000 CCS A
016424,002524: 40,3207 34767 CAF TWO # BIT14 = 1, BLANK SIGN
016425,002525: 40,3210 64770 AD ONE # BIT14 = 0, LEAVE SIGN ALONE
016426,002526: 40,3211 54143 -1 TS COUNT # +0 INTO COUNT FOR RIGHT
016427,002527: # +1 INTO COUNT FOR LEFT (SIGN LEFT ALONE)
016428,002528: # +3 INTO COUNT FOR LEFT (TO BLANK SIGN)
016429,002529: 40,3212 00004 DSPIN1 INHINT
016430,002530: 40,3213 50141 INDEX DSREL
016431,002531: 40,3214 11226 CCS DSPTAB
016432,002532: 40,3215 03217 TC +2 # IF +
016433,002533: 40,3216 00104 ERCON OCT 104 # CHAN 11, BITS 3,7. CANNOT GET HERE
016434,002534: 40,3217 64770 AD ONE # IF -
016435,002535: 40,3220 54142 TS DSMAG
016436,002536: 40,3221 50143 INDEX COUNT
016437,002537: 40,3222 73243 MASK DSMSK
016438,002538: 40,3223 00006 EXTEND
016439,002539: 40,3224 60124 SU CODE
016440,002540: 40,3225 00006 EXTEND
016441,002541: 40,3226 13241 BZF DSLV # SAME
016442,002542: 40,3227 50143 DFRNT INDEX COUNT
016443,002543: 40,3230 43243 CS DSMSK # MASK WITH 77740,76037,75777, OR 74037
016444,002544: 40,3231 70142 MASK DSMAG
016445,002545: 40,3232 60124 AD CODE
016446,002546: 40,3233 40000 CS A
016447,002547: 40,3234 50141 INDEX DSREL
016448,002548: 40,3235 57226 XCH DSPTAB
016449,002549: 40,3236 00006 EXTEND
016450,002550: 40,3237 63241 BZMF DSLV # DSPTAB ENTRY WAS -
016451,002551: 40,3240 25221 INCR NOUT # DSPTAB ENTRY WAS +
016452,002552: 40,3241 00003 DSLV RELINT
016453,002553: 40,3242 00114 TC DSEXIT
016454,002554:
016455,002555: 40,3243 00037 DSMSK OCT 37
016456,002556: 40,3244 01740 OCT 1740
016457,002557: 40,3245 02000 OCT 2000
016458,002558: 40,3246 03740 OCT 3740
016459,002559:
016460,002560: # FOR 11DSPIN, PUT REL ADDRESS OF DSPTAB ENTRY INTO A, 1 IN BIT11 OR 0 IN
016461,002561: # BIT11 OF CODE.
016462,002562:
016463,002563: 40,3247 54141 11DSPIN TS DSREL
016464,002564: 40,3250 34767 CAF TWO
016465,002565: 40,3251 54143 TS COUNT
016466,002566: 40,3252 56002 XCH Q # MUST USE SAME RETURN AS DSPIN
016467,002567: 40,3253 54114 TS DSEXIT
016468,002568: # # Page 372
016469,002569: 40,3254 03212 TC DSPIN1
016470,002570:
016471,002571: 40,3255 03161 DSPOCTIN TC DSPIN # SO DSPOCTWD DOESNT USE SWCALL
016472,002572: 40,3256 04655 TC POSTJUMP
016473,002573: 40,3257 63372 ENDSPOCT CADR OCTBACK
016474,002574:
016475,002575: # DSPALARM FINDS TC NVSUBEND IN ENTRET FOR NVSUB INITIATED ROUTINES.
016476,002576: # ABORT WITH 21501
016477,002577: # DSPALARM FINDS TC ENDOFJOB IN ENTRET FOR KEYBOARD INITIATED ROUTINES.
016478,002578: # DO TC ENTRET.
016479,002579:
016480,002580: 40,3260 04261 PREDSPAL TC -VD1SET
016481,002581: 40,3261 43431 DSPALARM CS NVSBENDL
016482,002582: 40,3262 60136 AD ENTEXIT
016483,002583: 40,3263 00006 EXTEND
016484,002584: 40,3264 13277 BZF CHARALRM +2
016485,002585: 40,3265 42721 CS MONADR # IF THIS IS A MONITOR, KILL IT
016486,002586: 40,3266 60136 AD ENTEXIT
016487,002587: 40,3267 00006 EXTEND
016488,002588: 40,3270 13272 BZF +2
016489,002589: 40,3271 03275 TC CHARALRM
016490,002590: 40,3272 04235 TC KILMONON
016491,002591: 40,3273 04362 TC FALTON
016492,002592: 40,3274 04151 TC PASTEVB # PUT MONITOR VERB BACK IN VERBREG
016493,002593: 40,3275 04362 CHARALRM TC FALTON # NOT NVSUB INITATED TURN ON OPR ERROR
016494,002594: 40,3276 05205 TC ENDOFJOB
016495,002595: 40,3277 05726 +2 TC POODOO
016496,002596: 40,3300 21501 OCT 21501 # KEYBOARD + ALARM DISPLAY DURING NVSUB.
016497,002597:
016498,002598: # ALMCYCLE TURNS ON CHECK FAIL LIGHT, REDISPLAYS THE ORIGINAL VERB THAT
016499,002599: # WAS EXECUTED, AND RECYCLES TO EXECUTE THE ORIGINAL VERB/NOUN COMBINATION
016500,002600: # THAT WAS LAST EXECUTED. USED FOR BAD DATA DURING LOAD VERBS AND BY
016501,002601: # MCTBS. ALSO BY MMCHANG IF 2 NUMERICAL CHARACTERS WERE NOT PUNCHED IN
016502,002602: # FOR MM CODE.
016503,002603:
016504,002604: 4000 SETLOC FFTAG8
016505,002605: 4000 BANK
016506,002606: 4173 COUNT* $$/PIN
016507,002607: 4173 04362 ALMCYCLE TC FALTON # TURN ON CHECK FAIL LIGHT.
016508,002608: 4174 41244 CS VERBSAVE # GET ORIGINAL VERB THAT WAS EXECUTED
016509,002609: 4175 55216 TS REQRET # SET FOR ENTPAS0
016510,002610: 4176 04636 TC BANKCALL # PUTS ORIGINAL VERB INTO VERBREG AND
016511,002611: 4177 62336 CADR UPDATVB -1 # DISPLAYS IT IN VERB LIGHTS.
016512,002612: 4200 04655 ENTERJMP TC POSTJUMP
016513,002613: 4201 62000 ENDALM CADR ENTER
016514,002614:
016515,002615: # MMCHANG USES NOUN DISPLAY UNTIL ENTER. THEN IT USES MODE DISP.
016516,002616: # # Page 373
016517,002617: # IT GOES TO MODROUT WITH THE NEW M M CODE IN A, BUT NOT DISPLAYED IN
016518,002618: # MM LIGHTS.
016519,002619: # IT DEMANDS 2 NUMERICAL CHARACTERS BE PUNCHED IN FOR NEW MM CODE.
016520,002620: # IF NOT, IT RECYCLES.
016521,002621:
016522,002622: 41,2000 SETLOC PINBALL2
016523,002623: 41,2000 BANK
016524,002624: 41,3376 COUNT* $$/PIN
016525,002625: 41,3376 03417 MMCHANG TC REQMM # ENTPASHI ASSUMES THE TC REQMM AT MMCHANG
016526,002626: # IF THIS MOVES AT ALL, MUST CHANGE
016527,002627: # MMADREF AT ENTPASHI.
016528,002628: 41,3377 34764 +1 CAF BIT5 # OCT20 = ND2.
016529,002629: 41,3400 61202 AD DSPCOUNT # DSPCOUNT MUST = -ND2.
016530,002630: 41,3401 00006 EXTEND # DEMAND THAT 2 NUM CHAR WERE PUNCHED IN.
016531,002631: 41,3402 13404 BZF +2
016532,002632: 41,3403 04173 TC ALMCYCLE # DSPCOUNT NOT= -ND2. ALARM AND RECYCLE.
016533,002633: 41,3404 34772 CAF ZERO # DSPCOUNT = -ND2.
016534,002634: 41,3405 57205 XCH NOUNREG
016535,002635: 41,3406 54154 TS MPAC
016536,002636: 41,3407 34352 CAF ND1
016537,002637: 41,3410 55202 TS DSPCOUNT
016538,002638: 41,3411 04636 TC BANKCALL
016539,002639: 41,3412 60473 CADR 2BLANK
016540,002640: 41,3413 04261 TC -VD1SET
016541,002641: 41,3414 30154 CA MPAC
016542,002642: 41,3415 04655 TC POSTJUMP
016543,002643: 41,3416 10007 CADR MODROUTB # GO THRU STANDARD LOC.
016544,002644:
016545,002645: 41,3417 04,2007 MODROUTB = V37
016546,002646: 41,3417 40002 REQMM CS Q
016547,002647: 41,3420 55216 TS REQRET
016548,002648: 41,3421 34352 CAF ND1
016549,002649: 41,3422 55202 TS DSPCOUNT
016550,002650: 41,3423 34772 CAF ZERO
016551,002651: 41,3424 55205 TS NOUNREG
016552,002652: 41,3425 04636 TC BANKCALL
016553,002653: 41,3426 60473 CADR 2BLANK
016554,002654: 41,3427 04360 TC FLASHON
016555,002655: 41,3430 34770 CAF ONE
016556,002656: 41,3431 55203 TS DECBRNCH # SET FOR DEC
016557,002657: 41,3432 00136 TC ENTEXIT
016558,002658:
016559,002659: # VBRQEXEC ENTERS REQUEST TO EXEC FOR ANY ADDRESS WITH ANY PRIORITY.
016560,002660: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED.
016561,002661: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WITH
016562,002662: # COMPONENT 1 PRIORITY (BITS 10-14) BIT1=0 FOR NOVAC, BIT1=1 FOR FINDVAC.
016563,002663: # COMPONENT 2 JOB ADRES (12 BIT)
016564,002664: # COMPONENT 3 BBCON
016565,002665:
016566,002666: # # Page 374
016567,002667:
016568,002668: 41,3433 34770 VBRQEXEC CAF BIT1
016569,002669: 41,3434 71016 MASK N26/PRI
016570,002670: 41,3435 10000 CCS A
016571,002671: 41,3436 03460 TC SETVAC # IF BIT1 = 1, FINDVAC
016572,002672: 41,3437 33277 CAF TCNOVAC # IF BIT1 = 0, NOVAC
016573,002673: 41,3440 54154 REQEX1 TS MPAC # TC NOVAC OR TC FINDVAC INTO MPAC
016574,002674: 41,3441 37660 CA PRIO37
016575,002675: 41,3442 71016 MASK N26/PRI
016576,002676: 41,3443 54160 -1 TS MPAC +4 # PRIO INTO MPAC+4 AS A TEMP
016577,002677: 41,3444 04432 REQUESTC TC RELDSP
016578,002678: 41,3445 31016 CA N26/PRI
016579,002679: 41,3446 00006 EXTEND
016580,002680: 41,3447 12350 BZF GODSPALM # OP ERROR AND EOJ IF R1 OF N26 = 0
016581,002681: 41,3450 34170 CA ENDINST
016582,002682: 41,3451 54157 TS MPAC +3 # TC ENDOFJOB INTO MPAC+3
016583,002683: 41,3452 00006 EXTEND
016584,002684: 41,3453 31020 DCA N26/2CAD # JOB ADRES INTO MPAC+1
016585,002685: 41,3454 52156 DXCH MPAC +1 # BBCON INTO MPAC+2
016586,002686: 41,3455 30160 CA MPAC +4 # PRIO IN A
016587,002687: 41,3456 00004 INHINT
016588,002688: 41,3457 00154 TC MPAC
016589,002689:
016590,002690: 41,3460 34345 SETVAC CAF TCFINDVC
016591,002691: 41,3461 03440 TC REQEX1
016592,002692:
016593,002693: # VBRQWAIT ENTERS REQUEST TO WAITLIST FOR ANY ADDRESS WITH ANY DELAY.
016594,002694: # IT DOES ENDOFJOB AFTER ENTERING REQUEST. DISPLAY SYST IS RELEASED.
016595,002695: # IT ASSUMES NOUN 26 HAS BEEN PRELOADED WTIH
016596,002696: # COMPONENT 1 DELAY (LOW BITS)
016597,002697: # COMPONENT 2 TASK ADRES (12 BIT)
016598,002698: # COMPONENT 3 BBCON
016599,002699:
016600,002700: 41,3462 33273 VBRQWAIT CAF TCWAIT
016601,002701: 41,3463 54154 TS MPAC # TC WAITLIST INTO MPAC
016602,002702: 41,3464 31016 CA N26/PRI # TIME DELAY
016603,002703: 41,3465 03443 ENDRQWT TC REQUESTC -1
016604,002704:
016605,002705: # REQUESTC WILL PUT TASK ADRES INTO MPAC+1, BBCON INTO MPAC+2,
016606,002706: # TC ENDOFJOB INTO MPAC+3. IT WILL TAKE TIME DELAY OUT OF MPAC+4 AND
016607,002707: # LEAVE IT IN A, INHINT AND TC MPAC.
016608,002708:
016609,002709: 40,2000 SETLOC PINBALL1
016610,002710: 40,2000 BANK
016611,002711: 40,3301 COUNT* $$/PIN
016612,002712: 40,3301 44770 VBPROC CS ONE
016613,002713: 40,3302 55217 +1 TS LOADSTAT
016614,002714: 40,3303 04235 TC KILMONON # TURN ON KILL MONITOR BIT
016615,002715: 40,3304 04432 TC RELDSP
016616,002716: 40,3305 04417 TC FLASHOFF
016617,002717: # # Page 375
016618,002718: 40,3306 03412 TC RECALTST # SEE IF THERE IS ANY RECALL FROM ENDIDLE
016619,002719:
016620,002720: 40,3307 44767 VBTERM CS TWO
016621,002721: 40,3310 03302 TC VBPROC +1 # TERM VERB SETS LOADSTAT NEG
016622,002722:
016623,002723: # PROCKEY PERFORMS THE SAME FUNCTION AS VBPROC. IT MUST BE CALLED UNDER
016624,002724: # EXECUTIVE CONTROL, WITH CHRPRIO.
016625,002725:
016626,002726: 40,3311 41204 PROCKEY CS VERBREG # DONT ALLOW PROCEED DURING LOAD.
016627,002727: 40,3312 64354 AD VBSP2LD
016628,002728: 40,3313 00006 EXTEND
016629,002729: 40,3314 26000 DIM A
016630,002730: 40,3315 00006 EXTEND
016631,002731: 40,3316 13275 BZF CHARALRM
016632,002732: 40,3317 34772 PROCKEY1 CAF ZERO # SET REQRET FOR ENTER PASS 0.
016633,002733: 40,3320 55216 TS REQRET
016634,002734: 40,3321 04261 TC -VD1SET
016635,002735: 40,3322 03301 TC VBPROC
016636,002736:
016637,002737: # VBRESEQ WAKES ENDIDLE AT SAME LINE AS FINAL ENTER OF LOAD (L+3).
016638,002738: # (MAIN USE IS INTENDED AS RESPONSE TO INTERNALLY INITIATED FLASHING
016639,002739: # DISPLAYS IN ENDIDLE. SHOULD NOT BE USED WITH LOAD VERBS, PLEASE PERFORM,
016640,002740: # OR PLEASE MARK VERBS BECAUSE THEY ALREADY USE L+3 IN ANOTHER CONTEXT.)
016641,002741:
016642,002742: 40,3323 44772 VBRESEQ CS ZERO # MAKE IT LOOK LIKE DATA IN.
016643,002743: 40,3324 03302 TC VBPROC +1
016644,002744:
016645,002745: # FLASH IS TURNED OFF BY PROCEED WITHOUT DATA, TERMINATE, RESEQUENCE,
016646,002746: # END OF LOAD.
016647,002747:
016648,002748: # # Page 376
016649,002749:
016650,002750: # KEY RELEASE ROUTINE
016651,002751:
016652,002752: # THIS ROUTINE ALWAYS TURNS OFF THE UPACT LIGHT AND ALWAYS CLEARS DSPLOCK.
016653,002753:
016654,002754: # THE HIGHEST PRIORITY FUNCTION OF THE KEY RELEASE BUTTON IS THE
016655,002755: # UNSUSPENDING OF A SUSPENDED MONITOR WHICH WAS EXTERNALLY INITIATED.
016656,002756: # THIS FUNCTION IS ACCOMPLISHED BY CLEARING DSPLOCK AND TURNING OFF
016657,002757: # THE KEY RELEASE LIGHT IF BOTH DSPLIST AND CADRSTOR ARE EMPTY.
016658,002758:
016659,002759: # IF NO SUCH MONITOR EXISTS, THEN RELDSP IS EXECUTED TO CLEAR DSPLOCK
016660,002760: # AND THE EXTERNAL MONITOR BIT (FREEING THE DISPLAY SYSTEM FOR INTERNAL
016661,002761: # USE), TURN OFF THE KEY RELEASE LIGHT, AND WAKE UP ANY JOB IN DSPLIST.
016662,002762:
016663,002763: # IN ADDITION IF THERE IS A JOB IN ENDIDLE, THEN CONTROL IS TRANSFERRED
016664,002764: # TO PINBRNCH (IN DISPLAY INTERFACE ROUTINE) TO RE-EXECUTE THE SERIES OF
016665,002765: # NVSUB CALLS ETC. THAT PRECEDED THE ENDIDLE CALL STILL AWAITING RESPONSE.
016666,002766: # THIS FEATURE IS INTENDED FOR USE WHEN THE OPERATOR HAS BEEN REQUESTED TO
016667,002767: # RESPOND TO SOME INTERNAL ACTION THAT USED ENDIDLE, BUT HE HAS WRITTEN
016668,002768: # OVER THE INFORMATION ON THE DISPLAY PANEL BY SOME DISPLAYS OF HIS OWN
016669,002769: # INITIATION WHICH DO NOT SERVE AS RESPONSES. HITTING KEY RLSE WILL
016670,002770: # RE-ESTABLISH THE DISPLAYS TO THE STATE THEY WERE IN BEOFRE HE OBSCURED
016671,002771: # THEM, SO THAT HE CAN SEE THE WAITING REQUEST. THIS WORKS ONLY FOR
016672,002772: # INTERNAL PROGRAMS THAT USED ENDIDLE THROUGH MARGARETS DISPLAY
016673,002773: # SUBROUTINES.
016674,002774:
016675,002775: 40,3325 44766 VBRELDSP CS BIT3
016676,002776: 40,3326 00006 EXTEND
016677,002777: 40,3327 03011 WAND DSALMOUT # TURN OFF UPACT LITE
016678,002778: 40,3330 10115 CCS 21/22REG # OLD DSPLOCK
016679,002779: 40,3331 34753 CAF BIT14
016680,002780: 40,3332 71224 MASK MONSAVE1 # EXTERNAL MONITOR BIT (EMB)
016681,002781: 40,3333 10000 CCS A
016682,002782: 40,3334 03343 TC UNSUSPEN # OLD DSPLOCK AND EMB BOTH 1, UNSUSPEND,
016683,002783: 40,3335 04432 TSTLTS4 TC RELDSP # NOT UNSUSPENDING EXTERNAL MONITOR,
016684,002784: 40,3336 11245 CCS CADRSTOR # RELEASE DISPLAY SYSTEM AND
016685,002785: 40,3337 03341 TC +2 # DO RE-ESTABLISH IF CADRSTOR IS FULL.
016686,002786: 40,3340 05205 TC ENDOFJOB
016687,002787: 40,3341 04655 TC POSTJUMP
016688,002788: 40,3342 21275 CADR PINBRNCH
016689,002789: 40,3343 34772 UNSUSPEN CAF ZERO # EXTERNAL MONITOR IS SUSPENDED,
016690,002790: 40,3344 55215 TS DSPLOCK # JUST UNSUSPEND IT BY CLEARING DSPLOCK.
016691,002791: 40,3345 11245 CCS CADRSTOR # TURN KEY RELEASE LIGHT OFF IF BOTH
016692,002792: 40,3346 05205 TC ENDOFJOB # CADRSTOR AND DSPLIST ARE EMPTY.
016693,002793: 40,3347 04455 TC RELDSP1
016694,002794: 40,3350 05205 TC ENDOFJOB
016695,002795:
016696,002796: # # Page 377
016697,002797:
016698,002798: # NVSUB IS USED FOR SUB ROUTINE CALLS FROM WITHIN COMPUTER. IT CAN BE
016699,002799: # USED TO CALL THE COMBINATION OF ANY DISPLAY, LOAD, OR MONITOR VERB
016700,002800: # TOGETHER WITH ANY NOUN AVAILABLE TO THE KEYBOARD.
016701,002801: # PLACE 0VVVVVVVNNNNNNN INTO A.
016702,002802: # V'S ARE THE 7-BIT VERB CODE. N'S ARE THE 7-BIT NOUN CODE.
016703,002803:
016704,002804: # IF NVSUB IS CALLED WTIH THE FOLLOWING NEGATIVE NUMBERS (RATHER THAN THE
016705,002805: # VERB-NOUN CODE) IN A, THEN THE DISPLAY IS BLANKED AS FOLLOWS-
016706,002806: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY.
016707,002807:
016708,002808: # NVSUB CAN BE USED WTIH MACH CADR TO BE SPEC BY PLACING THE CADR INTO
016709,002809: # MPAC+2 BEFORE THE STANDARD NVSUB CALL.
016710,002810:
016711,002811: # NVSUB RETURNS TO 2+ CALLING LOC AFTER PERFORMING TASK, IF DISPLAY
016712,002812: # SYSTEM IS AVAILABLE. THE NEW NOUN AND VERB CODES ARE DISPLAYED.
016713,002813: # IF V'S =0, THE NEW NOUN CODE IS DISPLAYED ONLY (RETURN WITH NO FURTHER
016714,002814: # ACTION). IF N'S =0, THE NEW VERB CODE IS DISPLAYED ONLY (RETURN WITH NO
016715,002815: # FURTHER ACTION).
016716,002816:
016717,002817: # IT RETURNS TO 1+ CALLING LOC WITHOUT PERFORMING TASK, IF DISPLAY
016718,002818: # SYSTEM IS BLOCKED (NOTHING IS DISPLAYED IN THIS CASE).
016719,002819: # IT DOES TC ABORT (WITH OCT 01501) IF IT ENCOUNTERS A DISPLAY PROGRAM
016720,002820: # ALARM CONDITION BEFORE RETURN TO CALLER.
016721,002821:
016722,002822: # THE DISPLAY SYSTEM IS BLOCKED BY THE DEPRESSION OF ANY
016723,002823: # KEY, EXCEPT ERROR LIGHT RESET
016724,002824: # IT IS RELEASED BY THE KEY RELEASE BUTTON, ALL EXTENDED VERBS,
016725,002825: # PROCEED WITOHOUT DATA, TERMINATE, RESEQUENCE, INITIALIZE EXECUTIVE,
016726,002826: # RECALL PART OF RECALTST IF ENDIDLE WAS USED,
016727,002827: # VB = REQUEST EXECUTIVE, VB = REQUEST WAITLIST,
016728,002828: # MONITOR SET UP.
016729,002829:
016730,002830: # THE DISPLAY SYSTEM IS ALSO BLOCKED BY THE EXTERNAL MONITOR BIT, WHICH
016731,002831: # INDICATES AN EXTERNALLY INITIATED MONITOR IS RUNNING (SEE MONITOR)
016732,002832:
016733,002833: # A NVSUB CALL THAT PASSES DSPLOCK AND THE EXTERNAL MONITOR BIT ENDS OLD
016734,002834: # MONITOR.
016735,002835:
016736,002836: # DSPLOCK IS THE INTERLOCK FOR USE OF KEYBOARD AND DISPLAY SYSTEM WHICH
016737,002837: # LOCKS OUT INTERNAL USE WHENEVER THERE IS EXTERNAL KEYBOARD ACTION.
016738,002838:
016739,002839: # NVSUB SHOULD BE USED TWICE IN SUCCESSION FOR 'PLEASE PERFORM' SITUATIONS
016740,002840: # (SIMILARLY FOR PLEASE MARK). FIRST PLACE THE CODED NUMBER FOR WHAT
016741,002841: # ACTION IS DESIRED OF OPERATOR INTO THE REGISTERS REFERRED TO BY THE
016742,002842: # 'CHECKLIST' NOUN. GO TO NVSUB WITH A DISPLAY VERB AND THE 'CHECKLIST'
016743,002843: # NOUN. GO TO NVSUB AGAIN WTIH THE 'PLEASE PERFORM' VERB AND ZEROS IN THE
016744,002844: # LOW 7 BITS. THIS 'PASTES UP' THE 'PLEASE PERFORM' VERB INTO THE VERB
016745,002845: # LIGHTS.
016746,002846:
016747,002847: # NVMONOPT IS AN ENTRY SIMILAR TO NVSUB, BUT REQUIRING AN ADDITIONAL
016748,002848: # # Page 378
016749,002849: # PARAMETER IN L. IT SHOULD BE USED ONLY WITH A MONITOR VERB-NOUN CODE IN
016750,002850: # A. AFTER EACH MONITOR DISPLAY A *PLEASE* VERB WILL BE PASED IN THE VERB
016751,002851: # LIGHTS OR DATA WILL BE BLANKED (OR BOTH) ACCORDING TO THE OPTIONS
016752,002852: # SPECIFIED IN L. IF BITS 8-14 OF L ARE OTHER THAN ZERO, THEN THEY WILL
016753,002853: # BE INTERPRETED AS A VERB CODE AND PASTED IN THE VERB LIGHTS. (THIS VERB
016754,002854: # CODE SHOULD DESIGNATE ONE OF THE *PLEASE* VERBS.) IF BITS 1-3 OF L ARE
016755,002855: # OTHER THAN ZERO, THEN THEY WILL BE USED BO BLANK DATA BY BEING FED TO
016756,002856: # BLANKSUB. IF NVMONOPT IS USED WITH A VERB OTHER THAN A MONITOR VERB,
016757,002857: # THE PARAMETER IN L HAS NO EFFECT.
016758,002858:
016759,002859: # NVSUB IN FIXED-FIXED PLACES 2+CALLING LOC INTO NVQTEM, TC NVSUBEND INTO
016760,002860: # ENTRET. (THIS WILL RESTORE OLD CALLING BANK BITS)
016761,002861:
016762,002862: 4000 SETLOC FFTAG8
016763,002863: 4000 BANK
016764,002864: 4202 COUNT* $$/PIN
016765,002865: 4202 22007 NVSUB LXCH 7 # ZERO NVMONOPT OPTIONS
016766,002866: 4203 54123 NVMONOPT TS NVTEMP
016767,002867: 4204 23242 LXCH NVQTEM
016768,002868: 4205 22002 LXCH Q
016769,002869: 4206 04226 TC EMBDSPCK # CHECK FOR DSP SYST AVAILABLE
016770,002870: 4207 23242 LXCH NVQTEM # 2+ CALLING LOC INTO NVQTEM
016771,002871: 4210 23225 LXCH MONSAVE2 # STORE NVMONOPT OPTIONS
016772,002872: 4211 04235 TC KILMONON # TURN ON KILL MONITOR BIT
016773,002873: 4212 34223 NVSUBCOM CAF NVSBBBNK
016774,002874:
016775,002875: 4213 56006 XCH BBANK
016776,002876: 4214 00006 EXTEND # SAVE OLD SUPERBITS
016777,002877: 4215 04007 ROR SUPERBNK
016778,002878: 4216 55243 TS NVBNKTEM
016779,002879: 4217 34223 CAF PINSUPBT
016780,002880: 4220 00006 EXTEND
016781,002881: 4221 01007 WRITE SUPERBNK
016782,002882: 4222 03513 TC NVSUBB # GO TO NVSUB1 THRU STANDARD LOC
016783,002883: 4223 1202 EBANK= DSPCOUNT
016784,002884: 4223 62102 NVSBBBNK BBCON NVSUB1
016785,002885:
016786,002886: 4224 4223 PINSUPBT = NVSBBBNK # CONTAINS THE PINBALL SUPERBITS.
016787,002887:
016788,002888: 4224 53243 NVSUBEND DXCH NVQTEM # NVBNKTEM MUST = NVQTEM+1
016789,002889: 4225 05214 TC SUPDXCHZ # DTCB WITH SUPERBIT SWITCHING
016790,002890:
016791,002891: 4226 34753 EMBDSPCK CAF BIT14
016792,002892: 4227 71224 MASK MONSAVE1 # EXTERNAL MONITOR BIT
016793,002893: 4230 61215 AD DSPLOCK
016794,002894: 4231 10000 CCS A
016795,002895: 4232 00001 TC L # DSP SYST BLOCKED. RET TO 1+ CALLING LOC
016796,002896: 4233 24001 INCR L # DSP SYST OK. SET RET TO 2+ CALLING LOC
016797,002897: 4234 00002 TC Q
016798,002898: 41,2000 SETLOC PINBALL2
016799,002899: # # Page 379
016800,002900:
016801,002901: 41,2000 COUNT* $$/PIN
016802,002902: 41,2000 BANK
016803,002903:
016804,002904: # BLANKDSP BLANKS DISPLAY ACCORDING TO OPTION NUMBER IN NVTEMP AS FOLLOWS:
016805,002905: # -4 FULL BLANK, -3 LEAVE MODE, -2 LEAVE MODE AND VERB, -1 BLANK R'S ONLY.
016806,002906:
016807,002907: 41,3466 64774 BLANKDSP AD SEVEN # 7,8,9,OR 10 (A HAD 0,1,2,OR 3)
016808,002908: 41,3467 00004 INHINT
016809,002909: 41,3470 54124 +2 TS CODE # BLANK SPECIFIED DSPTABS
016810,002910: 41,3471 44755 CS BIT12
016811,002911: 41,3472 50124 INDEX CODE
016812,002912: 41,3473 57226 XCH DSPTAB
016813,002913: 41,3474 10000 CCS A
016814,002914: 41,3475 25221 INCR NOUT
016815,002915: 41,3476 03477 TC +1
016816,002916: 41,3477 10124 CCS CODE
016817,002917: 41,3500 03470 TC BLANKDSP +2
016818,002918: 41,3501 00003 RELINT
016819,002919: 41,3502 50123 INDEX NVTEMP
016820,002920: 41,3503 03510 TC +5
016821,002921: 41,3504 03505 TC +1 # NVTEMP HAS -4 (NEVER TOUCH MODREG)
016822,002922: 41,3505 55204 TS VERBREG # -3
016823,002923: 41,3506 55205 TS NOUNREG # -2
016824,002924: 41,3507 55220 TS CLPASS # -1
016825,002925: 41,3510 04261 TC -VD1SET
016826,002926: 41,3511 04417 TC FLASHOFF # PROTECT AGAINST INVISIBLE FLASH
016827,002927: 41,3512 03534 TC ENTSET -2 # ZEROS REQRET
016828,002928:
016829,002929: 41,3513 33536 NVSUB1 CAF ENTSET # IN BANK
016830,002930: 41,3514 54136 TS ENTRET # SET RETURN TO NVSUBEND
016831,002931: 41,3515 10123 CCS NVTEMP # WHAT NOW
016832,002932: 41,3516 03522 TC +4 # NORMAL NVSUB CALL (EXECUTE VN OR PASTE)
016833,002933: 41,3517 02350 TC GODSPALM
016834,002934: 41,3520 03466 TC BLANKDSP # BLANK DISPLAY AS SPECIFIED
016835,002935: 41,3521 02350 TC GODSPALM
016836,002936: 41,3522 36043 CAF LOW7
016837,002937: 41,3523 70123 MASK NVTEMP
016838,002938: 41,3524 54157 TS MPAC +3 # TEMP FOR NOUN (CANT USE MPAC. DSPDECVN
016839,002939: 41,3525 30123 CA NVTEMP # USES MPAC, +1, +2)
016840,002940: 41,3526 54023 TS EDOP # RIGHT 7
016841,002941: 41,3527 30023 CA EDOP
016842,002942: 41,3530 54160 TS MPAC +4 # TEMP FOR VERB (CANT USE MPAC+1. DSPDECVN
016843,002943: # USES MPAC, +1, +2)
016844,002944: 41,3531 10157 CCS MPAC +3 # TEST NOUN
016845,002945: 41,3532 03537 TC NVSUB2 # IF NOUN NOT +0, GO ON
016846,002946: 41,3533 02335 TC UPDATVB -2 # IF NOUN=+0, DISPLAY VERB, THEN RETURN
016847,002947: 41,3534 34772 -2 CAF ZERO # ZERO REQRET SO THAT PASTED VERBS CAN
016848,002948: 41,3535 55216 TS REQRET # BE EXECUTED BY OPERATOR.
016849,002949: 41,3536 04224 ENTSET TC NVSUBEND
016850,002950: 41,3537 10160 NVSUB2 CCS MPAC +4 # TEST VERB
016851,002951: 41,3540 13543 TCF +3 # IF VERB NOT +0, GO ON
016852,002952: # # Page 380
016853,002953: 41,3541 02314 TC UPDATNN -2 # IF VERB=+0, DISPLAY NOUN, THEN RETURN
016854,002954: 41,3542 04224 TC NVSUBEND
016855,002955: 41,3543 30156 CA MPAC +2 # TEMP FOR MACH CADR TO BE SPEC. (DSPDECVN
016856,002956: 41,3544 54161 TS MPAC +5 # USES MPAC, +1, +2)
016857,002957: 41,3545 02335 TC UPDATVB -2 # IF BOTH NOUN AND VERB NOT +0, DISPLAY
016858,002958: 41,3546 02314 TC UPDATNN -2 # BOTH AND GO TO ENTPAS0.
016859,002959: 41,3547 34772 CAF ZERO
016860,002960: 41,3550 55217 TS LOADSTAT # SET FOR WAITING FOR DATA CONDITION
016861,002961: 41,3551 55220 TS CLPASS
016862,002962: 41,3552 55216 TS REQRET # SET REQRET FOR PASS 0.
016863,002963: 41,3553 30161 CA MPAC +5 # RESTORES MACH CADR TO BE SPEC TO MPAC+2
016864,002964: 41,3554 54156 TS MPAC +2 # FOR USE IN INTMCTBS (IN ENTPAS0).
016865,002965: 41,3555 02040 ENDNVSB1 TC ENTPAS0
016866,002966:
016867,002967: # IF INTERNAL MACH CADR TO BE SPECIFIED, MPAC+2 WILL BE PLACED INTO
016868,002968: # NOUNCADR IN ENTPAS0 (INTMCTBS).
016869,002969:
016870,002970: 4000 SETLOC FFTAG8
016871,002971: 4000 BANK
016872,002972: 4235 COUNT* $$/PIN
016873,002973: # FORCE BIT 15 OF MONSAVE1 TO 1.
016874,002974: 4235 34752 KILMONON CAF BIT15 # THIS IS THE KILL MONITOR BIT.
016875,002975: 4236 55224 TS MONSAVE1 # TURN OFF BIT 14, THE EXTERNAL
016876,002976: # MONITOR BIT.
016877,002977: 4237 00002 TC Q
016878,002978:
016879,002979: # LOADSTAT +0 INACTIVE (WAITING FOR DATA). SET BY NVSUB
016880,002980: # +1 PROCEED NO DATA SET BY V33 OR PROCEED
016881,002981: # -1 TERMINATE SET BY V34
016882,002982: # -0 DATA IN SET BY END OF LOAD ROUTINE
016883,002983: # OR RESEQUENCE. SET BY VERB 32
016884,002984:
016885,002985: # L TC ENDIDLE (FIXED FIXED)
016886,002986: # ROUTINES THAT REQUEST LOADS THROUGH NVSUB SHOULD USE ENDIDLE WHILE
016887,002987: # WAITING FOR THE DATA TO BE LOADED. ENDIDLE PUTS CURRENT JOB TO SLEEP.
016888,002988: # ENDIDLE CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY,
016889,002989: # SINCE JOBSLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS.
016890,002990: # RECALTST TESTS LOADSTAT AND WAKES JOB UP TO,
016891,002991: # L+1 FOR TERMINATE, PROCEED WITHOUT DATA, DATA IN, OR RESEQUENCE
016892,002992: # IT DOES NOTHING IF LOADSTAT INDICATES WAITING FOR DATA.
016893,002993:
016894,002994: # ENDIDLE ABORTS (WITH CODE 21206) IF A SECOND JOB ATTEMPTS TO GO TO SLEEP
016895,002995: # IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MADE TO GO TO ENDIDLE WHEN
016896,002996: # 1) CADRSTOR NOT= +0. THIS IS THE CASE WHERE THE CAPACITY OF ENDIDLE IS
016897,002997: # EXCEEDED. (+-NZ INDICATES A JOB IS ALREADY ASLEEP DUE TO ENDIDLE.)
016898,002998: # # Page 381
016899,002999: # 2) DSPLIST NOT= +0. THIS INDICATES A JOB IS ALREADY ASLEEP DUE TO
016900,003000: # NVSUBUSY.
016901,003001:
016902,003002: # ENDIDLE MOVED TO DISPLAY INTERFACE ROUTINES
016903,003003:
016904,003004: 4240 11245 ISCADR+0 CCS CADRSTOR # ABORTS (CODE 01206) IF CADRSTOR NOT= +0.
016905,003005: 4241 04245 TC DSPABORT # RETURNS IF CADRSTOR = +0.
016906,003006: 4242 11246 CCS DSPLIST # ABORT (CODE 01206) IF DSPLIST NOT = +0.
016907,003007: 4243 04245 TC DSPABORT
016908,003008: 4244 00002 TC Q
016909,003009: 4245 05726 DSPABORT TC POODOO
016910,003010: 4246 21206 OCT 21206 # SECOND JOB TRYING TO GO TO SLEEP
016911,003011:
016912,003012: # JAMTERM ALLOWS PROGRAMS TO PERFORM THE TERMINATE FUNCTION.
016913,003013: # IT DOES ENDOFJOB.
016914,003014:
016915,003015: 4247 34223 JAMTERM CAF PINSUPBT
016916,003016: 4250 00006 EXTEND
016917,003017: 4251 01007 WRITE SUPERBNK
016918,003018: 4252 34260 CAF 34DEC
016919,003019: 4253 55216 TS REQRET # LEAVE ENTER SET FOR ENTPASS0.
016920,003020: 4254 55204 TS VERBREG
016921,003021: 4255 04261 TC -VD1SET
016922,003022: 4256 04655 TC POSTJUMP
016923,003023: 4257 61307 CADR VBTERM
016924,003024:
016925,003025: 4260 00042 34DEC DEC 34 B-14
016926,003026:
016927,003027: 4261 44351 -VD1SET CS VD1
016928,003028: 4262 55202 TS DSPCOUNT
016929,003029: 4263 00002 TC Q
016930,003030:
016931,003031: # BLANKSUB BLANKS ANY COMBINATION OF R1, R2, R3.
016932,003032: # CALL WITH BLANKING CODE IN A.
016933,003033: # BIT1=1 BLANKS R1, BIT2=1 BLANKS R2, BIT3=1 BLANKS R3.
016934,003034: # ANY COMBINATION OF THESE BITS IS ACCEPTED.
016935,003035:
016936,003036: # DSPCOUNT IS RESTORED TO STATE IT WAS IN BEFORE BLANKSUB WAS EXECUTED.
016937,003037:
016938,003038: 4264 74774 BLANKSUB MASK SEVEN
016939,003039: 4265 54123 TS NVTEMP # STORE BLANKING CODE IN NVTEMP.
016940,003040: 4266 22002 LXCH Q
016941,003041: 4267 04226 TC EMBDSPCK # CHECK FOR DSP SYST AVAILABLE
016942,003042: 4270 10123 CCS NVTEMP
016943,003043: 4271 14273 TCF +2
016944,003044: 4272 00001 TC L # NOTHING TO BLANK. RET TO 2+ CALLING LOC
016945,003045: 4273 34304 CAF BLNKBBNK
016946,003046: 4274 56006 XCH BBANK
016947,003047: 4275 00006 EXTEND
016948,003048: 4276 04007 ROR SUPERBNK # SAVE OLD SUPERBITS.
016949,003049: 4277 52131 DXCH BUF
016950,003050: # # Page 382
016951,003051: 4300 34223 CAF PINSUPBT
016952,003052: 4301 00006 EXTEND
016953,003053: 4302 01007 WRITE SUPERBNK
016954,003054: 4303 03351 TC BLNKSUB1
016955,003055:
016956,003056: 4304 1202 EBANK= DSPCOUNT
016957,003057: 4304 60102 BLNKBBNK BBCON BLNKSUB1
016958,003058: 4305 ENDBLFF EQUALS
016959,003059:
016960,003060: 40,2000 SETLOC PINBALL1
016961,003061: 40,2000 BANK
016962,003062: 40,3351 COUNT* $$/PIN
016963,003063: 40,3351 31202 BLNKSUB1 CA DSPCOUNT # SAVE OLD DSPCOUNT FOR LATER RESTORATION
016964,003064: 40,3352 54132 TS BUF +2
016965,003065: 40,3353 34770 CAF BIT1 # TEST BIT1. SEE IF R1 TO BE BLANKED.
016966,003066: 40,3354 03373 TC TESTBIT
016967,003067: 40,3355 34321 CAF R1D1
016968,003068: 40,3356 02430 TC 5BLANK -1
016969,003069: 40,3357 34767 CAF BIT2 # TEST BIT 2. SEE IF R2 TO BE BLANKED.
016970,003070: 40,3360 03373 TC TESTBIT
016971,003071: 40,3361 34322 CAF R2D1
016972,003072: 40,3362 02430 TC 5BLANK -1
016973,003073: 40,3363 34766 CAF BIT3 # TEST BIT3. SEE IF R3 TO BE BLANKED.
016974,003074: 40,3364 03373 TC TESTBIT
016975,003075: 40,3365 34323 CAF R3D1
016976,003076: 40,3366 02430 TC 5BLANK -1
016977,003077: 40,3367 30132 CA BUF +2 # RESTORE DSPCOUNT TO STATE IT HAD
016978,003078: 40,3370 55202 TS DSPCOUNT # BEFORE BLANKSUB.
016979,003079: 40,3371 52131 DXCH BUF # CALL L+2 DIRECTLY.
016980,003080: 40,3372 05215 TC SUPDXCHZ +1 # DTCB WITH SUPERBIT SWITCHING
016981,003081:
016982,003082: 40,3373 70123 TESTBIT MASK NVTEMP # NVTEMP CONTAINS BLANKING CODE.
016983,003083: 40,3374 10000 CCS A
016984,003084: 40,3375 00002 TC Q # IF CURRENT BIT = 1, RETURN TO L+1.
016985,003085: 40,3376 16710 TCF Q+2 # IF CURRENT BIT = 0, RETURN TO L+3
016986,003086: 40,3377 34353 DSPMMJB CAF MD1 # GETS HERE THRU DSPMM
016987,003087: 40,3400 57202 XCH DSPCOUNT
016988,003088: 40,3401 54140 TS DSPMMTEM # SAVE DSPCOUNT
016989,003089: 40,3402 11214 CCS MODREG
016990,003090: 40,3403 64770 AD ONE
016991,003091: 40,3404 03146 TC DSPDECVN # IF MODREG IS + OR +0, DISPLAY MODREG
016992,003092: 40,3405 03407 TC +2 # IF MODREG IS -NZ, DO NOTHING
016993,003093: 40,3406 02473 TC 2BLANK # IF MODREG IS -0, BLANK MM
016994,003094: 40,3407 56140 XCH DSPMMTEM # RESTORE DSPCOUNT
016995,003095: 40,3410 55202 TS DSPCOUNT
016996,003096: 40,3411 05205 TC ENDOFJOB
016997,003097:
016998,003098: # RECALTST IS ENTERED DIRECTLY AFTER DATA IS LOADED (OR RESEQUENCE VERB IS
016999,003099: # EXECUTED), TERMINATE VERB IS EXECUTED, OR PROCEED WITHOUT DATA VERB IS
017000,003100: # # Page 383
017001,003101: # EXECUTED. IT WAKES UP JOB THAT DID TC ENDIDLE.
017002,003102:
017003,003103: # IF CADRSTOR NOT= +0, IT PUTS +0 INTO DSPLOCK, AND TURNS OFF KEY RLSE
017004,003104: # LIGHT IF DSPLIST IS EMPTY (LEAVES KEY RLSE LIGHT ALONE IF NOT EMPTY).
017005,003105:
017006,003106: 40,3412 11245 RECALTST CCS CADRSTOR
017007,003107: 40,3413 03415 TC RECAL1
017008,003108: 40,3414 05205 TC ENDOFJOB # NORMAL EXIT IF KEYBOARD INITIATED
017009,003109: 40,3415 34772 RECAL1 CAF ZERO
017010,003110: 40,3416 57245 XCH CADRSTOR
017011,003111: 40,3417 00004 INHINT
017012,003112: 40,3420 05167 TC JOBWAKE
017013,003113: 40,3421 31205 CA NOUNREG # SAVE VERB IN MPAC, NOUN IN MPAC+1 AT
017014,003114: 40,3422 54001 TS L # TIME OF RESPONSE TO ENDIDLE FOR
017015,003115: 40,3423 31204 CA VERBREG # POSSIBLE LATER TESTING BY JOB THAT HAS
017016,003116: 40,3424 50064 INDEX LOCCTR # BEEN WAKED UP.
017017,003117: 40,3425 52155 DXCH MPAC
017018,003118: 40,3426 00003 RELINT
017019,003119: 40,3427 04432 RECAL3 TC RELDSP
017020,003120: 40,3430 05205 TC ENDOFJOB
017021,003121:
017022,003122: 40,3431 04224 NVSBENDL TC NVSUBEND
017023,003123: 40,3432 30,2000 SBANK= LOWSUPER
017024,003124:
017025,003125: # # Page 384
017026,003126:
017027,003127: # MISCELLANEOUS SERVICE ROUTINES IN FIXED/FIXED
017028,003128:
017029,003129: 4000 SETLOC FFTAG8
017030,003130: 4000 BANK
017031,003131: 4305 COUNT* $$/PIN
017032,003132:
017033,003133: # SETNCADR E CADR ARRIVES IN A. IT IS STORED IN NOUNCADR. EBANK BITS
017034,003134: # ARE SET. E ADRES IS DERIVED AND PUT INTO NOUNADD.
017035,003135:
017036,003136: 4305 55222 SETNCADR TS NOUNCADR # STORE ECADR
017037,003137: 4306 54003 +1 TS EBANK # SET EBANK BITS
017038,003138: 4307 74350 MASK LOW8
017039,003139: 4310 65024 AD OCT1400
017040,003140: 4311 54145 TS NOUNADD # PUT E ADRES INTO NOUNADD
017041,003141: 4312 00002 TC Q
017042,003142:
017043,003143: # SETNADD GETS E CADR FROM NOUNCADR, SETS EBANK BITS, DERIVES
017044,003144: # E ADRES AND PUTS IT INTO NOUNADD.
017045,003145:
017046,003146: 4313 31222 SETNADD CA NOUNCADR
017047,003147: 4314 14306 TCF SETNCADR +1
017048,003148:
017049,003149: # SETEBANK E CADR ARRIVES IN A. EBANK BITS ARE SET. E ADRES IS
017050,003150: # DERIVED AND LEFT IN A.
017051,003151:
017052,003152: 4315 54003 SETEBANK TS EBANK # SET EBANK BITS
017053,003153: 4316 74350 MASK LOW8
017054,003154: 4317 65024 AD OCT1400 # E ADRES LEFT IN A
017055,003155: 4320 00002 TC Q
017056,003156:
017057,003157: 4321 00016 R1D1 OCT 16 # THESE 3 CONSTANTS FORM A PACKED TABLE.
017058,003158: 4322 00011 R2D1 OCT 11 # DONT SEPARATE.
017059,003159: 4323 00004 R3D1 OCT 4
017060,003160:
017061,003161: 4324 54020 RIGHT5 TS CYR
017062,003162: 4325 40020 CS CYR
017063,003163: 4326 40020 CS CYR
017064,003164: 4327 40020 CS CYR
017065,003165: 4330 40020 CS CYR
017066,003166: 4331 56020 XCH CYR
017067,003167: 4332 00002 TC Q
017068,003168:
017069,003169: 4333 54022 LEFT5 TS CYL
017070,003170: 4334 40022 CS CYL
017071,003171: 4335 40022 CS CYL
017072,003172: 4336 40022 CS CYL
017073,003173: 4337 40022 CS CYL
017074,003174: # # Page 385
017075,003175: 4340 56022 XCH CYL
017076,003176: 4341 00002 TC Q
017077,003177:
017078,003178: 4342 00037 LOW5 OCT 37 # THESE 3 CONSTANTS FORM A PACKED TABLE.
017079,003179: 4343 01740 MID5 OCT 1740 # DONT SEPARATE.
017080,003180: 4344 76000 HI5 OCT 76000 # MUST STAY HERE
017081,003181:
017082,003182: 4345 5313 TCTSKOVR EQUALS TSKOVCDR
017083,003183: 4345 05135 TCFINDVC TC FINDVAC
017084,003184:
017085,003185: 4346 30000 CHRPRIO OCT 30000 # EXEC PRIORITY OF CHARIN
017086,003186:
017087,003187: 4347 03777 LOW11 OCT 3777
017088,003188: 4350 00377 LOW8 OCT 377
017089,003189:
017090,003190: 4351 00023 VD1 OCT 23 # THESE 3 CONSTANTS FORM A PACKED TABLE.
017091,003191: 4352 00021 ND1 OCT 21 # DONT SEPARATE.
017092,003192: 4353 00025 MD1 OCT 25
017093,003193:
017094,003194: 4354 4353 VBSP1LD EQUALS MD1 # VB21 = ALOAD
017095,003195: 4354 00026 VBSP2LD DEC 22 B-14 # VB22 = BLOAD
017096,003196: 4355 4615 VBSP3LD EQUALS DEC23 # VB23 = CLOAD
017097,003197: 4355 00012 BINCON DEC 10 B-14
017098,003198:
017099,003199: 4356 34764 RELDSPON CAF BIT5
017100,003200: 4357 14363 TCF +4
017101,003201: 4360 34763 FLASHON CAF BIT6
017102,003202: 4361 14363 TCF +2
017103,003203: 4362 34762 FALTON CA BIT7 # TURN ON OPERATOR ERROR LIGHT
017104,003204: 4363 00006 EXTEND
017105,003205: 4364 05011 WOR DSALMOUT # BIT 7 OF CHANNEL 11
017106,003206: 4365 00002 TC Q
017107,003207:
017108,003208: 4366 00006 LODSAMPT EXTEND
017109,003209: 4367 30025 DCA TIME2
017110,003210: 4370 52014 DXCH SAMPTIME
017111,003211: 4371 00002 TC Q
017112,003212:
017113,003213: 4372 00006 TPSL1 EXTEND # SHIFTS MPAC, +1, +2 LEFT 1
017114,003214: 4373 30156 DCA MPAC +1 # LEAVES OVFIND SET TO +/- 1 FOR OF/UF
017115,003215: 4374 20156 DAS MPAC +1
017116,003216: 4375 60154 AD MPAC
017117,003217: 4376 26154 +4 ADS MPAC
017118,003218: 4377 54007 TS 7 # TS A DOES NOT CHANGE A ON OF/UF.
017119,003219: 4400 00002 TC Q # NO NET OF/UF
017120,003220: 4401 54162 TS MPAC+6 # MPAC +6 SET TO +/-1 FOR OF/UF
017121,003221: # # Page 386
017122,003222: 4402 00002 TC Q
017123,003223:
017124,003224: # IF MPAC, +1 ARE EACH +NZ OR +0 AND C(A)=-0, SHORTMP WRONGLY GIVES +0.
017125,003225: # IF MPAC, +1 ARE EACH -NZ OR -0 AND C(A)=+0, SHORTMP WRONGLY GIVES +0.
017126,003226: # PRSHRTMP FIXES FIRST CASE ONLY, BY MERELY TESTING C(A) AND IF IT = -0,
017127,003227: # SETTING RESULT TO -0.
017128,003228: # (DO NOT USE PRSHRTMP UNLESS MPAC, +1 ARE EACH +NZ OR +0, AS THEY ARE
017129,003229: # WHEN THEY CONTAIN THE SF CONSTANTS.)
017130,003230:
017131,003231: 4403 54135 PRSHRTMP TS MPTEMP
017132,003232: 4404 10000 CCS A
017133,003233: 4405 30135 CA MPTEMP # C(A) +, DO REGULAR SHORTMP
017134,003234: 4406 17257 TCF SHORTMP +1 # C(A) +0, DO REGULAR SHORTMP
017135,003235: 4407 14405 TCF -2 # C(A) -, DO REGULAR SHORTMP
017136,003236: 4410 44772 CS ZERO # C(A) -0, FORCE RESULT TO -0 AND RETURN.
017137,003237: 4411 54154 TS MPAC
017138,003238: 4412 54155 TS MPAC +1
017139,003239: 4413 54156 TS MPAC +2
017140,003240: 4414 00002 TC Q
017141,003241:
017142,003242: 4415 44766 UPACTOFF CS BIT3 # TURN OFF UPLINK ACTIVITY
017143,003243: 4416 14420 TCF +2
017144,003244:
017145,003245: 4417 44763 FLASHOFF CS BIT6 # TURN OFF V/N FLASH
017146,003246: 4420 00006 EXTEND
017147,003247: 4421 03011 WAND DSALMOUT # BIT 6 OF CHANNEL 11
017148,003248: 4422 00002 TC Q
017149,003249:
017150,003250: 4423 50000 CODSTOR INDEX A
017151,003251: 4424 34063 CAF RELTAB
017152,003252: 4425 74342 MASK LOW5
017153,003253: 4426 54124 TS CODE
017154,003254: 4427 31202 CA DSPCOUNT
017155,003255: 4430 54143 TS COUNT
017156,003256: 4431 00002 TC Q
017157,003257:
017158,003258: # # Page 387
017159,003259: # INTERNAL USE OF KEYBOARD AND DISPLAY PROGRAM.
017160,003260:
017161,003261: # USER MUST SCHEDULE CALLS TO NVSUB SO THAT THERE IS NO CONFLICT OF USE OR
017162,003262: # CONFUSION TO OPERATOR. THE OLD GRABLOCK (INTERNAL/INTERNAL INTERLOCK)
017163,003263: # HAS BEEN REMOVED AND THE INTERNAL USER NO LONGER HAS THE PROTECTION THIS
017164,003264: # OFFERED.
017165,003265:
017166,003266: # THERE ARE TWO WAYS A JOB CAN BE PUT TO SLEEP BY TEH KEYBOARD + DISPLAY
017167,003267: # PROGRAM. 1) BY ENDIDLE
017168,003268: # 2) BY NVSUBUSY
017169,003269: # THE BASIC CONVENTION IS THAT ONLY ONE JOB WILL BE PERMITTED ASLEEP VIA
017170,003270: # THE KEYBOARD + DISPLAY PROGRAM AT A TIME. IF A JOB ATTEMPTS TO GO TO
017171,003271: # SLEEP BY MEANS OF (1) OR (2) AND THERE IS ALREADY AJOB ASLEEP THAT WAS
017172,003272: # PUT TO SLEEP BY (1) OR (2), THEN AN ABORT IS CAUSED.
017173,003273:
017174,003274: # THE CALLING SEQUENCE FOR NVSUB IS
017175,003275: # CAF V/N
017176,003276: # L TC NVSUB
017177,003277: # L+1 RETURN HERE IF OPERATOR HAS INTERVENED
017178,003278: # L+2 RETURN HERE AFTER EXECUTION
017179,003279:
017180,003280: # A ROUTINE CALLED NVSUBUSY IS PROVIDED (USE IS OPTIONAL) TO PUT
017181,003281: # YOUR JOB TO SLEEP UNTIL THE OPERATOR RELEASES THE KEYBOARD + DISPLAY
017182,003282: # SYSTEM. NVSUBUSY ALSO TURNS ON THE KEY RELEASE LIGHT.
017183,003283: # NVSUBUSY CANNOT BE CALLED FROM ERASABLE OR F/F MEMORY,
017184,003284: # SINCE JOBSLEEP AND JOBWAKE CAN HANDLE ONLY FIXED BANKS.
017185,003285:
017186,003286: # THE CALLING SEQUENCE IS
017187,003287: # CAF WAKEFCADR
017188,003288: # TC NVSUBUSY
017189,003289: # .
017190,003290:
017191,003291: # NVSUBUSY IS INTENDED FOR USE WHEN AN INTERNAL PROGRAM FINDS THE OPERATOR
017192,003292: # IS NOT USING THE KEYBOARD + DISPLAY PROGRAM (BY HIS OWN INITIATION). IT IS
017193,003293: # NOT INTENDED FOR USE WHEN ONE INTERNAL PROGRAM FINDS ANOTHER INTERNAL
017194,003294: # PROGRAM USING THE KEYBOARD + DISPLAY PROGRAM.
017195,003295:
017196,003296: # NVSUBUSY ABORTS (WITH CODE 21206) IF A SECOND JOB ATTEMPTS TO GO TO
017197,003297: # SLEEP IN PINBALL. IN PARTICULAR, IF AN ATTEMPT IS MAKE TO GO TO NVSUBUSY
017198,003298: # WHEN
017199,003299: # 1) DSPLIST NOT= +0. THIS IS THE CASE WHERE THE CAPACITY OF THE DSPLIST
017200,003300: # IS EXCEEDED.
017201,003301: # 2) CADRSTOR NOT= +0. THIS INDICATES THAT A JOB IS ALREADY USING
017202,003302: # # Page 388
017203,003303: # ENDIDLE. (+-NZ INDICATE A JOB IS ALREADY ASLEEP DUE TO ENDIDLE.)
017204,003304:
017205,003305: # NVSUBUSY MOVED TO DISPLAY INTERFACE ROUTINES
017206,003306:
017207,003307: # RELDSP IS USED BY VBPROC, VBTERM, VBRQEXEC, VBRQWAIT, VBRELDSP, EXTENDED
017208,003308: # VERB DISPATCHER, VBRESEQ, RECALTST.
017209,003309: # RELDSP1 IS USED BY MONITOR SET UP, VBRELDSP.
017210,003310:
017211,003311: 4432 56002 RELDSP XCH Q # SET DSPLOCK TO +0, TURN RELDSP LIGHT
017212,003312: 4433 54144 TS RELRET # OFF, SEARCH DSPLIST
017213,003313: 4434 44753 CS BIT14
017214,003314: 4435 00004 INHINT
017215,003315: 4436 71224 MASK MONSAVE1
017216,003316: 4437 55224 TS MONSAVE1 # TURN OFF EXTERNAL MONITOR BIT
017217,003317: 4440 11246 CCS DSPLIST
017218,003318: 4441 04443 TC +2
017219,003319: 4442 04446 TC RELDSP2 # LIST EMPTY
017220,003320: 4443 34772 CAF ZERO
017221,003321: 4444 57246 XCH DSPLIST
017222,003322: 4445 05167 TC JOBWAKE
017223,003323: 4446 00003 RELDSP2 RELINT
017224,003324: 4447 44764 CS BIT5 # TURN OFF KEY RELEASE LIGHT
017225,003325: 4450 00006 EXTEND # (BIT 5 OF CHANNEL 11)
017226,003326: 4451 03011 WAND DSALMOUT
017227,003327: 4452 34772 +4 CAF ZERO
017228,003328: 4453 55215 TS DSPLOCK
017229,003329: 4454 00144 TC RELRET
017230,003330: 4455 56002 RELDSP1 XCH Q # SET DSPLOCK TO +0. NO DSPLIST SEARCH.
017231,003331: 4456 54144 TS RELRET # TURN KEY RLSE LIGHT OFF IF DSPLIST IS
017232,003332: # EMPTY. LEAVE KEY RLSE LIGHT ALONE IF
017233,003333: # DSPLIST IS NOT EMPTY.
017234,003334: 4457 11246 CCS DSPLIST
017235,003335: 4460 04462 TC +2 # + NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE.
017236,003336: 4461 04446 TC RELDSP2 # +0 EMPTY. TURN OFF KEY RLSE LIGHT
017237,003337: 4462 14452 TCF RELDSP2 +4 # - NOT EMPTY. LEAVE KEY RLSE LIGHT ALONE
017238,003338: 4463 ENDPINBF EQUALS
017239,003339:
017240,003340: # # Page 389
017241,003341: # PINTEST IS NEEDED FOR AUTO CHECK OF PINBALL.
017242,003342:
017243,003343: 4463 43,2002 PINTEST EQUALS LST2FAN
017244,003344:
017245,003345: # # Page 390
017246,003346: # VBTSTLTS TURNS ON ALL DISPLAY PANEL LIGHTS. AFTER 5 SEC, IT TURNS
017247,003347: # OFF THE CAUTION AND STATUS LIGHTS.
017248,003348:
017249,003349: 40,2000 SETLOC PINBALL1
017250,003350: 40,2000 BANK
017251,003351: 40,3432 COUNT* $$/PIN
017252,003352: 40,3432 04636 VBTSTLTS TC BANKCALL
017253,003353: 40,3433 66714 CADR CHKPOOH
017254,003354:
017255,003355: 40,3434 00004 INHINT
017256,003356: 40,3435 41334 CS IMODES33 # SET BIT 1 OF IMODES33 SO IMUMON WONT
017257,003357: 40,3436 74770 MASK LMPTSTBT # TURN OUT ANY LAMPS.
017258,003358: 40,3437 27334 ADS IMODES33
017259,003359: 40,3440 33550 CAF TSTCON1 # TURN ON UPLINK ACTIVITY, TEMP, KEY RLSE,
017260,003360: 40,3441 00006 EXTEND # V/N FLASH, OPERATOR ERROR.
017261,003361: 40,3442 05011 WOR DSALMOUT
017262,003362: 40,3443 33551 CAF TSTCON2 # TURN ON NO ATT, GIMBAL LOCK, TRACKER,
017263,003363: 40,3444 55241 TS DSPTAB +11D # PROG ALM.
017264,003364: 40,3445 34757 CAF BIT10 # TURN ON TEST ALARM OUTBIT
017265,003365: 40,3446 00006 EXTEND
017266,003366: 40,3447 05013 WOR CHAN13
017267,003367: 40,3450 34355 CAF TEN
017268,003368: 40,3451 54117 TSTLTS1 TS ERCNT
017269,003369: 40,3452 43546 CS FULLDSP
017270,003370: 40,3453 50117 INDEX ERCNT
017271,003371: 40,3454 55226 TS DSPTAB
017272,003372: 40,3455 10117 CCS ERCNT
017273,003373: 40,3456 03451 TC TSTLTS1
017274,003374: 40,3457 43547 CS FULLDSP1
017275,003375: 40,3460 55227 TS DSPTAB +1 # TURN ON 3 PLUS SIGNS
017276,003376: 40,3461 55232 TS DSPTAB +4
017277,003377: 40,3462 55234 TS DSPTAB +6
017278,003378: 40,3463 34775 CAF ELEVEN
017279,003379: 40,3464 55221 TS NOUT
017280,003380: 40,3465 37704 CAF SHOLTS
017281,003381: 40,3466 04636 TC BANKCALL
017282,003382: 40,3467 01731 CADR DELAYJOB
017283,003383: # DSPLOCK IS LEFT BUSY (FROM KEYBOARD
017284,003384: # ACTION) UNTIL TSTLTS3 TO INSURE THAT
017285,003385: # LIGHTS TEST WILL BE SEEN.
017286,003386:
017287,003387: 40,3470 7704 SHOLTS = DEC500 # 5 SEC
017288,003388: 40,3470 43552 TSTLTS3 CS TSTCON3 # CALLED BY EXECUTIVE
017289,003389: 40,3471 00004 INHINT
017290,003390: 40,3472 00006 EXTEND # TURN OFF UPLINK ACTIVITY, TEMP,
017291,003391: 40,3473 03011 WAND DSALMOUT # OPERATOR ERROR.
017292,003392: 40,3474 44757 CS BIT10 # TURN OFF TEST ALARM OUTBIT
017293,003393: 40,3475 00006 EXTEND
017294,003394: 40,3476 03013 WAND CHAN13
017295,003395: # # Page 391
017296,003396: 40,3477 34765 CAF BIT4 # MAKE NO ATT FOLLOW BIT 4 OF CHANNEL 12
017297,003397: 40,3500 00006 EXTEND # (NO ATT LIGHT ON IF IN COARSE ALIGN)
017298,003398: 40,3501 02012 RAND CHAN12
017299,003399: 40,3502 64752 AD BIT15 # TURN OFF AUTO, HOLD, FREE, SPARE,
017300,003400: 40,3503 55241 TS DSPTAB +11D # GIMBAL LOCK, SPARE, TRACKER, PROG ALM
017301,003401: 40,3504 44770 CS LMPTSTBT
017302,003402: 40,3505 71334 MASK IMODES33
017303,003403: 40,3506 55334 TS IMODES33
017304,003404: 40,3507 40000 COM
017305,003405: 40,3510 74754 MASK PIP2FLBT
017306,003406: 40,3511 27334 ADS IMODES33
017307,003407: 40,3512 40000 COM
017308,003408: 40,3513 74755 MASK DNLKFAIL
017309,003409: 40,3514 27334 ADS IMODES33
017310,003410: 40,3515 40000 COM
017311,003411: 40,3516 74756 MASK UPLKFAIL
017312,003412: 40,3517 27334 ADS IMODES33
017313,003413: 40,3520 44752 CS TLIMBIT
017314,003414: 40,3521 71333 MASK IMODES30
017315,003415: 40,3522 55333 TS IMODES30
017316,003416: 40,3523 40000 COM
017317,003417: 40,3524 74754 MASK IMUFLBIT
017318,003418: 40,3525 27333 ADS IMODES30
017319,003419: 40,3526 40000 COM
017320,003420: 40,3527 74755 MASK ICDUFLBT
017321,003421: 40,3530 27333 ADS IMODES30
017322,003422: 40,3531 40000 COM
017323,003423: 40,3532 74757 MASK PIPAFLBT
017324,003424: 40,3533 27333 ADS IMODES30
017325,003425: 40,3534 41337 CS OPTMODES
017326,003426: 40,3535 74762 MASK OCDUFBIT
017327,003427: 40,3536 27337 ADS OPTMODES
017328,003428: 40,3537 00003 RELINT
017329,003429:
017330,003430: 40,3540 05120 TC NOVAC30
017331,003431: 40,3541 1202 EBANK= DSPCOUNT
017332,003432: 40,3541 03377 60102 2CADR DSPMMJOB
017333,003433:
017334,003434: 40,3543 04235 TC KILMONON # TURN ON KILL MONITOR BIT.
017335,003435: 40,3544 04417 TC FLASHOFF # TURN OFF V/N FLASH.
017336,003436: 40,3545 13335 TCF TSTLTS4
017337,003437: 40,3546 05675 FULLDSP OCT 05675 # DISPLAY ALL 8'S
017338,003438: 40,3547 07675 FULLDSP1 OCT 07675 # DISPLAY ALL 8'S AND +
017339,003439: 40,3550 00175 TSTCON1 OCT 00175
017340,003440: # UPLINK ACTIVITY, TEMP, KEY RLSE,
017341,003441: # V/N FLASH, OPERATOR ERROR.
017342,003442: 40,3551 40650 TSTCON2 OCT 40650 # DSPTAB+11D BITS 4,6,8,9.
017343,003443: # NO ATT, GIMBAL LOCK, TRACKER, PROG ALM.
017344,003444: 40,3552 00115 TSTCON3 OCT 00115 # CHAN 11 BITS 1, 3, 4, 7.
017345,003445: # UPLINK ACTIVITY, TEMP, OPERATOR ERROR.
017346,003446: # # Page 392
017347,003447:
017348,003448: # ERROR LIGHT RESET (RSET) TURNS OFF:
017349,003449: # UPLINK ACTIVITY, AUTO, HOLD, FREE, OPERATOR ERROR,
017350,003450: # PROG ALM, TRACKER FAIL.
017351,003451: # LEAVES GIMBAL LOCK AND NO ATT ALONE.
017352,003452: # IT ALSO ZEROS THE 'TEST ALARM' OUT BIT, WHICH TURNS OFF STBY, RESTART.
017353,003453: # IT ALSO SETS 'CAUTION RESET' TO 1.
017354,003454: # IT ALSO FORCES BIT 12 OF ALL DSPTAB ENTRIES TO 1.
017355,003455:
017356,003456: 40,2000 SETLOC PINBALL1
017357,003457: 40,2000 BANK
017358,003458: 40,3553 COUNT* $$/PIN
017359,003459: 40,3553 56115 ERROR XCH 21/22REG # RESTORE ORIGINAL C(DSPLOCK). THUS ERROR
017360,003460: 40,3554 55215 TS DSPLOCK # LIGHT RESET LEAVES DSPLOCK UNCHANGED.
017361,003461: 40,3555 00004 INHINT
017362,003462: 40,3556 34757 CAF BIT10 # TURN ON 'CAUTION RESET' OUTBIT
017363,003463: 40,3557 00006 EXTEND
017364,003464: 40,3560 05011 WOR DSALMOUT # BIT10 CHAN 11
017365,003465: 40,3561 35004 CAF GL+NOATT # LEAVE GIMBAL LOCK AND NO ATT INTACT,
017366,003466: 40,3562 71241 MASK DSPTAB +11D # TURNING OFF AUTO, HOLD, FREE,
017367,003467: 40,3563 64752 AD BIT15 # PROG ALARM, AND TRACKER.
017368,003468: 40,3564 55241 TS DSPTAB +11D
017369,003469: 40,3565 41334 CS IMODES33 # RESET FAIL BITS WHICH GENERATE PROG
017370,003470: 40,3566 75055 MASK PRIO16 # ALARM SO THAT IF THE FAILURE STILL
017371,003471: 40,3567 27334 ADS IMODES33 # EXISTS, THE ALARM WILL COME BACK ON
017372,003472: 40,3570 41333 CS IMODES30
017373,003473: 40,3571 74757 MASK PIPAFLBT
017374,003474: 40,3572 27333 ADS IMODES30
017375,003475:
017376,003476: 40,3573 41337 CS OPTMODES
017377,003477: 40,3574 74762 MASK OCDUFBIT
017378,003478: 40,3575 27337 ADS OPTMODES
017379,003479: 40,3576 04542 TC C13STALL
017380,003480: 40,3577 44757 CS BIT10 # TURN OFF 'TEST ALARM' OUTBIT.
017381,003481: 40,3600 00006 EXTEND
017382,003482: 40,3601 03013 WAND CHAN13
017383,003483: 40,3602 43216 CS ERCON # TURN OFF UPLINK ACTIVITY,
017384,003484: 40,3603 00006 EXTEND # OPERATOR ERROR.
017385,003485: 40,3604 03011 WAND DSALMOUT
017386,003486: 40,3605 34355 TSTAB CAF BINCON # (DEC 10)
017387,003487: 40,3606 54117 +1 TS ERCNT # ERCNT = COUNT
017388,003488: 40,3607 00004 INHINT
017389,003489: 40,3610 50117 INDEX ERCNT
017390,003490: 40,3611 11226 CCS DSPTAB
017391,003491: 40,3612 64770 AD ONE
017392,003492: 40,3613 03620 TC ERPLUS
017393,003493: 40,3614 64770 AD ONE
017394,003494: 40,3615 40000 ERMINUS CS A
017395,003495: 40,3616 77674 MASK NOTBIT12
017396,003496: 40,3617 03623 TC ERCOM
017397,003497: 40,3620 40000 ERPLUS CS A
017398,003498: # # Page 393
017399,003499: 40,3621 77674 MASK NOTBIT12
017400,003500: 40,3622 40000 CS A # MIGHT WANT TO RESET CLPASS, DECBRNCH,
017401,003501: 40,3623 50117 ERCOM INDEX ERCNT # ETC.
017402,003502: 40,3624 55226 TS DSPTAB
017403,003503: 40,3625 00003 RELINT
017404,003504: 40,3626 10117 CCS ERCNT
017405,003505: 40,3627 03606 TC TSTAB +1
017406,003506: 40,3630 54375 TS FAILREG
017407,003507: 40,3631 54376 TS FAILREG +1
017408,003508: 40,3632 55357 TS SFAIL
017409,003509: 40,3633 05205 TC ENDOFJOB
017410,003510:
017411,003511: 40,3634 55000 OCT55000 OCT 55000
017412,003512: 40,3635 16001 13-11,1 OCT 16001
017413,003513: 40,3636 5004 GL+NOATT EQUALS OCT50 # NO ATT AND GIMBAL LOCK LAMPS
017414,003514: 40,3636 7674 NOTBIT12 EQUALS -1/8
017415,003515: 40,3636 ENDPINS1 EQUALS
017416,003516:
017417,003517: 40,3636 30,2000 SBANK= LOWSUPER
End of include-file PINBALL_GAME_BUTTONS_AND_LIGHTS.agc. Parent file is MAIN.agc