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