$JOB ASSEMBLY OF MONITOR, COMPILER SECTIONS 1 THROUGH 6 OF $00000010 $* FORTRAN II PROCESSOR, 7090-FO-928 00000020 $* VERSION 3, MODIFICATION LEVEL 35 (35)00000030 $EXECUTE IBSFAP $00000050 * 32K 709/7090 FORTRAN SECTIONS FOUR AND FIVE F4A00010 * FAP F4A00030 * 32K 709/7090 FORTRAN SECTIONS FOUR AND FIVE F4A00040 COUNT 8000 F4A00050 ABS F4A00060 SST FORTRAN $F4A00061 TTL SECTION 4, PART ONE F4A00070 LBL 9F23,S F4A00080 HEAD 0 F4A00090 REM F4A00100 REM DEFINITIONS REQUIRED THROUGHOUT SECTION 4 F4A00110 ...... SYN 0 THE APPEARANCE OF THIS SYMBOL IN F4A00130 REM THE LISTING INDICATES THAT ITS F4A00140 REM VALUE IS SET BY THE PROGRAM. F4A00150 IR1 SYN 1 INDEX REGISTER 1 F4A00160 IR2 SYN 2 INDEX REGISTER 2 F4A00170 IR4 SYN 4 INDEX REGISTER 4 F4A00180 FTAPE1 SYN SYSTAP F4A00190 FTAPE2 SYN FINTAP F4A00200 FTAPE3 SYN SINTAP F4A00210 FTAPE4 SYN TINTAP F4A00220 CTAPE SYN FTAPE4 F4A00230 REM F4A00240 REM F4A00250 REM SECTION 4 - PART 1 OF 3 F4A00260 REM F4A00270 ORG SYSCUR $F4A00280 BCI 1,9F2300 $F4A00290 ORG (LODR) $F4A00300 TXI PASS1,,230 F4A00320 REM F4A00340 REM DEFINITIONS REQUIRED BY PART 1 F4A00350 REM F4A00360 REM CONSTANTS AND VARIABLES FIRST APPEARING IN PART 1. F4A00370 ORG BOTTOM F4A00380 ZERO DEC 0 F4A00390 ONE DEC 1 F4A00400 DOTOP PZE DOTAG F4A00410 D1 PZE ,,1 F4A00420 CTSPC1 PZE CTSP1 F4A00430 RLNGTH PZE ...... F4A00440 ASPRS FVE 0 ASSIGN FLAG. F4A00450 1STLET OCT 770000000000 FIRST LETTER MASK F4A00460 T OCT 630000000000 T F4A00470 ASTRSK OCT 170000000000 ASTERISK F4A00480 TPL OCT 34743000000 TPL F4A00490 PMASK OCT 700000000000 PREFACE MASK F4A00500 DMASK OCT 77777000000 DECREMENT MASK F4A00510 TMASK OCT 700000 TAG MASK F4A00520 TAMASK OCT 777777 TAG AND ADDRESS MASK F4A00530 POSMAX OCT 377777777777 LARGEST POSITIVE INTEGER MACHINE CAN F4A00540 REM HOLD F4A00550 ANTEBB PZE BBLIST+1 ADDRESS OF LOWEST ENTRY IN BBLIST + 1 F4A00560 1ST PZE BBLIST ADDRESS OF LOWEST ENTRY IN BBLIST F4A00570 NTH PZE BBLIST-1 ADDRESS OF HIGHEST ENTRY IN BBLIST F4A00580 ARG ...... ARGUMENT CELL FOR MIH, FINDBB, SERCHN, F4A00590 REM AND ENTER SUBROUTINES F4A00600 FLOOR ...... LOWER LIMIT OF SEARCH IN MIH AND F4A00610 REM FINDBB SUBROUTINES F4A00620 ROOF ...... UPPER LIMIT OF SEARCH IN MIH AND F4A00630 REM FINDBB SUBROUTINES F4A00640 TRYME ...... ADDRESS OF TABLE MEMBER TO BE COMPARED F4A00650 REM WITH ARGUMENT IN MIH AND FINDBB F4A00660 ILNGTH ...... NUMBER OF WORDS IN CIT IS STORED HERE. F4A00670 PAS2RD ...... F4A00680 LBSIZE ...... F4A00690 OPCODE ...... F4A00700 DOBOX ...... DO COUNTER F4A00710 FRTBOX ...... FRET COUNTER F4A00720 ERASE1 ...... ERASABLE STORAGE F4A00730 ERRM4 TXI (DIAG),,0 MACHINE ERROR F4A00740 CTLBL BCI 1,CITS03 F4A00750 BBLBL BCI 1,BLIST F4A00760 TGLBL BCI 1,TAG F4A00770 TFGLBL BCI 1,TIFGO F4A00780 TRDLBL BCI 1,TRAD F4A00790 FRTLBL BCI 1,FRET F4A00800 DTGLBL BCI 1,DOTAGB F4A00810 EOFLB1 BCI 1,EOF F4A00820 AC3LBL BCI 1,ASCON3 F4A00830 CTRD1 IORT CTBOT,,200 IO COMMAND FOR 1 CIT RECORD. F4A00840 SKNR PZE F4A00850 SK2R PZE 2 F4A00860 SK4R PZE 4 F4A00870 SKFL PZE ,,1 F4A00880 RWND PZE ,,-1 F4A00890 BSP2F MZE ,,2 F4A00900 ERASE2 SYN FLOOR ERASABLE STORAGE F4A00910 ERASE3 SYN ROOF ERASABLE STORAGE F4A00920 DOSUB SYN OPCODE F4A00930 TRA OCT 35121000000 TRA F4A00940 REM F4A00950 REM CONSTANTS USED IN PART 1 ONLY. F4A00960 OCT 1146000000 TSX-TRA F4A00970 OCT 454000000 TXL-TSX F4A00980 TRACON OCT 162000000 TZE-TXL F4A00990 OCT 42363000000 DCT F4A01000 OCT 3642000000 MSE-DCT F4A01010 TSTCON OCT 30000000000 PSE-MSE F4A01020 FIVE DEC 5 F4A01030 EXIT1 PZE ASSIGN EXIT ADDRESS FROM PASS1 F4A01040 DOBASE PZE DOTAG THIS CONSTANT=THE BASE ADDRESS OF F4A01050 REM DOTAG TABLE. F4A01060 PSEMSK OCT 70000000 F4A01070 PSEMRK OCT 60000000 F4A01080 NEGMAX OCT 777777777777 LARGEST NEGATIVE INTEGER MACHINE CAN F4A01090 REM HOLD F4A01100 LIMIT PZE BBLIST-1484*M/N+1 F4A01110 REM MAY BE STORED. F4A01120 REM F4A01130 REM F4A01140 TFGRD IORT TIFGO,,2400*M/N+2 IO COMMAND FOR TIFGO. F4A01150 TRDRD IORT TRAD-1000*M/N-2,,1000*M/N+2 IO COMMAND FOR TRAD. F4A01160 FRTRD IORT FRET-2,,3000*M/N+2 IO COMMAND FOR FRET. F4A01170 DORD IORT DOTAG,,200*M/N*9 IO COMMAND FOR DOTAG. F4A01180 ERR42 TXI (DIAG),,-1 BBLIST OVERFLOW. F4A01190 REM PASS1 / CALLS ON RDCIT1 AND MIH F4A01200 REM THIS ROUTINE SCANS THE COMPILED INSTRUCTIONS AND F4A01210 REM DIVIDES THE OBJECT PROGRAM INTO BASIC BLOCKS. A BASIC BLOCKF4A01220 REM IS A STRETCH OF PROGRAM WITH ONLY ONE ENTRY POINT AND ONE F4A01230 REM EXIT POINT. THE OUTPUT OF THIS ROUTINE IS BBLIST, A TABLE F4A01240 REM LISTING THE BEGINNING OF EACH BASIC BLOCK (THE LOCATION F4A01250 REM SYMBOL OF THE 1ST INSTRUCTION OF EACH BASIC BLOCK). A TABLEF4A01260 REM CALLED DOLIST IS ALSO COMPILED OF THE BEGINNING AND END OF F4A01270 REM EVERY LOOP IN THE OBJECT PROGRAM. F4A01280 REM PASS1 ALSO STARTS READING TIFGO, TRAD AND FRET FROM F4A01290 REM TAPE FOR LATER PROCESSING. F4A01300 PASS1 ZAC F4A01310 DCT BE SURE DIV-CHECK IND IS OFF. F4A01320 NOP F4A01330 SXD CITCNT,0 CLEAR DECREMENT OF CIT COUNT. F4A01340 LDQ CITCNT DIVIDE NO. OF WORDS IN CIT BY F4A01350 STQ ILNGTH LENGTH OF RESERVED AREA TO F4A01360 DVP CTSPC1 FIND TOP OF LAST RECORD READ. F4A01370 DCT F4A01380 TSX ERRM4,IR4 DIVIDE ERROR GO TO DIAGNOSTIC. F4A01390 REM LENGTH OF CITS PLACED IN CITCNT F4A01400 REM BY SEC 3 , LENGTH OF CIT AREA DEFINED F4A01410 REM BY ASSEMBLY. F4A01420 ADD CTRD1 ADD BOTTOM OF AREA TO GET LAST LOADED F4A01430 STA LAST1 ADDRESS+1 AND SET FOR EXIT ROUTINE. F4A01440 TSX RDTBLS,IR2 START READING TIFGO. F4A01450 TSX (TAPE),IR4 READ FIRST RECORD OF CIT. F4A01460 CTRD1,,(RBEC) F4A01470 CTLBL,,CTAPE F4A01480 LXA (SCHU)+CTAPE,IR1 F4A01490 LXA CTRD1,IR2 F4A01500 SXA CTRD1,IR1 SET LOAD ADDRESS FOR NEXT RECORD. F4A01510 SXD *+1,IR2 F4A01520 TIX *+1,IR1,...... COMPUTE RECORD LENGTH. F4A01530 SXA RLNGTH,IR1 F4A01540 SXD IOAJ1,IR1 SET FOR ADJUSTING IO COMMAND F4A01550 SXD PRAJ1,IR1 AND PROCESSING DECREMENTS. F4A01560 TSX RDTBLS,IR2 START READING TRAD. F4A01570 TSX (TAPE),IR4 START READING SECOND RECORD OF CIT. F4A01580 CTRD1,,(RBEP) F4A01590 CTLBL,,CTAPE F4A01600 AXC CTBOT,IR1 INITIALIZE IR1 FOR PROCESSING 1RST CIT F4A01610 TSX RDCIT1,IR4 GO TO START READING 3RD CIT. F4A01620 CLA CITLOC,IR1 PUT LOCATION OF 1ST INSTRUCTION IN F4A01630 STO BBLIST BBLIST. F4A01640 CLA POSMAX INSERT ENDMARK IN BBLIST. F4A01650 STO BBLIST-1 F4A01660 TEST1 TXH *+2,IR1,-CTTP1 F4A01670 TXI 1TSX,IR1,CTSP1 YES, SET TO START PROCESSING AT BOTTOM F4A01680 BEGN1 TXL 1TSX,IR1,...... HAS THIS RECORD BEEN PROCESSED. F4A01690 NZT CITLOC,IR1 DOES THIS INST. HAVE A FORMULA NO. F4A01700 TXI TEST1,IR1,-4 NO - IGNORE IT, LOOK AT NEXT INST. F4A01710 CAL CITOP,IR1 YES - IS THIS INST. A TRANSFER (IS 1ST F4A01720 STD OPCODE LETTER OF OP CODE A T) F4A01730 ANA 1STLET F4A01740 ERA T F4A01750 TZE TRANS YES, THIS IS A TRANSFER F4A01760 AXT 3,IR4 NO - IS IT A TEST (SKIP-TYPE) INST. F4A01770 CLA OPCODE F4A01780 TSTSUB SUB TSTCON+1,IR4 F4A01790 TZE* TSTVEC+1,IR4 YES, THIS IS A TEST INST. F4A01800 TIX TSTSUB,IR4,1 F4A01810 OTHER TXI TEST1,IR1,-4 THIS IS NEITHER A TRANSFER, NOR A TEST F4A01820 REM INSTRUCTION, SO IGNORE IT AND LOOK F4A01830 REM AT NEXT INSTRUCTION. F4A01840 TRA TSTCAS DCT F4A01850 TRA TSTCAS MSE F4A01860 TSTVEC TRA PSECAS PSE F4A01870 TRA TRACAS TRA F4A01880 TRA OTHER TSX F4A01890 TRA DOCASE TXL F4A01900 TRAVEC TRA TZECAS TZE F4A01910 TRANS AXT 4,IR4 WHAT KIND OF TRANSFER IS IT F4A01920 CLA OPCODE F4A01930 TRASUB SUB TRACON+1,IR4 F4A01940 TZE* TRAVEC+1,IR4 F4A01950 TIX TRASUB,IR4,1 F4A01960 CLA CITAD,IR1 IS IT A TXI OR A TIX TO THE NEXT INST. F4A01970 SUB ASTRSK F4A01980 TZE OTHER YES, IGNORE IT. F4A01990 CLA CITLOC,IR1 F4A02000 SUB CITAD,IR1 F4A02010 TZE OTHER YES, IGNORE IT. F4A02020 2WAYTR CLA CITAD,IR1 THIS MUST BE A CONDITIONAL TRANSFER. F4A02030 TSX MIH,IR4 PUT ITS ADDRESS IN BBLIST. F4A02040 CAL CITOP+4,IR1 IS IT FOLLOWED BY TRA F4A02050 ANA DMASK F4A02060 SUB TRA F4A02070 TZE *+2 F4A02080 TSX ERRM4,IR4 COND.TRANS. NOT FOLLOWED BY A TRANS. F4A02090 CLA CITAD+4,IR1 PUT ADDRESS OF TRA IN BBLIST. F4A02100 TSX MIH,IR4 F4A02110 TXI TEST1,IR1,-8 GET SET TO LOOK AT INST. AFTER THE TRA F4A02120 TRACAS CLA CITTAG,IR1 IS THIS TRA TAGGED F4A02130 ANA TAMASK F4A02140 TNZ GOTOV YES, THIS IS A GO TO VECTOR CASE F4A02150 CAL CITAD,IR1 IS THIS TRA A GO TO N F4A02160 ANA PMASK F4A02170 TNZ OTHER YES, IGNORE FOR NOW F4A02180 CLA CITAD,IR1 THIS MUST BE A STRAIGHT TRA. PUT F4A02190 TSX MIH,IR4 ITS ADDRESS IN BBLIST. F4A02200 TXI TEST1,IR1,-4 GET SET TO LOOK AT NEXT INSTRUCTION F4A02210 GOTOV CLA CITAAA,IR1 PUT NO. OF BRANCHES INTO IR2. F4A02220 PDX 0,IR2 F4A02230 TIX NXTTRA,IR2,1 F4A02240 NXTTRA TXI TEST2,IR1,-4 GET SET TO PICK UP NEXT TRA F4A02250 TEST2 TXH *+2,IR1,-CTTP1 F4A02260 TXI 2TSX,IR1,CTSP1 YES, SET TO START PROCESSING AT BOTTOM F4A02270 CNTU1 TXL 2TSX,IR1,...... HAS THIS RECORD BEEN PROCESSED. F4A02280 CLA CITAD,IR1 PUT TRA ADDRESS IN BBLIST F4A02290 SXA *+2,IR2 F4A02300 TSX MIH,IR4 F4A02310 AXT ......,IR2 F4A02320 TIX NXTTRA,IR2,1 F4A02330 TXI TEST1,IR1,-4 GET SET TO LOOK AT NEXT INSTRUCTION F4A02340 DOCASE LXD DOBOX,IR4 SET DOLIST INDEX REGISTER FOR NEXT F4A02350 TXI *+1,IR4,2 ENTRY. F4A02360 CLA CITLOC,IR1 PUT LOCATION AND ADDRESS OF TXL IN F4A02370 STO DOLIST+1,IR4 DOLIST (BEGINNING AND END OF DO). F4A02380 CLA CITAD,IR1 F4A02390 STO DOLIST,IR4 F4A02400 SXD DOBOX,IR4 SAVE CURRENT DOLIST INDEX F4A02410 TSX MIH,IR4 PUT ADDRESS OF TXL AND LOCATION OF F4A02420 CLA CITLOC+4,IR1 NEXT INSTRUCTION IN BBLIST. F4A02430 TSX MIH,IR4 F4A02440 TXI TEST1,IR1,-4 GET SET TO LOOK AT NEXT INSTRUCTION F4A02450 TZECAS CAL CITOP+4,IR1 THIS IS A TZE. IS IT FOLLOWED BY A F4A02460 ANA DMASK TPL. F4A02470 SUB TPL F4A02480 TNZ 2WAYTR F4A02490 CLA CITAD,IR1 PUT ADDRESS OF TZE IN BBLIST. F4A02500 TSX MIH,IR4 F4A02510 TXI 2WAYTR,IR1,-4 F4A02520 PSECAS CAL CITAAA,IR1 IS THIS IS A SENSE SWITCH TEST F4A02530 ANA PSEMSK F4A02540 SUB PSEMRK F4A02550 TNZ OTHER NO, IGNORE F4A02560 TSTCAS CAL CITOP+4,IR1 IS THIS TEST FOLLOWED BY A TRANSFER F4A02570 ANA DMASK F4A02580 SUB TRA F4A02590 TNZ OTHER NO, IGNORE F4A02600 CLA CITAD+4,IR1 YES, PUT ADDRESS OF TRA IN BBLIST F4A02610 TSX MIH,IR4 F4A02620 CAL CITOP+8,IR1 IS THAT TRA FOLLOWED BY A TRA F4A02630 ANA DMASK F4A02640 SUB TRA F4A02650 TNZ NOTRA NO F4A02660 CLA CITAD+8,IR1 YES, PUT ADDRESS OF 2ND TRA IN BBLIST F4A02670 TSX MIH,IR4 F4A02680 TXI TEST1,IR1,-12 GET SET TO LOOK AT INST. AFTER THE F4A02690 REM 2ND TRA F4A02700 NOTRA CLA CITLOC+8,IR1 PUT LOCATION OF INSTRUCTION IN BBLIST. F4A02710 TSX MIH,IR4 F4A02720 TXI TEST1,IR1,-8 GET SET TO LOOK AT INST. AFTER THE TRA F4A02730 REM F4A02740 REM ASSIGN / CALLS ON MIH F4A02750 REM FIRST THIS ROUTINE INSURES THAT TIFGO, TRAD AND FRET F4A02760 REM HAVE BEEN READ CORRECTLY FROM TAPE. THEN IT STARTS READING F4A02770 REM DOTAG FOR LATER PROCESSING. F4A02780 REM THEN IT SCANS TIFGO, MOVING THOSE TIFGO ENTRIES WHICH F4A02790 REM DEAL WITH ASSIGN STATEMENTS AND ASSIGNED GO TO STATEMENTS F4A02800 REM TO A TABLE CALLED TIFRD. THE TRAD ENTRIES THAT ARE ASSOCI- F4A02810 REM ATED WITH EACH ASSIGNED GO TO ARE MOVED TO TIFRD FOLLOWING F4A02820 REM THE APPROPRIATE TIFGO ENTRY AND THESE TRAD ENTRIES ARE F4A02830 REM FLAGGED NEGATIVE FOR EASY SEARCHING LATER. AT THE SAME TIMEF4A02840 REM THESE TRAD ENTRIES ARE PUT IN BBLIST USING SUBROUTINE MIH. F4A02850 REM WHEN THIS IS DONE TIFGO AND TRAD ARE NO LONGER OF F4A02860 REM INTEREST TO SECTION 4, THE ASSIGN INFORMATION NOW HAVING F4A02870 REM BEEN ISOLATED AND PLACED IN TIFRD. F4A02880 GOTON CLA TIFGO+2,IR1 MOVE THIS TIFGO ENTRY TO TIFRD. F4A02890 STO TIFRD,IR2 F4A02900 CLA TIFGO+3,IR1 F4A02910 STO TIFRD+1,IR2 F4A02920 TXI *+1,IR2,-2 SET INDEX FOR NEXT STORE IN TIFRD. F4A02930 PDX 0,IR4 INITIALIZE TRAD INDEX REGISTER. F4A02940 ALS 18 SET TEST DEC WITH TRAD START MINUS NO. F4A02950 STD TRATST OF TRAD ENTRIES FOR THIS GO TO N. F4A02960 DOTRAD CLS TRAD,IR4 MOVE TRAD ENTRIES INTO TIFRD. F4A02970 ALS 18 F4A02980 STO TIFRD,IR2 F4A02990 SXA *+4,IR2 SAVE INDEX REGISTERS USED BY MIH. F4A03000 SXA *+2,IR4 F4A03010 TSX MIH,IR4 PUT ALL TRAD ENTRIES IN BBLIST. F4A03020 AXT ......,IR4 RESTORE INDEX REGISTERS. F4A03030 AXT ......,IR2 F4A03040 TXI *+1,IR2,-1 SET INDEX FOR NEXT STORE IN TIFRD. F4A03050 TXI *+1,IR4,-1 SET IR FOR PICKING UP NEXT TRAD ENTRY. F4A03060 TRATST TXH DOTRAD,IR4,...... HAVE ALL TRAD ENTRIES FOR THIS GO TO N F4A03070 REM BEEN TREATED. F4A03080 TXI TIFTST,IR1,-2 YES, SET INDEX FOR NEXT LOOK AT TIFGO F4A03090 REM AND RETURN TO PRUNING TIFGO. F4A03100 ASSIGN TSX (TAPE),IR4 F4A03110 RWND,,(SKBP) F4A03120 CTLBL,,CTAPE F4A03130 ZET RDTBLS HAVE TIFGO,TRAD AND FRET BEEN READ F4A03140 TSX RDTBLS,IR2 IN AND THE TAPE POSITIONED F4A03150 ZET RDTBLS F4A03160 TRA *-2 NO AGAIN F4A03170 REEDDO TSX (TAPE),IR4 YES READ DOTAG F4A03180 DORD,,(RBEC) F4A03190 DTGLBL,,FTAPE2 F4A03200 ZET (SCHU)+FTAPE2 F4A03210 TRA CONDO F4A03220 AXT 0,IR1+IR2 INITIALIZE TIFGO AND TIFRD IRS. F4A03230 NZT TIFGO+1 IS TIFGO EMPTY F4A03240 TRA FREQ YES, SKIP THIS ROUTINE. F4A03250 LDC TIFGO+1,IR4 SET TEST DECREMENT WITH COMPLEMENT F4A03260 SXD TIFTST,IR4 OF LENGTH OF TIFGO. F4A03270 PRUNE CLA TIFGO+2,IR1 IS THIS TIFGO ENTRY A GO TO N. F4A03280 TMI STEP F4A03290 ANA TAMASK F4A03300 SUB ONE F4A03310 TZE GOTON YES. F4A03320 SUB FIVE NO, IS IT AN ASSIGN. F4A03330 TNZ STEP NO. F4A03340 CLA ONE YES F4A03350 STA ASPRS SET ASSIGN FLAG FOR ASSIGN PRESENT. F4A03360 CLA TIFGO+2,IR1 MOVE THIS TIFGO ENTRY TO TIFRD. F4A03370 STO TIFRD,IR2 F4A03380 CLA TIFGO+3,IR1 F4A03390 STO TIFRD+1,IR2 F4A03400 TXI STEP,IR2,-2 SET INDEX FOR NEXT STORE IN TIFRD. F4A03410 STEP TXI TIFTST,IR1,-2 SET INDEX FOR NEXT LOOK AT TIFGO. F4A03420 TIFTST TXH PRUNE,IR1,...... HAS ALL TIFGO BEEN TREATED. F4A03430 STZ TIFRD,IR2 STORE ENDMARK FOR TIFRD. F4A03440 REM F4A03450 REM FREQ / NO SUBROUTINES CALLED F4A03460 REM THIS ROUTINE SCANS THE FREQUENCY TABLE (FRET). IT F4A03470 REM MOVES ALL ENTRIES THAT DEAL WITH DOS TO A TABLE CALLED F4A03480 REM DOFRET AND MARKS THE FIRST WORD IN FRET OF EACH SUCH VACATEDF4A03490 REM ENTRY WITH A SIGNAL USED BY THE NEXT ROUTINE. F4A03500 REM ALL REGULAR FRET ENTRIES, THAT IS, THOSE THAT DEAL WITHF4A03510 REM DATA-CONTROLLED TRANSFER OPTIONS, ARE MODIFIED AS FOLLOWS. F4A03520 REM THE 1ST FREQUENCY OF EACH ENTRY IS UNMODIFIED, THE 2ND BE- F4A03530 REM COMES THE 1ST + THE 2ND, THE 3RD BECOMES THIS TOTAL + THE F4A03540 REM 3RD, ETC. THUS (2,7,4) BECOMES (2,9,13). THEN EACH OF F4A03550 REM THESE MODIFIED FREQUENCIES IS DIVIDED BY THE LAST FREQUENCY.F4A03560 REM THUS (2,9,13) BECOMES (2/13,9/13,1). THE PURPOSE OF THIS F4A03570 REM PROCEDURE BECOMES MORE APPARENT WHEN EXAMINING THE METHOD F4A03580 REM USED IN SECT. 4, PART 3, FOR SIMULATING THE OBJECT PROGRAM. F4A03590 FREQ NZT FRET-1 IS FRET EMPTY. F4A03600 TRA SORTDO YES, SKIP THIS ROUTINE. F4A03610 AXC 2,IR1 NO, INITIALIZE FRET INDEX REGISTER. F4A03620 AXT 0,IR2 INITIALIZE DOFRET INDEX REGISTER. F4A03630 LDC FRET-1,IR4 SET TEST DECREMENTS IN THIS ROUTINE F4A03640 SXD DNDTST,IR4 WITH THE COMPLEMENT OF THE LENGTH F4A03650 SXD DOTEST,IR4 OF FRET. F4A03660 SXD PNDTST,IR4 F4A03670 SXD PRBTST,IR4 F4A03680 LDI NEGMAX LOAD SI WITH SIGNAL. F4A03690 DNDTST TXL DOMOVE,IR1,...... DOES TABLE END WITH A DOFRET ENTRY. F4A03700 CLA FRET,IR1 IS THIS A FORMULA NUMBER. F4A03710 TPL ACCUM NO. IT IS A FREQUENCY. F4A03720 DOMOVE CLA FRET-2,IR1 THE PREVIOUS ENTRY WAS A DOFRET ENTRY. F4A03730 STO DOFRET,IR2 MOVE IT TO DOFRET TABLE. F4A03740 CLA FRET-1,IR1 F4A03750 STO DOFRET-1,IR2 F4A03760 STI FRET-2,IR1 STORE SIGNAL TO INDICATE VACATED F4A03770 REM DOFRET ENTRY. F4A03780 TXI DOTEST,IR2,2 SET DOFRET INDEX REG FOR NEXT ENTRY. F4A03790 DOTEST TXL SAVDOF,IR1,...... HAS ALL OF FRET BEEN TREATED. F4A03800 TXI DNDTST,IR1,-2 SET FRET IR TO LOOK TWO WORDS AHEAD. F4A03810 ACCUM ADD FRET-1,IR1 ADD LAST FREQUENCY TO THIS ONE TO GET F4A03820 STO FRET,IR1 CUMULATIVE FREQUENCY. F4A03830 TXI PNDTST,IR1,-1 SET FRET IR TO LOOK AT NEXT WORD. F4A03840 PNDTST TXL DIVFRQ,IR1,...... DOES TABLE END WITH REGULAR FRET ENTRY F4A03850 CLA FRET,IR1 IS THIS A FORMULA NUMBER. F4A03860 TPL ACCUM NO. IT IS ANOTHER FREQUENCY. F4A03870 DIVFRQ CLA FRET-1,IR1 SET TOTAL FREQUENCY OF ENTRY AS F4A03880 STO ERASE1 DIVISOR. F4A03890 CLA POSMAX SET THE HIGHEST POSITIVE NUMBER AS THE F4A03900 STO FRET-1,IR1 TOTAL PROBABILITY OF THE ENTRY. F4A03910 SXA CONTIN,IR1 SAVE CURRENT FRET INDEX. F4A03920 TXI DIVDND,IR1,2 SET IR TO LOOK AT THE NEXT TO LAST F4A03930 REM FREQUENCY IN THIS ENTRY. F4A03940 DIVDND CLA FRET,IR1 LOOK AT PREVIOUS FREQUENCY. F4A03950 TMI CONTIN IS IT THE FORMULA NO. FOR THE ENTRY. F4A03960 LDQ ZERO NO, DIVIDE THIS CUMULATIVE FREQUENCY F4A03970 DVP ERASE1 BY TOTAL FREQUENCY TO GET F4A03980 DCT CUMULATIVE PROBABILITY. F4A03990 LDQ POSMAX F4A04000 STQ FRET,IR1 F4A04010 TXI DIVDND,IR1,1 SET IR TO LOOK AT THE FREQ BEFORE THIS F4A04020 CONTIN AXT ......,IR1 RESTORE CURRENT FRET INDEX. F4A04030 PRBTST TXL SAVDOF,IR1,...... HAS ALL OF FRET BEEN TREATED. F4A04040 TXI DNDTST,IR1,-2 SET FRET IR TO LOOK TWO WORDS AHEAD. F4A04050 REM F4A04060 REM SQUEEZ / NO SUBROUTINES CALLED F4A04070 REM THIS ROUTINE, SCANNING FRET FOR THE SIGNALS LEFT BY THEF4A04080 REM PREVIOUS ROUTINE WHICH MARK THE VACATED DOFRET ENTRIES, F4A04090 REM CLOSES UP THE FRET TABLE SO THAT ONLY REGULAR FRET ENTRIES F4A04100 REM REMAIN. F4A04110 REM ALSO THIS ROUTINE STORES THE LENGTH OF FRET IN A CELL F4A04120 REM CALLED FRTBOX. F4A04130 SQUEEZ TXI *+1,IR4,2 SET TEST DECREMENT FOR END OF F4A04140 SXD SQTEST,IR4 SQUEEZE LOOP. F4A04150 SXA *+1,IR1 INITIALIZE INDEX REGISTER FOR F4A04160 AXT ......,IR2 SQUEEZE LOOP. F4A04170 SQLOOP LDQ FRET+2,IR2 MOVE UP NEXT WORD. F4A04180 STQ FRET,IR2 F4A04190 TXI SQTEST,IR2,-1 SET INDEX REG FOR MOVING NEXT WORD. F4A04200 SQTEST TXH SQLOOP,IR2,...... HAVE ALL WORDS BEEN MOVED UP. F4A04210 TRA FRETLP YES, LOOK AT NEXT FRET ENTRY. F4A04220 SAVDOF SXD DOSUB,IR2 F4A04230 SXD DOFTST,IR2 SET TEST DECREMENT IN LOADDO ROUTINE. F4A04240 CLA FRET-1 SAVE LENGTH OF FRET. F4A04250 SUB DOSUB F4A04260 STO FRTBOX F4A04270 TZE SORTDO IF FRET WAS ALL DOFRET ENTRIES OR ALL F4A04280 TXL SORTDO,IR2,0 REGULAR FRET ENTRIES, SKIP SQUEEZE F4A04290 REM ROUTINE. F4A04300 AXT 0,IR1 INITIALIZE INDEX REG FOR FRET LOOP. F4A04310 LDC FRTBOX,IR4 SET TEST DECREMENT FOR END OF FRET F4A04320 SXD FRTEND,IR4 LOOP. F4A04330 LDC FRET-1,IR4 PREPARE FOR SETTING OF SQUEEZE LOOP F4A04340 REM TEST DECREMENT. F4A04350 CAL NEGMAX LOAD AC WITH SIGNAL. F4A04360 FRETLP LDI FRET,IR1 PICK UP NEXT FRET WORD. F4A04370 TIO SQUEEZ IS THIS AND THE NEXT WORD A VACATED F4A04380 REM DOFRET ENTRY. F4A04390 TXI FRTEND,IR1,-1 SET IR TO PICK UP NEXT FRET WORD. F4A04400 FRTEND TXH FRETLP,IR1,...... HAS ALL OF FRET BEEN TREATED. F4A04410 REM F4A04420 REM SORTDO / NO SUBROUTINES CALLED F4A04430 REM DOLIST IS BUILT UP IN PASS1 ORDERED ON THE ENDS OF DOS F4A04440 REM (LOCATIONS OF TXLS IN THE OBJECT PROGRAM). THIS ROUTINE F4A04450 REM SORTS DOLIST SO THAT IT IS ORDERED ON THE BEGINNINGS OF DOS F4A04460 REM (ADDRESSES OF TXLS). F4A04470 SORTDO LXD DOBOX,IR1 LOAD IR WITH LENGTH OF DOLIST. F4A04480 TXL FREAD2,IR1,0 IF DOLIST IS EMPTY, SKIP DO ROUTINES. F4A04490 NXTPAS SXA STORHI,IR1 SAVE CURRENT SORTING INDEX. F4A04500 CAL DOLIST,IR1 PICK UP NEXT ENTRY NOT YET SORTED. F4A04510 LDQ DOLIST+1,IR1 F4A04520 SORTLP TXL STORHI,IR1,2 IS THERE ANOTHER ENTRY TO COMPARE. F4A04530 LAS DOLIST+2,IR1 COMPARE ADDRESSES OF DOS. F4A04540 TXI SORTLP,IR1,-2 STORED ADDRESS SMALLER, COMPARE NEXT. F4A04550 TRA 2NDCMP ADDRESSES ARE EQUAL, COMPARE LOCATIONS F4A04560 LDI DOLIST+2,IR1 STORED ADDRESS LARGER, SWITCH ENTRIES. F4A04570 SLW DOLIST+2,IR1 F4A04580 XCL F4A04590 LDQ DOLIST+3,IR1 F4A04600 SLW DOLIST+3,IR1 F4A04610 PIA F4A04620 TXI SORTLP,IR1,-2 SET IR TO COMPARE NEXT ENTRY. F4A04630 2NDCMP PAI F4A04640 CLA DOLIST+3,IR1 F4A04650 TLQ FIXAC AC LOC. LARGER, DONT SWITCH ENTRIES. F4A04660 CAL DOLIST+3,IR1 AC LOCATION SMALLER, SWITCH ENTRIES. F4A04670 STQ DOLIST+3,IR1 F4A04680 LDQ DOLIST+2,IR1 F4A04690 STI DOLIST+2,IR1 F4A04700 XCL F4A04710 TXI SORTLP,IR1,-2 SET IR TO COMPARE NEXT ENTRY. F4A04720 FIXAC PIA RESTORE AC. F4A04730 TXI SORTLP,IR1,-2 SET IR TO COMPARE NEXT ENTRY. F4A04740 STORHI AXT ......,IR1 RESTORE CURRENT SORTING INDEX. F4A04750 SLW DOLIST,IR1 STORE AS NEXT HIGHEST SORTED ENTRY. F4A04760 STQ DOLIST+1,IR1 F4A04770 TXI *+1,IR1,-2 SET IR TO PICK UP NEXT UNSORTED ENTRY. F4A04780 TXH NXTPAS,IR1,2 IS TABLE ALL SORTED. F4A04790 REM F4A04800 REM REPLACE DO / NO SUBROUTINES CALLED F4A04810 REM THIS ROUTINE REPLACES THE INSTRUCTION NUMBERS (TXL LO- F4A04820 REM CATIONS AND ADDRESSES) IN DOLIST BY BASIC BLOCK NUMBERS. F4A04830 REM (BASIC BLOCKS ARE NUMBERED IN THE ORDER OF THEIR APPEARANCE F4A04840 REM IN THE OBJECT PROGRAM FROM 0 THRU N-1 WHERE N IS THE NUMBER F4A04850 REM OF BASIC BLOCKS IN THE PROGRAM.) F4A04860 AXT 1,IR1 INITIALIZE DOLIST INDEX REGISTER. F4A04870 AXT 0,IR2 INITIALIZE BBLIST INDEX REGISTER. F4A04880 CLA DOBOX SET TEST DECREMENT WITH LENGTH OF F4A04890 STD DOTIX DOLIST. F4A04900 DOTIX TIX LOADDO,IR1,...... HAVE ALL DOLIST ENTRIES BEEN CHANGED. F4A04910 CLA DOLIST-1,IR1 PICK UP NEXT DOLIST ADDRESS. F4A04920 ADCOMP CAS BBLIST,IR2 COMPARE WITH BBLIST ENTRIES. F4A04930 TXI ADCOMP,IR2,1 THIS BB BEGINS BEFORE THE DO BEGINS. F4A04940 REM TRY NEXT BB. F4A04950 PXD 0,IR2 THIS BB AND DO BEGIN TOGETHER, SO RE- F4A04960 STO DOLIST-1,IR1 PLACE TXL ADD. IN DOLIST WITH BB NO F4A04970 CLA DOLIST,IR1 PICK UP NEXT DOLIST LOCATION. F4A04980 LOCCOM CAS BBLIST,IR2 COMPARE WITH BBLIST ENTRIES. F4A04990 TXI LOCCOM,IR2,1 THIS BB BEGINS BEFORE THE DO ENDS. F4A05000 REM TRY NEXT BB. F4A05010 TSX ERRM4,IR4 ILLEGAL TRANSFER TO A TXL. F4A05020 TXI *+1,IR2,-1 THIS BB BEGINS AFTER THE DO ENDS, SO F4A05030 PXD 0,IR2 REPLACE TXL LOCATION IN DOLIST WITH F4A05040 STO DOLIST,IR1 BB NO. OF PREVIOUS BB. F4A05050 CLA DOLIST-1,IR1 CONTINUE COMPARING ENTRIES STARTING F4A05060 PDX 0,IR2 WITH THE SAME BB THAT BEGAN WITH F4A05070 TXI DOTIX,IR1,2 THIS DO AND THE NEXT DOLIST ADDRESS F4A05080 REM TO BE CHANGED. F4A05090 REM F4A05100 REM LOADDO / NO SUBROUTINES CALLED F4A05110 REM FIRST THIS ROUTINE INSURES THAT DOTAG HAS BEEN READ F4A05120 REM CORRECTLY FROM TAPE. THEN IT SCANS DOTAG. EVERY TIME A DO F4A05130 REM IS ENCOUNTERED WHICH HAS A TRANSFER IN ITS EXTENDED RANGE (AF4A05140 REM DO WITH AN IF) THIS IS INDICATED BY A TAG OF 7 IN THE 2ND F4A05150 REM WORD OF THE APPROPRIATE DOLIST ENTRY. F4A05160 REM THEN THE LOOP COUNT IS COMPUTED AND PLACED IN THE F4A05170 REM ADDRESS OF THE 1ST WORD OF THE APPROPRIATE DOLIST ENTRY. F4A05180 REM DOTAG TELLS IF THE PARAMETERS FOR THE DO ARE CONSTANTS OR F4A05190 REM VARIABLES. IF CONSTANTS, THE LOOP COUNT IS COMPUTED BY THE F4A05200 REM FORMULA (N2-N1+N3)/N3 WHERE N1, N2 AND N3 ARE THE PARAMETERSF4A05210 REM OF THE DO. IF ANY OF THE PARAMETERS ARE VARIABLES THE LOOP F4A05220 REM COUNT IS TAKEN FROM DOFRET (IF THE PROGRAMMER HAS GIVEN A F4A05230 REM FREQUENCY ESTIMATE FOR THE DO) OR A COUNT OF 5 IS USED (IF F4A05240 REM HE HAS NOT SO DONE). F4A05250 REM IN A CARRY CASE (WHERE 2 OR 3 DOS ARE BUILT INTO ONE F4A05260 REM LOOP) THE CARRY LOOP COUNT IS MULTIPLIED BY THE LOOP COUNT F4A05270 REM OF THE PREVIOUS DO TO GIVE THE TOTAL COUNT FOR THE LOOP. F4A05280 LOADDO TSX (TAPE),IR4 F4A05290 FTAPE2,,(CHKU) F4A05300 CLA DOTOP F4A05310 SUB DOBASE LENGTH OF DOTAG. F4A05320 PAC 0,IR4 SET TEST DECREMENTS WITH COMPLEMENT F4A05330 SXD DTGBOX,IR4 OF LENGTH OF DOTAG. F4A05340 AXT 0,IR1 INITIALIZE DOTAG INDEX REGISTER. F4A05350 AXT 1,IR2 INITIALIZE DOLIST INDEX REGISTER. F4A05360 SLF MAKE SURE SENSE LIGHTS ARE OFF. F4A05370 NEXTDO CLA DOTAG+6,IR1 IS THIS A DO WITH AN IF. F4A05380 TPL NOIF NO. F4A05390 CLA TMASK YES. INDICATE THIS IN DOLIST. F4A05400 STT DOLIST-1,IR2 F4A05410 NOIF CLA DOTAG,IR1 ARE ANY OF THE PARAMETERS OF THIS DO F4A05420 ANA TMASK VARIABLE. F4A05430 TNZ VARPAR YES. F4A05440 CLA DOTAG+5,IR1 NO. THEY ARE ALL CONSTANTS. COMPUTE F4A05450 STA ERASE2 LOOP COUNT BY DIVIDING N2-N1+N3 BY F4A05460 ZAC N3 WHERE N2, AND N3 ARE THE F4A05470 LDQ ERASE2 PARAMETERS OF THE DO. F4A05480 DVP DOTAG+4,IR1 F4A05490 DCT F4A05500 TSX ERRM4,IR4 DIVIDE ERROR, GO TO DIAGNOSTIC. F4A05510 REM ERASE2 LOADED WITH ADDRESS OF F4A05520 REM DOTAG+5,IR1, IR1 LOADED WITH F4A05530 REM ZERO (AT NEXTDO-3) AND MODIFIED F4A05540 REM WITH TXI (AT DTGBOX-1). DOTAG F4A05550 REM READ FROM TAPE 2, FILE 6. F4A05560 LITEST SLT 1 IS THIS A CARRY CASE. F4A05570 TRA *+2 NO. F4A05580 MPY ERASE3 YES. MULTIPLY LOOP COUNT BY PREVIOUS F4A05590 XCA LOOP COUNT. F4A05600 STA DOLIST,IR2 ENTER LOOP COUNT IN DOLIST. F4A05610 STA ERASE3 F4A05620 TXI DTGBOX,IR1,-9 SET IR FOR NEXT DOTAG ENTRY. F4A05630 DTGBOX TXL FREAD2,IR1,...... HAVE ALL DOTAG ENTRIES BEEN TREATED. F4A05640 NZT DOCARE-1 IS DOCARE EMPTY. F4A05650 TXI NEXTDO,IR2,2 YES, NO CARRY. SET IR FOR NEXT F4A05660 REM DOLIST ENTRY. F4A05670 LXD DOCARE-1,IR4 NO, SET TEST DECREMENT WITH COMPLEMENT F4A05680 SXD DCRTST,IR4 OF LENGTH OF DOCARE. F4A05690 AXT 0,IR4 INITIALIZE DOCARE INDEX REGISTER. F4A05700 CLA DOTAG,IR1 COMPARE 1ST WORD OF NEXT DOTAG WITH F4A05710 DODO CAS DOCARE,IR4 ALL OF DOCARE TO DISCOVER IF THIS F4A05720 TXI DCRTST,IR4,-1 DO IS A CARRY CASE. F4A05730 TRA LITEON THIS IS A CARRY CASE. F4A05740 TXI DCRTST,IR4,-1 F4A05750 DCRTST TXH DODO,IR4,...... HAS ALL DOCARE BEEN SEARCHED. F4A05760 TXI NEXTDO,IR2,2 NO CARRY. SET IR FOR NEXT DOLIST ENTRY F4A05770 LITEON SLN 1 TURN ON SENSE LITE 1 TO INDICATE CARRY F4A05780 TRA NOIF F4A05790 VARPAR AXT 1,IR4 LOAD IR WITH CURRENT DOFRET INDEX. F4A05800 REM (INITIALIZED AT 1) F4A05810 CLA DOTAG,IR1 COMPARE INTERNAL FORMULA NO. OF THIS F4A05820 ARS 18 DOTAG WITH DOFRET INTERNAL FORMULA F4A05830 SSM NOS. TO DISCOVER IF THERE IS A F4A05840 REM FREQUENCY STATEMENT FOR THIS DO. F4A05850 DOFTST TXH USE5,IR4,...... HAS ALL DOFRET BEEN SEARCHED. F4A05860 CAS DOFRET+1,IR4 F4A05870 TXI DOFTST,IR4,2 F4A05880 TXI USEDOF,IR4,2 YES, THERE IS A FREQUENCY FOR THIS DO. F4A05890 USE5 LDQ FIVE NO DOFRET ENTRY. USE 5 AS LOOP COUNT. F4A05900 SXA VARPAR,IR4 SAVE CURRENT DOFRET INDEX. F4A05910 TRA LITEST F4A05920 USEDOF LDQ DOFRET+2,IR4 USE DOFRET ENTRY AS LOOP COUNT. F4A05930 SXA VARPAR,IR4 SAVE CURRENT DOFRET INDEX. F4A05940 TRA LITEST F4A05950 FREAD2 TSX (LOAD),IR4 GO TO RECORD 27 F4A05960 PZE F4A05970 REM F4A05980 1TSX TSX RDCIT1,IR4 F4A05990 TRA TEST1 F4A06000 2TSX TSX RDCIT1,IR4 F4A06010 TRA TEST2 F4A06020 REM F4A06030 REM RDCIT1 / A SUBROUTINE CALLED BY PASS1 F4A06040 REM THIS ROUTINE READS A BUFFERLOAD OF COMPILED INSTRUC- F4A06050 REM TIONS (CIT) FROM TAPE INTO CORES AS NEEDED. WHILE PASS1 F4A06060 REM IS PROCESSING THE CITS IN ONE BUFFER THE NEXT TO NEXT F4A06070 REM BUFFER AHEAD IS BEING LOADED. ALOOK AHED ZONE FOR TWO F4A06080 REM CITS IS LOADED FROM THE FIRST BUFFER IN CASE OF OVERFLOW.F4A06090 REM AFTER ALL THE CITS HAVE BEEN PROCESSED THE EXIT IS TO F4A06100 REM ASSIGN. F4A06110 RDCIT1 SXA S1IR2,IR2 SAVE INDEX REGISTERS F4A06120 SXA S1IR4,IR4 F4A06130 ZET RDTBLS HAS FRET BEEN READ AND TAPE POSITIONED F4A06140 TSX RDTBLS,IR2 NO. F4A06150 LXA CTRD1,IR2 GET PREVIOUS LOAD ADDRESS. F4A06160 IOAJ1 TXI *+1,IR2,...... ADJUST FOR NEXT RECORD. F4A06170 TXH *+3,IR2,CTTP1-1 WOULD THIS BE ABOVE CIT AREA. F4A06180 SXA CTRD1,IR2 NO, SET IO COMMAND ADRESS. F4A06190 TRA *+3 F4A06200 RINT1 AXT CTBOT,IR2 YES, SET LOAD ADDRESS TO BOTTOM F4A06210 SXA CTRD1,IR2 OF AREA. F4A06220 TSX (TAPE),IR4 DELAY, CHECK AND START READ. F4A06230 CTRD1,,(RBEP) F4A06240 CTLBL,,CTAPE F4A06250 LXA (SCHU)+CTAPE,IR2 F4A06260 TXL LAST1,IR2,0 WAS LAST READ EOF. F4A06270 MTST1 TXL MOVE1,IR2,CTBOT NO, HAS FIRST BUFFER JUST BEEN FILLED. F4A06280 SXD *-1,IR2 NO F4A06290 AJBF1 AXT CTBOT,IR2 ADJUST PROCESSING TEST DECREMENT F4A06300 PRAJ1 TXI *+1,IR2,...... FOR NEXT RECORD. F4A06310 SXA *-2,IR2 F4A06320 PXA ,IR2 F4A06330 PAC ,IR2 F4A06340 TXH *+3,IR2,-CTTP1-1 SHOULD PROCESSING RESTART AT BOTTOM. F4A06350 AXT CTBOT,IR2 YES F4A06360 TRA PRAJ1 F4A06370 SXD BEGN1,IR2 F4A06380 SXD CNTU1,IR2 F4A06390 S1IR2 AXT ......,IR2 RELOAD INDEX REGISTERS F4A06400 S1IR4 AXT ......,IR4 F4A06410 TRA 1,IR4 F4A06420 MOVE1 SXD MTST1,IR2 MOVE FIRST TWO CITS FROM FIRST OF F4A06430 AXT ZONSZ,IR2 BOTTOM BUFFER TO LOOK AHEAD ZONE. . F4A06440 CLA CTBOT+ZONSZ,IR2 F4A06450 STO CTTP1+ZONSZ,IR2 F4A06460 TIX *-2,IR2,1 F4A06470 TRA AJBF1 F4A06480 LAST1 AXC ......,IR2 SET TEST DECREMENTS AND EXIT ADRESS F4A06490 SXD BEGN1,IR2 FOR PROCESSING LAST RECORD. F4A06500 SXD CNTU1,IR2 F4A06510 CLA EXIT1 F4A06520 STA BEGN1 F4A06530 STA CNTU1 F4A06540 STA BEGN1-1 F4A06550 STA CNTU1-1 F4A06560 TRA S1IR2 F4A06570 REM F4A06580 RDTBLS SXA RLD2,IR2 READ TIFGO, TRAD, SKIP FOUR RECORDS, F4A06590 AXT 5,IR2 READ FRET AND THEN SKIP TO EOF. F4A06600 TSX (TAPE),IR4 F4A06610 TBLRD,IR2,-1 F4A06620 MIH,IR2,-1 F4A06630 TIX *+2,IR2,1 F4A06640 STZ RDTBLS F4A06650 SXA RDTBLS+1,IR2 F4A06660 RLD2 AXT ......,IR2 F4A06670 TRA 1,IR2 F4A06680 TFGRD,,(RBNP) IO PARAMETERS FOR RDTBLS F4A06690 TRDRD,,(RBNP) F4A06700 SK4R,,(SKBP) F4A06710 FRTRD,,(RBNP) F4A06720 SKFL,,(SKBP) F4A06730 TBLRD TFGLBL,,FTAPE2 F4A06740 TRDLBL,,FTAPE2 F4A06750 FRTLBL,,FTAPE2 F4A06760 FRTLBL,,FTAPE2 F4A06770 DTGLBL,,FTAPE2 F4A06780 REM F4A06790 REM MIH / A SUBROUTINE CALLED BY PASS1 AND ASSIGN F4A06800 REM THIS ROUTINE MAKES ENTRIES IN THE BBLIST. IT IS CALLEDF4A06810 REM BY TSX MIH,IR4 WITH THE ARGUMENT IN THE AC. MIH FIRST MAKESF4A06820 REM A BINARY SEARCH OF THE CURRENT BBLIST TO SEE IF THE ARGUMENTF4A06830 REM IS ALREADY IN THE TABLE. IF SO, IT RETURNS TO THE CALLER. F4A06840 REM IF NOT, IT INSERTS THE ARGUMENT IN BBLIST, PRESERVING ALGE- F4A06850 REM BRAIC ORDER. RETURN IS ALWAYS TO 1,IR4. F4A06860 REM A TEST FOR OVERFLOW OF TABLE IS ALSO MADE IN MIH. IF F4A06870 REM BBLIST EXCEEDS ITS PRESCRIBED LIMIT, THE FORTRAN DIAGNOSTIC F4A06880 REM IS CALLED IN TO ADVISE THE PROGRAMMER TO SIMPLIFY HIS F4A06890 REM PROGRAM. F4A06900 REM THE VERY FIRST ENTRY AND AN ENDMARK ARE PLACED IN F4A06910 REM BBLIST BY PASS1 WITHOUT CALLING ON MIH. THEREAFTER MIH F4A06920 REM INSERTS THE ENTRIES. BBLIST IS BUILT UP BACKWARDS IN CORES.F4A06930 REM F4A06940 MIH SLW ARG F4A06950 CLA ANTEBB INITIALIZE FLOOR AND ROOF. F4A06960 STO FLOOR F4A06970 CLA NTH F4A06980 STO ROOF F4A06990 LOOKUP CLA ROOF COMPUTE ADDRESS OF NEXT TABLE MEMBER F4A07000 ADD FLOOR TO BE COMPARED WITH ARGUMENT. F4A07010 ARS 1 (FIND MIDPOINT OF UNSEARCHED AREA F4A07020 STO TRYME OF TABLE). F4A07030 CLA* TRYME COMPARE ARGUMENT WITH TABLE MEMBER. F4A07040 CAS ARG F4A07050 TRA LOWER SEARCH LOWER F4A07060 TRA 1,IR4 THIS ARG ALREADY IN BBLIST. IGNORE IT. F4A07070 CLA TRYME RAISE FLOOR AND KEEP SEARCHING. F4A07080 STO FLOOR F4A07090 TRA LOOKUP F4A07100 LOWER CLA TRYME F4A07110 SUB ROOF F4A07120 TZE INSERT THIS ARG NOWHERE IN BBLIST. INSERT IT. F4A07130 CLA TRYME LOWER ROOF AND KEEP SEARCHING. F4A07140 STO ROOF F4A07150 TRA LOOKUP+1 F4A07160 INSERT CLA NTH COMPUTE WHAT ENTRIES MUST BE MOVED. F4A07170 STA MOVE F4A07180 SUB ONE F4A07190 CAS LIMIT IS BBLIST FULL F4A07200 TRA *+3 F4A07210 TRA *+2 F4A07220 TSX ERR42,IR4 BBLIST IS FULL WITHOUT THIS ENTRY. F4A07230 STA MOVE+1 F4A07240 STO NTH LOWER ADDRESS OF HIGHEST ENTRY F4A07250 SUB TRYME F4A07260 PAC 0,IR2 F4A07270 SXD MOVTST,IR2 F4A07280 AXT 0,IR2 F4A07290 MOVE CLA ......,IR2 MOVE UP ALL ENTRIES HIGHER THAN ARG F4A07300 STO ......,IR2 TO MAKE ROOM FOR ARGUMENT. F4A07310 TXI MOVTST,IR2,-1 F4A07320 MOVTST TXH MOVE,IR2,...... F4A07330 CLA ARG INSERT ARGUMENT IN CORRECT PLACE. F4A07340 STO* TRYME F4A07350 TRA 1,IR4 RETURN TO MAIN ROUTINE. F4A07360 CONDO CLA (SCHU)+FTAPE2 F4A07370 STA DORD F4A07380 STA DOTOP F4A07390 TRA REEDDO F4A07400 END26 SYN *+30 F4A07410 TCD -1 $F4A07415 TTL SECTION 4, PART TWO F4A07420 LBL 9F24,S F4B00000 REM SECTION 4 - PART 2 OF 3 F4B00010 REM F4B00020 ORG SYSCUR $F4B00030 BCI 1,9F2400 $F4B00040 ORG (LODR) $F4B00050 TXI PASS2,,240 F4B00070 REM F4B00090 REM CONSTANTS AND VARIABLES FIRST APPEARING IN PART 2. F4B00100 ORG TRA+1 F4B00110 SIX DEC 6 F4B00120 CTSPC2 PZE CTSP2 F4B00130 CTINFL PZE -1 F4B00140 ADMASK OCT 77777 F4B00150 TSBOX ...... TRATBL AND SET COUNTER F4B00160 BBBOX ...... BASIC BLOCK COUNTER F4B00170 REM F4B00180 REM CONSTANTS USED IN PART 2 ONLY. F4B00190 D3 PZE 0,0,3 F4B00200 EXIT2 PZE OUT EXIT ADDRESS FROM PASS2 F4B00210 CSLITE PZE 0,0,-NLIST-4 F4B00220 LNLST PZE 0,0,-NLIST F4B00230 CTRA PZE 0,0,-TRATBL+2 F4B00240 FIXLIM PZE NLIST-200*M/N-2 F4B00250 REM ENTRY MAY BE STORED. F4B00260 NODO TRA SAVE4 F4B00270 OCT 35121000000 TRA F4B00280 OCT 41104000000 PSE-TRA F4B00290 OCT -33642000000 DCT-PSE F4B00300 OCT 3642000000 MSE-DCT F4B00310 OCT -7100000000 TZE-MSE F4B00320 OCT -32154000000 HPR-TZE F4B00330 NNDCON OCT 31316000000 TSX-HPR F4B00340 OCT 35121000000 TRA F4B00350 OCT 1622000000 TXL-TRA F4B00360 ENDCON OCT -372000000 TTR-TXL F4B00370 PSE OCT 76225000000 F4B00380 PBYCOD OCT 200000000000 F4B00390 CERTCD OCT 300000000000 F4B00400 GTNCD OCT 500000000000 F4B00410 STOPCD OCT 600000000000 F4B00420 D34MSK OCT 770000000 F4B00430 D5MASK OCT 7000000 F4B00440 AD14X OCT 140000000 F4B00450 AD16X OCT 160000000 F4B00460 ERR43 TXI (DIAG),,-2 GO TO VECTOR WITH NO BRANCHES. F4B00470 ERR44 TXI (DIAG),,-2 FLOW ERROR. F4B00480 ERR45 TXI (DIAG),,-3 NLIST OVERFLOW. F4B00490 ERR46 TXI (DIAG),,-4 TRATBL OVERFLOW. F4B00500 ERR47 TXI (DIAG),,-5 SET OVERFLOW. F4B00510 ERR48 TXI (DIAG),,-6 FIXDO OVERFLOW. F4B00520 ERR41 TXI (DIAG),,-7 NO ASSIGN FOR GOTON(S). F4B00530 ERR40 TXI (DIAG),,-10 FLOW ERROR OR MACHINE ERROR. F4B00540 LOAD TSX (LOAD),IR4 GO TO RECORD 28. F4B00550 PZE F4B00560 REM F4B00570 REM PASS2 / CALLS ON RDCIT2, FINDBB, SERCHN AND ENTER F4B00580 REM A SECOND PASS IS MADE OVER THE COMPILED INSTRUCTIONS, F4B00590 REM PRODUCING THE THREE PRINCIPLE TABLES WITH WHICH SIMULATION F4B00600 REM IS ACCOMPLISHED, NAMELY TRATBL (2 WORDS PER ENTRY), SET (1 F4B00610 REM WORD PER ENTRY), AND BBTABL (1 WORD PER ENTRY). F4B00620 REM TRATBL CONTAINS FOR EACH BASIC BLOCK IN THE OBJECT F4B00630 REM PROGRAM THE BASIC BLOCK NUMBERS OF ITS SUCCESSOR BASIC F4B00640 REM BLOCKS (THOSE TO WHICH TRANSFER IS MADE). ASSOCIATED WITH F4B00650 REM EACH OF THESE SUCCESSOR BASIC BLOCK NUMBERS IS A COUNTER F4B00660 REM (PRESET TO ONE) WHICH DURING SIMULATION WILL KEEP COUNT OF F4B00670 REM THE NUMBER OF TIMES THE PATH BETWEEN THE PREDECESSOR AND F4B00680 REM SUCCESSOR IN QUESTION HAS BEEN TRAVERSED. F4B00690 REM SET CONTAINS INFORMATION PERTINENT TO THE THREE TYPES F4B00700 REM OF SETTING THAT MUST BE DONE DURING SIMULATION - 1.) THE F4B00710 REM SETTING OF ASSIGNED GO TO ADDRESSES, 2.) THE SETTING OF F4B00720 REM SENSE LIGHTS AND 3.) THE RESETTING OF DO INDEXES FOR DOS F4B00730 REM WHICH HAVE TRANSFERS OUT OF THEIR RANGE. F4B00740 REM BBTABL TELLS FOR EACH BASIC BLOCK 1.) WHICH OF THE 7 F4B00750 REM KINDS OF BASIC BLOCK ENDINGS IT HAS, 2.) THE RELATIVE AD- F4B00760 REM DRESS OF THE 1ST WORD OF THE ASSOCIATED TRATBL ENTRIES, AND F4B00770 REM 3.) THE RELATIVE ADDRESS OF THE 1ST WORD OF THE ASSOCIATED F4B00780 REM SET ENTRIES. F4B00790 PASS2 ZAC F4B00800 AXT CTBOT,IR2 F4B00810 SXA CTRD1,IR2 SET IO COMMAND ADDRESS FOR BOTTOM CIT. F4B00820 LDQ ILNGTH F4B00830 DVP CTSPC2 DIVIDE NO. OF WORDS IN CIT BY AREA F4B00840 DCT LENGTH TO FIND TOP OF LAST RECORD. F4B00850 TSX ERRM4,IR4 DIVIDE ERROR, GO TO DIAGNOSTIC. F4B00860 REM ILNGTH LOADED FROM CTCNT IN F4B00870 REM FIRST OF PASS1 AND CTSPC2 DEFINED F4B00880 REM AT ASSEMBLY. F4B00890 ADD CTRD1 LAST CIT ADRESS F4B00900 STA LAST2 F4B00910 XCA F4B00920 TZE ALLIN IS ALL OF CIT IN CORE. F4B00930 SUB ONE MAYBE NOT F4B00940 TNZ NALIN NO. F4B00950 CLA LAST2 STILL MAYBE. F4B00960 ADD CTRD1 F4B00970 ANA ADMASK F4B00980 TNZ NALIN NO. F4B00990 AXT CTTP2,IR2 YES. F4B01000 SXA LAST2,IR2 F4B01010 ALLIN AXT 11,IR4 SET EXIT CONDITIONS BY EXECUTING F4B01020 XEC LAST2+11,IR4 ROUTINE IN RDCIT2. F4B01030 TIX *-1,IR4,1 F4B01040 STZ CTINFL SET FLAG FOR PART 3. F4B01050 TRA START F4B01060 NALIN LXA RLNGTH,IR2 F4B01070 SXD IOAJ2,IR2 F4B01080 SXD PRAJ2,IR2 F4B01090 CLA CTSPC1 F4B01100 SUB ILNGTH F4B01110 TMI STRTRD IS FIRST LOAD IN CORE. F4B01120 AXT CTTP2,IR2 YES F4B01130 SXA (SCHU)+CTAPE,IR2 SET TEST DECREMENTS AND LOAD F4B01140 PXA ,IR2 ADDRESSES TO START READING F4B01150 SUB RLNGTH AFTER FIRST LOAD IS PROCESSED. F4B01160 SUB RLNGTH F4B01170 STA AJBF2 F4B01180 PAC ,IR2 F4B01190 SXD BEGN2,IR2 F4B01200 SXD CNTU2,IR2 F4B01210 CLA CTRD1 F4B01220 SUB RLNGTH F4B01230 STA CTRD1 F4B01240 ZAC F4B01250 LDQ CTSPC2 COMPUTE NO. OF RECORDS IN ONE LOAD. F4B01260 DVP RLNGTH FOR POSITIONING TAPE. F4B01270 DCT F4B01280 TSX ERRM4,IR4 DIVIDE ERROR, GO TO DIAGNOSTIC F4B01290 REM RLNGTH WAS COMPUTED AND LOADED F4B01300 REM IN PASS1 F4B01310 STQ SKNR F4B01320 TSX (TAPE),IR4 POSITION TAPE FOR READING SECOND F4B01330 SKNR,,(SKBP) LOAD. F4B01340 CTLBL,,CTAPE F4B01350 TRA START F4B01360 STRTRD TSX (TAPE),IR4 READ FIRST RECORD, DELAY AND F4B01370 CTRD1,,(RBNC) CHECK. F4B01380 CTLBL,,FTAPE4 F4B01390 CLA (SCHU)+FTAPE4 F4B01400 STA CTRD1 LOAD ADDRESS FOR NEXT RECORD. F4B01410 TSX (TAPE),IR4 READ NEXT RECORD. F4B01420 CTRD1,,(RBEP) F4B01430 CTLBL,,CTAPE F4B01440 TSX RDCIT2,IR4 F4B01450 START AXT TRAMAX,IR1 CLEAR THE TRANSFER TABLE AND SET ALL (32)F4B01460 CLA ONE COUNTERS TO ONE. F4B01470 CLRTRA STO TRATBL+1,IR1 F4B01480 STZ TRATBL+2,IR1 F4B01490 D2 TIX CLRTRA,IR1,2 F4B01500 STZ NLIST-1 STORE ENDMARK FOR NLIST. F4B01510 LXD DOBOX,IR1 STORE ENDMARK FOR DOLIST. F4B01520 CLA DMASK F4B01530 STO DOLIST-1,IR1 F4B01540 AXC CTBOT,IR1 F4B01550 AXC 1,IR2 INITIALIZE BBTABL INDEX REGISTER. F4B01560 CLA DOBOX F4B01570 TNZ BEGBB F4B01580 CLA NODO F4B01590 STO SETDO F4B01600 BEGBB TXI *+1,IR2,1 SET IR FOR NEXT BBTABL ENTRY. F4B01610 CLA TSBOX PUT TRATBL AND SET ADDRESSES F4B01620 STO BBTABL,IR2 IN BBTABL. F4B01630 TEST3 TXH *+2,IR1,-CTTP2 F4B01640 TXI 3TSX,IR1,CTSP2 F4B01650 BEGN2 TXL 3TSX,IR1,...... F4B01660 CLA INSTLC,IR1 DOES THIS INSTR. HAVE A FORMULA NO. F4B01670 TZE TR3S+1 NO. F4B01680 TIFBOX AXT ......,IR4 YES, LOAD IR WITH TIFRD COUNT. (INIT- F4B01690 REM IALIZED AT ZERO) F4B01700 ADD SIX F4B01710 SUB TIFRD,IR4 IS THIS INSTRUCTION AN ASSIGN. F4B01720 TZE ASNCAS YES, THIS IS AN ASSIGN CASE. F4B01730 CLA INSTOP,IR1 NO, IS THIS INSTRUCTION A PSE. F4B01740 ANA DMASK F4B01750 SUB PSE F4B01760 TNZ TSTTR NO. F4B01770 CLA INSTAA,IR1 YES, IS ITS ADDRESS 140-144. F4B01780 ANA D34MSK F4B01790 SUB AD14X F4B01800 TZE SETSLT THIS IS A SET SENSE LIGHT INST. F4B01810 CLA INSTLC+4,IR1 DOES NEXT INSTRUCTION BEGIN A F4B01820 SUB BBLIST-1,IR2 BASIC BLOCK. F4B01830 TZE CERTCS YES. F4B01840 TRA IF2PSE F4B01850 ASNCAS CLA INSTAD+4,IR1 ENTER N FOR THIS ASSIGN INTO NLIST, F4B01860 TSX SERCHN,IR4 IF NOT ALREADY ENTERED. F4B01870 ADD LNLST CREATE COMPLEMENT OF ADDRESS OF NLIST F4B01880 LXA TSBOX,IR4 ENTRY. F4B01890 TXH SETTSX,IR4,SETMAX HAS THE SET TABLE OVERFLOWED. F4B01900 STO SET,IR4 STORE THIS COMPLEMENT IN DECREMENT OF F4B01910 LXA TIFBOX,IR4 SET TABLE. F4B01920 CLA TIFRD+1,IR4 GET TIFRD BETA (TRANSFER ADDRESS). F4B01930 ALS 18 F4B01940 TXI *+1,IR4,-2 SET IR FOR NEXT LOOK AT TIFRD. F4B01950 SXA TIFBOX,IR4 SAVE TIFRD INDEX. F4B01960 TSX FINDBB,IR4 FIND BB NO. OF TIFRD BETA. F4B01970 ARS 18 F4B01980 LXA TSBOX,IR4 F4B01990 STA SET,IR4 STORE SUCCESSOR BB NO. IN ADDR. OF SET F4B02000 TXI *+1,IR4,1 SET INDEX REGISTER FOR NEXT SET ENTRY. F4B02010 TXI TR3S,IR1,-4 F4B02020 SETSLT LXA TSBOX,IR4 F4B02030 CLA INSTAA,IR1 DOES THIS INSTR. SET LIGHTS ON OR OFF. F4B02040 ANA D5MASK F4B02050 TZE LITOFF OFF. F4B02060 ADD CSLITE ON, CREATE COMPLEMENT OF ADDRESS OF F4B02070 ADD ONE DUMMY SENSE LIGHT. F4B02080 TXH SETTSX,IR4,SETMAX HAS THE SET TABLE OVERFLOWED. F4B02090 STO SET,IR4 STORE THIS COMPLEMENT IN DECREMENT OF F4B02100 REM SET TABLE AND A ONE IN THE ADDRESS F4B02110 REM TO INDICATE LIGHT ON. F4B02120 TXI TR3S,IR4,1 SET INDEX REGISTER FOR NEXT SET ENTRY. F4B02130 LITOFF SXA HOLD2,IR2 F4B02140 AXT 4,IR2 F4B02150 CLA CSLITE CREATE COMPLEMENTS OF ADDRESSES OF ALL F4B02160 3ADD ADD D1 FOUR DUMMY SENSE LIGHTS. F4B02170 TXH SETTSX,IR4,SETMAX HAS THE SET TABLE OVERFLOWED. F4B02180 STO SET,IR4 STORE THESE COMPLEMENTS IN DECR. OF F4B02190 REM SUCCESSIVE SET ENTRIES WITH ZERO F4B02200 REM IN THE ADDRESS FIELDS TO INDICATE F4B02210 REM LIGHT OFF. F4B02220 TXI *+1,IR4,1 SET INDEX REGISTER FOR NEXT SET ENTRY. F4B02230 TIX 3ADD,IR2,1 F4B02240 HOLD2 AXT ......,IR2 F4B02250 TR3S SXA TSBOX,IR4 SAVE SET TABLE INDEX. F4B02260 CLA INSTLC+4,IR1 DOES NEXT INSTR. BEGIN A BASIC BLOCK. F4B02270 SUB BBLIST-1,IR2 F4B02280 TZE CERTCS YES. F4B02290 TXI TEST3,IR1,-4 NO, SET IR FOR NEXT LOOK AT CIT. F4B02300 TSTTR CLA INSTLC+4,IR1 DOES NEXT INSTR. BEGIN A BASIC BLOCK. F4B02310 SUB BBLIST-1,IR2 F4B02320 TZE ENDBB YES. F4B02330 AXT 7,IR4 NO, IS THIS INSTR. A TRA, PSE, DCT, F4B02340 CAL INSTOP,IR1 MSE, TZE, HPR OR TSX. F4B02350 ANA DMASK F4B02360 NNDSUB SUB NNDCON+1,IR4 F4B02370 TZE* NNDVEC+1,IR4 F4B02380 TIX NNDSUB,IR4,1 F4B02390 CAL INSTOP,IR1 IT IS NONE OF THE ABOVE. IS IT SOME F4B02400 ANA 1STLET OTHER KIND OF TRANSFER. (IS 1ST F4B02410 ERA T LETTER OF OP CODE A T.) F4B02420 TZE CONDTR YES, IT MUST BE A 2-WAY TRANSFER CASE. F4B02430 IGNORE TXI TEST3,IR1,-4 NO, IGNORE IT AND LOOK AT NEXT CIT. F4B02440 TRA GOTOV2 TRA F4B02450 TRA IF2PSE PSE F4B02460 TRA IF2CAS DCT F4B02470 TRA MSECAS MSE F4B02480 TRA IF3CAS TZE F4B02490 TRA HPRCAS HPR F4B02500 NNDVEC TRA IGNORE TSX F4B02510 ENDBB AXT 3,IR4 IS THIS INSTR. A TRA, TXL OR TTR. F4B02520 CLA INSTOP,IR1 F4B02530 ANA DMASK F4B02540 ENDSUB SUB ENDCON+1,IR4 F4B02550 TZE* ENDVEC+1,IR4 F4B02560 TIX ENDSUB,IR4,1 F4B02570 CERTCS TSX ENTER,IR4 IT IS NONE OF THE ABOVE. IT MUST BE F4B02580 REM A CERTAINTY ENDING. F4B02590 CAL CERTCD PUT CERTAINTY CODE IN BBTABL. F4B02600 STP BBTABL,IR2 F4B02610 TXI BEGBB,IR1,-4 GO BACK TO DO NEXT BASIC BLOCK. F4B02620 TRA TRACS TRA F4B02630 TRA DOCAS TXL F4B02640 ENDVEC TRA TRACS+3 TTR F4B02650 TRACS CAL INSTAD,IR1 IS THIS TRA A GO TO N. F4B02660 ANA PMASK F4B02670 TNZ GOTON2 YES. F4B02680 CLA INSTAD,IR1 NO, IT IS A STRAIGHT GO TO. F4B02690 TSX FINDBB,IR4 GET THE SUCCESSOR BB NO. F4B02700 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B02710 CAL CERTCD PUT CERTAINTY CODE IN BBTABL. F4B02720 STP BBTABL,IR2 F4B02730 TXI BEGBB,IR1,-4 GO BACK TO DO NEXT BASIC BLOCK. F4B02740 GOTON2 CAL GTNCD PUT GO TO N CODE IN BBTABL. F4B02750 STP BBTABL,IR2 F4B02760 CLA ONE SET FLAG FOR GOTON IN SOURCE PROGRAM. F4B02770 STA GTNCD F4B02780 CLA INSTAD,IR1 GET RELATIVE ADDRESS OF PROPER F4B02790 TSX SERCHN,IR4 NLIST ENTRY. F4B02800 LXD TSBOX,IR4 F4B02810 STD TRATBL,IR4 PUT IT IN DECR. OF 1ST WORD OF TRATBL. F4B02820 LXA TIFBOX,IR4 MAKE SURE THERE IS A TIFRD ENTRY F4B02830 CLA INSTLC,IR1 FOR THIS GO TO N. F4B02840 ANA DMASK F4B02850 ADD ONE F4B02860 SUB TIFRD,IR4 F4B02870 TZE *+2 F4B02880 TSX ERRM4,IR4 NO ENTRY FOUND IN TIFRD FOR A GO TO N. F4B02890 TXI *+1,IR4,-2 SET IR FOR NEXT LOOK AT TIFRD. F4B02900 8CLA CLA TIFRD,IR4 PICK UP NEXT TRA ADDRESS FROM TIFRD. F4B02910 SXA TIFBOX,IR4 F4B02920 TPL GOTON2-1 THIS GO TO N IS FINISHED. F4B02930 SSP F4B02940 TSX FINDBB,IR4 GET THE SUCCESSOR BB NO. F4B02950 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B02960 LXA TIFBOX,IR4 F4B02970 TXI 8CLA,IR4,-1 SET IR FOR NEXT LOOK AT TIFRD. F4B02980 DOCAS CLA INSTAD,IR1 GET BB NO. OF BEGINNING OF DO. F4B02990 TSX FINDBB,IR4 F4B03000 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03010 TSX ENTER,IR4 ALSO ENTER BB NO. OF NEXT BB AFTER DO. F4B03020 SXD DOSUB,IR2 FIND APPROPRIATE DOLIST ENTRY. F4B03030 AXT 1,IR2 F4B03040 LXD TSBOX,IR4 F4B03050 DOCOMP CLA DOLIST,IR2 F4B03060 ANA DMASK F4B03070 SUB DOSUB F4B03080 TZE *+2 F4B03090 TXI DOCOMP,IR2,2 F4B03100 CLA DOLIST-1,IR2 IS THIS A DO WITH OR WITHOUT AN IF. F4B03110 ANA TMASK F4B03120 TZE DONOIF F4B03130 CLA DOLIST,IR2 ENTER LOOP COUNT IN DECR. OF 1ST WORD F4B03140 ALS 18 OF TRATBL. F4B03150 DWIFCD STD TRATBL+4,IR4 F4B03160 CAL DWIFCD PUT DO WITH IF CODE IN BBTABL. F4B03170 DOLXD LXD DOSUB,IR2 F4B03180 STP BBTABL,IR2 F4B03190 TXI BEGBB,IR1,-4 GO BACK TO DO NEXT BASIC BLOCK. F4B03200 DONOIF CAL DONOIF PUT DO NO IF CODE IN BBTABL. F4B03210 TRA DOLXD F4B03220 CONDTR CLA INSTAD,IR1 IS THIS A TXI OR A TIX TO THE NEXT F4B03230 SUB ASTRSK INSTRUCTION. F4B03240 TZE IGNORE YES, IGNORE IT. F4B03250 CLA INSTLC,IR1 F4B03260 SUB INSTAD,IR1 F4B03270 TZE IGNORE YES, IGNORE IT. F4B03280 CLA INSTAD,IR1 GET SUCCESSOR BB NO. OF 1ST BRANCH. F4B03290 TSX FINDBB,IR4 F4B03300 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03310 CLA INSTAD+4,IR1 GET SUCCESSOR BB NO. OF 2ND BRANCH. F4B03320 TSX FINDBB,IR4 F4B03330 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03340 CLA INSTLC,IR1 PUT FORMULA NO. OF CONDITIONAL F4B03350 LXD TSBOX,IR4 TRANSFER IN TRATBL. F4B03360 STD TRATBL+4,IR4 F4B03370 CAL PBYCOD PUT PROBABILITY CODE IN BBTABL. F4B03380 STP BBTABL,IR2 F4B03390 CLA D2 PUT NO. OF BRANCHES (2) IN TRATBL. F4B03400 STD TRATBL+2,IR4 F4B03410 TXI BEGBB,IR1,-8 GO BACK TO DO NEXT BASIC BLOCK. F4B03420 GOTOV2 CLA INSTAA,IR1 PICK UP ADDEND OF ADDRESS OF THIS F4B03430 PDX 0,IR4 TAGGED TRA AND SUBTRACT ONE TO GET F4B03440 TIX OK,IR4,1 NO. OF BRANCHES IN VECTOR. F4B03450 TSX ERR43,IR4 THIS GO TO VECTOR HAS NO BRANCHES. F4B03460 REM (IN ACTUAL PRACTICE THIS STOP, F4B03470 REM WHICH IS THE MOST FREQUENT F4B03480 REM STOP IN SECTION 4, USUALLY INDI- F4B03490 REM CATES A FLOW ERROR CAUSED EITHER BYF4B03500 REM THE SOURCE PROGRAM OR BY A BUG IN F4B03510 REM FORTRAN, SECTIONS 1-3. THIS STOP F4B03520 REM OCCURS WHEN FOR ONE OF THE ABOVE F4B03530 REM REASONS A STRAIGHT GO TO DOES NOT F4B03540 REM END A BASIC BLOCK.) F4B03550 OK TXH *+2,IR4,1 DOES THIS GO TO VECTOR HAVE ONLY ONE F4B03560 REM BRANCH. F4B03570 TXI TRACS+3,IR1,-4 YES, TREAT IT AS A STRAIGHT GO TO. F4B03580 PXD 0,IR4 PUT NO. OF BRANCHES IN TRATBL. F4B03590 LXD TSBOX,IR4 F4B03600 STD TRATBL-2,IR4 F4B03610 STD ERASE1 F4B03620 CAL PBYCOD PUT PROBABILITY CODE IN BBTABL. F4B03630 STP BBTABL,IR2 F4B03640 CLA INSTLC,IR1 PUT FORMULA NO. OF TAGGED TRA F4B03650 STD TRATBL,IR4 IN TRATBL. F4B03660 TEST4 TXH *+2,IR1,-CTTP2 F4B03670 TXI 4TSX,IR1,CTSP2 F4B03680 CNTU2 TXL 4TSX,IR1,...... F4B03690 CLA INSTAD+4,IR1 GET SUCCESSOR BB NO. OF NEXT BRANCH. F4B03700 TSX FINDBB,IR4 F4B03710 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03720 LXD ERASE1,IR4 F4B03730 TIX *+2,IR4,1 F4B03740 TXI BEGBB,IR1,-8 ALL BRANCHES ENTERED. GO BACK AND DO F4B03750 REM NEXT BASIC BLOCK. F4B03760 SXD ERASE1,IR4 F4B03770 TXI TEST4,IR1,-4 SET IR TO LOOK AT NEXT TRA IN VECTOR. F4B03780 IF2PSE CLA INSTAA,IR1 IS THIS PSE A SENSE SWITCH TEST. F4B03790 ANA D34MSK F4B03800 SUB AD16X F4B03810 TNZ IGNORE NO, IGNORE IT. F4B03820 CAL PBYCOD YES, PUT PROBABILITY CODE IN BBTABL. F4B03830 STP BBTABL,IR2 F4B03840 LXD TSBOX,IR4 F4B03850 CLA INSTLC,IR1 PUT FORMULA NO. OF THE PSE IN TRATBL. F4B03860 STD TRATBL,IR4 F4B03870 CLA D2 PUT NO. OF BRANCHES (2) IN TRATBL. F4B03880 STD TRATBL-2,IR4 F4B03890 SNSCS CLA INSTAD+8,IR1 GET BB NO. OF 2ND BRANCH. F4B03900 TSX FINDBB,IR4 F4B03910 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03920 CLA INSTAD+4,IR1 GET BB NO. OF 1ST BRANCH. F4B03930 TSX FINDBB,IR4 F4B03940 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B03950 MSECOD TXI BEGBB,IR1,-12 GO BACK TO DO NEXT BASIC BLOCK. F4B03960 MSECAS CAL MSECOD PUT THE SENSE LIGHT CODE IN BBTABL. F4B03970 STP BBTABL,IR2 F4B03980 CLA INSTAA,IR1 PUT THE MSE ADDRESS IN TRATBL. F4B03990 LXD TSBOX,IR4 F4B04000 STD TRATBL,IR4 F4B04010 TRA SNSCS F4B04020 IF2CAS CAL PBYCOD PUT THE PROBABILITY CODE IN BBTABL. F4B04030 STP BBTABL,IR2 F4B04040 LXD TSBOX,IR4 F4B04050 CLA INSTLC,IR1 PUT FORMULA NUMBER IN TRATBL. F4B04060 STD TRATBL,IR4 F4B04070 CLA D2 PUT NO. OF BRANCHES (2) IN TRATBL. F4B04080 STD TRATBL-2,IR4 F4B04090 CLA INSTAD+4,IR1 GET BB NO. OF 1ST BRANCH. F4B04100 TSX FINDBB,IR4 F4B04110 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B04120 CLA INSTAD+8,IR1 GET BB NO. OF 2ND BRANCH. F4B04130 TSX FINDBB,IR4 F4B04140 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B04150 TXI BEGBB,IR1,-12 GO BACK TO DO NEXT BASIC BLOCK. F4B04160 IF3CAS CLA INSTOP+4,IR1 IS THIS TZE FOLLOWED BY A TPL. F4B04170 ANA DMASK F4B04180 SUB TPL F4B04190 TZE *+2 F4B04200 IFTSX TSX ERRM4,IR4 NO, GO TO DIAGNOSTIC. F4B04210 CLA INSTOP+8,IR1 YES, IS THIS TPL FOLLOWED BY A TRA. F4B04220 ANA DMASK F4B04230 SUB TRA F4B04240 TNZ IFTSX NO, GO TO DIAGNOSTIC. F4B04250 CAL PBYCOD PUT THE PROBABILITY CODE IN BBTABL. F4B04260 STP BBTABL,IR2 F4B04270 LXD TSBOX,IR4 F4B04280 CLA INSTLC,IR1 PUT FORMULA NUMBER IN TRATBL. F4B04290 STD TRATBL,IR4 F4B04300 CLA D3 PUT NO. OF BRANCHES (3) IN TRATBL. F4B04310 STD TRATBL-2,IR4 F4B04320 CLA INSTAD+4,IR1 GET BB NO. OF POSITIVE BRANCH. F4B04330 TSX FINDBB,IR4 F4B04340 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B04350 CLA INSTAD,IR1 GET BB NO. OF ZERO BRANCH. F4B04360 TSX FINDBB,IR4 F4B04370 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B04380 CLA INSTAD+8,IR1 GET BB NO. OF NEGATIVE BRANCH. F4B04390 TSX FINDBB,IR4 F4B04400 TSX ENTER2,IR4 ENTER IT IN TRATBL. F4B04410 TXI BEGBB,IR1,-12 GO BACK TO DO NEXT BASIC BLOCK. F4B04420 HPRCAS CAL INSTOP+4,IR1 IS THIS HPR FOLLOWED BY A TRA. F4B04430 ANA DMASK F4B04440 SUB TRA F4B04450 TNZ IGNORE NO, IGNORE IT. F4B04460 CLA INSTAD+4,IR1 YES, DOES THE TRA TRANSFER BACK TO F4B04470 SUB INSTLC,IR1 THE HPR. F4B04480 TNZ IGNORE NO, IGNORE IT. F4B04490 CAL STOPCD YES, ITS A STOP. PUT THE STOP CODE F4B04500 STP BBTABL,IR2 IN BBTABL. F4B04510 TXI BEGBB,IR1,-8 GO BACK TO DO NEXT BASIC BLOCK. F4B04520 OUT CLS FIXSTO PUT ENDMARK ON FIXDOS TABLE. F4B04530 SUB ONE F4B04540 STA *+1 F4B04550 STO ...... F4B04560 STZ BBTABL-1,IR2 PUT ENDMARK ON BBTABL. F4B04570 SXD BBBOX,IR2 STORE NO. OF BBS IN BBBOX. F4B04580 TXI *+1,IR2,-1 SET TEST DECREMENT FOR FIXTRA ROUTINE. F4B04590 SXD FXTTST,IR2 F4B04600 REM F4B04610 REM FIXSET / NO SUBROUTINES CALLED F4B04620 REM IN THE CASE OF SET ENTRIES FOR RESETTING THE INDEXES F4B04630 REM FOR DOS WITH IFS, THE INDEX TO BE RESET IS FOUND IN TRATBL. F4B04640 REM BUT AS THE KNOWLEDGE THAT SETTING IS NECESSARY MAY OCCUR F4B04650 REM IN PASS2 BEFORE THE ENTRY IN TRATBL TO BE RESET HAS BEEN F4B04660 REM MADE, THE DESIRED COMPLEMENT OF THE ADDRESS OF THE DO F4B04670 REM INDEX IS NOT AVAILABLE FOR INSERTION IN SET. INSTEAD PASS2 F4B04680 REM PUTS THE BASIC BLOCK NUMBER OF THE END OF THE DO TO BE RESETF4B04690 REM INTO SET TABLE AND SAVES THE RELATIVE ADDRESSES OF SUCH F4B04700 REM SET ENTRIES IN A MINOR TABLE CALLED FIXDOS. NOW THAT PASS2 F4B04710 REM IS OVER AND TRATBL IS FULLY BUILT UP, THIS ROUTINE SCANS F4B04720 REM FIXDOS TO GET AT THE SET ENTRIES PERTAINING TO THE DO RESET F4B04730 REM CASE AND REPLACES THE DECREMENT PART OF SUCH SET ENTRIES F4B04740 REM WITH THE DESIRED COMPLEMENT OF THE ADDRESS OF THE DO F4B04750 REM INDEX WORD IN TRATBL. F4B04760 AXT 0,IR1 F4B04770 FIXSET CLA FIXDOS,IR1 GET NEXT FIXDOS ENTRY. F4B04780 TMI CLEARN ARE ALL FIXDOS FINISHED. YES. F4B04790 PDX 0,IR4 NO, GET APPROPRIATE SET ENTRY. F4B04800 CLA SET,IR4 F4B04810 PDX 0,IR2 CREATE COMPLEMENT OF ADDRESS OF 3RD F4B04820 CLA BBTABL,IR2 WORD OF TRATBL FOR THE DO WHICH IS F4B04830 ADD CTRA TO BE RESET. F4B04840 STD SET,IR4 STORE THIS IN DECR. OF SET TABLE. F4B04850 TXI FIXSET,IR1,-1 SET IR TO PICK UP NEXT FIXDOS ENTRY. F4B04860 REM F4B04870 REM CLEARN / NO SUBROUTINES CALLED F4B04880 REM THIS ROUTINE CLEARS NLIST AND THE DUMMY SENSE LIGHTS F4B04890 REM TO ZEROS IN PREPARATION FOR SIMULATION. F4B04900 CLEARN AXT 1,IR1 CLEAR THE NLIST TO ZEROS. F4B04910 NZT NLIST,IR1 F4B04920 TRA CLEARS F4B04930 STZ NLIST,IR1 F4B04940 TXI CLEARN+1,IR1,1 F4B04950 CLEARS STZ NLIST CLEAR THE DUMMY SENSE LIGHTS. F4B04960 STZ NLIST+1 F4B04970 STZ NLIST+2 F4B04980 STZ NLIST+3 F4B04990 CLS ASPRS ARE THERE GOTONS BUT NO ASSIGNS F4B05000 ADD GTNCD IN SOURCE PROGRAM. F4B05010 TPL *+2 NO F4B05020 TSX ERR41,IR4 YES, GO TO DIAGNOSTIC. F4B05030 REM F4B05040 REM FIXTRA / NO SUBROUTINES CALLED F4B05050 REM THIS ROUTINE SCANS BBTABL SEARCHING FOR BASIC BLOCKS F4B05060 REM THAT END WITH THE PROBABILITY ENDING. WHEN IT FINDS ONE IT F4B05070 REM TRIES TO FIND AN ASSOCIATED SET OF PROBABILITY STATEMENTS INF4B05080 REM FRET. IF THERE IS A FRET ENTRY FOR THIS BASIC BLOCK ENDING,F4B05090 REM EACH PROBABILITY STATEMENT IN THE ENTRY IS INSERTED IN F4B05100 REM TRATBL NEXT TO THE BRANCH IT REFERS TO. IF THERE IS NO F4B05110 REM FREQUENCY STATEMENT FOR THIS ENDING, FORTRAN ASSUMES THAT F4B05120 REM THE BRANCHES ARE EQUIPROBABLE AND CREATES PROBABILITY F4B05130 REM STATEMENTS WHICH REFLECT THIS IDEA AND INSERTS THEM NEXT F4B05140 REM TO THE PROPER ENTRIES IN TRATBL. F4B05150 ZET FRTBOX IS FRET EMPTY. F4B05160 TRA *+3 NO. F4B05170 CLA NOFREQ YES, PREVENT LOOKING AT FRET. F4B05180 STA BUMPBB-1 F4B05190 LDC FRTBOX,IR4 SET TEST DECREMENTS WITH COMPLEMENT F4B05200 SXD FRTST1,IR4 OF LENGTH OF FRET. F4B05210 SXD FRTST2,IR4 F4B05220 AXT 0,IR2+IR4 F4B05230 FXTTST TXH LOAD,IR2,...... F4B05240 CAL BBTABL,IR2 F4B05250 PDX 0,IR1 PUT TRATBL INDEX IN IR. F4B05260 ANA PMASK DOES THIS BB HAVE PROBABILITY ENDING. F4B05270 SUB PBYCOD F4B05280 TZE *+2 YES. F4B05290 BUMPBB TXI FXTTST,IR2,1 SET IR TO PICK UP NEXT BBTABL ENTRY. F4B05300 CLA FRET,IR4 IS THERE A FREQUENCY STATEMENT FOR F4B05310 FINDFQ ALS 18 THIS ENDING. F4B05320 ADD TRATBL,IR1 F4B05330 TNZ NOFREQ NO. F4B05340 BUMPFR TXI FRTST1,IR4,-1 YES, SET IR TO PICK UP NEXT FRET WORD. F4B05350 FRTST1 TXL FRTHRU,IR4,...... HAS ALL OF FRET BEEN EXAMINED. F4B05360 CLA FRET,IR4 F4B05370 TMI BUMPBB IS THIS THE START OF NEXT FRET ENTRY. F4B05380 STO TRATBL,IR1 NO, PLACE PROBABILITY IN TRATBL. F4B05390 TXI BUMPFR,IR1,2 SET IR TO PICK UP NEXT TRATBL ENTRY. F4B05400 FRTHRU CLA NOFREQ PREVENT FURTHER LOOKING AT FRET. F4B05410 STA BUMPBB-1 F4B05420 TXI FXTTST,IR2,1 SET IR TO PICK UP NEXT BBTABL ENTRY. F4B05430 NOFREQ TMI EQPROB IS FREQ. STATEMENT HIGHER THAN TRATBL F4B05440 REM ENTRY. YES. F4B05450 TXI FRTST2,IR4,-1 NO. F4B05460 NXTFRT CLA FRET,IR4 F4B05470 TMI FINDFQ F4B05480 TXI FRTST2,IR4,-1 F4B05490 FRTST2 TXH NXTFRT,IR4,...... HAS ALL OF FRET BEEN EXAMINED. F4B05500 CLA NOFREQ PREVENT FURTHER LOOKING AT FRET. F4B05510 STA BUMPBB-1 F4B05520 REM THERE IS NO FREQUENCY STATEMENT FOR F4B05530 REM THIS PROBABILITY ENDING, THEREFORE F4B05540 REM FORTRAN ASSUMES THE BRANCHES TO BE F4B05550 REM EQUIPROBABLE. F4B05560 EQPROB CLA TRATBL-2,IR1 PUT NO. OF BRANCHES IN IR TO COUNT F4B05570 SXA REST4,IR4 LOOP AHEAD. F4B05580 PDX 0,IR4 F4B05590 CLA D1 DIVIDE ONE BY NO. OF BRANCHES TO F4B05600 LDQ ZERO OBTAIN FRACTION OF EQUIPROBABILITY. F4B05610 DVP TRATBL-2,IR1 F4B05620 DCT F4B05630 TSX ERR40,IR4 FLOW OR MACHINE ERROR, GO TO DIAG. F4B05640 REM IR1 IS SET IN CLEARN AND MODIFIED F4B05650 REM BY FRTHRU-1. F4B05660 STQ ERASE1 F4B05670 ZAC F4B05680 ADDPR ADD ERASE1 ADD PROBABILITIES TO GET CUMULATIVE F4B05690 REM PROBABILITY. F4B05700 STO TRATBL,IR1 STORE CUMULATIVE PROBABILITY IN TRATBL F4B05710 TNX REST4,IR4,1 HAVE ALL BRANCHES BEEN DONE. YES. F4B05720 TXI ADDPR,IR1,2 NO, SET IR FOR NEXT STORE IN TRATBL. F4B05730 REST4 AXT ......,IR4 F4B05740 CLA POSMAX STORE HIGHEST NUMBER AS LAST F4B05750 STO TRATBL,IR1 CUMULATIVE PROBABILITY. F4B05760 TXI FXTTST,IR2,1 LOOK FOR NEXT PROBABILITY ENDING. F4B05770 REM F4B05780 3TSX TSX RDCIT2,IR4 CALLERS FOR CIT INPUT SUBROUTINE. F4B05790 TRA TEST3 F4B05800 4TSX TSX RDCIT2,IR4 F4B05810 TRA TEST4 F4B05820 REM F4B05830 REM RDCIT2 / A SUBROUTINE CALLED BY PASS2 F4B05840 REM WITH THE EXCEPTION OF A FEW INSTRUCTIONS THIS ROUTINE F4B05850 REM IS EXACTLY LIKE RDCIT1. FOR COMMENTS, SEE RDCIT1 ROUTINE. F4B05860 RDCIT2 SXA S2IR2,IR2 F4B05870 SXA S2IR4,IR4 F4B05880 LXA CTRD1,IR2 F4B05890 IOAJ2 TXI *+1,IR2,...... F4B05900 TXH *+3,IR2,CTTP2-1 F4B05910 SXA CTRD1,IR2 F4B05920 TRA *+3 F4B05930 RINT2 AXT CTBOT,IR2 F4B05940 SXA CTRD1,IR2 F4B05950 TSX (TAPE),IR4 F4B05960 CTRD1,,(RBEP) F4B05970 CTLBL,,CTAPE F4B05980 LXA (SCHU)+CTAPE,IR2 F4B05990 TXL LAST2,IR2,0 F4B06000 MTST2 TXL MOVE2,IR2,CTBOT F4B06010 SXD *-1,IR2 F4B06020 AJBF2 AXT CTBOT,IR2 F4B06030 PRAJ2 TXI *+1,IR2,...... F4B06040 SXA *-2,IR2 F4B06050 PXA ,IR2 F4B06060 PAC ,IR2 F4B06070 TXH *+3,IR2,-CTTP2-1 F4B06080 XEC RINT2 F4B06090 TRA PRAJ2 F4B06100 SXD BEGN2,IR2 F4B06110 SXD CNTU2,IR2 F4B06120 S2IR2 AXT ......,IR2 F4B06130 S2IR4 AXT ......,IR4 F4B06140 TRA 1,IR4 F4B06150 MOVE2 SXD MTST2,IR2 F4B06160 AXT ZONSZ,IR2 F4B06170 CLA CTBOT+ZONSZ,IR2 F4B06180 STO CTTP2+ZONSZ,IR2 F4B06190 TIX *-2,IR2,1 F4B06200 TRA AJBF2 F4B06210 LAST2 AXC ......,IR2 F4B06220 SXD BEGN2,IR2 F4B06230 SXD CNTU2,IR2 F4B06240 AXT 0,IR2 F4B06250 CLA POSMAX F4B06260 STO* LAST2 F4B06270 CLA EXIT2 F4B06280 STA BEGN2 F4B06290 STA CNTU2 F4B06300 STA BEGN2-1 F4B06310 STA CNTU2-1 F4B06320 TSX (TAPE),IR4 F4B06330 RWND,,(SKBP) F4B06340 CTLBL,,FTAPE4 F4B06350 TRA S2IR2 F4B06360 REM F4B06370 REM FINDBB / A SUBROUTINE CALLED BY PASS2 F4B06380 REM THIS ROUTINE SEARCHES BBLIST BY BINARY SEARCH FOR THE F4B06390 REM ARGUMENT IN THE AC AND RETURNS TO 1,IR4 WITH ITS BASIC BLOCKF4B06400 REM NUMBER IN THE DECREMENT OF THE AC. F4B06410 FINDBB STO ARG F4B06420 CLA ANTEBB INITIALIZE FLOOR AND ROOF. F4B06430 STO FLOOR F4B06440 CLA NTH F4B06450 STO ROOF F4B06460 LUKUP CLA ROOF COMPUTE ADDRESS OF NEXT TABLE MEMBER F4B06470 ADD FLOOR TO BE COMPARED WITH ARGUMENT. F4B06480 ARS 1 (FIND MIDPOINT OF UNSEARCHED AREA F4B06490 STO TRYME OF TABLE.) F4B06500 CLA* TRYME COMPARE ARGUMENT WITH TABLE MEMBER. F4B06510 CAS ARG F4B06520 TRA LOW SEARCH LOWER. F4B06530 TRA FOUND ARGUMENT FOUND. F4B06540 CLA TRYME SEARCH HIGHER. F4B06550 STO FLOOR F4B06560 TRA LUKUP F4B06570 LOW CLA TRYME F4B06580 SUB ROOF F4B06590 TZE FLOERR THIS BB IS NOT IN BBLIST. F4B06600 CLA TRYME F4B06610 STO ROOF F4B06620 TRA LUKUP+1 F4B06630 FLOERR TSX ERR44,IR4 FLOW ERROR, GOTO DIAGNOSTIC. F4B06640 FOUND CLA 1ST COMPUTE BB NO. OF THIS BASIC BLOCK F4B06650 SUB TRYME AND RETURN WITH IT IN THE DECREMENT F4B06660 ALS 18 OF THE AC. F4B06670 TRA 1,IR4 F4B06680 REM F4B06690 REM SERCHN / A SUBROUTINE CALLED BY PASS2 F4B06700 REM THIS ROUTINE MAKES ENTRIES IN THE NLIST. IT IS CALLED F4B06710 REM BY TSX SERCHN, IR4 WITH THE ARGUMENT IN THE AC. IT SEARCHESF4B06720 REM THE CURRENT NLIST TO SEE IF THE ARGUMENT IS ALREADY IN THE F4B06730 REM TABLE. IF NOT, IT IS ENTERED. IN EITHER CASE, SERCHN RE- F4B06740 REM TURNS TO 1,IR4 WITH THE ORDINAL NUMBER OF THE ARGUMENT N IN F4B06750 REM THE DECREMENT OF THE AC. F4B06760 REM A TEST FOR OVERFLOW OF TABLE IS ALSO MADE IN SERCHN. F4B06770 REM IF NLIST EXCEEDS ITS PRESCRIBED LIMIT, THE FORTRAN DIAGNOS- F4B06780 REM TIC IS CALLED IN TO ADVISE THE PROGRAMMER TO REWRITE HIS F4B06790 REM PROGRAM USING FEWER NS IN ASSIGN AND ASSIGN GO TO F4B06800 REM STATEMENTS. F4B06810 SERCHN SXA HOLD4,IR4 SAVE INDEX REGISTER. F4B06820 AXT 1,IR4 INITIALIZE SEARCHING INDEX REGISTER. F4B06830 STO ARG F4B06840 NLOOP CLA NLIST,IR4 GET NEXT N. F4B06850 TZE ENTERN HAS ALL OF NLIST BEEN SEARCHED. F4B06860 SUB ARG COMPARE THIS N WITH ARGUMENT. F4B06870 TZE NFOUND ARGUMENT IS ALREADY IN NLIST. F4B06880 TXI NLOOP,IR4,1 SET IR FOR LOOK AT NEXT N. F4B06890 ENTERN TXL *+2,IR4,NMAX HAS NLIST OVERFLOWED. F4B06900 TSX ERR45,IR4 YES, GO TO DIAGNOSTIC F4B06910 CLA ARG NO, ENTER NEW N. F4B06920 STO NLIST,IR4 F4B06930 STZ NLIST-1,IR4 STORE NEW ENDMARK. F4B06940 NFOUND PXD 0,IR4 PUT INDEX FOR N INTO AC. F4B06950 HOLD4 AXT ......,IR4 RESTORE INDEX REGISTER. F4B06960 TRA 1,IR4 RETURN TO MAIN ROUTINE. F4B06970 REM F4B06980 REM ENTER / A SUBROUTINE CALLED BY PASS2 F4B06990 REM THIS SUBROUTINE HAS TWO JOBS. FIRST IT MAKES THE PRIN-F4B07000 REM CIPLE ENTRIES FOR PASS2 IN TRATBL, THAT IS, IT ENTERS SUC- F4B07010 REM CESSOR BASIC BLOCK NUMBERS. SECOND, IT ASKS WHETHER THE F4B07020 REM SUCCESSOR BASIC BLOCK JUST ENTERED IS THE NORMAL ENTRANCE F4B07030 REM TO ANY DOS WITH IFS AND WHETHER THOSE DOS ARE BEING ENTERED F4B07040 REM FROM OUTSIDE THEIR RANGE. IF NOT, THE ROUTINE RETURNS TO F4B07050 REM 1,IR4. IF SO, IT ENTERS THE BASIC BLOCK NUMBERS OF THE ENDSF4B07060 REM OF THE DOS TO BE RESET IN SET AND THE RELATIVE ADDRESSES OF F4B07070 REM THOSE SET ENTRIES IN FIXDOS. F4B07080 ENTER PXD 0,IR2 ADD ONE TO CURRENT BB NO. TO GET NEXT F4B07090 ADD D1 BB NO. F4B07100 ENTER2 SXA SAVE4,IR4 F4B07110 LXD TSBOX,IR4 F4B07120 TXL *+2,IR4,TRAMAX HAS TRATBL OVERFLOWED. F4B07130 TSX ERR46,IR4 YES, GO TO DIAGNOSTIC F4B07140 STD TRATBL-1,IR4 ENTER SUCCESSOR BB NO. IN DECREMENT F4B07150 REM OF 2ND WORD OF TRATBL. F4B07160 TXI *+1,IR4,2 SET IR FOR NEXT TRATBL ENTRY. F4B07170 SXD TSBOX,IR4 F4B07180 SETDO SXA SAVE1,IR1 F4B07190 LXA TSBOX,IR1 F4B07200 AXT 1,IR4 F4B07210 STO ARG F4B07220 FDLOOP CLA ARG IS THE SUCCESSOR BB JUST ENTERED ABOVE F4B07230 ORA TMASK THE NORMAL ENTRANCE TO A DO WITH F4B07240 CAS DOLIST-1,IR4 AN IF. F4B07250 TXI *-1,IR4,2 F4B07260 TRA FIXDO YES. F4B07270 SXA TSBOX,IR1 NO, RETURN TO MAIN ROUTINE. F4B07280 SAVE1 AXT ......,IR1 F4B07290 SAVE4 AXT ......,IR4 F4B07300 TRA 1,IR4 F4B07310 FIXDO PXD 0,IR2 IS DO ENTERED FROM OUTSIDE THE RANGE. F4B07320 ORA TMASK F4B07330 SUB DOLIST-1,IR4 F4B07340 TMI ENTSET YES. (FROM BEFORE DO RANGE) F4B07350 PXD 0,IR2 F4B07360 CAS DOLIST,IR4 F4B07370 TRA ENTSET YES. (FROM AFTER DO RANGE) F4B07380 TXI FDLOOP,IR4,2 NO, IT IS ENTERED FROM INSIDE THE DO F4B07390 TXI FDLOOP,IR4,2 RANGE AND IS THEREFORE NOT RESET. F4B07400 REM SEE IF ANY MORE DOS WITH IFS BEGIN F4B07410 REM AT THIS POINT. F4B07420 ENTSET TXL *+2,IR1,SETMAX HAS THE SET TABLE OVERFLOWED. F4B07430 SETTSX TSX ERR47,IR4 YES, GO TO DIAGNOSTIC. F4B07440 CLA DOLIST,IR4 ENTER BB NO. OF END OF DO TO BE RESET F4B07450 STO SET,IR1 IN DECREMENT OF SET TABLE. F4B07460 CLA ONE ENTER A ONE IN ADDRESS PORTION OF F4B07470 STA SET,IR1 SET TABLE. F4B07480 CLA FIXSTO SET FIXSTO INSTRUCTION TO STORE F4B07490 ADD ONE NEXT FIXDOS ENTRY. F4B07500 STO FIXSTO F4B07510 ANA ADMASK HAS FIXDOS TABLE OVERFLOWED. F4B07520 SUB FIXLIM F4B07530 TMI *+2 F4B07540 TSX ERR48,IR4 YES, GO TO DIAGNOSTIC F4B07550 PXD 0,IR1 NO, ENTER RELATIVE ADDRESS OF CORRES- F4B07560 FIXSTO STO FIXDOS-1 PONDING SET ENTRY IN DECR. OF F4B07570 REM FIXDOS TABLE. F4B07580 TXI *+1,IR1,1 SET INDEX REGISTER FOR NEXT SET ENTRY. F4B07590 FENCE TXI FDLOOP,IR4,2 SEE IF ANY MORE DOS WITH IFS BEGIN AT F4B07600 REM THIS POINT. F4B07610 END27 SYN *+30 F4B07620 TCD -1 $F4B07625 TTL SECTION 4, PART THREE F4B07630 LBL 9F25,S F4C00000 REM SECTION 4 - PART 3 OF 3 F4C00010 REM F4C00020 ORG SYSCUR $F4C00030 BCI 1,9F2500 $F4C00040 ORG (LODR) $F4C00050 TXI SIMUL,,250 F4C00070 REM F4C00090 REM CONSTANTS AND VARIABLES USED IN PART 3 ONLY. F4C00100 ORG D3 F4C00110 CODEMK OCT 100000000000 F4C00120 RAND1 OCT 321702174347 F4C00130 RAND2 OCT 1 F4C00140 SIMBOX SYN ARG F4C00150 NINE DEC 9 F4C00160 WRDEC1 PZE 0,0,-TGBFSZ F4C00170 WRDEC2 PZE 0,0,-2*TGBFSZ F4C00180 TGBFSZ SYN 256 F4C00190 TAGSIZ PZE 2*TGBFSZ F4C00200 TAGMAX PZE CMTL+1 F4C00210 EXIT3 PZE FINAL EXIT ADDRESS FROM TAGPAS F4C00220 WREXIT TRA LSTCHK F4C00230 TAGBOX OCT 33000000 F4C00240 TAPMSK OCT 777770 F4C00250 14ONES OCT 377770000000 F4C00260 BBMASK OCT 37777037777 F4C00270 OCT 36721000000 LXA F4C00280 OCT 36731000000 TXI F4C00290 OCT 33167000000 TIX F4C00300 OCT 36747000000 LXP F4C00310 OCT 42524000000 DED F4C00320 OCT 36724000000 LXD F4C00330 OCT 72167000000 PAX F4C00340 OPCON OCT 72467000000 PDX F4C00350 CELL ...... F4C00360 REM F4C00370 REM DSC CONTROL WORDS FOR READING AND WRITING TAPES IN PART 3. F4C00380 WRITE1 IORT TAG,,TGBFSZ IO COMMANDS FOR WRITING F4C00390 WRITE2 IORT TAG+TGBFSZ,,TGBFSZ TAG. F4C00400 WRITBB IOCT MIRROR,0,...... $F4C00410 ERR49 TXI (DIAG),,-8 TAG IS TOO LONG. F4C00420 REM F4C00430 REM SIMUL / NO SUBROUTINES CALLED F4C00440 REM IT IS IN THIS ROUTINE THAT THE FLOW OF THE OBJECT F4C00450 REM PROGRAM IS SIMULATED. SIMULATION BEGINS WITH BASIC BLOCK 0.F4C00460 REM FIRST ANY SETTINGS THAT ARE MADE IN THIS BASIC BLOCK (I.E., F4C00470 REM SETTING ASSIGNED GO TO ADDRESSES, SENSE LIGHTS OR DO WITH IFF4C00480 REM INDEXES) ARE SET. THEN DEPENDING ON HOW THE BASIC BLOCK F4C00490 REM ENDS THE PROPER SUCCESSOR BASIC BLOCK IS CHOSEN AND THE F4C00500 REM FREQUENCY COUNTER FOR THAT PATH IS INCREMENTED BY ONE. THENF4C00510 REM ANY SETTINGS MADE IN THAT SUCCESSOR BASIC BLOCK ARE SET AND F4C00520 REM ITS SUCCESSOR IS CHOSEN, AND SO ON UNTIL SIMULATION IS OVER.F4C00530 SIMUL CLA TSBOX MULTIPLY NO. OF BRANCHES IN OBJECT F4C00540 ARS 12 PROGRAM (NO. OF TRATBL ENTRIES) BY F4C00550 STO SIMBOX 128 TO GET NO. OF BRANCHES TO BE F4C00560 REM SIMULATED. F4C00570 TRA STSNS (32)F4C00580 COUNT CLA SIMBOX LOWER SIMULATION COUNT. F4C00590 SUB ONE F4C00600 TMI DODOS IS SIMULATION FINISHED. YES. F4C00610 STO SIMBOX NO, CONTINUE. F4C00620 CLA BBTABL,IR1 PICK UP SUCCESSOR BASIC BLOCK. F4C00630 ALS 18 SET TEST DECREMENT WITH RELATIVE AD- F4C00640 STD SETTST DRESS OF 1ST SET ENTRY FOR THIS BB. F4C00650 CLA BBTABL-1,IR1 LOAD IR WITH RELATIVE ADDRESS OF 1ST F4C00660 PAX 0,IR2 SET ENTRY FOR NEXT BB. F4C00670 SETTST TXL DECODE,IR2,...... HAVE ALL SETS BEEN SET IN THIS BB. YES F4C00680 CLA SET+1,IR2 NO, PICK UP NEXT SET ENTRY AND MAKE F4C00690 PDX 0,IR4 APPROPRIATE SETTING. F4C00700 ALS 18 F4C00710 STD 0,IR4 F4C00720 TXI SETTST,IR2,-1 SET IR TO PICK UP NEXT SET ENTRY. F4C00730 DECODE CAL BBTABL,IR1 LOAD IR WITH RELATIVE ADDRESS OF 1ST F4C00740 PDX 0,IR2 TRATBL WORD FOR THIS BB. F4C00750 SUB CODEMK HOW DOES THIS BASIC BLOCK END. F4C00760 TMI DOWIF DO WITH IF. F4C00770 SUB CODEMK F4C00780 TMI MSECSE SENSE LIGHT. F4C00790 SUB CODEMK F4C00800 TMI PRBYCS PROBABILITY. F4C00810 SUB CODEMK F4C00820 TMI FLOCNT CERTAINTY. F4C00830 SUB CODEMK F4C00840 TMI TROUT DO WITHOUT IF. TAKE EXIT FROM LOOP. F4C00850 SUB CODEMK (LOOP COUNT WILL BE INCLUDED LATER) F4C00860 TMI GOTON3 GO TO N. F4C00870 TRA COUNT-1 STOP. GO BACK TO BASIC BLOCK NO. 0. F4C00880 GOTON3 CLA TRATBL,IR2 LOAD IR WITH RELATIVE ADDRESS OF NLIST F4C00890 PDX 0,IR4 ENTRY FOR THIS BB. F4C00900 CLA BBTABL-1,IR1 SET TEST DECREMENT WITH RELATIVE ADDR. F4C00910 STD NTEST OF 1ST TRATBL WORD FOR NEXT BB. F4C00920 NLOOP2 CLA TRATBL-1,IR2 IS THIS THE TRATBL ENTRY WHICH COR- F4C00930 ANA DMASK RESPONDS TO THE SUCCESSOR BB F4C00940 SUB NLIST,IR4 THAT HAS BEEN SET. F4C00950 TZE FLOCNT YES. F4C00960 TXI NTEST,IR2,2 NO, SET IR TO LOOK AT NEXT TRATBL. F4C00970 NTEST TXL NLOOP2,IR2,...... HAVE ALL TRATBL ENTRIES FOR THIS BB F4C00980 REM BEEN LOOKED AT. NO. F4C00990 CAL BBTABL,IR1 YES. F4C01000 PDX 0,IR2 F4C01010 TRA FLOCNT F4C01020 MSECSE CLA TRATBL,IR2 F4C01030 PDX 0,IR4 F4C01040 CLA SENSLT,IR4 IS DUMMY SENSE LIGHT ON OR OFF. F4C01050 TZE LITOUT OFF. TAKE LIGHT OFF BRANCH. F4C01060 STZ SENSLT,IR4 ON. TURN OFF LIGHT AND TAKE LIGHT ON F4C01070 TRA FLOCNT BRANCH. F4C01080 LITOUT TXI FLOCNT,IR2,2 F4C01090 DOWIF CLA TRATBL-2,IR2 F4C01100 ADD D1 COMPARE NO. OF TIMES IN LOOP WITH F4C01110 LDQ TRATBL,IR2 MAXIMUM LOOP COUNT. F4C01120 TLQ TROUT IF LOOP COUNT IS EXCEEDED TAKE EXIT F4C01130 REM FROM LOOP. F4C01140 STD TRATBL-2,IR2 IF NOT, GO BACK TO BEGINNING OF LOOP. F4C01150 TRA FLOCNT F4C01160 TROUT TXI FLOCNT,IR2,2 F4C01170 PRBYCS LDQ RAND1 GENERATE RANDOM NUMBER AND COMPARE F4C01180 MPY RAND2 TO PROBABILITY STATEMENT TO CHOOSE F4C01190 STQ RAND2 BRANCH. F4C01200 COMP CLA TRATBL,IR2 F4C01210 TLQ FLOCNT F4C01220 TXI COMP,IR2,2 F4C01230 FLOCNT CLA TRATBL-1,IR2 LOAD IR WITH BB NO. OF SUCCESSOR BB. F4C01240 PDX 0,IR1 F4C01250 ADD ONE ADD ONE TO THE FLOW COUNT. F4C01260 STA TRATBL-1,IR2 F4C01270 SUB TRATBL-1,IR2 HAS COUNT OVERFLOWED ADDRESS FIELD. F4C01280 TZE COUNT NO, GO TO SUCCESSOR BB. F4C01290 CLA ADMASK YES, INSERT FULL COUNT. F4C01300 STA TRATBL-1,IR2 F4C01310 TRA COUNT GO TO SUCCESSOR BB. F4C01320 REM F4C01330 REM DODOS / NO SUBROUTINES CALLED F4C01340 REM THE DO WITH NO IF IS ONLY PARTIALLY SIMULATED IN THE F4C01350 REM PREVIOUS ROUTINE. THAT IS, IF SUCH A DO HAS BEEN ENTERED N F4C01360 REM TIMES AND THE LOOP COUNT IS L, THEN THE TOTAL NUMBER OF F4C01370 REM ITERATIONS IS NL. THEN THE FREQUENCY COUNTERS FOR THE DO F4C01380 REM ARE GIVEN VALUES AS FOLLOWS - THE COUNTER FOR THE NUMBER OF F4C01390 REM TRANSFERS BACK TO THE BEGINNING OF THE LOOP IS SET AT N(L-1)F4C01400 REM AND THE COUNTER FOR THE NUMBER OF TRANSFERS TO THE INSTRUC- F4C01410 REM TION IMMEDIATELY FOLLOWING THE LOOP IS SET AT N. F4C01420 DODOS CLA DOBOX ARE THERE ANY DOS. F4C01430 TZE DOSUCC NO, SKIP THIS ROUTINE. F4C01440 AXT 1,IR2 YES, CLEAR LCNTR TO ZEROS. F4C01450 CLEARL STZ LCNTR,IR2 F4C01460 TXH *+2,IR2,LMAX F4C01470 TXI CLEARL,IR2,1 F4C01480 AXT 0,IR4 INITIALIZE LCNTR INDEX REGISTER. F4C01490 AXT 1,IR2 INITIALIZE DOLIST INDEX REGISTER. F4C01500 STD DTEST SET TEST DECR. WITH LENGTH OF DOLIST. F4C01510 LOOKDO CLA DOLIST-1,IR2 F4C01520 ANA TMASK F4C01530 TXI *+1,IR2,2 SET IR TO LOOK AT NEXT DOLIST ENTRY. F4C01540 TNZ DTEST IS THIS A DO WITH NO IF. NO. F4C01550 CLA ONE YES, PUT A ONE IN LCNTR. F4C01560 STO LCNTR,IR4 F4C01570 TXI *+1,IR4,1 SET IR FOR NEXT STORE INTO LCNTR. F4C01580 CLA DOLIST+1,IR2 F4C01590 STD ERASE1 F4C01600 CLA DOLIST+2,IR2 PUT LOOP COUNT IN LCNTR. F4C01610 STA LCNTR,IR4 F4C01620 NTHRDO CLA DOLIST-1,IR2 DO ANY MORE DOS BEGIN AT THIS POINT. F4C01630 SUB DOLIST+1,IR2 F4C01640 TNZ ENDBB2 NO. F4C01650 BEGDO TXI *+1,IR4,1 YES, SET IR FOR NEXT STORE INTO LCNTR. F4C01660 TXI *+1,IR2,2 SET IR TO LOOK AT NEXT DOLIST ENTRY. F4C01670 CLA DOLIST+2,IR2 MULTIPLY LOOP COUNT OF THIS DO BY F4C01680 STA LCNTR,IR4 LOOP COUNT FOR PREVIOUS DO AND F4C01690 LDQ LCNTR,IR4 STORE IN LCNTR. F4C01700 MPY LCNTR+1,IR4 F4C01710 STQ LCNTR,IR4 F4C01720 TRA NTHRDO F4C01730 ENDBB2 LXD ERASE1,IR1 LOAD IR WITH NO. OF BB WHICH BEGINS F4C01740 REM THIS DO. F4C01750 CLA BBTABL,IR1 F4C01760 PDX 0,IR1 LOAD IR WITH TRATBL INDEX. F4C01770 ANA PMASK DOES THIS BB END IN A DO. F4C01780 TZE ENDDO YES. F4C01790 CLA TRATBL-1,IR1 NO, MULTIPLY FREQUENCY COUNT FROM F4C01800 ANA TAMASK SIMULATION BY LOOP COUNT TO GET F4C01810 XCA TOTAL FREQUENCY. F4C01820 MPY LCNTR,IR4 F4C01830 XCA F4C01840 CAS TAMASK HAS FREQUENCY COUNT OVERFLOWED. F4C01850 CLA TAMASK YES, PUT FULL COUNT IN THE COUNTER. F4C01860 NOP NO. F4C01870 STA TRATBL-1,IR1 STORE TOTAL FREQUENCY BACK IN COUNTER. F4C01880 6LXD LXD ERASE1,IR1 F4C01890 TXI *+1,IR1,1 F4C01900 PXD 0,IR1 F4C01910 STD ERASE1 F4C01920 SUB DOLIST-1,IR2 DOES THIS BB START A DO. F4C01930 TZE BEGDO YES. F4C01940 TRA ENDBB2 NO. F4C01950 ENDDO CLA TRATBL-3,IR1 COMPUTE FREQUENCY OF EXITS FROM DO. F4C01960 ANA TAMASK F4C01970 STO ERASE2 F4C01980 LDQ ERASE2 F4C01990 MPY LCNTR,IR4 F4C02000 STQ ERASE3 F4C02010 LDQ ERASE2 F4C02020 MPY LCNTR+1,IR4 F4C02030 STQ ERASE2 F4C02040 CLA ERASE2 F4C02050 CAS TAMASK HAS FREQUENCY COUNT OVERFLOWED. F4C02060 CLA TAMASK YES, PUT FULL COUNT IN THE COUNTER. F4C02070 NOP NO. F4C02080 STA TRATBL-3,IR1 STORE TOTAL FREQUENCY BACK IN COUNTER. F4C02090 CLS ERASE2 COMPUTE FREQUENCY OF TRANSFERS BACK TO F4C02100 ADD ERASE3 BEGINNING OF DO. F4C02110 CAS TAMASK HAS FREQUENCY COUNT OVERFLOWED. F4C02120 CLA TAMASK YES, PUT FULL COUNT IN THE COUNTER. F4C02130 NOP NO. F4C02140 STA TRATBL-1,IR1 STORE TOTAL FREQUENCY BACK IN COUNTER. F4C02150 TXI *+1,IR4,-1 F4C02160 TXH 6LXD,IR4,0 IS THIS THE END OF THE OUTER DO. F4C02170 DTEST TXL LOOKDO,IR2,...... HAVE ALL DOS BEEN TREATED. NO. F4C02180 REM F4C02190 REM DOSUCC / NO SUBROUTINES CALLED F4C02200 REM THIS ROUTINE EXTRACTS FROM TRATBL THE SUCCESSOR BASIC F4C02210 REM BLOCK NUMBERS AND THEIR ASSOCIATED FLOW COUNTS AND PLACES F4C02220 REM THEM IN A TABLE CALLED SUCC WHICH IS PASSED ON IN CORES TO F4C02230 REM SECTION 5. F4C02240 DOSUCC LXD TSBOX,IR1 F4C02250 TXH ISSUCC,IR1,0 IS THERE ANY TRATBL. F4C02260 CLA ZERO NO. F4C02270 STA BBTABL-1 F4C02280 STA BBTABL F4C02290 TRA TAGPAS F4C02300 ISSUCC TXI *+1,IR1,-1 YES, SET TEST DECREMENT FOR ALTERING F4C02310 SXD SUCTST,IR1 TRATBL INTO SUCC. F4C02320 SXD PRDTST,IR1 SET TEST DECR. IN STORE PRED ROUTINE. F4C02330 AXT 0,IR1+IR2 INITIALIZE TRATBL AND SUCC IRS. F4C02340 SUCCLP LDQ TRATBL-1,IR1 MOVE THE SUCCESSOR BB NO. FROM THE F4C02350 CLA TRATBL-1,IR1 DECREMENT TO THE ADDRESS, AND MOVE F4C02360 ALS 3 THE FLOW COUNT FROM THE ADDRESS TO F4C02370 LGL 18 BITS 1 THRU 14. F4C02380 PBT F4C02390 TRA *+2 F4C02400 ORA 14ONES F4C02410 STO TRATBL,IR1 STORE ALTERED ENTRY IN 1ST WORD OF F4C02420 REM TRATBL FOR NEXT ROUTINE. F4C02430 STO SUCC,IR2 MOVE ALTERED ENTRY TO SUCC AREA. F4C02440 TXI *+1,IR1,2 SET IR FOR GETTING NEXT TRATBL ENTRY. F4C02450 TXI SUCTST,IR2,-1 SET IR FOR NEXT STORE IN SUCC. F4C02460 SUCTST TXL SUCCLP,IR1,...... HAS ALL OF TRATBL BEEN ALTERED. F4C02470 REM F4C02480 REM DOPRED / NO SUBROUTINES CALLED F4C02490 REM EACH FLOW COUNT IN TRATBL REPRESENTS THE NUMBER OF F4C02500 REM TIMES THE SIMULATED PROGRAM HAS FOLLOWED A CERTAIN PATH FROMF4C02510 REM ONE BASIC BLOCK TO ANOTHER. THE RELATIONSHIP BETWEEN TWO F4C02520 REM SUCH BASIC BLOCKS MAY BE DESCRIBED AS THAT OF PREDECESSOR F4C02530 REM AND SUCCESSOR. THIS ROUTINE SUBSTITUTES IN TRATBL FOR EACH F4C02540 REM SUCCESSOR BASIC BLOCK NUMBER ITS PREDECESSOR WITH RESPECT TOF4C02550 REM THE FLOW COUNT ASSOCIATED WITH IT. F4C02560 CLA BBBOX SET TEST DECREMENT WITH LENGTH OF F4C02570 SUB D1 BBTABL. F4C02580 STD BBTEST F4C02590 AXT 0,IR2 INITIALIZE BBTABL INDEX REGISTER. F4C02600 AXT 1,IR1 INITIALIZE TRATBL INDEX REGISTER. F4C02610 PRLOOP CLA BBTABL-1,IR2 SET TEST DECREMENT WITH RELATIVE ADDR. F4C02620 STD TRTEST OF 1ST TRATBL WORD FOR NEXT BB. F4C02630 PXA 0,IR2 F4C02640 TRTEST TXH BBTEST-1,IR1,...... F4C02650 STA TRATBL+1,IR1 STORE PREDECESSOR BB NO. IN TRATBL. F4C02660 TXI TRTEST,IR1,2 SET IR TO MAKE NEXT STORE IN TRATBL. F4C02670 TXI BBTEST,IR2,1 SET IR TO PICK UP NEXT BBTABL ENTRY. F4C02680 BBTEST TXL PRLOOP,IR2,...... HAVE ALL BASIC BLOCKS BEEN DONE. NO. F4C02690 REM F4C02700 REM SORT PRED / NO SUBROUTINES CALLED F4C02710 REM THE PREDECESSOR BASIC BLOCK ENTRIES IN TRATBL ARE F4C02720 REM SORTED IN THIS ROUTINE ON THEIR ASSOCIATED SUCCESSOR BASIC F4C02730 REM BLOCK NUMBERS. F4C02740 TXI *+1,IR1,-3 IF THERE IS BUT ONE TRATBL ENTRY NO F4C02750 TXL FIXBB,IR1,0 SORTING IS NECESSARY. F4C02760 SORT SXA *+1,IR1 F4C02770 AXT ......,IR2 F4C02780 CAL TRATBL-1,IR1 F4C02790 LDQ TRATBL,IR1 F4C02800 TRCOMP LAS TRATBL+1,IR2 F4C02810 TRA CMPTST F4C02820 TRA CMPTST F4C02830 LDI TRATBL+1,IR2 STORED ENTRY IS HIGHER. SWITCH F4C02840 SLW TRATBL+1,IR2 ENTRIES. F4C02850 XCL F4C02860 LDQ TRATBL+2,IR2 F4C02870 SLW TRATBL+2,IR2 F4C02880 PIA F4C02890 CMPTST TIX TRCOMP,IR2,2 F4C02900 SLW TRATBL-1,IR1 F4C02910 STQ TRATBL,IR1 F4C02920 TIX SORT,IR1,2 HAS ALL SORTING BEEN DONE. NO. F4C02930 REM F4C02940 REM FIXBB / NO SUBROUTINES CALLED F4C02950 REM THE RELATIVE ADDRESSES IN TRATBL OF THE PREDECESSOR F4C02960 REM BASIC BLOCKS ARE INSERTED IN THE APPROPRIATE BBTABL WORDS INF4C02970 REM THE ADDRESS FIELD (OVERWRITING THE NOW DEFUNCT RELATIVE F4C02980 REM ADDRESSES OF SET ENTRIES). THEN THE BBTABL ENTRIES ARE F4C02990 REM DIVIDED BY TWO, THUS HALVING THE RELATIVE ADDRESSES OF BOTH F4C03000 REM SUCCESSOR BASIC BLOCK NUMBERS (IN THE DECREMENT) AND PRED- F4C03010 REM ECESSOR BASIC BLOCK NUMBERS (IN THE ADDRESS). THE REASON F4C03020 REM FOR THIS IS THAT THESE RELATIVE ADDRESSES NO LONGER REFER TOF4C03030 REM TRATBL (2 WORDS PER ENTRY) BUT TO SUCC AND PRED (1 WORD PER F4C03040 REM ENTRY). F4C03050 FIXBB LXD BBBOX,IR2 INITIALIZE BBTABL INDEX REGISTER. F4C03060 LXD TSBOX,IR4 INITIALIZE TRATBL INDEX REGISTER. F4C03070 BBLOOP PXA 0,IR4 F4C03080 STA BBTABL,IR2 F4C03090 TXI *+1,IR4,-2 F4C03100 TNX DONE,IR2,1 F4C03110 PXD 0,IR2 F4C03120 BBCOMP CAS TRATBL+1,IR4 F4C03130 TRA BBLOOP F4C03140 NOP F4C03150 TIX BBCOMP,IR4,2 F4C03160 STA BBTABL-1 F4C03170 DONE CLA ZERO F4C03180 STA BBTABL F4C03190 LXD BBBOX,IR2 F4C03200 TXI SHFTBB,IR2,1 F4C03210 SHFTBB CAL BBTABL+1,IR2 F4C03220 ANA BBMASK F4C03230 ARS 1 F4C03240 STD BBTABL+1,IR2 F4C03250 STA BBTABL+1,IR2 F4C03260 TIX SHFTBB,IR2,1 F4C03270 REM F4C03280 REM STORE PRED / NO SUBROUTINES CALLED F4C03290 REM THE PREDECESSOR BASIC BLOCK NUMBERS THAT HAVE BEEN F4C03300 REM BUILT UP AND SORTED IN TRATBL ARE MOVED TO A NEW TABLE F4C03310 REM CALLED PRED WHICH IS PASSED ON IN CORES TO SECTION 5. F4C03320 REM TRATBL IS NOW DEAD. F4C03330 AXT 0,IR1+IR2 F4C03340 PREDLP CLA TRATBL,IR1 F4C03350 STO PRED,IR2 F4C03360 TXI *+1,IR1,2 F4C03370 TXI PRDTST,IR2,-1 F4C03380 PRDTST TXL PREDLP,IR1,...... F4C03390 REM F4C03400 REM TAGPAS / CALLS ON RDCIT3 AND WRTAG F4C03410 REM A THIRD AND FINAL PASS IS MADE OVER THE COMPILED IN- F4C03420 REM STRUCTIONS. TWO TABLES ARE THE OUTPUT OF THIS PASS, TAG ANDF4C03430 REM BBTAG, EACH ONE WORD PER ENTRY. EACH TIME A TAGGED IN- F4C03440 REM STRUCTION IS ENCOUNTERED A TAG ENTRY IS MADE. THE ADDRESS F4C03450 REM CONTAINS THE SYMBOLIC TAG, THE DECREMENT CONTAINS A CODE F4C03460 REM WHICH TELLS WHAT KIND OF INSTRUCTION THIS IS, AND IF THIS F4C03470 REM INSTRUCTION BEGINS A BASIC BLOCK THE SIGN IS MADE NEGATIVE. F4C03480 REM EACH TIME THE BEGINNING OF A BASIC BLOCK IS ENCOUNTEREDF4C03490 REM A BBTAG ENTRY IS MADE. THE ADDRESS CONTAINS THE NUMBER OF F4C03500 REM TAG ENTRIES MADE SO FAR, THE DECREMENT CONTAINS AN OCTAL 33 F4C03510 REM FOR THE CONVENIENCE OF SECTION 5. THE LAST BBTAG ENTRY IS F4C03520 REM A DUMMY WHICH CONTAINS THE TOTAL NUMBER OF TAG ENTRIES. F4C03530 REM FINALLY FOUR SPECIAL CELLS CALLED THE KEYS ARE LEFT FORF4C03540 REM SECTION 5. KEY1 = THE NUMBER OF BASIC BLOCKS INCLUDING THE F4C03550 REM DUMMY BASIC BLOCK, KEY2 = THE LENGTH OF THE SUCC OR PRED F4C03560 REM TABLES, KEY3 = THE NUMBER OF WORDS IN BBB (SOON TO BE F4C03570 REM CREATED) INCLUDING THE DUMMY ENTRY, AND KEY4 = THE LENGTH F4C03580 REM OF TAG DIVIDED BY NINE. F4C03590 TAGPAS LXA RLNGTH,IR2 SET DECREMENTS IN RDCIT3 F4C03600 SXD IOAJ3,IR2 F4C03610 SXD PRAJ3,IR2 F4C03620 AXT CTBOT,IR2 F4C03630 SXA CTRD1,IR2 INITIALIZE IO COMMAND F4C03640 ZET CTINFL IS ALL OF CIT IN CORE. F4C03650 TRA STREAD NO. F4C03660 AXT 5,IR4 YES. F4C03670 XEC LAST3+5,IR4 F4C03680 TIX *-1,IR4,1 F4C03690 TRA BEGIN READ FIRST TWO RECORDS AND GO TO F4C03700 STREAD TSX (TAPE),IR4 READ THIRD. F4C03710 CTRD1,,(RBNC) F4C03720 CTLBL,,CTAPE F4C03730 CLA (SCHU)+CTAPE F4C03740 STA CTRD1 F4C03750 TSX (TAPE),IR4 F4C03760 CTRD1,,(RBEP) F4C03770 CTLBL,,CTAPE F4C03780 TSX RDCIT3,IR4 F4C03790 BEGIN AXT 0,IR2+IR4 F4C03800 AXC CTBOT,IR1 F4C03810 TEST5 TXH *+2,IR1,-CTTP2 F4C03820 TXI 5TSX,IR1,CTSP2 F4C03830 BEGN3 TXL 5TSX,IR1,...... F4C03840 CLA INLOC,IR1 DOES THIS INST. BEGIN A BASIC BLOCK. F4C03850 SUB BBLIST,IR2 F4C03860 TZE INTBB YES. F4C03870 CAL INTAG,IR1 NO, IS THIS INSTRUCTION TAGGED. F4C03880 ANA TAPMSK F4C03890 TZE BUMP1 NO, IGNORE IT. F4C03900 CAL INTAG,IR1 YES. F4C03910 ANA TAMASK F4C03920 TRA STOTAG F4C03930 INTBB PXA 0,IR4 F4C03940 PAC 0,IR4 F4C03950 PXA 0,IR4 F4C03960 PAC 0,IR4 F4C03970 ADD TAGBOX F4C03980 STO BBTAG,IR2 F4C03990 TXI *+1,IR2,1 SET IR FOR NEXT STORE IN BBTAG. F4C04000 CAL INTAG,IR1 IS THIS INSTRUCTION TAGGED. F4C04010 ANA TAPMSK F4C04020 TZE BUMP1 NO, IGNORE IT. F4C04030 CAL INTAG,IR1 YES. F4C04040 ANA TAMASK F4C04050 SSM F4C04060 STOTAG STO TAG,IR4 F4C04070 SXA SAVE2,IR2 SAVE BBTAG INDEX REGISTER. F4C04080 AXT 8,IR2 F4C04090 CLA INOP,IR1 F4C04100 ANA DMASK F4C04110 OPSUB SUB OPCON+1,IR2 F4C04120 TZE STORCD+1,IR2 F4C04130 ADD OPCON+1,IR2 F4C04140 TIX OPSUB,IR2,1 F4C04150 TXI STORCD,IR2,5 INST. IS PASSIVE - CODE IS 6. F4C04160 TXI STORCD,IR2,-7 LXA - CODE IS 1. F4C04170 TXI STORCD,IR2,-2 TXI - CODE IS 5. F4C04180 TXI STORCD,IR2,-1 TIX - CODE IS 5. F4C04190 TXI STORCD,IR2,-3 LXP - CODE IS 2. F4C04200 TXI STORCD,IR2,-1 DED - CODE IS 3. F4C04210 TXI STORCD,IR2,-2 LXD - CODE IS 1. F4C04220 TXI STORCD,IR2,-1 PAX - CODE IS 1. F4C04230 STORCD PXD 0,IR2 PDX - CODE IS 1. F4C04240 STD TAG,IR4 STORE CODE FOR OPERATION TYPE IN TAG. F4C04250 SAVE2 AXT ......,IR2 RESTORE BBTAG INDEX REGISTER. F4C04260 TXI TEST6,IR4,-1 SET IR FOR NEXT STORE IN TAG. F4C04270 TEST6 TXL WRTAG,IR4,-TGBFSZ F4C04280 BUMP1 TXI TEST5,IR1,-4 SET IR FOR NEXT LOOK AT CIT. F4C04290 FINAL PXA 0,IR4 F4C04300 PAC 0,IR4 F4C04310 PXA 0,IR4 F4C04320 PAC 0,IR4 F4C04330 ADD TAGBOX F4C04340 STO BBTAG,IR2 F4C04350 ANA ADMASK F4C04360 SUB TAGMAX F4C04370 TMI *+2 F4C04380 TSX ERR49,IR4 TAG IS TOO LONG. F4C04390 ADD TAGMAX F4C04400 XCA F4C04410 ZAC F4C04420 DVP NINE F4C04430 DCT F4C04440 TSX ERRM4,IR4 DIVIDE ERROR, GO TO DIAGNISTIC. F4C04450 REM IR4 IS MODIFIED BY TAGPAS. F4C04460 TZE STOKEY F4C04470 XCA F4C04480 ADD ONE F4C04490 XCA F4C04500 STOKEY STQ KEY4 LENGTH OF TAG DIVIDED BY NINE. F4C04510 CLA ANTEBB F4C04520 SUB NTH F4C04530 STO KEY1 NO. OF BASIC BLOCKS INCLUDING DUMMY. F4C04540 XCA F4C04550 MPY SIX F4C04560 STQ KEY3 NO. OF WORDS IN BBB INCL. DUMMY. F4C04570 CLA TSBOX F4C04580 ARS 19 F4C04590 STO KEY2 LENGTH OF SUCC OR PRED TABLES. F4C04600 CLA WREXIT CHANGE EXIT FROM WRITE TAG ROUTINE. F4C04610 STO SAVIR2+1 F4C04620 TXH 15TEST,IR4,0 HAS 2ND BUFFER JUST BEEN WRITTEN. F4C04630 ZET CELL F4C04640 TRA LSTCHK F4C04650 15TEST TXH WRTAG,IR4,-TGBFSZ F4C04660 TXL WRTAG,IR4,-TGBFSZ-1 F4C04670 LSTCHK TSX (TAPE),IR4 F4C04680 ,,(WEFP) F4C04690 EOFLB1,,FTAPE3 F4C04700 REM F4C04710 REM WRITE BBLIST / NO SUBROUTINES CALLED F4C04720 REM THIS ROUTINE INVERTS THE ORDER OF BBLIST IN CORES AND F4C04730 REM THEN WRITES IT AS THE FIRST RECORD OF THE FOURTH FILE OF F4C04740 REM TAPE B3. F4C04750 LXA KEY1,IR1 F4C04760 AXT 0,IR2+IR4 F4C04770 INVERT CLA BBLIST,IR2 F4C04780 STO MIRROR,IR4 F4C04790 TXI *+1,IR4,-1 F4C04800 TXI *+1,IR2,1 F4C04810 TIX INVERT,IR1,1 F4C04820 CLA KEY1 F4C04830 ALS 18 F4C04840 STD WRITBB F4C04850 TSX (TAPE),IR4 F4C04860 WRITBB,,(WBNP) F4C04870 BBLBL,,FTAPE3 F4C04880 TSX (TAPE),IR4 F4C04890 BSP2F,,(SKBP) F4C04900 ,,FTAPE3 F4C04910 TSX (TAPE),4 F4C04920 SKFL,,(SKBP) F4C04930 TGLBL,,FTAPE3 F4C04940 REM F4C04950 REM MAKE BBB / NO SUBROUTINES CALLED F4C04960 REM THIS COMBINES A WORD OF BBTABL, A WORD OF BBTAG, AND F4C04970 REM FOUR WORDS OF ZERO TO MAKE A BBB ENTRY. IN THIS WAY THE BBBF4C04980 REM TABLE IS CREATED AND IS LEFT IN CORES FOR SECTION 5. THE F4C04990 REM END-OF-FILE INDICATORS ARE TURNED OFF AND SECTION 4 IS OVER.F4C05000 LXA KEY1,IR1 F4C05010 AXT 0,IR2+IR4 F4C05020 COMBIN CLA BBTABL,IR2 F4C05030 STO BBB,IR4 F4C05040 CLA BBTAG,IR2 F4C05050 STO BBB+1,IR4 F4C05060 STZ BBB+2,IR4 F4C05070 STZ BBB+3,IR4 F4C05080 STZ BBB+4,IR4 F4C05090 STZ BBB+5,IR4 F4C05100 TXI *+1,IR4,-6 F4C05110 TXI *+1,IR2,1 F4C05120 TIX COMBIN,IR1,1 F4C05130 TSX (LOAD),IR4 GO TO RECORD 29. F4C05140 PZE F4C05150 5TSX SXA *+2,IR4 F4C05160 TSX RDCIT3,IR4 CALLER FOR CIT INPUT SUBROUTINE. F4C05170 AXT ......,IR4 F4C05180 TRA TEST5 F4C05190 REM F4C05200 REM RDCIT3 / A SUBROUTINE CALLED BY TAGPAS F4C05210 REM WITH THE EXCEPTION OF A FEW INSTRUCTIONS THIS ROUTINE F4C05220 REM IS EXACTLY LIKE RDCIT1. FOR COMMENTS, SEE RDCIT1 ROUTINE. F4C05230 REM F4C05240 RDCIT3 SXA S3IR2,IR2 F4C05250 SXA S3IR4,IR4 F4C05260 LXA CTRD1,IR2 F4C05270 IOAJ3 TXI *+1,IR2,...... F4C05280 TXH *+3,IR2,CTTP2-1 F4C05290 SXA CTRD1,IR2 F4C05300 TRA *+3 F4C05310 RINT3 AXT CTBOT,IR2 F4C05320 SXA CTRD1,IR2 F4C05330 TSX (TAPE),IR4 F4C05340 CTRD1,,(RBEP) F4C05350 CTLBL,,CTAPE F4C05360 NZT (SCHU)+CTAPE F4C05370 TRA LAST3 F4C05380 AJBF3 AXT CTBOT,IR2 F4C05390 PRAJ3 TXI *+1,IR2,...... F4C05400 SXA *-2,IR2 F4C05410 PXA ,IR2 F4C05420 PAC ,IR2 F4C05430 TXH *+3,IR2,-CTTP2-1 F4C05440 AXT CTBOT,IR2 F4C05450 TRA PRAJ3 F4C05460 SXD BEGN3,IR2 F4C05470 S3IR2 AXT ......,IR2 F4C05480 S3IR4 AXT ......,IR4 F4C05490 TRA 1,IR4 F4C05500 LAST3 XEC LAST2 F4C05510 SXD BEGN3,IR2 F4C05520 CLA EXIT3 F4C05530 STA BEGN3 F4C05540 STA BEGN3-1 F4C05550 TSX (TAPE),IR4 F4C05560 RWND,,(SKBP) F4C05570 CTLBL,,FTAPE4 F4C05580 TRA S3IR2 F4C05590 REM F4C05600 REM WRTAG / A SUBROUTINE CALLED BY TAGPAS F4C05610 REM THIS SUBROUTINE WRITES THE TAG TABLE AS THE THIRD FILE F4C05620 REM OF TAPE B3 IN 256 WORD RECORDS. F4C05630 WRTAG SXA SAVIR2,IR2 F4C05640 CLA CELL F4C05650 ADD ONE F4C05660 STO CELL F4C05670 LBT F4C05680 TXI BUF2,IR4,2*TGBFSZ F4C05690 CLA WRDEC2 F4C05700 SXA *+4,IR4 F4C05710 TSX (TAPE),IR4 F4C05720 WRITE1,,(WBNP) F4C05730 TGLBL,,FTAPE3 F4C05740 AXT ......,IR4 F4C05750 TRA FIX4 F4C05760 BUF2 CLA TAGBOX F4C05770 ADD TAGSIZ F4C05780 STO TAGBOX F4C05790 CLA WRDEC1 F4C05800 SXA *+4,IR4 F4C05810 TSX (TAPE),IR4 F4C05820 WRITE2,,(WBNP) F4C05830 TGLBL,,FTAPE3 F4C05840 AXT ......,IR4 F4C05850 FIX4 STD TEST6 F4C05860 SAVIR2 AXT ......,IR2 F4C05870 TXI TEST5,IR1,-4 F4C05880 STSNS AXT 4,IR4 (32)F4C05881 STRND LDQ RAND1 GENERATE NEXT RANDOM (32)F4C05882 MPY RAND2 NUMBER AND SET SENSE (32)F4C05883 STQ RAND2 LIGHT ON IF IT IS GREATER (32)F4C05884 ZAC THAN 1/2. (32)F4C05885 LLS 1 (32)F4C05886 STO NLIST+4,IR4 (32)F4C05887 TIX STRND,IR4,1 FOR ALL FOUR SIMULATED LIGHTS (32)F4C05888 AXT 0,IR1 SET TO EXAMINE FIRST BB. (32)F4C05889 TRA COUNT (32)F4C0588A END28 SYN *+20 (32)F4C05890 TCD -1 $F4C05895 TTL SECTION 5, PART ONE F4C05900 LBL 9F26,S F5A00000 HEAD 5 F5A00010 REM INTRODUCTION F5A00020 REM THE GENERAL PHILOSOPHY OF SECTION 5 IS TO REDUCE A PROGRAM F5A00030 REM USING AS MANY INDEX REGISTERS AS NEEDED TO ONE USING 3 INDEXF5A00040 REM REGISTERS IN AS EFFICIENT A MEANS AS POSSIBLE, CALLING ON F5A00050 REM INDEX CELLS WHICH ARE STORAGE LOCATIONS, TO RETAIN DISPLACEDF5A00060 REM INFORMATION WHEN THE CONTENTS OF AN INDEX REGISTER MUST BE F5A00070 REM REPLACED. THUS THE INDEX CELLS CORRESPOND TO ORIGINAL INDEXF5A00080 REM REGISTERS USED IN THE FORTRAN OBJECT PROGRAM BEFORE SECTION5F5A00090 REM THE MAIN PROBLEMS SECTION 5 HANDLES ARE THOSE OF KEEPING F5A00100 REM INDEX CELLS UP TO DATE, AND EFFICIENTLY SEEING TO IT THAT THF5A00110 REM 3 INDEX REGISTERS CONTAIN THE PROPER INFORMATION AT ALL F5A00120 REM TIMES FOR THE CORRECT EXECUTION OF TAGGED INSTRUCTIONS. F5A00130 REM GENERALLY, SECTION 5 COMPILES SX,S WHENEVER AN INDEX CELL F5A00140 REM MUST BE UPDATED SO THAT IF AN INDEX QUANTITY IS NEEDED AND F5A00150 REM NOT PRESENT IN AN INDEX REGISTER, AN LX CAN BE USED WITHOUT F5A00160 REM CONCERN ABOUT WHAT IS WIPED OUT. THE SKILLFUL PLACEMENT OFF5A00170 REM THESE SX,S IS ONE OF THE MAJOR JOBS OF SECTION 5. F5A00180 REM THE PROGRAM IS ANALYZED IN BASIC BLOCKS, WHICH ARE F5A00190 REM PROGRAM UNITS WITH A SINGLE ENTRY AND EXIT POINT, AS F5A00200 REM DEFINED IN SECTION 4. LINKS BETWEEN BLOCKS ARE LABELED F5A00210 REM BY FREQUENCY IN SECTION 4, BY ACTUAL PROGRAM SIMULATION. F5A00220 REM SECTION 5 ANALYSES THE OBJECT PROGRAM BY STARTING WITH THE F5A00230 REM HIGHEST FREQUENCY LINK BETWEEN BB,S AND EXPANDING OUTWARD F5A00240 REM ALONG PREDECESSOR AND SUCCESSOR BBS. THE AREA FORM- F5A00250 REM ED IN THIS MANNER IS A PORTION OF THE OBJECT PROGRAM AND IS F5A00260 REM CALLED A LOOPLIST. THIS IS TREATED TO REDUCE THE NUMBER OF F5A00270 REM INDEX REGISTERS TO 3, IS THEN CALLED A REGION, + CAN ENTER F5A00280 REM FUTURE LOOPLISTS. THE LOOPLIST PROCESS IS CONTINUED, F5A00290 REM CONSTANTLY EXPANDING THE TREATED AREA OF THE OBJECT PROGRAM F5A00300 REM BY THE INCLUSION OF ALREADY TREATED REGIONS IN THE CURRENT F5A00310 REM LPLST WHERE APPROPRIATE TO THE PROGRAM FLOW. THESE F5A00320 REM REGIONS BECOME PART OF THE LATEST LOOPLISTS REGION AT THE F5A00330 REM END OF LPLST TREATMENT, FORMING A NEW, SINGLE REGION. F5A00340 REM FINALLY THE ENTIRE PROGRAM HAS BEEN HANDLED. ANOTHER PRIN- F5A00350 REM CIPLE USED BY SECTION 5 IS TO COMPILE THE UPDATING SX,S AS F5A00360 REM LATE AS POSSIBLE TO TRADE OBJECT PROGRAM SPACE FOR TIME, F5A00370 REM SINCE THE LATER THE SX IS COMPILED, THE LOWER THE FREQUENCY F5A00380 REM OF TRANSFERS BETWEEN BLOCKS, HENCE THE FEWER THE EXECUTIONS F5A00390 REM OF THE SX. F5A00400 REM TAPE POSITIONS AT SECTION V START ARE--- F5A00410 REM TAPE A4(CIT INPUT ETC.) IS REWOUND. F5A00420 REM TAPE B3 (TAGLIST ETC.) IS AT END OF LAST RECORD OF TAGLIST F5A00430 REM BUT BEFORE THE FILE MARK.8 BLIST FOLLOWS TAGLIST WITH ONLY F5A00440 REM A RECORD MARK AFTER IT. TAGLIST IS THE 3RD FILE. F5A00450 REM TAPE B2 CONTAINS ASCON AS THE 8TH FILE AND IS POSITIONED AT F5A00460 REM THE START OF ASCON. TAPE A1 IS THE SYSTEM TAPE. F5A00470 REM LPLST IS FORMED BY SECTION 5 PART 1. IT SUMMARIZES F5A00480 REM EACH NEW REGION TO BE TREATED. PREFIX CODES ARE 2=OPAQUE F5A00490 REM REGION, 1=TRANSPARENT REGION (AT LEAST ONE INDEX REGISTER F5A00500 REM FREE) AND PREFIX CODE 0=BASIC BLOCKS. THE BB NUMBER F5A00510 REM IS CONTAINED IN THE DECREMENT OR ADDRESS. 77777 INDICATES F5A00520 REM LPLST ENTRY IS AT THE END OF A REGION, OR THAT LPLST EXIT F5A00530 REM IS AT THE BEGINNING OF THE REGION SPECIFIED BY BB NO. F5A00540 REM 000000 INDICATES NOTHING BETWEEN THAT POINT AND THE NEXT F5A00550 REM DECR. OR ADDR. A WORD OF FULL 7,S (SENTINEL) ENDS F5A00560 REM LPLST. THUS A NEW REGION TO BE TREATED MIGHT HAVE A LPLST F5A00570 REM BEFORE TREATMENT LIKE F5A00580 REM 277777 000014 F5A00590 REM 000023 000000 F5A00600 REM 100026 000033 F5A00610 REM 200003 077777 F5A00620 REM 777777 777777. F5A00630 REM THIS MEANS ENTRY IN OPAQUE REG. ENDING IN BB14, THEN F5A00640 REM BB23, THEN IMMEDIATELY FOLLOWS A TRANSPARENT REGION FROM F5A00650 REM BB 26 TO BB 33, THEN AN OPAQUE REGION ENTERING AT BB 3, F5A00660 REM TERMINATING THIS LPLST. WHEN TREATED, THIS ENTIRE LPLST F5A00670 REM BECOMES A NEW, SINGLE REGION, ENCOMPASSING THE OLD REGIONS F5A00680 REM AND BB,S IN IT, WHICH WILL DISAPPEAR. F5A00690 REM REG TABLE HAS 1 WORD PER EXISTING REGION. PREFIX F5A00700 REM INDICATES EXISTENCE IN REGION OF LX,S TO THE IR,S , F5A00710 REM DECREMENT=FIRST BB NO. IN REGION, TAG BITS=EMPTINESS F5A00720 REM THROUGHOUT REGION OF IR,S. F5A00730 REM INPUT TABLES IN CORES ARE PRED, SUCC AND BBB. F5A00740 REM THESE TABLES ARE PREPARED IN SECT. 4. SUCC IS F5A00750 REM ORDERED ON BASIC BLOCK NUMBER,+ ENTERED BY SE6. F5A00760 REM WORD FORMAT-SIGN BIT MADE MINUS BY X89 WHEN A LINK F5A00770 REM IS TREATED. BITS 1-14=FREQUENCY OF LINK, ADDRESS=NO. OF F5A00780 REM SUCCESSOR BASIC BLOCK. F5A00790 REM PRED IS ORDERED ON BB NUMBER AND ENTERED BY SE5. F5A00800 REM WORD FORMAT IS SIGN BIT NEGATIVE WHEN LINK TREATED. F5A00810 REM BITS 1-14=FREQUENCY OF LINK. BITS 15-17 CALL FOR SX,S TO F5A00820 REM APPROPRIATE INDEX CELLS AND BITS 18-20 CALL FOR LX,S TO F5A00830 REM THE 3 INDEX REGISTERS. THESE SX,S WILL LATER BE COMPILED F5A00840 REM BETWEEN BASIC BLOCKS BY PART 4 OF SECTION 5. THE ADDRESS F5A00850 REM CONTAINS THE NUMBER OF THE PREDECESSOR BASIC BLOCK. F5A00860 REM BBB IS ENTERED BY THE SE AND SE1 ROUTINES. F5A00870 REM THERE IS A 6 WORD ENTRY FOR EACH BB AND A LAST DUMMY ENTRY. F5A00880 REM WORD FORMAT FROM SECTION 4. FIRST WORD DECR=STARTING POINT F5A00890 REM IN SUCC, ADDRESS=STARTING POINT IN PRED OF ENTRIES F5A00900 REM REFERRING TO THIS BASIC BLOCK. FIRST WORD PREFIX CONTAINS F5A00910 REM CODE DESCRIBING TYPE OF ENDING BB HAS. CODING IS.... F5A00920 REM 000=DO WITH AN IF, 001=MSE, 010=PROBABILITY BRANCH F5A00930 REM 011=CERTAINTY BRANCH, 100=DO WITHOUT AN IF, 101=GO TO N, F5A00940 REM 110=STOP. SECOND WORD, BITS 12-17=PERMUTATION NUMBERS, F5A00950 REM INITIALIZED TO 33 BY SECTION 4. ADDRESS=ORDINAL NUMBER OF F5A00960 REM FIRST TAGLIST ENTRY BELONGING TO THIS BB. REMAINING WORDS F5A00970 REM INITIALIZED TO ZEROES BY SECTION 4. F5A00980 REM IN SECTION 5 PART 1, FURTHER ENTRIES ARE MADE. SECOND WORD F5A00990 REM BITS S-2 INDICATE IR ACTIVITY IN THIS BB. PERMUTATION NOS. F5A01000 REM MAY UNDERGO CHANGE. WORDS 3-5 RECORD ENTRY AND EXIT CONDS. F5A01010 REM FOR THE 3 INDEX REGISTERS IN THE DECREMENT AND ADDRESS. F5A01020 REM WORD 6 DECR=REGION NUMBER BB CURRENTLY BELONGS TO. F5A01030 REM ADDRESS=NUMBER OF NEXT BB IN REGION. F5A01040 REM STAG IS INITIALIZED TO ZEROES AT THE START OF PART 1 F5A01050 REM OF SECTION V. ONE 4 BIT ENTRY FOR EACH TAGLIST INSTR. F5A01060 REM IS MADE IN PART 1 AND READ IN PART 4. BITS S-8 F5A01070 REM CALL FOR AN SX FOLLOWING THE INSTRUCTION AND BITS 9-17 F5A01080 REM FOR AN LX PRECEDING. BITS 18-35 IN PAIRS SPECIFY THE INDEX F5A01090 REM REGISTER TAGLIST INSTRUCTION IS TO USE. THUS PRED RECORDS F5A01100 REM INTER BB LX,S AND SX,S AND STAG RECORDS INTRA-BB LX,S AND F5A01110 REM SX,S. STAG IS HANDLED BY THE SE4 ROUTINE. F5A01120 REM CMTAG, THE CORE TAGLIST BUFFER, HAS THE SAME WORD F5A01130 REM FORMAT, THAT IS, THE DECREMENT CONTAINS THE INSTRUCTION F5A01140 REM CLASS, CODED FROM 0 TO 6, AND THE ADDRESS CONTAINS THE F5A01150 REM SYMBOLIC ADDRESS, AS FOLLOWS, BITS 24-26 CONTAIN TAU 1,2, F5A01160 REM OR 3, AND BITS 27-35 CONTAIN THE NUMBER OF THE ENTRY IN THATF5A01170 REM TAU TABLE. NOTE THAT IN THE OUTPUT, THE SYMBOLIC ADDRESS OFF5A01180 REM INDEX CELLS IS, TAU 1=G, TAU 2=10, TAU 3=1G, AND THIS F5A01190 REM SYMBOL IS FOLLOWED BY THE NUMBER OF THE ENTRY. THUS A F5A01200 REM TAGLIST ENTRY IN THE ADDRESS OF 003005 IS 1G5, MEANING F5A01210 REM TAU 3, ENTRY 5. INSTRUCTION CLASSES (IN DECR.) ARE-- F5A01220 REM 1=LXA,LXD,PAX,PDX. 2=LXP. 3=DED. 4 IS UNUSED BUT AVAIL. F5A01230 REM FOR TNX. 5=ACTIVE INSTR(TIX, TXI). 6=PASSIVE INSTR. F5A01240 REM A PASSIVE INSTR IS A TAGGED INSTR THAT DOES NOT CHANGE THE F5A01250 REM CONTENTS OF THE INDEX REG. 7=UNUSED BUT AVAIL. FOR TIX F5A01260 REM WHEN 7 IS USED FOR A TIX, IT REPRESENTS A TIX USED AS A F5A01270 REM TRANSFER, NOT AN ACTIVE TIX. ACTIVE INSTRUCTIONS MAY F5A01280 REM BE RECOGNIZED BY THEIR ADDRESSES, WHICH ARE OF THE FORM *+Q F5A01290 REM WHERE Q IS SOME CONSTANT. F5A01300 REM CORE INFORMATION PASSED ON FROM SECTION 4 TO SECTION 5 F5A01310 REM IS IN THE LAST 4 CORE LOCATIONS, CALLED KEYS, GIVING TABLE F5A01320 REM LENGTHS. F5A01330 REM TAPE TABLES USED FOR INPUT INCLUDE TAGLIST AND CIT. F5A01340 REM TAGLIST, ON TAPE 3, IS HANDLED BY THE S4 SUBROUTINE. F5A01350 REM IT IS A SEQUENTIAL LIST OF ALL TAGGED OBJECT PROGRAM F5A01360 REM INSTRUCTIONS RESULTING FROM SECTION 3. EACH ENTRY IS ONE F5A01370 REM WORD. THE PREFIX DESCRIBES THE TYPE OF INSTRUCTION, AND THE F5A01380 REM ADDRESS CONTAINS THE SYMBOLIC INDEX REGISTER NAME. F5A01390 REM INTERMEDIATE TABLES INCLUDE THE ABOVE AND STAG, LPLIST,F5A01400 REM CMTAG, AND REG.. CMTAG IS A CORE BUFFER FOR TAGLIST. F5A01410 REM OUTPUT TABLES CONSIST OF CIT ON TAPE. F5A01420 REM F5A01430 REM IN ORDER TO INCREASE TABLE SPACE FOR A LARGER MACHINE, F5A01440 REM SECTION 4 OF FORTRAN, THE FLOW PASS OF TAG ANALYSIS, MUST F5A01450 REM BE ADJUSTED AS TO THE LENGTH OF TABLES PASSED ON IN CORES F5A01460 REM TO SECTION 5, AND THE POSITION OF INFORMATION AT THE END OF F5A01470 REM CORES, HERE SAID TO BE IN KEYS, MUST BE CHANGED. F5A01480 REM IN SECTION 5, THE PARAMETER MSIZE MUST BE CHANGED F5A01490 REM F5A01500 REM F5A01510 PTL1 EQU 63 SPACE FOR PATCHES, PART 1. F5A01520 PTL2 EQU 36 SPACE FOR PATCHES, PART 2. F5A01530 PTL3 EQU 46 SPACE FOR PATCHES, PART 3. F5A01540 PTL4 EQU 34 SPACE FOR PATCHES, PART 4. F5A01550 LCLST SYN 200 F5A01560 ZINST SYN 200 F5A01570 NSXD EQU 128 NO. OF SXD CASES IN SXD LIST F5A01580 SET EQU 0 THIS VALUE IS SET BY THE PROGRAM F5A01590 REM F5A01600 REM F5A01610 REM F5A01620 REM F5A01630 REM F5A01640 REM F5A01650 EJECT F5A01660 REM EDITOR RECORD 26 F5A01670 REM PART 1 OF 4, SECTION 5 F5A01680 ORG SYSCUR $F5A01690 BCI 1,9F2600 $F5A01700 ORG (LODR) $F5A01710 TXI I,,260 F5A01730 REM F5A01750 REM PART 1. F5A01760 REM OPTIMIZE INDEXING EXCEPT FOR PERMUTATION, GO TO N, F5A01770 REM INSTRUCTION COMPILATION. F5A01780 ORG BOTTOM F5A01790 REM ROUTINE TO TRANSFER NEXT F5A01800 REM PROGRAM PART F5A01810 R TSX (LOAD),4 GO TO NEXT RECORD. F5A01820 PZE F5A01830 DIAG TXI (DIAG),,0 F5A01840 ERR59 TXI (DIAG),,-9 REGION TABLE OVERFLOW. F5A01850 REM CONVERTS STAG, SUCC, PRED, BBB ITEM NUMBERS INTO PROPER F5A01860 REM INDEX REGISTER 1 QUANTITY TO PICK ITEM UP FROM TABLE. F5A01870 SE6 ARS 18 FOR STAG, SUCC. SHIFT ITEM TO ADDRESS. F5A01880 SE4 ANA SEK2 MASK ITEM. F5A01890 SE4A SUB SEK5 COMPLEMENT ADDRESS ONLY. F5A01900 PAX 0,1 LOAD INDEX. F5A01910 TRA 1,4 RETURN. F5A01920 SE ARS 18 FOR BBB. SHIFT ITEM TO ADDR. F5A01930 SE1 ANA SEK2 MASK ITEM. F5A01940 XCA 0 PLACE IN MQ. F5A01950 MPY SIXA F5A01960 XCA 0 PLACE RESULT IN AC. F5A01970 TRA SE4A FINISH. F5A01980 SE5 SYN SE4 FOR PRED-SAME AS STAG, SUCC. F5A01990 TGLBL BCI 1,TAG F5A02000 BLLBL BCI 1,BLIST F5A02010 ASLBL BCI 1,ASCON5 F5A02020 CTLBL BCI 1,CITS05 F5A02030 INSLBL BCI 1,CITS03 F5A02040 SBLBL BCI 1,A)FUN F5A02050 EFLBL BCI 1,EOF F5A02060 ASCLBL BCI 1,ASCON3 F5A02070 SK1F PZE ,,1 F5A02080 SEK2 PZE -1 USED TO EXTRACT ADDRESS. F5A02090 SEK4 PZE 0,0,-1 IN DECR. PART F5A02100 SEK5 PZE 0,1 2 EXP 15 F5A02110 SEV2 PZE 0 STORAGE OF N (DECR.). F5A02120 SE4F CLA 1,4 CONSTANT FOR RESTORING ROUTINE. F5A02130 SE4H PZE STAG F5A02140 PZE BBB F5A02150 PZE PRED F5A02160 PZE SUCC F5A02170 SE4J PZE 0 STAG ACTUAL LENGTH. F5A02180 PZE 0 BBB ACTUAL LENGTH. F5A02190 PZE 0 PRED ACTUAL LENGTH. F5A02200 PZE 0 SUCC ACTUAL LENGTH. F5A02210 ZERO PZE 0 F5A02220 ONEA PZE 1 F5A02230 ONED PZE 0,0,1 F5A02240 SIXA PZE 6 F5A02250 REM CONSTANTS USED IN S1. ORIGIN OF LATER SECTIONS HERE. F5A02260 S1K2 PZE 0,0,6 CONSTANT WHICH LOOKS LIKE PASS. REF. F5A02270 C SYN S1K2 F5A02280 S2K1 PZE 0,0,-1 ONES IN DECR. PART. F5A02290 S2K2 PZE 0,0,1 CONST. USED TO TEST FOR LX. F5A02300 S3K1 MTH -1,-1,-1 END LOOP LIST SENTINEL. F5A02310 S3K2 PZE -1,-1,-1 USED TO FIND OUT BY CF IF THIS IS BB. F5A02320 S3K3 PZE 0,0,S3P1 INITIALIZ. CONST. FOR LPLST. F5A02330 S3K4 PZE -1,-1 MASK TO EXTRACT LAST 1/2 WORD. F5A02340 S3K5 PZE 0,0,-1 MASK TO EXTRACT INST. TYPE. F5A02350 REM CONSTANTS OF S4 F5A02360 S4K1 PZE CMTL SIZE OF STORAGE FOR TAG TABLE. F5A02370 S4K2 PZE TGBFSZ F5A02380 S4K3 PZE CMTAG F5A02390 REM THE L CONSTANTS MUST BE AHEAD OF THOSE FOR S5 F5A02400 LK1 PZE -2,-1 E, HASH SYMBOL. F5A02410 LK2 MTW 0 CONSTANTS FOR EXTRACTING FIRST TWO OR F5A02420 LK3 MTH 0 FIRST THREE BITS OF WORD. F5A02430 REM CONSTANTS FOR MATCHING SUBROUTINE F5A02440 S5K1 PZE -1,-1 PHI=EMPTINESS. F5A02450 S5K2 PZE -3,-1 CONSTANT USED TO TEST FOR REAL TAGS. F5A02460 S5K3 MZE 0 F5A02470 S5K4 PZE 2 F5A02480 S7K1 PZE -16,7 IMPOSSIBLE TAG VALUE. F5A02490 S9K1 PZE 4 F5A02500 S9K2 PZE 0,1 MASK FOR PHI DIGIT NO. 1. F5A02510 PZE 0,2 MASK FOR PHI DIGIT NO. 2. F5A02520 PZE 0,4 MASK FOR PHI DIGIT NO. 3. F5A02530 S9K3 PZE 0,0,3 MASK TO EXTRACT 2 BITS IN DECR. F5A02540 SAK1 PZE 4094 CONSTANT USED TO TEST NON EXISTENT BB. F5A02550 REM CONSTANTS OF SB F5A02560 SBK1 PZE 0,0,512 CONST. USED TO GENERATE SX BIT. AD. F5A02570 SBK2 SYN SEK2 USED TO EXTRACT ADDRESS. F5A02580 SBK3 PZE 0,0,4 CONST. TO GENERATE SX BIT FOR TRANSFER. F5A02590 SCK1 PZE 0,0,LPLST F5A02600 FK1 PON -1,0,-1 TRANSPARENT REGION CONST. F5A02610 FK2 PTW -1,0,-1 OPAQUE REGION CONST. F5A02620 FK3 PZE 0,7 MASK TO EXTRACT TAG. F5A02630 FK4 PON -1,-1,-1 CONST TO TEST FOR OPAQUE REGION. F5A02640 XK3 MZE 0 CONSTANTS USED TO CHANGE REGION WORDS F5A02650 PTW 0 TO INDICATE THAT F5A02660 PON 0 THE IRS LX ED. F5A02670 XK4 MTH 0,0,-2 E, HASH SYMBOL, IN LEFT HALF. F5A02680 XK5 MTH 0 MASK FOR PREFIX. F5A02690 XK9 PZE 9 F5A02700 XK10 SYN XK3 MASK TO EXTRACT FIRST IN BB FIT. F5A02710 XK11 PZE 0,0,1 CONST. TO GENERATE LX BIT. F5A02720 XK12 PZE 0,0,5 CONST. TO TEST FOR ACTIVE INSTR. F5A02730 XK15 PZE 0,0,2 CONST. USED TO TEST FOR LXP. F5A02740 XK16 PZE 0,4 CONST. TO GENERATE LX BIT. F5A02750 XK17 PON 0 CONST. TO SEPARATE TYPES. F5A02760 XK18 SYN XK4 E IN LEFT HALF WORD. F5A02770 XK19 MTH 0,0,-1 MASK LEFT HALF WORD. F5A02780 XK20 MTH -1,-1,-64 CONST. TO DELETE PERM. NUMBERS. F5A02790 XK21 PZE 0,0,3 CONST. TO TEST FOR DED INSTR. F5A02800 XK22 MTH -1,0,-1 CONST. TO DELETE PHIS. F5A02810 XK23 PZE 0,1 F5A02820 PZE 0,2 F5A02830 PZE 0,4 F5A02840 S1V1 PZE 0 TEMPORARY STORAGE F5A02850 PZE 0 FOR FIRST NINE F5A02860 PZE 0 VARIABLES F5A02870 PZE 0 IN F5A02880 PZE 0 THE F5A02890 PZE 0 S3 F5A02900 PZE 0 SUB F5A02910 PZE 0 ROUTINE. F5A02920 S1V3 PZE 0 THE CLA IN S3 F5A02930 S1V5 PZE 0 (+/-)=DECIDE ON (MOST/LEAST) REPL. I.R. F5A02940 S1V6 PZE 0 TEMP STORAGE USED IN ACTIVE PASS. F5A02950 REM THE IR1,2,3 CELLS SIMULATE OBJECT MACHINE INDEX REGISTERS, F5A02960 REM AND CONTAIN A REAL TAG, EMPTY SYMBOL 777777, OR HASH F5A02970 REM SYMBOL 777776. (HASH MEANS THE REGISTER IS NOT EMPTY BUT F5A02980 REM ITS CONTENTS HAVE NO VALUE, I.E. LXP COMPILED IN SECTION3 OFF5A02990 REM DED COMPILED IN SECTION 2. (LXP IS A WARNING THAT WHILE IR F5A03000 REM IS VALUELESS, IT WILL BE LOADED SOON WITH A NEW VALUE.) F5A03010 IR1 PZE 0 THE 3 I.R.S IN F5A03020 IR2 PZE 0 THE LAST 1/2 OF REGISTER F5A03030 IR3 PZE 0 F5A03040 IRR PZE 0 HOLDS 3,2,1 IF IR1,2,3 SELECTED F5A03050 IND1 PZE 0 +/-=IR1 FOUND/NOT FOUND. F5A03060 IND2 PZE 0 AS ABOVE FOR IR2. F5A03070 IND3 PZE 0 AS ABOVE FOR IR3 F5A03080 IN4 PZE 0 +F OR - IF IR HAS OR HASNT BEEN FOUND F5A03090 REM VARIABLES OF S3 SUBROUTINE F5A03100 S3V1 PZE 0 LOCATION OF 1ST TAG IN BB. F5A03110 S3V2 PZE 0 TAG COUNTER IN DECREMENT PART. F5A03120 S3V3 PZE 0 + NO. OF TAGS LEFT IN BB AFTER TIX, OR -.F5A03130 S3V4 PZE 0 LOOP LIST INDEX. F5A03140 1TAG PZE 0 THE TAU-TAG. F5A03150 TPE PZE 0 THE TYPE OF INSTRUCTION. F5A03160 INTAG PZE 0 TAG AND INSTR. TYPE (ENTRY IN TAG LIST). F5A03170 S3V5 PZE 0 LOOP LIST QUANTITY. F5A03180 S3V6 PZE 0 (1ST TAG IN BB-1ST TAG IN C.M.). F5A03190 S3V7 PZE 0 NO. OF WORDS LEFT IN C.M. F5A03200 S3V9 PZE 0 (+/-)= (NOT NEW BB/IS NEW BB). F5A03210 REM VARIABLES OF S4 F5A03220 S4V1 PZE 0 LOC OF 1ST TAG IN CMTAG. F5A03230 S4V2 PZE 0 LOC OF 1ST TAG IN NEXT RECORD(TAPE POS.).F5A03240 S4V3 PZE 0 (LOC OF LAST TAG)+1. F5A03250 REM ABOVE MUST BE SET AT START. F5A03260 S4V4 PZE 0 (LOC. OF 1ST TAG IN BB-POS OF TAPE). F5A03270 REM VARIABLES FOR MATCHING SUBROUTINE S5 F5A03280 IR4 PZE 0 TEMP. STORAGE OF C(IR1). F5A03290 IR5 PZE 0 TEMP STORAGE FOR C(IR2). F5A03300 IR6 PZE 0 TEMP STORAGE FOR C(IR3). F5A03310 ENC PZE 0 COUNTER OF = F5A03320 IRC PZE 0 COUNTER OF ' F5A03330 REM THE IN 1,2,3, EN4,5,6 CELLS ARE LOADED BY THE S5 ROUTINE F5A03340 REM FOR PERMUTATION OF INDEX REGISTER ASSIGNMENT THROUGHOUT AN F5A03350 REM ALREADY TREATED REGION UPON ENTRY TO THIS REGION IN LPLST. F5A03360 REM OPTIMIZED MATCH TO CURRENT VALUE OF IR1,2,3 IS SECURED BY F5A03370 REM PERMUTING THE ENTIRE REGION AS NECESSARY. THE IN1,2,3 F5A03380 REM AND EN4,5,6 CELLS LINK THE OLD SYSTEM EN1,2,3 EX1,2,3 F5A03390 REM ACT1,2,3 FOR THIS REGION WITH THE ABSOLUTE SYSTEM IR1,2,3, F5A03400 REM AC1,2,3, LX1,2,3. FOR EXAMPLE EN4 IS 3,2,OR1 DEPENDING ON F5A03410 REM WHETHER THE MATCH OF EN1 IS IR1,2, OR 3. INVERSELY, F5A03420 REM IN1 IS 3,2, OR 1 FOR THE MATCH OF IR1 EQUAL TO EN1,2, OR 3. F5A03430 IN1 PZE 0 INDEX OF CORRES OF IR1 F5A03440 IN2 PZE 0 INDEX OF CORRES OF IR2 F5A03450 IN3 PZE 0 INDEX OF CORRES OF IR3 F5A03460 EN4 PZE 0 INDEX OF CORRES OF EN1 F5A03470 EN5 PZE 0 INDEX OF CORRES OF EN2 F5A03480 EN6 PZE 0 INDEX OF CORRES OF EN3 F5A03490 EN1 PZE 0 THE ENTRANCE F5A03500 EN2 PZE 0 REQUIRE- F5A03510 EN3 PZE 0 MENTS. F5A03520 S5V2 PZE 0 TEMP. STORAGE FOR LOOP LIST QUANTITY. F5A03530 S9V1 PZE 0 TEMP. STORAGE FOR BB NO. F5A03540 S9V4 PZE 0 TEMP. STORAGE FOR REGION WORD. F5A03550 REM VARIABLES OF SA SUBROUTINE (WHICH GETS EXIT CONDTITIONS) F5A03560 SAV1 PZE 0 TEMP. STORAGE FOR PERMUTATION NOS. F5A03570 SAV3 PZE 0 TEMP. STORAGE FOR REGION WORD. F5A03580 REM THE EX1,2,3 CELLS CONTAIN EXIT REQUIREMENTS FOR A BB THAT F5A03590 REM HAS ALREADY BEEN TREATED. F5A03600 EX1 PZE 0 THREE F5A03610 EX2 PZE 0 EXIT F5A03620 EX3 PZE 0 CONDITIONS. F5A03630 REM THE ACT1,2,3 CELLS CONTAIN ACTIVITY OF ALREADY TREATED BB. F5A03640 ACT1 PZE 0 THREE F5A03650 PZE 0 ACTIVE F5A03660 PZE 0 INDICATORS. F5A03670 REM VARIABLES OF SB F5A03680 SBV2 PZE 0 TEMP STORAGE. F5A03690 SBV3 PZE 0 TEMP STORAGE. F5A03700 SBV4 PZE 0 INDEX OF REGISTER WHICH IS ACTIVE. F5A03710 SBV5 PZE 0 STORAGE FOR PERMUTATION NOS. F5A03720 SCV3 PZE 0 INDEX OF POSITION IN LOOP LIST. F5A03730 ACIND PZE 0 + OR - MEANS 2ND OR ACTIVE PASS. F5A03740 SDV2 PZE 0 INDEX OF ACTIVE IR. F5A03750 SDV3 PZE 0 THE PERMUTATION NUMBERS. F5A03760 SFV1 PZE 0 ACTIVE INDICATOR FORMED HERE. F5A03770 SFV2 PZE 0 RETURN INDEX. F5A03780 SGV2 PZE 0 PERMUTED REGION WORD F5A03790 FV1 PZE 0 HIGHEST FREQ. IN REG.--I.E. PRED TABLE ENF5A03800 FV2 PZE 0 BB NO. OF HIGHEST FREQ. BB (ADDR.). F5A03810 FV3 PZE 0 PRED. NO. (I.E. 0TH WORD FROM BB(ADDR.)).F5A03820 FV4 PZE 0 WORD HAVING REGION NO.(5TH BB WORD). F5A03830 FV5 PZE 0 CURRENT BB NO. BEING CONSIDERED. (ADDR.)F5A03840 FV7 PZE 0 PRED. NO. BEING CONSIDERED IN BB (ADDR.).F5A03850 FV8 PZE 0 FIRST PRED FROM NEXT BB (ADDR.). F5A03860 FV9 PZE 0,0,SET TEMP STORE FOR CURRENT SUCC IN DECR ONLY.F5A03870 FV10 PZE 0,0,SET TEMP STORE IN DECR ONLY, CURRENT SUCC. F5A03880 FV101 PZE 0 HIGHEST FREQ. IN BB (PRED TABLE ENTRY). F5A03890 FV102 PZE 0 BB NO. BEING CONSIDERED (ADDR.). F5A03900 FV103 PZE 0 PRED NO.(0TH WORD FROM BB (ADDR.)). F5A03910 FV104 PZE 0 WORD HAVING REGION NO. F5A03920 LPIND PZE 0 +/- ISNT/IS A LOOP. F5A03930 LV1 PZE 0 THE CONDITIONS OF THE IRS. F5A03940 LV2 PZE 0 AT THE END OF THE F5A03950 LV3 PZE 0 1ST LXING PASS. F5A03960 LV4 PZE 0 THE LOOP LIST QUANTITY. F5A03970 LV5 PZE 0 WORD FROM BB WITH PRED AND SUCC LOCS. F5A03980 REM ACTIVITY. WHEN SIMULATING A NEW BB IN THE 2ND LXING PASS, F5A03990 REM IF AN LX, TXI, OR TIX IS ENCOUNTERED, THE APPROPRIATE INDEX F5A04000 REM REGISTER BECOMES ACTIVE. THIS IS PLUS ACTIVITY. IF THIS F5A04010 REM REGISTER MUST BE DISPLACED IN THE SAME LPLST, SB IS ENTERED F5A04020 REM TO RECORD AN SX NECESSARY. SINCE THE ACTIVITY IS PLUS, THE F5A04030 REM SX WILL BE COMPILED IN STAG IMMEDIATELY AFTER THE ACTIVE F5A04040 REM INSTRUCTION. THIS SX ENDS THE ACTIVITY, COMPLETELY TAKING F5A04050 REM CARE OF THE PROBLEM. AT THE END OF LPLST, IF THE INDEX F5A04060 REM REGISTER IS STILL ACTIVE, OR IF, DURING LPLST, AN ACTIVE F5A04070 REM REGISTER FALLS OBSOLETE BY DED OR LXD, THEN ALL BLOCKS F5A04080 REM IN WHICH IT IS ACTIVE ARE MARKED MINUS BY SC. F5A04090 REM THIS, UNLIKE PLUS ACTIVITY, CAN NEVER BE ENDED. THE F5A04100 REM APPEARANCE OF A MINUS BB IN A FUTURE LPLST CAUSES THE F5A04110 REM PROPER AC1,2, OR 3 TO CONTAIN MINUS ACTIVITY AND WHENEVER F5A04120 REM THE CORRESPONDING INDEX REGISTER MUST BE DISPLACED, AN SB F5A04130 REM ENTRY WILL CAUSE AN SX TO BE COMPILED IN THE PRED LINK FROM F5A04140 REM THIS BB. THIS DELAYING OF SX COMPILATION AFTER AN ACTIVE F5A04150 REM INSTRUCTION AS LONG AS POSSIBLE PRODUCES A LARGER NUMBER F5A04160 REM OF SX,S THAN STRICTLY NECESSARY, BUT PLACES THEM IN LOW F5A04170 REM FREQUENCY PATHS, TRADING OBJECT PROGRAM SPACE FOR OBJECT F5A04180 REM PROGRAM TIME. F5A04190 REM THE AC1,2,3 CELLS DESCRIBE THE ACTIVITY STATUS OF IR1,2,3. F5A04200 REM ZERO...NOT ACTIVE, PLUS ACTIVITY...ACTIVE INSTRUCTION IN A F5A04210 REM BB NOT TREATED UNTIL THIS LPLST. AC1,2,3 CONTAINS INFO. F5A04220 REM FOR SB TO MAKE A STAG ENTRY AT THE ACTIVE INSTRUCTION. F5A04230 REM MINUS ACTIVITY...ACTIVE INSTR. IN BB ALREADY IN A REGION. F5A04240 REM AC1,2,3 CONTAINS INFO. FOR SB TO MAKE A PRED ENTRY AT LINK F5A04250 REM OUT OF THE REGION. F5A04260 REM VARIABLES OF 2ED LXING PASS. F5A04270 AC1 PZE 0 ACTIVE INDICATORS. +0=NOT ACTIVE. F5A04280 AC2 PZE 0 +VE=ACTIVE AND INSTR. DECR=LOC OF BB IN F5A04290 AC3 PZE 0 LPLST. ADDR=LOC. OF Y-TAG. IF -VE, ACTIVF5A04300 PZE 0 THING IS TRANSFER. LOC IN LPLST IN DECR. F5A04310 REM THE LX1,2,3 CELLS CONTAIN ENTRANCE REQUIREMENTS FOR A BB. F5A04320 LX1 PZE 0 3 ENTRANCE REQS. FOR A BB BUILT UP HERE. F5A04330 LX2 PZE 0 +0 MEANS F5A04340 LX3 PZE 0 NO ENTRANCE REQS. DETERMINED. F5A04350 XV1 PZE 0 INDEX OF CURRENT REGION IN DECR. F5A04360 XV2 PZE 0 THE NEW REGION WORD. F5A04370 XV3 PZE 0 THE WORD POSITION IN STAG. F5A04380 XV4 PZE 0 THE DIGIT LOCATION WITHIN THE WORD. F5A04390 XV5 PZE 0 THE LOCATION OF CURRENT TAG (INSTR.). F5A04400 XV6 PZE 0 NEAR X07= C.F. OF TNX BRANCH. NEAC X85=TAF5A04410 XV7 PZE 0 X07 TO X09+=INDEX OF BB. NEAR X85=TAG. F5A04420 XV8 PZE 0 INDEX OF BB NEAR X33. F5A04430 REM PERMUTATION. WHEN INDEX REGISTER ASSIGNMENTS THROUGHOUT AN F5A04440 REM ALREADY TREATED REG. ARE PERMUTED, STAG, PRED AND BBB MUST F5A04450 REM BE UPDATED. INSTEAD, WORD 2 OF BBB CONTAINS PERMUTATION F5A04460 REM NUMBERS THROUGH WHICH THESE TABLES ARE READ, AND UPDATING F5A04470 REM REQUIRES ONLY THESE NUMBERSTO BE CHANGED. IN SECT. V PART F5A04480 REM 2 WHEN THE FINAL CONFIGURATION HAS BEEN REACHED, THE TABLES F5A04490 REM THEMSELVES ARE ACTUALLY UPDATED. F5A04500 XV9 PZE 0 THE PERMUTATION NOS. F5A04510 XV10 PZE 0 INDEX OF IR IN BB CONSIDERED. F5A04520 XV11 PZE 0 F5A04530 XV12 PZE 0 F5A04540 XV13 PZE 0 INDEX OF PARTICULAR BB(X40 ON). F5A04550 XV14 PZE 0 TEMP STORAGE FOR 2 INDEXES F5A04560 XV15 PZE 0 WHILE USING SUBROUTINE. F5A04570 XV16 PZE 0 TEMP. STORAGE FOR PRED. F5A04580 XV17 PZE 0 TEMP STORAGE FOR OLD REGION WORD. X74. F5A04590 XV18 PZE 0 NO. OF SUCC. WE SEARCH FOR IN ADDR. X111.F5A04600 XV19 PZE 0 TEMP STORAGE FOR PREVIOUS LPLST QUANTITY.F5A04610 XV20 PZE 0 TEMP STORAGE IN DECR ONLY. F5A04620 XV21 PZE 0 TEMP STORAGE FOR TAG NEAR X43. F5A04630 XV22 PZE 0 LAST BB FOR WHICH REGION NUMBER WAS ADDEDF5A04640 XV23 PZE 0 TEMP STORAGE FOR REGION INDEX IN DECR ONLF5A04650 XV24 PZE 0 0 / NON 0 IS/ISNT SAME AS 1ST REGION. F5A04660 AV1 PZE 0 TEMP STORAGE FOR PRED TABLE ENTRY. F5A04670 AV2 PZE 0 TEMP STORAGE FOR INDEX OF IR. F5A04680 AV3 PZE 0 TEMP STORAGE FOR PERMUTATION NOS. F5A04690 REM THE S1 AND S111 ROUTINES SELECT THE MOST (S1) OR THE LEAST F5A04700 REM (S111) REPLACEABLE INDEX REGISTERS BY SCANNING AHEAD F5A04710 REM THROUGH LPLST. THE IR WHOSE CONTENTS ARE REQUIRED AGAIN F5A04720 REM SOONEST (LAST) IS THE LEAST (MOST) REPLACEABLE. THESE F5A04730 REM ROUTINES USE THE S2 SUBROUTINE, WHICH ACTUALLY TRIES TO F5A04740 REM SELECT AN IR. F5A04750 S111 SSM SET INDICATOR TO MINUS...MEANING F5A04760 TRA S109 SEARCH FOR LEAST REPLACEABLE I.R. F5A04770 S1 SSP SET INDICATOR TO PLUS ....MEANING F5A04780 S109 STO S1V5 SEARCH FOR MOST REPLACEABLE I.R. F5A04790 SXA S118,4 STORE RETURN INDEX F5A04800 SSM SET F5A04810 STO IND1 INDICATORS F5A04820 STO IND2 TO F5A04830 STO IND3 NOT F5A04840 STO IN4 FOUND. F5A04850 AXT 3,1 SET TO LOOK AT 3 IR S (32)F5A04860 S120 CLA IR1+3,1 IS IRN EITHER EMPTY OR HASH F5A04870 SUB LK1 F5A04880 TPL S124 YES, SELECT IR F5A04890 S122 TNX S127,1,1 NO, HAVE WE LOOKED AT ALL 3 (32)F5A04900 TRA S120 NO, LOOK AT NEXT (32)F5A04910 PZE NOT USED F5A04920 PZE NOT USED F5A04930 PZE NOT USED F5A04940 PZE NOT USED F5A04950 S124 CLS S1V5 LOOKING FOR MOST REPLACEABLE F5A04960 TMI S129 I.R. F5A04970 STO IND1+3,1 NO, RECORD IRN ELIMINATED F5A04980 LDQ IN4 F5A04990 STO IN4 RECORD SOME IR ELIMINATED F5A05000 TQP S128 HAS AN IR BEEN ELIMINATED BEFORE F5A05010 TRA S122 NO, F5A05020 S128 AXT 3,1 SET COUNT TO 3, N TO 1. F5A05030 S126 CLA IND1+3,1 HAS IRN F5A05040 TPL S125 BEEN ELIMINATED F5A05050 S129 SXD IRR,1 NO,SELECT IRN F5A05060 TRA 1,4 AND RETURN. F5A05070 S125 TIX S126,1,1 COUNT TO 3,N=N+1 F5A05080 S130 TSX DIAG,4 ERROR--TO DIAGNOSTIC. F5A05090 S127 CLA S39 F5A05100 STO S1V3 STORE ASIDE F5A05110 AXT 8,4 THE F5A05120 S112 CLA S3V1+8,4 STATE F5A05130 STO S1V1+8,4 OF THE F5A05140 TIX S112,4,1 S3 ROUTINE. F5A05150 S11 TSX S3,4 GET NEXT TAG F5A05160 TRA S103 COME HERE IF TAG NOT GOT. F5A05170 CLA S1V1 F5A05180 CAS S3V1 IS THE LOOP COMPLETED F5A05190 TRA S104 NO F5A05200 TRA S135 PERHAPS F5A05210 S104 TSX S2,4 NO F5A05220 TRA S16 COME HERE IF IR DECIDED ON F5A05230 TRA S11 COME HERE IF NOT DECIDED ON F5A05240 S135 CLA S1V1+1 IS THE LOOP COMPLETED F5A05250 CAS S3V2 F5A05260 TRA S104 F5A05270 TRA S102 YES F5A05280 TRA S104 F5A05290 S103 CAS S3K1 IS THIS AN END LOOP LIST F5A05300 TRA S105 NO F5A05310 TRA S101 YES F5A05320 S105 CLA S3V5 GET LOOP LIST QUANTITY AGAIN. F5A05330 CAS S3K2 IS IT A BB F5A05340 NOP NO, IS IT EITHER A TRANSPARENT F5A05350 TRA S137 OR OPAQUE REGION. F5A05360 TRA S11 YES F5A05370 S137 CAS S1V1+7 F5A05380 TRA S136 F5A05390 TRA S102 F5A05400 S136 TSX SE,4 GET BB WHICH CONTAINS ENTR. REQU. F5A05410 LDQ S1K2 MAKE THIS LOOK LIKE A F5A05420 STQ TPE PASSIVE REFERENCE. F5A05430 AXT 3,4 SET COUNT TO 3. F5A05440 S115 CAL BBB+2,1 PUT THIS TAU TAG F5A05450 ARS 18 IN LOCATION F5A05460 SLW 1TAG TAG F5A05470 SXA S116,1 STORE THE F5A05480 SXA S117,4 INDEXES. F5A05490 TSX S2,4 TRY TO SELECT AN I.R. F5A05500 TRA S16 COME HERE IF I.R. SELECTED. F5A05510 S116 AXT SET,1 AND HERE IF NOT. RESTORE F5A05520 S117 AXT SET,4 THE INDEXES. F5A05530 TXI S114,1,-1 DECREASE ENTR. INDEX F5A05540 S114 TIX S115,4,1 COUNT TO 3. F5A05550 TRA S11 F5A05560 S102 CLA IND1 HAS C(IR1) BEEN F5A05570 TPL S13 FOUND (ELIMINATED) F5A05580 S18 AXT 3,4 NO, SELECT F5A05590 S15 SXD IRR,4 IR1. F5A05600 S16 AXT 8,4 RESTORE S3 (GET NEXT TAG SR.) F5A05610 S113 CLA S1V1+8,4 TO STATE F5A05620 STO S3V1+8,4 BEFORE F5A05630 TIX S113,4,1 S1 WAS USED. F5A05640 CLA S1V3 F5A05650 STO S39 F5A05660 TSX S4,4 MAKE SURE SAME TAGS ARE IN CM. F5A05670 S118 AXT SET,4 F5A05680 S14 TRA 1,4 RETURN F5A05690 S13 CLA IND2 HAS IR2 BEEN F5A05700 TPL S107 FOUND (ELIMINATED) F5A05710 S108 AXT 2,4 NO, SELECT F5A05720 TRA S15 IR2. F5A05730 S107 TSX DIAG,4 ERROR--TO DIAGNOSTIC. F5A05740 REM OF SOME KIND. F5A05750 S101 LDQ LPIND IS THIS F5A05760 TQP S102 A LOOP F5A05770 TRA S11 YES F5A05780 REM THE S2 SUBROUTINE IS USED BY S1 TO SELECT AN INDEX REG. F5A05790 S2 CLA 1TAG PUT TAU-TAG IN AC. F5A05800 AXT 3,1 SET COUNT TO 3. F5A05810 S22 LDQ IND1+3,1 F5A05820 TQP S21 BEEN FOUND F5A05830 CAS IR1+3,1 NO, IS TAU TAG EQUAL F5A05840 TRA S21 NO,TO C(IRN) F5A05850 TRA S24 YES F5A05860 S21 TIX S22,1,1 NO. F5A05870 TRA 2,4 RETURN TO L(TSX)+2 F5A05880 S24 CLA TPE F5A05890 CAS XK21 F5A05900 ORA S5K3 F5A05910 NOP F5A05920 STP S28 F5A05930 CLS S1V5 F5A05940 S28 TMI S25 F5A05950 S23 SXD IRR,1 RECORD IRN INDEX. F5A05960 TRA 1,4 F5A05970 S25 LDQ ZERO RECORD IRN FOUND OR ELIM F5A05980 STQ IND1+3,1 F5A05990 CLS IN4 HAS ONE OTHER I R BEEN F5A06000 TMI S26 (FOUND/ELIM) F5A06010 STO IN4 F5A06020 TRA 2,4 F5A06030 S26 AXT 3,1 SEARCH FOR THE F5A06040 S27 CLA IND1+3,1 I.R. WHICH HASNT F5A06050 TMI S23 BEEN (FOUND/ELIM) YET. F5A06060 TIX S27,1,1 F5A06070 TSX DIAG,4 NOT FOUND--TO DIAGNOSTIC. F5A06080 REM THE S3 SUBROUTINE EXISTS IN FEED TAG OR FEED LPLST STATES. F5A06090 REM IN THE FORMER IT FEEDS THE NEXT ITEM FROM TAGLIST AND TAKES F5A06100 REM THE TAG FEED EXIT. IN LPLST FEED IT FEEDS THE NEXT ITEM FROMF5A06110 REM LPLST AND TAKES THE LPLST FEED EXIT. WHEN IT COMES TO A F5A06120 REM LPLST ITEM WHICH IS A BB AND NOT IN A REGION, IT GOES TO F5A06130 REM FEED TAG STATE AND STAYS THERE UNTIL THE LAST TAGLIST ITEM IF5A06140 REM THAT BB HAS BEEN FED. THEN IT RETURNS TO LPLST FEED. WHEN F5A06150 REM SENTINEL IS FED THE ROUTINE RE-INITIALIZES ITSELF TO THE F5A06160 REM BEGINNING OF LPLST AND STAYS IN FEED LPLST STATE. IT USES F5A06170 REM THE S4 SUBROUTINE FOR HANDLING TAPE B3 FOR TAGLIST. F5A06180 S3 LXD S3V2,1 ARE THERE ANY F5A06190 TIX S39,1,1 F5A06200 SXA S305,4 NO, STORE RETURN INDEX. F5A06210 CLA S3V3 F5A06220 STO S3V9 F5A06230 TPL S300 ARE THERE ANY MORE TAGS IN BB F5A06240 LXD S3V4,1 NO F5A06250 CLA S3V5 WAS THE LAST THING F5A06260 TPL S306 AN END LPLST F5A06270 AXT S3P1,1 YES, RESET LPLST INDEX. F5A06280 S306 CLA LPLST+S3P1,1 GET LOOP LIST QUANTITY F5A06290 STO S3V5 QUANTITY. F5A06300 TXI S31,1,-1 F5A06310 S31 SXD S3V4,1 THE INDEX. F5A06320 CAS S3K1 IS THIS END OF LOOP LIST F5A06330 TRA S32 NO, F5A06340 TRA S35 YES, F5A06350 S32 CAS S3K2 IS THIS A BB F5A06360 NOP NO F5A06370 TRA S305 F5A06380 TRA S34 YES F5A06390 S305 AXT SET,4 F5A06400 CLA S3V5 RETURN WITH LOOP F5A06410 S35 TRA 1,4 LIST QUANTITY F5A06420 S34 TSX SE,4 GET INDEX OF BB F5A06430 CLA BBB+1,1 F5A06440 ANA S3K4 GET AND STORE THE F5A06450 S303 STO S3V1 TAG LOCATION. F5A06460 TSX S4,4 GO TO PUT TAG IN CM. F5A06470 STO S3V6 STORE (1ST BB TAG-1ST TAG IN C.M.) F5A06480 SUB S4K1 FORM NO. OF F5A06490 SSP WORDS LEFT IN CM. F5A06500 STO S3V7 F5A06510 CLA S3V5 GET THE F5A06520 ADD ONED LOC. OF 1ST F5A06530 TSX SE,4 TAG IN F5A06540 CLA BBB+1,1 NEXT BB. F5A06550 ANA S3K4 F5A06560 SUB S3V1 IS NO. OF TAGS IN BB LESS F5A06570 CAS S3V7 THAN OR EQUAL TO SPACE IN C.M. F5A06580 TRA S304 F5A06590 TRA S36 YES, F5A06600 TRA S36 YES, F5A06610 S304 SUB S3V7 STORE S EXCESS OF TAGS F5A06620 STO S3V3 F5A06630 CLA S3V7 F5A06640 S302 PAX 0,1 SET COUNT OF NO. OF TAGS. F5A06650 S37 TXI S38,1,1 F5A06660 S38 SXD S3V2,1 F5A06670 ADD S4K3 SET ADDRESS OF F5A06680 ADD S3V6 CLA F5A06690 STA S39 INSTRUCTION. F5A06700 LXA S305,4 F5A06710 CLA S3V9 IS THIS A F5A06720 TPL S3 NEW BB F5A06730 CLA S3V5 YES,RETURN WITH F5A06740 TRA 1,4 LOOP LIST QUANTITY. F5A06750 S300 CLA S4V1 NEXT TAG NEEDED HAS F5A06760 ADD S4K1 LOC. (S+1ST TAG IN C.M.) F5A06770 TRA S303 F5A06780 S36 LDQ S3K1 F5A06790 STQ S3V3 F5A06800 TRA S302 F5A06810 S39 CLA -,1 GET TAG WORD F5A06820 SXD S3V2,1 F5A06830 STO INTAG AND F5A06840 ANA S3K4 SEPARATE TYPE F5A06850 STO 1TAG FROM F5A06860 CAL S3K5 TAU-TAG. F5A06870 ANA INTAG F5A06880 STO TPE F5A06890 TRA 2,4 F5A06900 REM THE S4 SUBROUTINE HANDLES TAPE3 (TAGLIST) F5A06910 S4 CLA S3V1 LOCATION OF 1ST TAG IN BB F5A06920 SUB S4V1 LOCATION OF 1ST TAG IN CM F5A06930 TMI S41 IS TAG IN C.M. F5A06940 CAS S4K1 POSSIBLY,IS IT FOR SURE F5A06950 NOP NO F5A06960 TRA S41 NO F5A06970 TRA 1,4 YES. RETURN. F5A06980 S41 CLA S3V1 NO,FORM (LOC. OF 1ST TAG IN BB F5A06990 SUB S4V2 -POSITION OF TAPE) F5A07000 TMI S42 MUST WE RUN TAPE BACK WORDS F5A07010 STO S4V4 NO, F5A07020 CLA S4V3 CAN ALL THE FOLLOWING TAGS F5A07030 SUB S4V2 BE PUT IN C.M. F5A07040 CAS S4K1 F5A07050 TRA S401 NO F5A07060 TRA S45 YES,GO TO SET COUNT F5A07070 TRA S45 YES,TO NO. OF TAGS IN BB. F5A07080 S401 CLA S4V4 F5A07090 CAS S4K2 IS TAG IN NEXT RECORD F5A07100 NOP NO F5A07110 TRA S47 F5A07120 TRA S44 YES F5A07130 S47 SXA *+4,4 F5A07140 TRA *+3 F5A07150 SK1R,,(SKBP) F5A07160 TGLBL,,FTAPE3 F5A07170 AXT SET,4 F5A07180 CLA S4V2 ADJUST TAPE POSITION F5A07190 ADD S4K2 F5A07200 S43 STO S4V2 F5A07210 TRA S41 F5A07220 S42 SXA *+4,4 F5A07230 TRA *+3 F5A07240 BS1R,,(SKBP) F5A07250 TGLBL,,FTAPE3 F5A07260 AXT SET,4 F5A07270 CLA S4V2 AFTER BACKSPACING F5A07280 SUB S4K2 ONE RECORD. F5A07290 TRA S43 F5A07300 S44 CLA S4K1 SET COUNT TO STORAGE SIZE. F5A07310 S45 PAX 0,2 F5A07320 SXD DS46,2 F5A07330 CLA S4K3 SET COPY F5A07340 STA DS46 ADDRESS. F5A07350 CLA S4V2 F5A07360 STO S4V1 F5A07370 S49 CLA S4V2 ADJUST F5A07380 ADD S4K2 TAPE F5A07390 STO S4V2 POSITION F5A07400 S46 SXA *+4,4 F5A07410 TSX (TAPE),4 READ A RECORD OR EXHAUST COUNT. F5A07420 DS46,,(RBNC) F5A07430 TGLBL,,FTAPE3 F5A07440 AXT SET,4 F5A07450 CLA (SCHU)+FTAPE3 F5A07460 STA DS46 F5A07470 TXI *+1,2,-TGBFSZ F5A07480 TXL S4,2,0 DONE IF COUNT IS GONE. MAKE SURE TAGS IN F5A07490 TXH S4,2,-TGBFSZ-1 F5A07500 SXD DS46,2 NOT DONE. SET NEW COUNT INTO COMMAND. F5A07510 TRA S49 CONTINUE. F5A07520 DS46 IORT SET,,SET IN-OUT ONE RECORD OR FINISH OF COUNT. F5A07530 BS1R MZE 1 F5A07540 SK1R PZE 1 SKIP ONE RECORD. F5A07550 REM THE S5 SUBROUTINE LOADS EN1,2,3 FROM ENTRANCE CONDITIONS F5A07560 REM OF THE ENTRY BB IN A REGION WHEN THE REGION IS ENCOUNTERED F5A07570 REM IN LPLST. IN ADDITION, THE PERMUTATION OF INDEX REGISTERS IF5A07580 REM THE REGION PROVIDING THE BEST MATCH BETWEEN IR1,2,3 AND F5A07590 REM EN1,2,3 IS LEFT IN IN1,2,3 AND EN4,5,6 BY S5. S5 USES F5A07600 REM S1,S111,S6,S7,S9, AS SUBROUTINES. F5A07610 S5 SXA S541,4 STORE RETURN INDEX. F5A07620 STO S5V2 STORE LOOP LIST QUANTITY F5A07630 TSX S9,4 GET THE ENTRANCE F5A07640 REM REQUIREMENTS F5A07650 TRA S5P (32)F5A07660 AXT 8,2 STORE -0S IN THE COUNTER OF PHIS + OF REAF5A07670 S51 STO ENC+8,2 STORE -0S IN THE F5A07680 TIX S51,2,1 REGISTERS. F5A07690 AXT 3,1 SET INDEX FOR EN1, N=1. F5A07700 S54 AXT 3,2 SET INDEX FOR IR1, M EQUALS 1. F5A07710 CLA EN1+3,1 F5A07720 CAS S5K1 IS ENN EMPTY F5A07730 TRA S55 NO F5A07740 TRA S58 YES F5A07750 S55 LDQ IN1+3,2 NO F5A07760 TQP S56 IS IRM ASSIGNED F5A07770 CAS IR1+3,2 NO,IS C(ENM)=C(IRM) F5A07780 TRA S56 NO. F5A07790 TRA S59 YES. F5A07800 S56 TIX S55,2,1 NO. THRU WITH IRS F5A07810 S57 TIX S54,1,1 YES. THRU WITH ENS F5A07820 AXT 3,2 YES, SET INDEX FOR IR1, M=1. F5A07830 S510 AXT 3,1 SET INDEX FOR EN1, N=1. F5A07840 CLA IR1+3,2 F5A07850 CAS S5K1 IS IRM EMPTY F5A07860 TRA S511 NO F5A07870 TRA S513 YES F5A07880 S511 LDQ IN1+3,2 NO F5A07890 TQP S514 IS IRM ASSIGNED F5A07900 CAS S5K2 NO,IS C(IRM)REAL F5A07910 TRA S514 NO, F5A07920 TRA S514 NO, F5A07930 S512 TRA S512P YES, CHECK FOR EXIT MATCH (32)F5A07940 ADD ONEA UNASSIGNED TAG F5A07950 STO IRC COUNTER. F5A07960 TRA S514 F5A07970 S513 CLA EN4+3,1 HAS ENN F5A07980 TPL S537 BEEN ASSIGNED F5A07990 LDQ S5K2 NO,IS C(ENN) F5A08000 CLA EN1+3,1 REAL F5A08010 TLQ S537 F5A08020 TSX S6,4 YES,MAKE IRM=ENN F5A08030 TRA S514 F5A08040 S537 TIX S513,1,1 ARE WE THRU WITH EN S F5A08050 S514 TIX S510,2,1 YES, ARE WE THRU WITH IRS F5A08060 CLA ENC YES. F5A08070 TMI S515 ARE THERE NO EMPTY ENS F5A08080 CAS S5K4 HOW MANY EMPTY ENS. F5A08090 TRA S515 3 OR 0 F5A08100 TRA S520 2 EMPTY EN F5A08110 TRA S526 1 EMPTY EN F5A08120 S515 AXT 3,1 OR 0 EMPTY EN, N=1. F5A08130 S519 AXT 3,2 M=1. F5A08140 CLA EN4+3,1 F5A08150 TPL S516 ENN ASSIGNED F5A08160 S518 CLA IN1+3,2 NO,IRM F5A08170 TPL S517 ASSIGNED F5A08180 TSX S6,4 NO,MAKE IRM=IRN F5A08190 TRA S516 F5A08200 S517 TIX S518,2,1 F5A08210 S516 TIX S519,1,1 F5A08220 S541 AXT SET,4 F5A08230 TRA 1,4 RETURN F5A08240 S520 CLA IRC F5A08250 CAS S5K4 ARE THERE 3 REAL UNASSNED TAGS IN THE IRSF5A08260 TRA S536 F5A08270 TRA S531 1,NO,GO MATCH EMPTY ENS F5A08280 TRA S531 2,NO. WITH ANY REAL UNASS. IRS F5A08290 S536 TSX S7,4 3, YES, TO COPY IRS, ETC. F5A08300 TSX S1,4 SELECT MOST REPLACEABLE I.R. F5A08310 AXT 3,1 F5A08320 TSX S595,4 F5A08330 S521 CLA EN1+3,1 IS EN F5A08340 CAS S5K1 EMPTY F5A08350 TRA S522 NO F5A08360 TIX S521,1,1 INDEX COUNTER OF IR S F5A08370 S522 TSX S6,4 MADE ENN = IRM F5A08380 S529 AXT 3,1 F5A08390 S525 CLA IR4+3,1 REPLACE THE IRS F5A08400 STO IR1+3,1 F5A08410 TIX S525,1,1 F5A08420 TRA S515 F5A08430 S526 LDQ IRC F5A08440 CLA S5K4 ARE THERE 2 OR 3 REAL F5A08450 TLQ S530 UNASSNED TAGS F5A08460 TSX S7,4 YES,COPY IRS F5A08470 TSX S111,4 LOOK FOR LEAST REPLACEABLE I.R. F5A08480 TSX S595,4 F5A08490 AXT 3,1 ASSIGN THE EMPTY F5A08500 S527 CLA EN1+3,1 EN TO THE IR F5A08510 CAS S5K1 SELECTED F5A08520 TRA S528 F5A08530 TSX S6,4 BY F5A08540 S528 TIX S527,1,1 S111. F5A08550 TRA S529 F5A08560 S530 TQP S531 IS THERE ONE REAL TAG F5A08570 TRA S515 NO,GO MATCH ARBITRARILY. F5A08580 S531 AXT 3,1 SET COUNT TO 3, N=1. F5A08590 AXT 3,2 SET COUNT TO 3, M=1. F5A08600 S532 CLA EN1+3,1 IS ENN F5A08610 CAS S5K1 EMPTY F5A08620 TRA S533 NO, F5A08630 TRA S534 YES, F5A08640 S533 TIX S532,1,1 NO,THRU WITH ENS F5A08650 TRA S515 YES. F5A08660 S534 CLA IN1+3,2 F5A08670 TPL S535 F5A08680 CLA IR1+3,2 NO F5A08690 CAS S5K2 IS C (IRM) REAL F5A08700 NOP NO F5A08710 TRA S535 F5A08720 TSX S6,4 YES F5A08730 TRA S533 (32)F5A08740 S535 TIX S534,2,1 NO F5A08750 TRA S533 F5A08760 S58 CLA ENC YESENM EMPTY F5A08770 ADD ONEA INCREASE COUNTER F5A08780 STO ENC OF NO. OF EMPTY ENS. F5A08790 TRA S57 F5A08800 S59 TSX S6,4 MAKE IRM=ENN F5A08810 TRA S57 F5A08820 S595 LXD IRR,2 F5A08830 CLA IR1+3,2 F5A08840 CAS S7K1 F5A08850 TRA 1,4 F5A08860 TRA S529 F5A08870 TRA 1,4 F5A08880 REM THE S6 SUBROUTINE IS USED BY S5 F5A08890 S6 PXD 0,1 F5A08900 STO IN1+3,2 F5A08910 PXD 0,2 F5A08920 STO EN4+3,1 F5A08930 TRA 1,4 F5A08940 REM THE S7 SUBROUTINE IS USED BY S5 F5A08950 S7 AXT 3,1 SET COUNT TO 3, M=1. F5A08960 S71 CLA IR1+3,1 COPY ASIDE C(IRM) F5A08970 STO IR4+3,1 F5A08980 LDQ IN1+3,1 IRM ASSIGNED F5A08990 TQP S72 F5A09000 CAS S5K2 NO, IS C(IRM) REAL F5A09010 NOP F5A09020 TRA S72 NO F5A09030 TRA S73 YES. F5A09040 S72 CLA S7K1 NO,REPLACE C(IRM) F5A09050 STO IR1+3,1 BY IMPOSSIBLE TAG. F5A09060 S73 TIX S71,1,1 COUNT TO 3,M=M+1 F5A09070 TRA 1,4 RETURN F5A09080 REM THE S9 SUBROUTINE LOADS EN1,2,3. F5A09090 S9 SXA S911,4 STORE RETURN INDEX. F5A09100 TSX SE,4 MAKE SURE BB IS IN C+M+ F5A09110 CLA BBB+5,1 GET AND F5A09120 PDX 0,2 STORE THE F5A09130 CLA REG,2 REGION F5A09140 STO S9V4 WORD+ F5A09150 AXT 3,2 SET COUNT TO 3, N=1. F5A09160 CLA BBB+1,1 STORE THE WORD F5A09170 STO S9V1 CONTAINING THE PERMATATION NOS. F5A09180 S92 CLA S9V1 EXTRACT THE N TH F5A09190 ARS 3,2 PERMUTATION NO. F5A09200 ARS 3,2 AND PUT IT F5A09210 ANA S9K3 IN F5A09220 PDX 0,4 INDEX 4. F5A09230 CAL S9V4 IS THIS F5A09240 ANA S9K2+3,4 AN EMPTY F5A09250 TZE S93 I.R. F5A09260 CLA S5K1 YES,STORE EMPTINESS SYMBOL F5A09270 S94 STO EN1+3,4 F5A09280 TXI S91,1,-1 DOWN THE ENTR. INDEX F5A09290 S91 TIX S92,2,1 COUNT TO 3 F5A09300 S911 AXT SET,4 F5A09310 TRA 1,4 RETURN F5A09320 S93 CAL BBB+2,1 SET THE F5A09330 ARS 18 ENTRANCE REQUIREMENT. F5A09340 CAS S5K1 IS IT AN EMPTINESS SYMBOL F5A09350 TRA S94 NO, F5A09360 CLA LK1 YES,STORE E,(HASH SYMBOL). F5A09370 TRA S94 NO, F5A09380 REM THE SA SUBROUTINE LOADS EX1,2,3 AND ACT1,2,3 FROM EXIT F5A09390 REM CONDITIONS AND ACTIVITY BITS (PREFIX, WORD 2, BBB) OF THE F5A09400 REM EXIT BB IN A REGION. F5A09410 SA SXA SA31,4 STORE RETURN INDEX. F5A09420 ANA SBK2 F5A09430 LDQ SAK1 IS THIS AN IMPOSSIBLE BB F5A09440 TLQ SAIMP YES F5A09450 TSX SE1,4 MAKE SURE BB IS IN CM. F5A09460 CLA BBB+5,1 GET AND F5A09470 PDX 0,2 STORE F5A09480 CLA REG,2 REGION F5A09490 STO SAV3 WORD. F5A09500 CLA BBB+1,1 GET AND STORE THE F5A09510 STO SAV1 WORD HAVING PERMUTATION NOS. F5A09520 AXT 3,2 SET COUNT TO 3, N=N+1. F5A09530 SA1 CAL SAV1 PUT PERMUTATION F5A09540 ARS 3,2 NUMBER F5A09550 ARS 3,2 IN F5A09560 ANA S9K3 INDEX 4 F5A09570 PDX 0,4 F5A09580 CAL SAV3 IS THIS F5A09590 ANA S9K2+3,4 AN EMPTY F5A09600 TZE SA2 EXIT F5A09610 CLA S5K1 YES,STORE EMPTINESS SYMBOL. F5A09620 SA4 STO EX1+3,4 F5A09630 SA5 CAL SAV1 STORE THE F5A09640 ALS 3,2 ACTIVE F5A09650 SLW ACT1+3,4 INDICATOR F5A09660 TXI SA3,1,-1 F5A09670 SA3 TIX SA1,2,1 COUNT TO 3 F5A09680 SA31 AXT SET,4 F5A09690 TRA 1,4 RETURN F5A09700 SA2 CAL BBB+2,1 F5A09710 ANA S3K4 IS THIS F5A09720 CAS S5K1 AN EMPTY SYMBOL F5A09730 TRA SA4 NO F5A09740 CLA LK1 YES, REPLACE BY HASH F5A09750 TRA SA4 NO F5A09760 SAIMP CLA LK1 PUT HASH IN EX CELLS. F5A09770 STO EX1 F5A09780 STO EX2 F5A09790 STO EX3 F5A09800 TRA 1,4 RETURN. F5A09810 REM THE SB SUBROUTINE ENTERS A PRED OR STAG BIT TO REQUEST SX F5A09820 REM COMPILATION. THE APPROPRIATE ACTIVITY CELL AC1,2, OR 3 IS F5A09830 REM EXAMINED. IF IT IS NEGATIVE (ACTIVE INSTRUCTION IN A BB F5A09840 REM ALREADY IN A REGION), THE SX BIT IS PLACED IN PRED IN THE F5A09850 REM LINK OUT OF THE REGION. IF IT IS POSITIVE (ACTIVE INSTRUC. F5A09860 REM IN A BB IN THIS LPLST), THE SX BIT IS PLACED IN THE STAG F5A09870 REM TABLE AT THE ACTIVE INSTRUCTION. THE APPROPRIATE AC1,2, OR F5A09880 REM IS ALSO TURNED OFF BY SB. F5A09890 SB SXD SBV4,1 STORE INDEX OF ACTIVE I.R+ F5A09900 SXA SB61,4 F5A09910 CLA AC1+3,1 IS THE ACTIVE THING F5A09920 TPL SB1 AN INSTRUCTION F5A09930 PDX 0,1 NO F5A09940 CLA LPLST+S3P1,1 GET + STORE F5A09950 CAS S3K2 PRED. BB F5A09960 NOP F5A09970 TRA SB01 F5A09980 ARS 18 NO F5A09990 SB01 STA SBV3 F5A10000 CLA LPLST+S3P1+1,1 F5A10010 CAS S3K1 END LOOP LIST SENTINEL F5A10020 TRA SB7 NO, F5A10030 CLA LPLST YES,SUCCESSOR IS 1ST ENTRY. F5A10040 SB7 TSX SE,4 NO,GET ADDR. OF F5A10050 CLA BBB+1,1 PRED. F5A10060 STO SBV5 STORE PERMUTATION NOS. F5A10070 CLA BBB,1 GET ADDR OF 1ST PRED. F5A10080 SB4 SLW SBV2 F5A10090 TSX SE5,4 F5A10100 CAL PRED,1 F5A10110 ANA SBK2 F5A10120 CAS SBV3 IS THIS THE RIGHT TRANSFER F5A10130 TRA SB2 NO F5A10140 TRA SB5 YES F5A10150 SB2 CLA SBV2 NO TRY NEXT PRED. F5A10160 ADD ONEA F5A10170 TRA SB4 F5A10180 SB5 AXT 3,2 F5A10190 SB00 CAL SBV5 SEARCH PERMUTATION F5A10200 ARS 3,2 NOS. FOR THE INDEX F5A10210 ARS 3,2 STORED IN SBV4 F5A10220 ANA S9K3 F5A10230 CAS SBV4 IS THIS PERMUTATION NO. F5A10240 TRA SB8 NO EQUAL TO THE ACTIVE F5A10250 TRA SB9 YES IR F5A10260 SB8 TIX SB00,2,1 NO F5A10270 TSX DIAG,4 ERROR.--TO DIAGNOSTIC. F5A10280 SB9 CLA SBK3 GENERATE NO STORE F5A10290 ARS 3,2 THE F5A10300 ORS PRED,1 SX FIT IN F5A10310 TRA SB6 PRED. TABLE. F5A10320 SB1 ANA S3K4 F5A10330 LRS 35 COMPUTE NO. OF WORD IN F5A10340 DVP XK9 STAG AND POSITION OF SX F5A10350 PAX 0,2 FIT IN WORD. F5A10360 CAL SBK1 GENERATE F5A10370 ALS 8,2 THE BIT F5A10380 SLW SBV2 TO F5A10390 REM STORE. F5A10400 LLS 35 GET NO. OF WORD OUT OF MQ. F5A10410 TSX SE4,4 MAKE SURE THE WD IS IN C.M. F5A10420 CAL SBV2 F5A10430 ORS STAG,1 F5A10440 SB6 CLA ZERO SET IR F5A10450 LXD SBV4,1 TO F5A10460 STO AC1+3,1 NOT ACTIVE. F5A10470 SB61 AXT SET,4 RE- F5A10480 TRA 1,4 TURN F5A10490 REM THE SC SUBROUTINE HANDLES THE PROBLEM OF AN ACTIVE INDEX F5A10500 REM REGISTER WITH NO SUBSEQUENT LX IN THE PRESENT REGION. THIS F5A10510 REM POSTPONES THE NECESSITY OF AN SX UNTIL A LATER LX IS FOUND. F5A10520 REM THE ACTIVITY IS TRANSFERRED FROM AC1,2,3 TO PREFIX, WORD 2, F5A10530 REM BBB FOR ALL BB,S DURING WHICH INDEX REGISTER IS ACTIVE. F5A10540 REM THIS PROPAGATION OF ACTIVITY WHEN NOT TURNED OFF DURING THE F5A10550 REM TREATMENT OF THE LPLST IN WHICH IT AROSE IS CALLED MARK- F5A10560 REM ING A SECTION OF LPLST ACTIVE. ALL BB,S BETWEEN THE ORIGIN F5A10570 REM OF THE ACTIVITY AND THE PRESENT POINT OF LPLST WHEN SC IS F5A10580 REM ENTERED ARE MARKED ACTIVE, AND THE DESIGNATED AC1,2,3 IS F5A10590 REM TURNED OFF. SD IS USED AS A SUBROUTINE, DOING THE ACTUAL F5A10600 REM MARKING OF BB,S ACTIVE. F5A10610 SC CLA AC1+3,1 IS IR F5A10620 TZE 1,4 ACTIVE F5A10630 SXA SC51,4 YES, STORE RETURN F5A10640 SXD SC9,1 AND INDEX OF ACTIVE I.R+ F5A10650 STD SCV3 STORE INDEX OF LOOP LIST. F5A10660 CLA SCV3 IS THIS THE CURRENT F5A10670 SUB ONED F5A10680 SBM S3V4 IS THIS THE CURRENT LPLST INDEX F5A10690 TNZ SC40 F5A10700 CLA ACIND YES F5A10710 TPL 1,4 IS THIS THE ACTIVE PASS F5A10720 SC40 LXD SCV3,2 YES F5A10730 CLA LPLST+S3P1,2 F5A10740 CAS S3K2 IS 1ST AACTIVE QUANTITY A BB F5A10750 TRA SC02 F5A10760 TRA SC02 NO F5A10770 TRA SC8 YES F5A10780 SC4 SUB ONED IS THIS CURRENT F5A10790 CAS S3V4 LOOP LIST INDEX F5A10800 TRA SC2 NO, F5A10810 TRA SC5 YES, F5A10820 SC2 LXD SCV3,2 NO, F5A10830 CLA LPLST+S3P1,2 F5A10840 CAS S3K1 IS IT END LOOP LIST F5A10850 TRA SC3 NO, F5A10860 TRA SC6 YES, F5A10870 SC3 CAS S3K2 NO,IS IT A BB F5A10880 NOP NO, F5A10890 TRA SC04 F5A10900 TRA SC8 YES, F5A10910 SC04 LXD SC9,2 NO, PUT INDEX OF ACTIVE IR F5A10920 TSX SD,4 IN 2. GO TO RECORD REGION ACTIVE. F5A10930 SC02 CLA SCV3 PREPARE TO GET F5A10940 SUB ONED NEXT F5A10950 SC7 STD SCV3 LOOP LIST QUANTITY. F5A10960 TRA SC4 F5A10970 SC5 LXD SC9,1 F5A10980 CLA ZERO RECORD I.R. NOT F5A10990 STO AC1+3,1 ACTIVE ANYMORE. F5A11000 SC51 AXT SET,4 F5A11010 TRA 1,4 RETURN. F5A11020 SC6 CLA S3K3 ARRANGE TO GET 1ST LPLST QUANTITY F5A11030 TRA SC7 QUANTITY NEXT. F5A11040 SC8 TSX SE,4 F5A11050 SXA SC00,1 GET INDEX OF BB. F5A11060 SC9 TXI SC01,1,0 INCREASE INDEX BY INDEX OF OCT. I.R. F5A11070 SC01 CLA BBB+5,1 GET THE F5A11080 ANA S3K4 EXIT CONDITION. F5A11090 LXD SC9,2 IS EXIT COND. SAME F5A11100 CAS IR1+3,2 AS TAG IN ACTIVE I.RH F5A11110 TRA SC02 NO, F5A11120 TRA SC03 YES, F5A11130 TRA SC02 NO, F5A11140 SC03 CAL S5K3 RECORD THAT BB IS F5A11150 ARS 3,2 ACTIVE F5A11160 SC00 AXT SET,1 WO THIS F5A11170 ORS BBB+1,1 I+R. F5A11180 TRA SC02 F5A11190 REM THE SD SUBROUTINE IS USED BY SC TO MARK BBS ACTIVE F5A11200 SD SXD SDV2,2 F5A11210 SXA SD8,4 STORE RETURN. F5A11220 TSX SE,4 GET INDEX OF BB F5A11230 CLA BBB+5,1 GET F5A11240 PDX 0,1 REGION F5A11250 CLA REG,1 WORD. F5A11260 TSX SE,4 GET BB INDEX. F5A11270 SD7 SXA SD41,1 F5A11280 CLA BBB+1,1 STORE F5A11290 STO SDV3 AWAY THE PERMUTATION NOS. F5A11300 AXT 3,2 SET COUNT TO 3, N=1. F5A11310 SD3 CAL SDV3 IS F5A11320 ARS 3,2 PERMUTATION NO. F5A11330 ARS 3,2 F5A11340 ANA S9K3 N EQUAL F5A11350 CAS SDV2 TO I.R. INDEX F5A11360 TRA SD1 NO F5A11370 TRA SD4 YES F5A11380 SD1 TXI SD1+1,1,-1 NO F5A11390 SD2 TIX SD3,2,1 COUNT TO 3 F5A11400 TSX DIAG,4 F5A11410 SD4 CAL BBB+2,1 F5A11420 ANA S3K4 IS TAG IN F5A11430 LXD SDV2,4 EXIT CONDITION F5A11440 SD41 AXT SET,1 SAME AS IN ACTIVE IR. F5A11450 CAS IR1+3,4 F5A11460 TRA SD5 NO F5A11470 TRA SD9 YES,IS F5A11480 SD5 CAL BBB+5,1 NO THIS LAST F5A11490 ANA SBK2 BB F5A11500 CAS SBK2 IN REGION F5A11510 TRA SD6 NO F5A11520 TRA SD8 YES F5A11530 SD6 TSX SE1,4 NO F5A11540 TRA SD7 F5A11550 SD8 AXT SET,4 RETURN F5A11560 TRA 1,4 F5A11570 SD9 CAL S5K3 RECORD THIS BB F5A11580 ARS 3,2 ACTIVE F5A11590 ORS BBB+1,1 WO THIS IR F5A11600 TRA SD5 F5A11610 REM THE SF SUBROUTINE FORMS APPROPRIATE AC1,2,3 ENTRY WHEN AN F5A11620 REM ACTIVE INSTRUCTION IS ENCOUNTERED. F5A11630 SF CLA TPE IS THIS F5A11640 CAS S2K2 AN LX F5A11650 TRA SF1 NO, F5A11660 TRA SF4 YES, F5A11670 SF1 CAS XK12 NO,IS IT AN ACTIVE INSTR F5A11680 TRA 1,4 NO RETURN F5A11690 TRA SF4 YES, F5A11700 TRA 1,4 NO F5A11710 SF4 CLA XV5 FORM QUANTITY TO F5A11720 STO SFV1 BE PUT F5A11730 LXD S3V4,2 INTO F5A11740 TXI SF5,2,1 ACTIVE F5A11750 SF5 SXD SFV1,2 INDICATOR F5A11760 TRA 2,4 F5A11770 REM PERMUTE THE PHI AND LX BITS SUBROUTINE F5A11780 REM THE SG SUBROUTINE PERMUTES AS INDICATED BY EN4,5,6 ON A REG F5A11790 REM ENTRY. F5A11800 SG SXA SG11,4 SAVE RETURN F5A11810 LDQ ONEA SET NEW LX AND PHI BITS TO ONEA F5A11820 STQ SGV2 F5A11830 CLA S3V5 GET INDEX OF REGION WORD F5A11840 TSX SE,4 F5A11850 CLA BBB+5,1 F5A11860 PDX 0,2 F5A11870 AXT 3,4 SET COUNT TO 3 F5A11880 SG1 CLA EN4+3,4 FIND INDEX OF IR F5A11890 PDX 0,1 F5A11900 CAL REG,2 PERMUTE THE LX BIT F5A11910 ALS 3,4 F5A11920 ANA S5K3 F5A11930 ARS 3,1 F5A11940 ORS SGV2 F5A11950 CAL REG,2 PERMUTE THE PHI BIT F5A11960 ARS 3,4 F5A11970 ANA XK23 F5A11980 ALS 3,1 F5A11990 ORS SGV2 F5A12000 TIX SG1,4,1 COUNT TO 3 F5A12010 CAL REG,2 F5A12020 ANA SEK4 F5A12030 ORA SGV2 F5A12040 SLW REG,2 F5A12050 SG11 AXT SET,4 RETURN F5A12060 TRA 1,4 F5A12070 REM THE F1 SUBROUTINE FINDS THE HIGHEST FREQUENCY PRED ENTRY FORF5A12080 REM A GIVEN BB AND STORES IT IN FV 101. F5A12090 F1 SXA F5,4 STORE RETURN F5A12100 LDQ ZERO SET HIGHEST F5A12110 STQ FV101 FREQ. TO 0. F5A12120 STO FV102 STORE BB NO+ F5A12130 TSX SE1,4 GET INDEX OF BB F5A12140 CLA BBB+5,1 STORE REGION F5A12150 STO FV104 NO. WORD. F5A12160 CAL BBB,1 GET PRED. F5A12170 STA FV7 NO. AND STORE IT F5A12180 CAL FV102 GET AND STORE F5A12190 ADD ONEA FIRST PRED. IN F5A12200 TSX SE1,4 NEXT B.B. F5A12210 CLA BBB,1 F5A12220 STA FV8 F5A12230 CLA FV7 IS THIS PRED. F5A12240 F4 CAS FV8 IN SAME BB F5A12250 TRA F2 F5A12260 TRA F5 NO F5A12270 F2 TSX SE5,4 GET INDEX OF PRED F5A12280 CLA PRED,1 F5A12290 CAS FV101 IS THIS FREQ. GREATER F5A12300 TRA F92 F5A12310 NOP F5A12320 TRA F3 NO F5A12330 F92 STO FV101 STORE NEW MAX. F5A12340 CLA FV7 STORE NEW F5A12350 STO FV103 PRED. NO. F5A12360 F3 CLA FV7 ARRANGE TO F5A12370 ADD ONEA CONSIDER NEXT PRED. F5A12380 STA FV7 F5A12390 TRA F4 F5A12400 F5 AXT SET,4 F5A12410 TRA 1,4 RETURN F5A12420 REM THE F15 SUBROUTINE MOVES THE LOOPLIST UP F5A12430 F15 AXT S3P1,1 SET INDEX TO START OF LOOPLIST. F5A12440 F26 CLA LPLST+S3P1,2 MOVE THIS F5A12450 STO LPLST+S3P1,1 ENTRY UP. F5A12460 F18 TXL F17,2,SET IN DECR., THE INDEX OF LAST TO BE MOVED. F5A12470 TIX F16,1,1 NO. F5A12480 F16 TIX F26,2,1 ARE WE FINISHED COPYING. F5A12490 F17 STO LPLST-1 CASE OF LOOP, STORE PRED. OF 1ST ELEMENT.F5A12500 CLA S3K1 STORE THE END F5A12510 STO LPLST+S3P1+1,1 LOOP LIST QUANTITY. F5A12520 TRA 1,4 F5A12530 REM THE F30 SUBROUTINE FINDS THE HIGHEST FREQ. SUCC ENTRY FOR F5A12540 REM A GIVEN BB AND STORES IT IN FV 101. F5A12550 F30 SXA F34,4 F5A12560 LDQ ZERO SET HIGHEST FREQH F5A12570 STQ FV101 TO 0. F5A12580 STO FV102 STORE BB NO. F5A12590 TSX SE,4 F5A12600 CLA BBB+5,1 F5A12610 STO FV104 F5A12620 CAL BBB,1 GET SUCC. NO. F5A12630 STD FV9 AND STORE IT F5A12640 CAL FV102 GET AND STORE F5A12650 ADD ONED SUCC. F5A12660 TSX SE,4 NO. F5A12670 CLA BBB,1 OF 1ST SUCC. F5A12680 STD FV10 IN NEXT BB F5A12690 CLA FV9 F5A12700 F31 CAS FV10 IS SUCC IN SAME BB F5A12710 TRA F32 F5A12720 TRA F34 NO. F5A12730 F32 TSX SE6,4 GET INDEX OF SUCC. F5A12740 CLA SUCC,1 F5A12750 CAS FV101 IS THIS FREQ. GREATER F5A12760 TRA F93 F5A12770 NOP F5A12780 TRA F33 NO F5A12790 F93 STO FV101 STORE NEW MAX. F5A12800 CLA FV9 STORE NEW F5A12810 STO FV103 SUCC. NO. F5A12820 F33 CLA FV9 ARRANGE TO CONSIDER F5A12830 ADD ONED NEXT SUCC. F5A12840 STD FV9 F5A12850 TRA F31 F5A12860 F34 AXT SET,4 F5A12870 TRA 1,4 RETURN F5A12880 REM THE F80 SUBROUTINE ASSIGNS NEW REGION NUMBERS F5A12890 F80 AXT FP1,1 FIND F5A12900 F81 CLA REG,1 THE 1ST AVAILABLE REGION F5A12910 TZE F82 POSITION. F5A12920 TIX F81,1,1 F5A12930 TSX ERR59,4 GO TO DIAGNOSTIC. F5A12940 F82 SXD XV1,1 STORE THE INDEX OF THE NEW REGION WORD. F5A12950 F83 LDQ ZERO STORE INITIAL F5A12960 STQ XV2 VALUE OF REGION F5A12970 TRA 1,4 F5A12980 REM LOOPLIST FORMATION STARTS HERE F5A12990 F CLA ZERO SET INDICATOR TO SAY F5A13000 STO LPIND THIS ISNT A LOOP. F5A13010 STO FV1 SET HIGHEST FREQ. TO 0. F5A13020 STO FV5 SET TO CONSIDER 0TH BB F5A13030 F7 CLA FV5 F5A13040 TSX F1,4 FIND MOST FREQ. UNCONSIDERED TRANSFER F5A13050 CLA FV101 IS IT GREATER THAN F5A13060 CAS FV1 PREVIOUS MAXIMUM F5A13070 TRA F85 F5A13080 NOP F5A13090 TRA F6 NO+ F5A13100 F85 STO FV1 REPLACE PREV. MAX. F5A13110 CLA FV102 AND BB NO. F5A13120 STO FV2 F5A13130 CLA FV103 AND PRED. NO. F5A13140 STO FV3 F5A13150 CLA FV104 AND REGION NO. WORD. F5A13160 STO FV4 F5A13170 F6 CLA FV5 ARRANGE TO CONSIDER NEXT F5A13180 ADD ONEA B.B. F5A13190 STO FV5 F5A13200 SUB KEYS F5A13210 ADD ONEA F5A13220 TNZ F7 WAS THIS THE LAST BB F5A13230 F86 DCT YES, IF ANY DIVIDE CHECKS GO F5A13240 TSX DIAG,4 ERROR--TO DIAGNOSTIC. F5A13250 CLA FV1 ARE THERE ANY UNCONSIDERED PREDS F5A13260 TZE R FOR NEXT PART IF NO UNCONSID. PREDS. F5A13270 F86A CLA FV4 YES F5A13280 TZE F9 IS THIS A REGION ALREADY F5A13290 PDX 0,1 YES. F5A13300 CLA REG,1 GET REGION WORD. F5A13310 ANA FK3 F5A13320 TZE F8 IS IT AN OPAQUE REGION F5A13330 CLA FK1 NO,GET TRANSPARENT REGION MARKER. F5A13340 TRA F9 F5A13350 F8 CLA FK2 GET OPAQUE REGION MARKER. F5A13360 F9 STO LPLST+S3P1-2 F5A13370 CLA FV2 STORE THE REGION MARKER F5A13380 ALS 18 AT END OF LPLST. F5A13390 STD LPLST+S3P1-2 F5A13400 CLA S9K3 INITIALIZE THE STORING F5A13410 STD F11 POSITION IN LPLST. F5A13420 F23 CLA FV1 GET INDEX F5A13430 TSX SE1,4 OF BB UP FOR ENTRY. F5A13440 CLA BBB+5,1 IS THIS BB IN F5A13450 TZE F57 A REGION F5A13460 PDX 0,2 YES F5A13470 CLA REG,2 GET AND STORE F5A13480 STO FV4 REGION WORD F5A13490 ANA FK3 F5A13500 TZE F55 IS IT AN OPAQUE REGION F5A13510 AXT 2,1 NO, TRANSPARENT F5A13520 F12 CLA LPLST+S3P1,1 F5A13530 TXI F25,1,1 STORE INDEX OF LPLST QUANTITY BEING COMPAF5A13540 F25 SXD F18,1 F5A13550 F11 TXH F19,1,SET ARE WE THRU WITH COMPARISONS. F5A13560 CAS S3K2 NO,IS THIS BB ENTRY F5A13570 NOP F5A13580 TRA F87 F5A13590 TRA F12 YES. F5A13600 F87 TSX SE,4 GET INDEX OF BB F5A13610 CLA BBB+5,1 GET F5A13620 PDX 0,1 REGION F5A13630 CLA REG,1 WORD. F5A13640 LXD F18,1 F5A13650 CAS FV4 IS THIS THE SAME REGION F5A13660 TRA F12 NO F5A13670 TRA F100 F5A13680 TRA F12 NO F5A13690 F100 CLA FV1 PUT EXIT BB NO. F5A13700 STA LPLST+S3P1+1,1 IN TR. REG. QUANTITY F5A13710 F13 TIX F24,1,1 GENERATE INDEX OF LAST THING TO BE MOVED F5A13720 F24 LXD F11,2 GET INDEX TO GENERATE INDEX OF 1ST THING F5A13730 F43 SXD F18,1 STORE INDEX OF LAST THING F5A13740 LDQ S3K1 RECORD F5A13750 STQ LPIND LOOP. F5A13760 TIX F14,2,1 GENERATE INDEX OF 1ST THING F5A13770 F14 TSX F15,4 GO TO MOVE LPLST QUANTITIES UP+ F5A13780 TSX F80,4 ASSIGN REGION NUMBER F5A13790 TRA L TO 1ST LXING PASS. F5A13800 F19 CLA FK1 F5A13810 LXD F11,1 STORE TRANSPARENT F5A13820 STO LPLST+S3P1,1 REGION MARKER F5A13830 CLA FV1 F5A13840 STA LPLST+S3P1,1 F5A13850 TSX SE1,4 FIND BB INDEX. F5A13860 CLA ZERO SET INITIAL MAX F5A13870 STO FV1 FREQ. TO 0+ F5A13880 CLA BBB+5,1 GET THE F5A13890 PDX 0,1 REGION F5A13900 CLA REG,1 WORD F5A13910 ARS 18 F5A13920 F21 TSX F1,4 DETERMINE MOST FREQ. PRED IN BB. F5A13930 CLA FV101 IS IT MORE FREQ. THAN F5A13940 CAS FV1 PREV. MAX. F5A13950 TRA F88 F5A13960 NOP F5A13970 TRA F20 NO. F5A13980 F88 STO FV1 REPLACE PREV. MAX. F5A13990 CLA FV102 AND BB NO. F5A14000 STO FV2 AND F5A14010 CLA FV103 PRED. NO. F5A14020 STO FV3 AND F5A14030 CLA FV104 REGION NO. WORD. F5A14040 STO FV4 F5A14050 F20 CLA FV104 ARRANGE TO CONSIDER THE F5A14060 ANA SBK2 NEXT B.B. IN REGION. F5A14070 CAS SBK2 ARE WE THRU WITH REGION F5A14080 TRA F21 F5A14090 TRA F22 YES F5A14100 TRA F21 F5A14110 F22 CLA FV1 WAS THERE AN UNCONSIDERED F5A14120 TZE F28 PRED F5A14130 CLA FV2 YES,STORE THE F5A14140 LXD F11,1 ENTRY B.B. F5A14150 ALS 18 NO. F5A14160 STD LPLST+S3P1,1 F5A14170 TXI F70,1,1 UP THE STORING INDEX F5A14180 F70 SXD F11,1 F5A14190 TXH F73,1,S3P1 IS LPLST FULL F5A14200 TRA F23 NO F5A14210 F28 LXD F11,2 F5A14220 F56 AXT 2,1 F5A14230 SXD F18,1 F5A14240 TSX F15,4 MOVE LPLST UP. F5A14250 CLA LPLST-1 F5A14260 CAS FK4 IS THIS AN OPAQUE REGION F5A14270 NOP F5A14280 TRA F75 TO 2ED LXING PASS. F5A14290 TXH F29,1,2 F5A14300 TRA F75 F5A14310 F73 CLA SEK4 STORE SPECIAL F5A14320 STD LPLST SYMBOL IN DECR. PART OF 1ST LPLST F5A14330 TRA F53 QUANTITY F5A14340 F29 SXD F39,1 INITIALIZE STORING LOCATION. F5A14350 F64 CAS S3K2 ISNT OPAQUE REGION. IS IT BB. F5A14360 NOP NO. F5A14370 TRA F89 F5A14380 TRA F44 YES. F5A14390 F89 LDQ ZERO NO, SET INITIAL F5A14400 STQ FV1 FREQ+ TO 0. F5A14410 TSX SE,4 GET F5A14420 CLA BBB+5,1 REGION F5A14430 PDX 0,1 NO. F5A14440 CLA REG,1 GET NO. OF 1ST BB IN REGION F5A14450 F35 TSX F30,4 DETERMINE MOST FREQ SUCC IN BB F5A14460 CLA FV101 IS IT MORE FREQ. THAN F5A14470 CAS FV1 PREV+ MAX F5A14480 TRA F90 YES F5A14490 NOP F5A14500 TRA F36 NO F5A14510 F90 STO FV1 YES, REPLACE PREV.MAX. F5A14520 CLA FV102 AND BB NO. F5A14530 STO FV2 AND F5A14540 CLA FV103 SUCC. NO+ F5A14550 STO FV3 AND F5A14560 CLA FV104 REGION NO. WORD F5A14570 STO FV4 F5A14580 F36 CLA FV104 ARRANGE TO CONSIDER THE F5A14590 ANA SBK2 NEXT BB IN REGION F5A14600 CAS SBK2 IS IT LAST BB IN REGION F5A14610 TRA F94 F5A14620 TRA F37 YES F5A14630 F94 ALS 18 F5A14640 TRA F35 F5A14650 F37 CLA FV1 WAS THERE AN UNCONSIDERED F5A14660 LXD F39,1 SUCC F5A14670 TZE F47 NO F5A14680 CLA FV2 EXIT BB F5A14690 ARS 18 NO. F5A14700 STA LPLST+S3P1,1 F5A14710 F45 TIX F62,1,1 DOWN THE STORING F5A14720 F62 SXD F39,1 INDEX. F5A14730 CLA FV1 GET INDEX OF F5A14740 TSX SE1,4 BB UP FOR ENTRY. F5A14750 CLA BBB+5,1 IS THIS BB IN F5A14760 TZE F48 A REGION F5A14770 PDX 0,2 YES. F5A14780 CLA REG,2 GET AND F5A14790 STO FV4 STORE REGION WORD. F5A14800 ANA FK3 IS IT IN AN F5A14810 TZE F54 OPAGUE REGION F5A14820 LXD F39,1 NO. F5A14830 CLA FK1 STORE TRANSPARENT REGION F5A14840 STO LPLST+S3P1,1 MARKER F5A14850 CLA FV1 WITH F5A14860 ALS 18 ENTRY F5A14870 STD LPLST+S3P1,1 BB NO. IN DECR. F5A14880 AXT S3P1,2 SET INDEX TO 1ST ELEMENT IN LPLST. F5A14890 F38 CLA LPLST+S3P1,2 F5A14900 CAS S3K2 IS THIS A BB ENTRY F5A14910 NOP F5A14920 TRA F91 F5A14930 TRA F40 YES F5A14940 F91 SXD F18,2 STOREINDEX OF QUANTITYBEING C.F. ED F5A14950 TSX SE1,4 F5A14960 CLA BBB+5,1 GET F5A14970 PDX 0,2 REGION WORD. F5A14980 CLA REG,2 F5A14990 LXD F18,2 GET INDEX OF QUANTITY BEING COMPARED. F5A15000 CAS FV4 IS THIS NAME REGION F5A15010 TRA F40 F5A15020 TRA F41 YES F5A15030 F40 TIX F39,2,1 F5A15040 F39 TXL F42,2,- IS THIS INDEX OF QUANTITY BEING COMPARED F5A15050 TRA F38 NO F5A15060 F41 CLA LPLST+S3P1,2 PUT EXIT BB NO. F5A15070 LXD F39,1 FROM PREVIOUS QUANTITY F5A15080 STA LPLST+S3P1,1 IN THIS LATEST ONE. F5A15090 TRA F43 F5A15100 F42 TXH F63,2,2 IS LPLST FULL F5A15110 F53 CLA S3K1 YES, STORE END F5A15120 STO LPLST+S3P1-1 LOOP LIST SENTINEL. F5A15130 TRA F75 GO TO DEAL WITH STRING. F5A15140 F63 CLA LPLST+S3P1,2 F5A15150 TRA F64 F5A15160 F44 TSX F30,4 DETERMINE MOST FREQ. SUCC. IN BB. F5A15170 CLA FV101 STORE THE F5A15180 STO FV1 MOST FREQ. SUCC. AWAY. F5A15190 LXD F39,1 F5A15200 TNZ F45 WAS THERE AN UNCONSIDERED SUCC. F5A15210 F47 CLA S3K1 NO,RECORD AN F5A15220 STO LPLST+S3P1+1,1 END LOOP LIST SENTINEL. F5A15230 TRA F75 F5A15240 F48 LXD F39,1 ENTER BB F5A15250 CLA FV1 NO. AND MARKER F5A15260 ANA SBK2 IN F5A15270 ALS 18 LPLST F5A15280 STO FV4 F5A15290 STO LPLST+S3P1,1 F5A15300 SXD F50,1 F5A15310 AXT S3P1,2 S + TO F5A15320 F51 CLA LPLST+S3P1,2 F5A15330 CAS FV4 IS THIS SAME BB AS NEW ENTRY F5A15340 TRA F49 F5A15350 TRA F43 YES F5A15360 F49 TIX F50,2,1 DECREASE COMPARISON INDEX. F5A15370 F50 TXL F52,2,- IS THIS INDEX OF NEW QUANTITY F5A15380 TRA F51 NO. F5A15390 F52 TXH F63,2,2 IS LPLST FULL F5A15400 TRA F53 YES. F5A15410 F54 LXD F39,1 IS OPAQUE REGION F5A15420 CLA FK2 ENTER OPAQUE F5A15430 STO LPLST+S3P1,1 REGION MARKER F5A15440 CLA FV1 WITH CORRECT F5A15450 ALS 18 ENTRY BB F5A15460 STD LPLST+S3P1,1 NO. F5A15470 TRA F47 F5A15480 F55 LXD F11,2 STORE THE F5A15490 CLA FK2 OPAQUE F5A15500 STO LPLST+S3P1,2 REGION MARKR F5A15510 CLA FV1 WITH F5A15520 STA LPLST+S3P1,2 EXIT BB F5A15530 TRA F56 NO. F5A15540 F57 CLA FV1 PUT THE F5A15550 ANA SBK2 B.B. NO. F5A15560 ALS 18 IN F5A15570 STO FV4 DECR. PART. F5A15580 CLA F11 SET THE END F5A15590 STD F59 TEST. F5A15600 AXT 2,1 SET INDEX OF 1ST LPLST TO BE COMPARED. F5A15610 F61 CLA LPLST+S3P1,1 F5A15620 TXI F58,1,1 F5A15630 F58 SXD F18,1 F5A15640 F59 TXH F60,1,- WAS THAT THE LAST QUANTITY F5A15650 CAS FV4 IS THIS THE SAME BB. F5A15660 TRA F61 F5A15670 TRA F13 YES F5A15680 TRA F61 F5A15690 F60 LXD F11,1 F5A15700 CLA FV1 STORE THE F5A15710 ANA SBK2 BB F5A15720 ALS 18 MARKER. F5A15730 STO LPLST+S3P1,1 F5A15740 CLA FV1 F5A15750 TSX F1,4 FIND MOST FREQ. PRED. OF BB. F5A15760 CLA FV101 DOES B.B. HAVE F5A15770 STO FV1 UNCONSIDERED PRED. F5A15780 TNZ F71 F5A15790 LXD F11,2 NO,GO TO MOVE LPLST UP. F5A15800 TRA F56 F5A15810 F71 LXD F11,1 F5A15820 TXI F72,1,1 UP THE STORING INDEX F5A15830 F72 SXD F11,1 F5A15840 TXH F53,1,S3P1 IS LPLST FULL F5A15850 TRA F23 NO. F5A15860 F78 TSX SA,4 GET EXIT CONDITIONS OF REGION. F5A15870 AXT 3,1 PUT EXIT F5A15880 LDQ ZERO F5A15890 F76 CLA EX1+3,1 CONDITONS F5A15900 STO IR1+3,1 INTO F5A15910 CLA ACT1+3,1 I+R.S F5A15920 STQ AC1+3,1 F5A15930 TPL F77 IS THIS EXIT ACTIVE F5A15940 CLA S3K3 YES,FORM AND F5A15950 SSM STORE ACTIVE F5A15960 STO AC1+3,1 INDICATOR F5A15970 F77 TIX F76,1,1 COUNT TO 3 F5A15980 CLA S3K3 INITIALIZE F5A15990 SUB ONED LOOP LIST F5A16000 STO S3V4 TO ITS F5A16010 STO S3V5 F5A16020 CLA S5K3 2ED F5A16030 STO S3V3 ELEMENT F5A16040 SXD S3V2,0 F5A16050 TRA X32 F5A16060 F75 TSX F80,4 DETERMINE NEW REGION INDEX F5A16070 CLA LPLST IS 1ST F5A16080 LDQ S3K2 ELEMENT OF LPLST A TRANSPARENT F5A16090 TLQ F78 ON OPAQUE REGION F5A16100 AXT 3,1 NO, INITIALIZE F5A16110 CLA S5K1 THE F5A16120 F79 STO IR1+3,1 I.R.S F5A16130 TIX F79,1,1 TO EMPTINESS F5A16140 TRA X F5A16150 REM FIRST LXING PASS. F5A16160 L SXD ROT3,0 F5A16170 SXD ROT1,0 F5A16180 INIZ AXT 3,1 INITIALIZE F5A16190 CLA S5K1 THE F5A16200 L23 STO IR1+3,1 INDEX REGISTERS F5A16210 TIX L23,1,1 TO EMPTINESS. F5A16220 LDQ S3K3 F5A16230 STQ S3V4 INITIALIZE THE F5A16240 LDQ S5K3 LOOP LIST. F5A16250 STQ S3V3 MAKE SURE THAT THE F5A16260 SXD S3V2,0 F5A16270 1L4 TSX S3,4 GET NEXT TAG. F5A16280 TRA L6 *RETURN HERE IF TAG WASNT GOTTEN. F5A16290 AXT 3,1 SET COUNT TO 3, N=1. F5A16300 CLA 1TAG IS CL (TAG) EQUAL F5A16310 L2 CAS IR1+3,1 TO C (IRN) F5A16320 TRA L1 NO. F5A16330 TRA 1L3 YES F5A16340 L1 TIX L2,1,1 NO. COUNT TO 3,N=N+1 F5A16350 CLA TPE IS THIS F5A16360 CAS XK15 AN LXP INSTR. F5A16370 TRA L18 NO, F5A16380 TRA L17 YES F5A16390 L18 CAS XK21 NO,IS IT A DED INSTR. F5A16400 TRA L17 NO F5A16410 TRA ROT0 YES F5A16420 TRA L17 F5A16430 ROT0 LXD S3V4,2 F5A16440 TXL 1L4,2,S3P1-2 F5A16450 LXD ROT3,2 F5A16460 TXI ROT1,2,-1 F5A16470 ROT1 TXL 1L4,2,- F5A16480 SXD ROT3,2 F5A16490 AXT 0,2 F5A16500 ROT2 CLA LPLST,2 F5A16510 CAS S3K1 F5A16520 ROT3 TXL ROT4,0,- F5A16530 TXL ROT5,0,- F5A16540 ROT4 STO LPLST-1,2 F5A16550 TXI ROT2,2,-1 F5A16560 ROT5 SXD ROT1,2 F5A16570 CLA LPLST-1 F5A16580 STO LPLST-1,2 F5A16590 TRA INIZ F5A16600 L17 TSX S1,4 SELECT MOST REPLACEABLE I.R. F5A16610 LXD IRR,4 PLACE TAU-TAG F5A16620 CLA 1TAG IN APPROPRIATE F5A16630 STO IR1+3,4 I.R. F5A16640 TRA 1L4 F5A16650 1L3 CLA TPE IS THIS AN LXP F5A16660 CAS XK15 F5A16670 TRA 1L19 F5A16680 TRA 1L4 YES. F5A16690 1L19 CAS XK21 IS IT AN DED F5A16700 TRA 1L4 F5A16710 TRA L5 YES. F5A16720 TRA 1L4 F5A16730 L5 CLA LK1 PLACE AN E (HASH F5A16740 STO IR1+3,1 SYMBOL) IN F5A16750 TRA 1L4 RIGHT IR, F5A16760 L6 STO LV4 IS THIS AN END OF LOOP F5A16770 CAS S3K1 LIST SENTINEL F5A16780 TRA L14 NO, F5A16790 TRA L15 YES, F5A16800 L14 CAL LV4 IS F5A16810 ANA LK3 THIS A F5A16820 TZE 1L4 BB F5A16830 CLA LV4 NO,FORM CORRESPONDENCE F5A16840 TSX S5,4 BETWEEN IRS AND ENS F5A16850 CLA LV4 GET + STORE EXIT CONDITIONS F5A16860 TSX SA,4 AND (USELESSLY+ OCTIVE INDICATORS. F5A16870 AXT 3,1 SET COUNT TO 3, N=1. F5A16880 L11 CLA EN4+3,1 PUT CORRESPONDENCE INDEX F5A16890 PDX 0,2 IN 2. F5A16900 CLA EX1+3,1 IS THIS EXIT CONDITION F5A16910 CAS S5K1 EMPTY F5A16920 TRA L13 NO, F5A16930 TRA P003 F5A16940 L13 STO IR1+3,2 NO,REPLACE C (IR) BY EXIT CONDITION. F5A16950 L10 TIX L11,1,1 COUNT TO 3,N=N+1 F5A16960 TRA 1L4 F5A16970 P003 CLA IR1+3,2 F5A16980 LDQ LK1 F5A16990 TLQ L10 F5A17000 AXT 3,4 F5A17010 P003A CAS EX1+3,4 F5A17020 TRA P003B F5A17030 STQ IR1+3,2 F5A17040 P003B TIX P003A,4,1 F5A17050 TRA L10 F5A17060 L15 AXT 3,1 COPY ASIDE THE FINAL F5A17070 L16 CLA IR1+3,1 CONTENTS F5A17080 CAS LK1 (IF REAL, OTHERWISE F5A17090 NOP F5A17100 CLA S5K1 SET TO F5A17110 STO IR1+3,1 EMPTY) F5A17120 STO LV1+3,1 OF THE F5A17130 TIX L16,1,1 IRS F5A17140 REM THE SECOND LXING PASS FOLLOWS. F5A17150 REM PRECEEDED BY 1ST LXING PASS F5A17160 X LDQ S3K3 INITIALIZE THE F5A17170 STQ S3V4 LOOP LIST AND F5A17180 LDQ S5K3 MAKE SURE TAG F5A17190 STQ S3V3 LOC. GETS SET. F5A17200 SXD S3V2,1 F5A17210 X21 CLA ZERO SET ACTIVE INDICATORS F5A17220 STO AC1 TO F5A17230 STO AC2 F5A17240 STO AC3 NOT ACTIVE. F5A17250 X32 CLA ZERO SET LX INDICATORS F5A17260 STO LX1 TO F5A17270 STO LX2 NOT F5A17280 STO LX3 LX ED. F5A17290 STO ACIND SET IND. TO SAY THIS IS 2ED LXING PASS F5A17300 X3 TSX S3,4 TRY TO GET NEXT TAG. F5A17310 TRA X13 COME HERE IF TAG NOT GOT. F5A17320 CLA S39 COMPUTE LOCATIONS OF F5A17330 ANA SBK2 THIS TAG=(ADDR. FOLLOWING F5A17340 ADD S4V1 TIX BLACK + L (CM)- F5A17350 SUB S4K3 CMTAG-INDEX OF TAG F5A17360 ALS 18 F5A17370 SBM S3V2 F5A17380 LRS 53 THEN FORM LOC/9 F5A17390 STQ XV5 AND REMAINDER F5A17400 DVP XK9 STORE INTEG. PART F5A17410 STQ XV3 AND REMAINDER. F5A17420 STO XV4 F5A17430 AXT 3,1 SET COUNT TO 3, N=1. F5A17440 CLA 1TAG F5A17450 X2 CAS IR1+3,1 IS CONTENTS OF IRN SAME AS OF TAG F5A17460 TRA X1 NO F5A17470 TRA X7 YES F5A17480 X1 TIX X2,1,1 NO COUNT OT 3,N=N+1 F5A17490 CLA TPE IS THIS AN F5A17500 CAS XK15 LX PRIME F5A17510 TRA X103 NO F5A17520 TRA X8 YES. COMPILE LXD FOR LXP. F5A17530 X103 CAS XK21 IS IT A DED F5A17540 TRA X8 F5A17550 TRA X3 YES F5A17560 X8 TSX S1,4 SELECT MOST REPLACEABLE I.R. F5A17570 LXD IRR,1 PLACE TAU-TAG F5A17580 CLA 1TAG IN SELECTED F5A17590 STO IR1+3,1 I.R. F5A17600 CLA AC1+3,1 IS THIS F5A17610 TZE X4 IR ACTIVE F5A17620 TSX SB,4 YES,RECORD SXD NECESSARY. F5A17630 X4 CLA TPE IS THIS F5A17640 CAS S2K2 AN LX F5A17650 TRA X5 NO F5A17660 TRA X14 YES F5A17670 X5 CAL INTAG IS THIS 1ST INSTR. F5A17680 ANA XK10 IN A BB F5A17690 TNZ X9 F5A17700 CLA XV3 NO, F5A17710 TSX SE4,4 DETERMINE INDEX IN STAG F5A17720 LXA XV4,2 F5A17730 CAL XK11 GENERATE F5A17740 ALS 8,2 LX BIT F5A17750 ORS STAG,1 STORE IN STAG. F5A17760 X14 TSX SF,4 CHECK IF AN ACTIVE INSTR. F5A17770 TRA X01 COME HERE IF NOT ACTIVE F5A17780 LXD IRR,1 ACTIVE-STORE ACTIVE F5A17790 CLA SFV1 INDICATOR F5A17800 STO AC1+3,1 F5A17810 X01 LXD IRR,2 F5A17820 CLA LX1+3,2 WAS AN ENTRANCE REQUIREMENT F5A17830 TNZ X19 BEEN DETERMINED FOR THIS BB. F5A17840 CLA LK1 NO,RECORD HASH F5A17850 STO LX1+3,2 AS ENTRANCE REQUIREMENT F5A17860 X19 CAL S5K3 RECORD THAT THERE IS AN F5A17870 ARS 3,2 LX FOR THIS IR IN F5A17880 ORS XV2 REGION. F5A17890 X02 CLA XV3 RECORD THE F5A17900 TSX SE4,4 SPECIFIC F5A17910 CAL XV4 TAG F5A17920 COM IN F5A17930 PAX 0,2 THE F5A17940 CAL IRR STAG F5A17950 ARS 0,2 TABLE F5A17960 ARS 0,2 F5A17970 ORS STAG,1 F5A17980 TRA X3 F5A17990 X9 LXD S3V4,1 GET F5A18000 TXL XI1+1,1,S3P1-2 F5A18010 CLA LPIND F5A18020 TMI XI1+1 F5A18030 LXD IRR,2 F5A18040 XI1 TRA X16-3 F5A18050 CLA LPLST+S3P1-2,1 AND F5A18060 CAS S3K2 STORE F5A18070 NOP BB F5A18080 TRA X117 F5A18090 ARS 18 PRED F5A18100 X117 STA SBV3 NO. F5A18110 CLA LPLST+S3P1-1,1 F5A18120 TSX SE,4 GET ADDR. OF F5A18130 CLA BBB,1 1ST PRED. F5A18140 X03 SLW SBV2 F5A18150 TSX SE5,4 GET PRED. F5A18160 CAL PRED,1 F5A18170 ANA SBK2 F5A18180 CAS SBV3 IS THIS RIGHT PRED. F5A18190 TRA X04 NO F5A18200 TRA X05 YES F5A18210 X04 CLA SBV2 NO ARRANGE TO F5A18220 ADD ONEA TRY NEXT F5A18230 TRA X03 PRED. F5A18240 X05 LXD IRR,2 PUT LX F5A18250 CAL XK16 BIT INTO F5A18260 ARS 3,2 PRED. F5A18270 ORS PRED,1 TABLE. F5A18280 LXD S3V4,4 F5A18290 ORS LPLST+S3P1-1,4 F5A18300 CLA IR1+3,2 SET ENTR. REQU. F5A18310 STO LX1+3,2 F5A18320 TRA X14 F5A18330 X16 TSX SC,4 RECORD I.R. ACTIVE IN SECTION OF LPLST F5A18340 LDQ LK1 F5A18350 CLA LX1+3,1 HAS THIS F5A18360 TNZ X100 ENTR. REQU. BEEN DETERMINED F5A18370 STQ LX1+3,1 NO,RECORD ENTR. REQU. IS AN E. F5A18380 X100 STQ IR1+3,1 ERASE THIS I.R. F5A18390 CLA ZERO RECORD THAT THIS F5A18400 STO AC1+3,1 I.R. ISNT ACTIVE. F5A18410 TRA X02 F5A18420 X7 SXD IRR,1 F5A18430 CLA TPE IS THIS F5A18440 CAS XK15 AN LXP F5A18450 TRA X104 NO F5A18460 TRA X5 YES. F5A18470 X104 CAS XK21 IS IT A DED F5A18480 TRA X15 F5A18490 TRA X16 YES. F5A18500 X15 TSX SF,4 DETERMINE ACTIVITY. F5A18510 TRA X17 COME HERE IF NOT ACTIVE. F5A18520 LXD IRR,1 F5A18530 TSX SC,4 RECORD PART OF LOOP LIST ACTIVE. F5A18540 CLA SFV1 STORE ACTIVE F5A18550 STO AC1+3,1 INDICATOR. F5A18560 X17 CLA TPE F5A18570 CAS S2K2 IS THIS AN LX F5A18580 TRA X18 F5A18590 TRA X01 YES. F5A18600 X18 LXD IRR,1 F5A18610 CLA LX1+3,1 WAS THIS F5A18620 TNZ X02 I.R. LX ED F5A18630 CLA IR1+3,1 NO,STORE THE TAG F5A18640 STO LX1+3,1 IN TH LX INDICATOR. F5A18650 TRA X02 F5A18660 X22 TSX SE,4 MAKE SURE BB IS IN C+M. F5A18670 AXT 3,2 F5A18680 X25 CLA LX1+3,2 F5A18690 TNZ X23 HAS THIS ENTRANCE REQ. BEEN FOUND F5A18700 CLA IR1+3,2 NO,ENTRANCE = EXIT. F5A18710 X23 ALS 18 PUT ENTR. REQ. IN LEFT. F5A18720 ADD IR1+3,2 ADD THE EXIT REQUIREMENTS. F5A18730 SLW BBB+2,1 F5A18740 TXI X24,1,-1 DOWN INDEX OF ENTR-EXIT REQU. F5A18750 X24 TIX X25,2,1 COUNT TO 3 F5A18760 TRA X26 F5A18770 X13 LXD S3V4,1 GET LOOP LIST QUANTITY F5A18780 TXH X26,1,S3P1-2 TRANSFER IF THIS IS 1ST IN LPLST F5A18790 CLA LPLST+S3P1-2,1 GET PRECEDING LPLST ENTRY F5A18800 STO XV19 F5A18810 LDQ S3K2 WAS IT F5A18820 TLQ X126 A BB F5A18830 ARS 18 YES F5A18840 X126 ANA S3K4 WAS THERE AN EXIT BB F5A18850 LDQ SAK1 F5A18860 TLQ X129 NO F5A18870 TSX SE1,4 YES, GET EXIT BB F5A18880 CLA BBB,1 WAS THAT BB F5A18890 ARS 33 TERMINATED BY F5A18900 ADD ONEA A F5A18910 TNZ X129 GO TO N F5A18920 AXT 3,1 YES, SET COUNT TO 3. F5A18930 X128 CLA AC1+3,1 IS THIS IR F5A18940 TZE X127 ACTIVE F5A18950 TSX SB,4 YES, RECORD SXD NECESSARY F5A18960 X127 TIX X128,1,1 COUNT TO 3 F5A18970 X129 CLA XV19 GET PRECEDING LPLST ENTRY F5A18980 CAS S3K2 WAS IT A BB F5A18990 NOP NO F5A19000 TRA X26 F5A19010 TRA X22 YES, F5A19020 X26 CLA S3V5 GET CURRENT LPLST ENTRY F5A19030 CAS S3K1 IS THIS AN END-LOOP-LIST F5A19040 TRA X31 NO F5A19050 TRA X88 YES F5A19060 X31 CAL S3V5 F5A19070 ANA LK3 F5A19080 CAS XK17 WHAT TYPE ENTRY IS THIS F5A19090 TRA X118 F5A19100 TRA X33 TRANSPARENT REGION F5A19110 TRA X32 BB F5A19120 X118 CLA S3V5 OPAQUE REGION F5A19130 TSX SE,4 IS F5A19140 CLA BBB+5,1 THIS F5A19150 STO XV24 F5A19160 STD XV23 THE F5A19170 CLA LPLST SAME F5A19180 LDQ FK4 F5A19190 TLQ X221 F5A19200 TXI X213,0,- F5A19210 X221 TSX SE1,4 REGION F5A19220 CLA BBB+5,1 AS F5A19230 ANA S2K1 AT THE BEGINNING F5A19240 SUB XV23 OF THE F5A19250 STO XV24 STORE IND. OF SAMENESS OF 1ST REGION F5A19260 TZE X61 LPLST F5A19270 X213 CLA S3V5 F5A19280 X57 TSX S5,4 NO,MATCH ENTR. REQU. F5A19290 X63 LXD XV23,1 GET F5A19300 CLA REG,1 REGION WORD F5A19310 TSX SE,4 GET INDEX OF 1ST BB F5A19320 X209 CAL BBB+1,1 GET THE F5A19330 SLW XV9 ORIGINAL PERM. NOS. F5A19340 ANA XK20 STORE WORD TO F5A19350 SLW XV8 CONTAIN NEW PERM. NOS. F5A19360 AXT 3,2 SET COUNT TO 3. F5A19370 X210 CAL XV9 GET THE F5A19380 ARS 3,2 F5A19390 ARS 3,2 PERM. NO. AND F5A19400 ANA S9K3 PUT IT F5A19410 PDX 0,4 IN 4. F5A19420 CLA EN4+3,4 GET THE F5A19430 ALS 3,2 CORRESPONDENCE F5A19440 ALS 3,2 OF THE ENTR. REQUIREMENTS F5A19450 ORS XV8 FORM NEW PERM. F5A19460 TIX X210,2,1 F5A19470 CAL XV8 STORE NEW PERM. F5A19480 STD BBB+1,1 NOS. F5A19490 CLA BBB+5,1 IS THIS THE LAST F5A19500 ANA SBK2 BB IN REGION F5A19510 CAS SBK2 F5A19520 TRA X211 NO. F5A19530 TRA X212 YES, DONE F5A19540 X211 TSX SE1,4 ARRANGE TO DO NEXT F5A19550 TRA X209 BB. F5A19560 X212 AXT 3,1 SET COUNT TO 3. F5A19570 X60 CLA IN1+3,1 GET INDEX F5A19580 PDX 0,2 OF EN. F5A19590 CLA EN1+3,2 IS C(ENM) F5A19600 CAS IR1+3,1 =C(IRN) F5A19610 TRA X58 F5A19620 TRA X64 YES, F5A19630 X58 CAS S5K2 IS C(ENM) REAL F5A19640 NOP NO, F5A19650 TRA X119 F5A19660 TRA X67 YES, F5A19670 X119 CLA AC1+3,1 NO,IS F5A19680 X102 TZE X59 IRN ACTIVE F5A19690 X65 TSX SB,4 YES,RECORD SXD NECESSARY. F5A19700 X59 TIX X60,1,1 F5A19710 TSX SG,4 PERMUTE REGION WORD F5A19720 X89 CLA LPLST (COME HERE FROM ACTIVE PASS) F5A19730 CAS S3K2 IS IT A BB F5A19740 TSX SE1,4 NO F5A19750 TRA X206 F5A19760 TRA X207 F5A19770 X206 CLA BBB+5,1 F5A19780 PDX 0,1 F5A19790 CLA REG,1 FORM NO OF 1ST BB IN REGION F5A19800 X207 STD XV2 F5A19810 AXT 3,1 F5A19820 X116 CLA S5K1 F5A19830 CAS IR1+3,1 IS THIS IR EMPTY F5A19840 TRA X115 F5A19850 CAL XK23+3,1 YES, INITIALIZE IR F5A19860 ORS XV2 TO EMPTYNESS F5A19870 X115 TIX X116,1,1 COUNT TO 3 F5A19880 AXT S3P1,2 PREPARE TO SCAN LOOP LIST. F5A19890 SXD XV12,2 F5A19900 X79 CLA LPLST+S3P1,2 F5A19910 CAS S3K1 IS THIS END LOOP LIST F5A19920 TRA X120 F5A19930 TRA X81 YES. F5A19940 X120 CAS S3K2 IS IT A BB F5A19950 NOP F5A19960 TRA X121 F5A19970 ARS 18 YES. F5A19980 X121 STA SBV3 STORE EXIT BB NO. F5A19990 CLA LPLST+S3P1+1,2 F5A20000 CAS S3K1 IS NEXT QUANTITY AN END LPLST F5A20010 TRA X107 F5A20020 TRA X114 YES. F5A20030 X107 ARS 18 F5A20040 STA XV18 STORE ENTRY BB NO. F5A20050 ADD ONEA F5A20060 TSX SE1,4 F5A20070 CAL BBB,1 F5A20080 ANA SBK2 F5A20090 STO SBV5 F5A20100 CLA XV18 F5A20110 TSX SE1,4 F5A20120 CLA BBB,1 F5A20130 ANA SBK2 F5A20140 X109 SLW SBV2 F5A20150 TSX SE5,4 F5A20160 CAL PRED,1 F5A20170 ANA SBK2 F5A20180 CAS SBV3 IS THIS THE RIGHT TRANSFER F5A20190 TRA X108 F5A20200 TRA X110 YES F5A20210 X108 CLA SBV2 ARRANGE TO TRY F5A20220 ADD ONEA NEXT PRED. F5A20230 CAS SBV5 IS THIS PRED ENTRY IN SAME BB F5A20240 TRA X109 F5A20250 TRA X222 F5A20260 TRA X109 F5A20270 X110 CLA PRED,1 SET SIGN F5A20280 SSM OF PRED. F5A20290 STO PRED,1 ENTRY NEGATIVE. F5A20300 TRA X108 F5A20310 X222 CLA SBV3 GET INDEX F5A20320 ADD ONEA F5A20330 TSX SE1,4 OF F5A20340 CLA BBB,1 F5A20350 ANA S2K1 F5A20360 STO SBV5 F5A20370 CLA SBV3 F5A20380 TSX SE1,4 F5A20390 CLA BBB,1 F5A20400 ANA S2K1 F5A20410 X112 SLW SBV2 F5A20420 TSX SE6,4 F5A20430 CAL SUCC,1 F5A20440 ANA SBK2 F5A20450 CAS XV18 IS THIS RIGHT SUCC. F5A20460 TRA X111 F5A20470 TRA X113 F5A20480 X111 CLA SBV2 ARRANGE TO TRY NEXT SUCC. F5A20490 ADD ONED F5A20500 CAS SBV5 IS THIS SUCC IN SAME BB F5A20510 TRA X112 F5A20520 TRA X74 F5A20530 TRA X112 F5A20540 X114 CLA LPIND IS THIS F5A20550 TPL X74 A LOOP F5A20560 CLA LPLST YES F5A20570 TRA X107 F5A20580 X113 CLA SUCC,1 SET SIGN F5A20590 SSM OF SUCC ENTRY F5A20600 STO SUCC,1 NEGATIVE F5A20610 TRA X111 F5A20620 X74 LXD XV12,2 F5A20630 CLA LPLST+S3P1,2 F5A20640 CAS S3K2 IS IT A BB F5A20650 NOP F5A20660 TRA X122 F5A20670 TRA X80 YES F5A20680 X122 PDX 0,4 F5A20690 TXH X205,4,-2 IS THE DECR. AN IMPOSSIBLE BB F5A20700 ARS 18 F5A20710 X205 TSX SE1,4 F5A20720 CLA BBB+5,1 THE F5A20730 PDX 0,1 REGION F5A20740 CAL REG,1 WORD F5A20750 SLW XV17 F5A20760 TZE X105 HAS THIS REGION ALREADY BEEN RENUMBERED F5A20770 ANA LK3 OR THE LX BITS FOR F5A20780 ORS XV2 OLD REGION IN NEW REGION WORD. F5A20790 CAL XK22 AND THE OLD PHI F5A20800 ORA XV17 BITS F5A20810 ANS XV2 INTO NEW REGION WORD. F5A20820 CLA ZERO CLEAR OLD F5A20830 STO REG,1 REGION WORD. F5A20840 CLA XV17 GET INDEX OF F5A20850 ARS 18 FIRST BB IN REG F5A20860 X75 STA XV22 STOREBB NO. F5A20870 TSX SE1,4 GET INDEX OF BB F5A20880 X101 CLA XV1 STORE THE F5A20890 STD BBB+5,1 NEW REGION NO. F5A20900 CLA BBB+5,1 IS THIS THE F5A20910 ANA SBK2 LAST BB F5A20920 CAS SBK2 OF THE REGION F5A20930 TRA X75 F5A20940 TRA X76 YES. F5A20950 TRA X75 F5A20960 X105 CLA XV22 RECORD THAT PREVIOUSLY F5A20970 TSX SE1,4 NUMBERED BB F5A20980 CLA XK22 WAS LAST F5A20990 STA BBB+5,1 ONE IN NEW REGION. F5A21000 TRA X81 FINISHED RENUMBERING. F5A21010 X80 ARS 18 F5A21020 STA XV22 F5A21030 TSX SE1,4 F5A21040 X76 LXD XV12,2 F5A21050 X140 TXI X140+1,2,-1 F5A21060 SXD XV12,2 F5A21070 X77 CLA LPLST+S3P1,2 F5A21080 CAS S3K1 IS THIS END LOOP LIST F5A21090 X219 TXI X217,0,- SEE X217+2 F5A21100 CLA S5K1 YES F5A21110 X216 STA BBB+5,1 RECORD THE NEXT BB NO. F5A21120 CLA XV1 RECORD THE F5A21130 STD BBB+5,1 NEW REGION F5A21140 TRA X79 NO. F5A21150 X217 LDQ S3K2 F5A21160 TLQ X220 F5A21170 X215 ARS 18 NO F5A21180 X218 TXI X216,0,- F5A21190 X220 SXD X219,2 F5A21200 TSX SE,4 F5A21210 CLA BBB+5,1 F5A21220 PDX 0,1 F5A21230 CLA REG,1 GET REGION WORD F5A21240 STD X218 F5A21250 CLA XV22 F5A21260 TSX SE1,4 F5A21270 CLA X218 F5A21280 LXD X219,2 F5A21290 TXI X215,-,- F5A21300 X81 CLA XV2 F5A21310 ORA ONEA F5A21320 LXD XV1,1 NEW REGION F5A21330 STO REG,1 WORD. F5A21340 TRA F FINISHED TREATMENT, GO FORM NEXT LOOPLISTF5A21350 X61 AXT 3,1 F5A21360 X62 PXD 0,1 PLACE APPROPRIATE NOS. F5A21370 STD IN1+3,1 IN CORRSEPONDENCE F5A21380 STD EN4+3,1 TABLES F5A21390 TIX X62,1,1 F5A21400 CLA S3V5 F5A21410 TSX S9,4 GET THE ENTRANCE REQUIREMENTS F5A21420 TRA X63 F5A21430 X64 CLA AC1+3,1 IS THIS I.R. F5A21440 TZE X59 ACTIVE F5A21450 LXD S3V4,4 YES. F5A21460 CLA LPLST+S3P1-1,4 GET F5A21470 SXD XV11,1 THE F5A21480 SXD XV12,2 REGION F5A21490 TSX SE,4 WORD F5A21500 CLA BBB+5,1 IN F5A21510 PDX 0,4 THE F5A21520 LDQ REG,4 MQ. F5A21530 LXD XV11,1 HAS THERE F5A21540 LXD XV12,2 F5A21550 RQL 3,2 BEEN AN LX F5A21560 TQP X66 FOR THIS I.R. F5A21570 TRA X65 YES F5A21580 X66 CLA XV24 F5A21590 TNZ X208 IS THIS SAME REG. AS BEGINS STRING F5A21600 CLA LPLST YES F5A21610 TSX SA,4 GET ACTIVE INDS. AT START OF STRING F5A21620 LXD XV11,1 F5A21630 CLA ACT1+3,1 WAS THIS IR ACTIVE AT START F5A21640 TPL X65 F5A21650 X208 LXD S3V4,4 YES, MARK ALL F5A21660 CLA LPLST+S3P1-1,4 BBS IN OPAQUE F5A21670 LXD XV11,2 REGION ACTIVE F5A21680 TSX SD,4 F5A21690 LXD XV11,1 F5A21700 TSX SC,4 MARK SECTION OF LLLST ACTIVE F5A21710 TRA X59 F5A21720 X67 SXD XV11,1 F5A21730 LXD S3V4,1 GET F5A21740 CLA LPLST+S3P1-2,1 PRED+ NO F5A21750 CAS S3K2 IS THIS A BB F5A21760 NOP NO F5A21770 TRA X123 F5A21780 ARS 18 YES,SHIFT BB NO RIGHT. F5A21790 X123 STA SBV3 AND STORE IT F5A21800 CLA LPLST+S3P1-1,1 GET INDEX OF F5A21810 TSX SE,4 THIS BB F5A21820 CLA BBB+1,1 GET TO STORE F5A21830 STO XV9 PREM. NO. F5A21840 CLA BBB,1 GET PRED. NO. F5A21850 X68 SLW SBV2 F5A21860 TSX SE5,4 GET INDEX OF PRED. F5A21870 CAL PRED,1 IS THIS THE F5A21880 ANA SBK2 RIGHT PRED F5A21890 CAS SBV3 F5A21900 TRA X69 F5A21910 TRA X70 YES. F5A21920 X69 CLA SBV2 F5A21930 ADD ONEA F5A21940 TRA X68 F5A21950 X70 AXT 3,4 SET COUNT TO 3. F5A21960 X72 CAL XV9 FIND F5A21970 ARS 3,4 THE F5A21980 ARS 3,4 PERM+ NO. F5A21990 ANA S9K3 F5A22000 CAS XV11 IS THIS THE RIGHT I.R. F5A22010 TRA X71 NO, F5A22020 TRA X73 YES, F5A22030 X71 TIX X72,4,1 NO, F5A22040 TSX DIAG,4 ERROR--TO DIAGNOSTIC. F5A22050 X73 CAL XK16 RECORD THAT AN F5A22060 ARS 3,4 LX IS F5A22070 ORS PRED,1 NECESSARY. F5A22080 LXD XV11,4 RECORD F5A22090 CAL S5K3 LX F5A22100 ARS 3,4 FOR THIS I.R. F5A22110 ORS XV2 IN THIS REGION. F5A22120 LXD XV11,1 F5A22130 TRA X119 F5A22140 X33 CLA S3V5 GET CURRENT LPLST ENTRY F5A22150 TSX S5,4 MATCH ENTRANCE REQU. F5A22160 CLA S3V5 F5A22170 TSX SA,4 GET EXIT COND. F5A22180 CLA S3V5 F5A22190 TSX SE,4 GET INDEX OF F5A22200 CLA BBB+5,1 B.B. F5A22210 PDX 0,1 GET F5A22220 CLA REG,1 REGION WORD F5A22230 TSX SE,4 GET INDEX OF FIRST BB F5A22240 X40 SXD XV13,1 F5A22250 CAL BBB+1,1 CLEAR REGISTER TO F5A22260 SLW XV9 CONTAIN PERM. NOS. F5A22270 ANA XK20 GET ORIGINAL PERM. NOS. F5A22280 SLW XV8 F5A22290 AXT 3,2 SET COUNT TO 3. F5A22300 X38 CAL XV9 GET THE F5A22310 ARS 3,2 PERM. F5A22320 ARS 3,2 NO. AND F5A22330 ANA S9K3 PUT IT F5A22340 PDX 0,4 IN 4. F5A22350 CLA EN4+3,4 GET THE CORRESPONDENCE F5A22360 ALS 3,2 OF THE ENTR, F5A22370 ALS 3,2 REQUIREMENTS. F5A22380 ORS XV8 FORM NEW PERM. NOS. F5A22390 SXD XV10,1 F5A22400 CLA EN4+3,4 F5A22410 PDX 0,1 GET INDEX OF I.R. F5A22420 CLA EN1+3,4 F5A22430 CAS S5K1 IS ENM EMPTY F5A22440 TRA X34 NO, F5A22450 TRA X41 YES, F5A22460 X34 CAS LK1 NO, IS C(ENM) HASH F5A22470 TRA X35 NO, F5A22480 TRA X36 YES, F5A22490 X35 CAS IR1+3,1 C-(ENM)=C(IRN) F5A22500 TRA X36 NO F5A22510 TRA X430 YES F5A22520 X36 LXD XV10,1 NO F5A22530 X42 TXI X42+1,1,-1 F5A22540 X37 TIX X38,2,1 COUNT TO 3 F5A22550 CAL XV8 STORE NEW F5A22560 STD BBB-2,1 PERM. NOS. F5A22570 STP BBB-2,1 AND ACTIVE INDICATORS F5A22580 CLA BBB+2,1 IS THIS F5A22590 ANA SBK2 LAST BB IN REGION F5A22600 CAS SBK2 F5A22610 TRA X39 F5A22620 TRA X45 YES,DONE. F5A22630 X39 TSX SE1,4 GET INDEX OF NEXT B.B. F5A22640 TRA X40 F5A22650 X430 CLA AC1+3,1 IS THIS IR ACTIVE F5A22660 TZE X36 NO F5A22670 SXD W2+1,1 YES F5A22680 CLA IR1+3,1 IS THIS SAME TAG IN CORRESPONDING BB EXITF5A22690 STO XV21 F5A22700 LXD XV10,1 F5A22710 CLA BBB+2,1 F5A22720 ANA S5K1 F5A22730 SUB XV21 F5A22740 TNZ W0 NO. SEE IF TAG APPEARS IN OTHER POSITIONF5A22750 CLA ACT1+3,4 YES. IS THIS ACT ACTIVE AT EXIT OF REGIONF5A22760 TMI X44A YES, TEST FOR LX IN THIS REGION (32)F5A22770 CLA EX1+3,4 NO F5A22780 LDQ S5K2 IS THIS EX REAL AT EXIT OF REGION F5A22790 TLQ X44A NO, TEST FOR LX IN THIS REGION (32)F5A22800 TRA X42 YES F5A22810 X87 AXT **,2 (32)F5A22820 X41 SXA X86,1 (32)F5A22830 REM C(XV10)= INDEX OF PARTICULAR F5A22840 REM ENTRANCE REQUIREMENT. F5A22850 CLA IR1+3,1 (32)F5A22860 STO XV6 F5A22870 ALS 18 STORE AWAY THIS F5A22880 ADD IR1+3,1 TAG TEMPORARILY. F5A22890 SLW XV7 F5A22900 CLA IR1+3,1 IS THIS TAG REAL F5A22910 LDQ S5K2 F5A22920 TLQ X201 NO F5A22930 LXD XV13,1 YES F5A22940 AXT 3,4 SET COUNT TO 3. F5A22950 X85 CAL BBB+2,1 F5A22960 LRS 18 F5A22970 CAS XV6 IS ENTR. REQU. EQUAL TO TAG F5A22980 TRA X82 NO, F5A22990 TRA X86 YES, F5A23000 X82 CLA ZERO NO, F5A23010 LLS 18 F5A23020 SUB XV6 IS TAG EQUAL TO EXIT COND. (32)F5A23030 TZE X86 IF EITHER, GO KILL CONTENTS (32)F5A23040 TXI X84,1,-1 (32)F5A23050 X84 TIX X85,4,1 COUNT TO 3 (32)F5A23060 X201 CLA XV7 STORE THE (32)F5A23070 LXD XV10,1 NEW ENTRANCE- (32)F5A23080 STO BBB+2,1 EXIT REQUIREMENTS. (32)F5A23090 TRA X42 (32)F5A23100 X86 AXT **,1 RESTORE IR POINTER (32)F5A23110 SXA X87,2 PRESERVE COUNTER FROM SB DESTRUCTION (32)F5A23120 ZET AC1+3,1 IS IR ACTIVE (32)F5A23130 TSX SB,4 YES, RECORD SXD NECESSARY (32)F5A23140 CAL LK1 REPLACE IR CONTENTS (32)F5A23150 STO IR1+3,1 WITH HASH (32)F5A23160 CAL S5K3 INDICATE LX FOR THIS IR IN (32)F5A23170 ARS 3,1 REGION BEING FORMED, TO FORESTALL (32)F5A23180 ORS XV2 ERROR IF MATCHED AGAIN LATER (32)F5A23190 TRA X87 GO RESTORE IR2 (32)F5A23200 X44 CAL S5K3 RECORD THIS F5A23210 ARS 3,2 I.R. F5A23220 ORS XV8 ACTIVE F5A23230 TRA X36 (32)F5A23240 X45 AXT 3,2 F5A23250 X56 SXD XV14,2 F5A23260 CLA EN4+3,2 F5A23270 PDX 0,4 GET INDEX F5A23280 SXD SBV4,4 OF I.R. F5A23290 CLA EN1+3,2 F5A23300 CAS S5K1 IS ENM EMPTY F5A23310 TRA X46 F5A23320 TRA X223 YES F5A23330 X46 CAS LK1 IS THERE HASH IN ENM F5A23340 TRA X134 F5A23350 TRA X55 YES F5A23360 X134 CAS IR1+3,4 DOES CONTENTS OF IR EQUAL CONTENTS OF EN F5A23370 TRA X47 NO F5A23380 TRA X131 YES F5A23390 X47 LXD S3V4,1 GET AND F5A23400 CLA LPLST+S3P1-2,1 STORE PRED. F5A23410 CAS S3K2 BB F5A23420 NOP NO. F5A23430 TRA X124 F5A23440 ARS 18 F5A23450 X124 STA SBV3 F5A23460 CLA LPLST+S3P1-1,1 GET F5A23470 TSX SE,4 BB NO. F5A23480 CLA BBB+1,1 STORE THE F5A23490 STO XV9 PERM. NOS. F5A23500 CLA BBB+5,1 F5A23510 PDX 0,4 F5A23520 LXD XV14,2 F5A23530 CAL S5K3 F5A23540 ARS 3,2 F5A23550 ORS REG,4 F5A23560 CLA BBB,1 GET PRED. NO. F5A23570 X48 SLW SBV2 STORE PRED. NO. F5A23580 TSX SE5,4 OBTAIN PRED. INDEX. F5A23590 CAL PRED,1 IS THIS F5A23600 ANA SBK2 THE CORRECT F5A23610 CAS SBV3 PRED F5A23620 TRA X49 F5A23630 TRA X50 YES. F5A23640 X49 CLA SBV2 ARRANGE TO F5A23650 ADD ONEA TRY NEXT PREDECESSOR. F5A23660 TRA X48 F5A23670 X50 AXT 3,4 1 HAS INDEX OF PRED. F5A23680 X52 CAL XV9 EXTRACT F5A23690 ARS 3,4 THE F5A23700 ARS 3,4 PERM. F5A23710 ANA S9K3 NO. F5A23720 CAS SBV4 IS THIS THE PERM. NO. F5A23730 TRA X51 F5A23740 TRA X53 YES. F5A23750 X51 TIX X52,4,1 F5A23760 TSX DIAG,4 ERROR--TO DIAGNOSTIC. F5A23770 X53 CAL XK16 GENERATE F5A23780 ARS 3,4 THE LX BIT. F5A23790 ORS PRED,1 INSERT LX BIT. F5A23800 X55 LXD SBV4,1 IS THE F5A23810 CLA AC1+3,1 I.R. F5A23820 TZE X135 ACTIVE F5A23830 TSX SB,4 YES,RECORD SXD NEEDED. F5A23840 X135 LXD XV14,2 REPLACE IR F5A23850 LXD SBV4,4 BY EXIT CONDITIONS F5A23860 CLA EX1+3,2 OF THE F5A23870 STO IR1+3,4 REGION F5A23880 X136 CLA ACT1+3,2 IS IR F5A23890 TPL X54 ACTIVE AT EXIT F5A23900 CLA S3V4 SET F5A23910 SSM ACTIVE F5A23920 SUB ONED INDICATOR F5A23930 STO AC1+3,4 F5A23940 X54 LXD XV14,2 COUNT TO F5A23950 TIX X56,2,1 3 F5A23960 TSX SG,4 PERMUTE REGION WORD F5A23970 CAL REG,2 F5A23980 ANA XK22 F5A23990 SLW REG,2 F5A24000 AXT 3,4 F5A24010 XY1 CLA IR1+3,4 F5A24020 SUB S5K1 F5A24030 TNZ XY2 F5A24040 CAL XK23+3,4 F5A24050 ORS REG,2 F5A24060 XY2 TIX XY1,4,1 F5A24070 TRA X3 F5A24080 X223 CLA IR1+3,4 IS CONTENTS OF IR REAL F5A24090 LDQ S5K2 F5A24100 TLQ X54 F5A24110 AXT 3,1 YES, SET COUNT TO 3. F5A24120 X225 CAS EX1+3,1 IS CONTENTS SAME AS EXIT CONDITIONS F5A24130 TRA X224 F5A24140 TRA X225A YES (32)F5A24150 X224 TIX X225,1,1 COUNT TO 3 F5A24160 TRA X54 F5A24170 X226 CLA LK1 REPLACE IR BY E F5A24180 STO IR1+3,1 (32)F5A24190 TRA X54 F5A24200 X131 LDQ EX1+3,2 IS THE EXIT F5A24210 CLA S5K2 CONDITION REAL FOR THIS IR F5A24220 TLQ X132 F5A24230 X133 LXD SBV4,1 NO F5A24240 TSX SC,4 RECORD PART OF LPLST ACTIVE F5A24250 TRA X135 F5A24260 X132 CLA ACT1+3,2 IS THIS IR ACTIVE F5A24270 TPL X135 AT EXIT OF REGION F5A24280 TRA X133 YES F5A24290 X88 CLA LPIND F5A24300 TPL XY3 IS THIS A LOOP F5A24310 CLA LPLST-1 YES F5A24320 CAS S3K2 IS LAST LPLST QUANTITY A BB F5A24330 NOP NO F5A24340 TRA X125 F5A24350 ARS 18 YES F5A24360 X125 STA SBV3 STORE PRED. NO. F5A24370 CLA LPLST F5A24380 TSX SE,4 GET INDEX OF 1ST BB IN LOOP. F5A24390 SXD XV8,1 STORE INDEX OF 1ST BB F5A24400 CLA BBB,1 F5A24410 X91 SLW XV16 STORE PRED. NO. F5A24420 TSX SE5,4 GET INDEX OF PRED. F5A24430 CLA PRED,1 IS F5A24440 ANA SBK2 THIS THE F5A24450 CAS SBV3 RIGHT PRED F5A24460 TRA X90 F5A24470 TRA X92 YES F5A24480 X90 CLA XV16 F5A24490 ADD ONEA F5A24500 TRA X91 F5A24510 XY3 AXT 3,1 F5A24520 XY4 TSX SC,4 F5A24530 TIX XY4,1,1 F5A24540 TRA X89 F5A24550 X97 SXD X137,1 F5A24560 CAS IR1+3,1 IS CONTENTS OF IRN EQUAL TO CONTENTS OF EF5A24570 TRA X98 F5A24580 TRA X93 YES F5A24590 X98 CAL S5K3 RECORD LX FOR F5A24600 ARS 3,1 THIS IR IN THIS F5A24610 LXD XV1,1 REGION. F5A24620 ORS REG,1 F5A24630 SXD XV14,4 GET F5A24640 SXD XV15,2 INDEX F5A24650 CLA XV16 OF F5A24660 TSX SE5,4 PRED. F5A24670 LXD XV14,4 F5A24680 LXD XV15,2 F5A24690 CAL XK16 RECORD F5A24700 ARS 3,4 LX F5A24710 ORS PRED,1 NECESSARY. F5A24720 LXD X137,1 F5A24730 X137 TXI X96,0,- F5A24740 X92 LXD XV8,2 F5A24750 AXT 3,4 SET COUNT TO 3. F5A24760 CLA BBB+1,2 GET THE WORD WITH F5A24770 STO XV9 PERM. NOS. F5A24780 X95 CAL XV9 GET F5A24790 ARS 3,4 INDEX F5A24800 ARS 3,4 OF F5A24810 ANA S9K3 THE F5A24820 PDX 0,1 I.R. F5A24830 CAL BBB+2,2 GET ENTRANCE F5A24840 ARS 18 REQUIREMENT. F5A24850 CAS S5K2 IS ENM REAL F5A24860 NOP F5A24870 TRA X96 NO F5A24880 TRA X97 YES F5A24890 X96 CLA AC1+3,1 IS IRN F5A24900 TZE X93 ACTIVE F5A24910 SXD XV14,2 YES, F5A24920 SXD XV15,4 F5A24930 TSX SB,4 RECORD SXD NECESSARY. F5A24940 LXD XV14,2 F5A24950 LXD XV15,4 F5A24960 X93 TXI X93+1,2,-1 F5A24970 X94 TIX X95,4,1 COUNT TO 3 F5A24980 REM ACTIVE PASS F5A24990 REM FOLLOWS 2 ED LXING PASS. F5A25000 LDQ S3K3 INITIALIZE THE F5A25010 STQ S3V4 LOOP LIST F5A25020 LDQ S5K3 AND F5A25030 STQ S3V3 MAKE SURE TAG F5A25040 STQ ACIND SET IND. TO SAY THIS IS ACTIVE PASS F5A25050 SXD S3V2,0 LOCATION GETS SET F5A25060 A3 CLA ZERO IS THERE ANY ACTIVE IR LEFT F5A25070 ADM AC1 F5A25080 ADM AC2 F5A25090 ADM AC3 F5A25100 TZE X89 NO, GO TO RENUMBER. F5A25110 TSX S3,4 YES. TRY TO GET NEXT TAG. F5A25120 TRA A12 COME HERE IF TAG NOT GOT F5A25130 CLA S39 COMPUTE LOCATION OF THIS F5A25140 ANA SBK2 TAG=(ADDR. FOLLOWING F5A25150 ADD S4V1 TIX BLOCK + L(CM)-CM TAG F5A25160 SUB S4K3 - INDEX OF TAG.) F5A25170 ALS 18 F5A25180 SBM S3V2 F5A25190 LRS 53 F5A25200 STQ XV5 F5A25210 DVP XK9 FORM LOC/9 AND F5A25220 STQ XV3 REMAINDER F5A25230 STO XV4 F5A25240 CLA TPE IS THIS F5A25250 CAS S2K2 AN LX F5A25260 TRA A1 F5A25270 TRA A5 YES F5A25280 A1 CAS XK15 IS IT AN LX PRIME F5A25290 TRA A20 F5A25300 TRA A8 YES F5A25310 A20 CAS XK21 IS IT A DED F5A25320 TRA A21 F5A25330 TRA A8 YES. F5A25340 A21 CAS XK12 IS IT AN ACTIVE INSTR. F5A25350 TRA A2 F5A25360 TRA A5 YES. F5A25370 A2 CLA XV3 GET INDEX F5A25380 TSX SE4,4 OF STAG ENTRY. F5A25390 LXA XV4,2 IS THERE F5A25400 CAL STAG,1 AN LX F5A25410 ARS 8,2 IN FRONT F5A25420 ANA XK11 OF F5A25430 CAS XK11 THIS INSTR. F5A25440 TRA A3 F5A25450 TRA A4 YES. F5A25460 TRA A3 F5A25470 A4 CAL XV4 GET F5A25480 COM THE F5A25490 PAX 0,2 S-TAG F5A25500 CAL STAG,1 IN F5A25510 ALS 0,2 DECR. F5A25520 ALS 0,2 PART. F5A25530 ANA S9K3 F5A25540 PDX 0,1 F5A25550 CLA AC1+3,1 IS THE CORRESPONDING F5A25560 TZE A3 I.R. ACTIVE F5A25570 TSX SB,4 YES,RECORD SXD NECESSARY F5A25580 TRA A3 F5A25590 A5 CLA XV3 F5A25600 TSX SE4,4 GET STAG INDEX. F5A25610 CAL XV4 F5A25620 COM IS IT F5A25630 PAX 0,2 TO F5A25640 CAL STAG,1 AN F5A25650 ALS 0,2 F5A25660 ALS 0,2 ACTIVE F5A25670 ANA S9K3 F5A25680 PDX 0,1 IR F5A25690 CLA AC1+3,1 F5A25700 TZE A3 F5A25710 A51 CLA IR1+3,1 IS IT F5A25720 CAS 1TAG SAME TAU-TAG F5A25730 TRA A6 F5A25740 TRA A7 YES F5A25750 A6 TSX SB,4 RECORD SXD NEEDED. F5A25760 TRA A3 F5A25770 A7 TSX SC,4 RECORD CERTAIN PART OF F5A25780 TRA A3 LOOP LIST ACTIVE. F5A25790 A8 CLA XV3 GET F5A25800 TSX SE4,4 THE F5A25810 CAL XV4 F5A25820 COM S-TAG F5A25830 PAX 0,2 OF F5A25840 CAL STAG,1 F5A25850 STO S1V6 F5A25860 ALS 0,2 THIS F5A25870 ALS 0,2 INSTR. F5A25880 ANA S9K3 F5A25890 PDX 0,1 F5A25900 TZE A3 DOES THIS INSTR HAVE AN S-TAG F5A25910 CLA AC1+3,1 YES. F5A25920 TZE A3 IS THIS IR ACTIVE F5A25930 CLA ZERO F5A25940 PXD 0,2 F5A25950 COM 0 F5A25960 PDX 0,4 F5A25970 CLA S1V6 F5A25980 ARS 8,4 F5A25990 ANA ONED F5A26000 TNZ A51 F5A26010 TSX SC,4 YES,RECORD SECTION OF LPLST ACTIVE F5A26020 TRA A3 F5A26030 A12 LXD S3V4,1 GET INDEX OF LPLST QUANTITY F5A26040 CLA LPLST+S3P1-2,1 GET PREVIOUS LPLST QUANTITY F5A26050 STO XV19 F5A26060 LDQ S3K2 WAS IT A BB F5A26070 TLQ A28 NO F5A26080 A25 TSX SE,4 YES, WAS THAT F5A26090 CLA BBB,1 BB TERMINATED F5A26100 ARS 33 BY A F5A26110 ADD ONEA GO TO N F5A26120 TNZ A28 F5A26130 AXT 3,1 YES F5A26140 A26 CLA AC1+3,1 IS THIS F5A26150 TZE A27 IR ACTIVE F5A26160 TSX SB,4 YES, RECORD SXD NECESSARY F5A26170 A27 TIX A26,1,1 F5A26180 A28 CLA S3V5 F5A26190 LDQ S3K2 IS THIS F5A26200 TLQ A35 ATR. REGION F5A26210 ANA S5K1 NO, BB F5A26220 TZE A3 F5A26230 ALS 3 F5A26240 PDX 0,1 F5A26250 TXL AP1,1,2 F5A26260 TXI AP1,1,-1 F5A26270 AP1 CLA AC1+3,1 IS THIS IR ACTIVE F5A26280 TZE A3 NO F5A26290 TSX SB,4 YES, RECORD SXD NECESSARY F5A26300 TRA A3 F5A26310 A35 TSX SE,4 F5A26320 CLA BBB+5,1 F5A26330 PDX 0,2 INDEX OF REGION TO 2 F5A26340 CLA REG,2 GET REGION F5A26350 STO XV19 F5A26360 AXT 3,1 F5A26370 A31 CAL XV19 F5A26380 ALS 3,1 F5A26390 PBT IS THERE AN LX F5A26400 TRA A30 FOR THIS IR F5A26410 CLA AC1+3,1 YES F5A26420 TZE A30 IS THIS IR ACTIVE F5A26430 TSX SB,4 YES, RECORD SXD NECESSARY F5A26440 A30 TIX A31,1,1 F5A26450 CLA S3V5 F5A26460 TSX SA,4 GET THE EXIT CONDITIONS F5A26470 AXT 3,1 F5A26480 A34 CLA AC1+3,1 F5A26490 TZE A32 IS THIS IR ACTIVE F5A26500 CLA EX1+3,1 YES F5A26510 LDQ S5K2 F5A26520 TLQ A33 IS THE EXIT CONDITION REAL F5A26530 CLA ACT1+3,1 YES F5A26540 TPL A32 IS THE IR ACTIVE AT EXIT F5A26550 A33 SXD XV20,1 YES F5A26560 LXD XV20,2 F5A26570 CLA S3V5 F5A26580 TSX SD,4 RECORD TR. REG. ACTIVE F5A26590 LXD XV20,1 F5A26600 TSX SC,4 RECORD SECTION OF LPLST ACTIVE F5A26610 A32 TIX A34,1,1 COUNT TO 3 F5A26620 TRA A3 F5A26630 W0 CLA BBB+2,1 DOES THIS IR MATCH THE CORRESPONDING F5A26640 ARS 18 ENTRANCE REQUIREMENTS FOR THIS BB F5A26650 SUB XV21 F5A26660 TZE X42 YES F5A26670 AXT 3,1 NO F5A26680 LXD XV13,4 F5A26690 W1 CAL BBB+2,4 (32)F5A26700 LRS 18 CONDITION OF THIS BB F5A26710 SUB XV21 F5A26720 TZE W3 F5A26730 CLA ZERO F5A26740 LLS 18 F5A26750 SUB XV21 F5A26760 TZE W3 F5A26770 TXI W2,4,-1 F5A26780 W2 TIX W1,1,1 F5A26790 TXL X36,-,- NO F5A26800 W3 SXD W4,2 YES F5A26810 LXD W2+1,1 F5A26820 TSX SB,4 RECORD SX NECESSARY F5A26830 LXD W4,2 F5A26840 W4 TXL X36,-,- F5A26850 REM INITIALIZATION. F5A26860 I DCT 0 CLEAR DIVIDE CHECK IF ON. F5A26870 NOP 0 F5A26880 AXT CMTAG-END29,1 CLEAR TO CMTAG. F5A26890 STZ CMTAG,1 F5A26900 TIX *-1,1,1 F5A26910 CLA KEYS+1 F5A26920 STO SE4J+2 PREDL F5A26930 STO SE4J+3 SUCCL F5A26940 CLA KEYS+2 F5A26950 STO SE4J+1 BBBL F5A26960 CLA KEYS+3 F5A26970 STO SE4J F5A26980 PSE 96 CLEAR SENSE LIGHTS. F5A26990 CLA KEYS LOAD LAST TAGLIST+1 ENTRY. F5A27000 SUB ONEA F5A27010 TSX SE1,4 F5A27020 I13 CLA BBB+1,1 PICKS UP LAST T-TAG+1. F5A27030 ANA S3K4 F5A27040 STO S4V3 F5A27050 LRS 35 COMPUTE LOCATION A TAG F5A27060 DVP S4K2 WOULD HAVE IF IT F5A27070 STQ IV1 WERE FIRST IN NEXT RECORD. F5A27080 TZE I1 F5A27090 CLA ONEA F5A27100 I1 ADD IV1 F5A27110 LRS 35 F5A27120 MPY S4K2 F5A27130 LLS 35 F5A27140 STO S4V2 F5A27150 STO S4V1 F5A27160 TSX S4,4 INITIALIZE CMTAG F5A27170 CLA KEYS+1 F5A27180 TNZ F ARE THERE ANY SUCCS. F5A27190 STO LPIND NO SUCCS. F5A27200 STO LPLST-1 F5A27210 STO LPLST F5A27220 CLA S3K1 F5A27230 STO LPLST+1 F5A27240 TRA F75 F5A27250 IV1 PZE 0 STORAGE F5A27260 X225A LXD SBV4,1 LOAD IRM POINTER (32)F5A27270 ZET AC1+3,1 IS IT ACTIVE (32)F5A27271 TSX SB,4 YES, RECORD SX NECESSARY (32)F5A27272 CAL S5K3 INDICATE LX IN CORRESPONDING (32)F5A27273 ARS 3,1 IR IN REGION IN CASE OTHER (32)F5A27274 ORS XV2 SX NEEDED LATER (32)F5A27275 TRA X226 (32)F5A27276 S5P CLA S5V2 GET LOOP LIST ENTRY (32)F5A27277 TSX SA,4 GET EXIT REQUIREMENTS(AND, SUPER- (32)F5A27278 CLA S5K3 FLUOUSLY, ACTIVE INDICATORS). (32)F5A27279 TRA S51-1 (32)F5A2727A S512P CLA EN4+3,1 HAS ENN BEEN ASSIGNED (32)F5A2727B TPL *+4 (32)F5A2727C CLA EX1+3,1 NO, DOES EXN MATCH (32)F5A2727D SUB IR1+3,2 THIS IRM (32)F5A2727E TZE S537-2 YES, IRM=ENN (32)F5A2727F TIX S512P,1,1 ARE WE THROUGH WITH ENS (32)F5A2727G CLA IRC YES, ADD TO UNASSIGNED IRS (32)F5A2727H TRA S512+1 (32)F5A2727I X44A LXD XV13,1 GET REGION WORD INTO MQ. (32)F5A2727J CLA BBB+5,1 (32)F5A2727K PDX ,1 (32)F5A2727L LDQ REG,1 (32)F5A2727M RQL 3,4 IS THERE AN LX FOR THIS IR.. (32)F5A2727N TQP X44 NO, GO RECORD ACTIVITY (32)F5A2727O TRA W3 YES, GO RECORD SX NECESSARY (32)F5A2727P EP BES PTL1-31 (32)F5A2727Q END29 SYN * F5A27280 TCD -1 $F5A27285 EJECT F5A27290 REM STORAGE ASSIGNMENT F5A27300 TOP SYN BOTIOP-1 F5A27330 M SYN 7 $F5A27340 N SYN 8 $F5A27350 TBLSP SYN TOP-EP-4 F5A27360 S3P1 EQU TBLSP/95 F5A27370 FP1 EQU S3P1*2+S3P1/2 F5A27380 STL EQU S3P1*4 F5A27390 CMTL EQU STL*9 F5A27400 BBBL EQU S3P1*28 F5A27410 LEFT EQU TBLSP-S3P1*71-S3P1/2-1 F5A27420 REM TABLES F5A27450 BSS 1 THIS IS LPLST-1 F5A27460 LPLST BSS S3P1 SPACE FOR LOOPLIST TABLE. F5A27470 ELPLT SYN * START OF REGION TABLE. F5A27480 REG BES FP1 SPACE FOR REGION WORDS. F5A27490 STAG BSS STL+1 F5A27500 CMTAG BSS CMTL F5A27510 KEYS SYN TOP-3 F5A27560 REM F5A27570 REM F5A27580 REM THE BASE ADDRESSES AND THE MAXIMUM LENGTHS OF ALL SECTION 4 F5A27590 REM TABLES ARE LISTED BELOW. F5A27600 HEAD 0 F5A27610 M SYN 5$M F5A27620 N SYN 5$N F5A27630 TOP SYN 5$TOP F5A27640 CMTL SYN 5$CMTL F5A27650 DOCARE SYN TOP-400*M/N+1 F5A27690 CITCNT SYN DOCARE-2 F5A27700 TRAD SYN DOCARE-1 F5A27710 FRET SYN TRAD-4000*M/N-2 F5A27720 TIFGO SYN FRET-1200*M/N*2-4 F5A27730 TIFRD SYN TIFGO-500*M/N*2+2 F5A27740 DOLIST SYN TIFRD F5A27750 BBLIST SYN DOLIST-600*M/N*2-2 F5A27760 DOFRET SYN BBLIST-1484*M/N F5A27770 DOTAG SYN DOFRET-1500*M/N*2-600*M/N*9+1 F5A27780 NLIST SYN TOP-3 F5A27790 KEY1 SYN NLIST F5A27800 KEY2 SYN KEY1+1 F5A27810 KEY3 SYN KEY2+1 F5A27820 KEY4 SYN KEY3+1 F5A27830 SENSLT SYN KEY1+100 F5A27840 FIXDOS SYN TRAD-1000*M/N-2 F5A27850 TRATBL SYN DOFRET F5A27860 BBTABL SYN TRATBL-7474*M/N F5A27870 SET SYN BBTABL-1484*M/N-1 F5A27880 LCNTR SYN DOLIST+600*M/N F5A27890 MIRROR SYN BBLIST-2968*M/N+1 F5A27900 TAG SYN MIRROR-2*TGBFSZ F5A27910 BBTAG SYN SET F5A27920 SPAVL1 SYN DOFRET-FENCE-120 F5A27930 CTSP1 SYN SPAVL1/200*200 F5A27940 ZONSZ SYN 8 F5A27950 CTBOT SYN FENCE+100 F5A27960 CTTP1 SYN CTBOT+CTSP1 F5A27970 CITLOC SYN 0 F5A27980 CITOP SYN 1 F5A27990 CITAD SYN 2 F5A28000 CITTAG SYN 3 F5A28010 CITAAA SYN 3 F5A28020 SPAVL2 SYN SET-1600*M/N-FENCE-120 F5A28030 CTSP2 SYN SPAVL2/200*200 F5A28040 CTTP2 SYN CTBOT+CTSP2 F5A28050 INSTLC SYN 0 F5A28060 INSTOP SYN 1 F5A28070 INSTAD SYN 2 F5A28080 INSTAA SYN 3 F5A28090 INLOC SYN 0 F5A28100 INOP SYN 1 F5A28110 INTAG SYN 3 F5A28120 TRAMAX SYN 7474*M/N-1 F5A28130 NMAX SYN 200*M/N F5A28140 SETMAX SYN 1600*M/N-1 F5A28150 LMAX SYN 600*M/N-1 F5A28160 HEAD 5 $F5A28161 BBB MAX *,BBTABL+1 $F5A28162 AJBBL MAX BBBL+BBTABL+1-*,BBBL $F5A28163 BSS AJBBL $F5A28164 ADJL MIN TOP-*-3,LEFT $F5A28165 ADJLF EQU ADJL/2 $F5A28166 PRED BSS ADJLF $F5A28167 SUCC BSS ADJLF $F5A28168 ENTBL SYN * $F5A28169 HEAD 0 $F5A2816A BBB SYN 5$BBB $F5A2816B PRED SYN 5$PRED $F5A2816C SUCC SYN 5$SUCC $F5A2816D TTL SECTION 5, PART TWO F5A28600 LBL 9F27,S F5B00000 REM EDITOR RECORD NO. 27 F5B00010 REM PART 2 OF 4, SECTION 5 F5B00020 ORG SYSCUR $F5B00030 HEAD 5 F5B00040 BCI 1,9F2700 $F5B00050 ORG (LODR) $F5B00060 TXI BL12,,270 F5B00080 REM F5B00100 REM PART 2 F5B00110 REM PERMUTE RESULTS AND COMBINE BB LIST WITH BB TABLE F5B00120 ORG C F5B00130 BLV09 PZE -1 BB NO. OF LAST GO TO N F5B00140 BL12 TSX (TAPE),4 GET OVER EOF. F5B00150 SK1F,,(SKBP) F5B00160 BLLBL,,FTAPE3 F5B00170 BL5 TSX (TAPE),4 F5B00180 COM1,,(RBNC) F5B00190 BLLBL,,FTAPE3 F5B00200 CLA KEYS O.K. COMPUTE TEST CONSTANT F5B00210 SUB TWO F5B00220 STO BLV3 F5B00230 CLA ZERO F5B00240 TSX SE4,4 STAG WORD F5B00250 CLA STAG,1 F5B00260 STO BLV07 F5B00270 CLA BLV1 F5B00280 BL3 LDQ BLV3 HAVE WE ALREADY DEALT WITH LAST BB F5B00290 TLQ BL06 YES , GO TO READ IN NEXT PART F5B00300 ADD ONEA F5B00310 TSX SE1,4 GET UNDEX OF NEXT BB F5B00320 CLA BBB+1,1 STORE THE NO. OF THE F5B00330 ANA RMSK FIRST TAG IN F5B00340 STO BLV6 NEXT BB. F5B00350 CLA BBB,1 F5B00360 ANA 2AMSK F5B00370 STO BLV5 STORE AWAY NO. OF U1ST PRED IN NEXT BB. F5B00380 CLA BLV1 F5B00390 TSX SE1,4 F5B00400 LXD BLV2,2 F5B00410 CLA BLIST,2 REPLACE LAST WORD OF BBB ENTRY F5B00420 STO BBB+5,1 BY THE LOCATION FROM THE BB LIST. F5B00430 BL2 TXI BL2+1,2,-1 F5B00440 SXD BLV2,2 F5B00450 CLA BBB+1,1 STORE PERMUTATION NOS. F5B00460 STO BLV7 F5B00470 SXD BLV4,1 F5B00480 CLA BBB+1,1 GET NUMBER F5B00490 ANA RMSK OF 1ST TAG IN BB F5B00500 SUB BLV6 FORM COUNT OF NO. OF TAGS IN THIS BB F5B00510 SUB ONEA F5B00520 PAX 0,2 COUNT OF NO. OF TAGS INTO 2. F5B00530 SXD BLV05,2 STORE COUNT OF NO. OF TAGS F5B00540 CLA BBB,1 GET NO. OF 1ST PRED IN THIS BB F5B00550 ANA 2AMSK F5B00560 BL9 STO BLV01 F5B00570 CAS BLV5 IS THIS PRED IN SAME BB F5B00580 TRA BL7 YES F5B00590 TRA BL01 NO F5B00600 BL7 TSX SE5,4 YES, GET INDEX OF PRED F5B00610 CAL SALM F5B00620 SLW BLV9 F5B00630 CAL PRED,1 F5B00640 SLW BLV8 STODRE OLD PRED WORD F5B00650 ANS BLV9 INT INITIALIZE NEW PRED WORD F5B00660 AXT 3,2 SET COUNT TO 3. F5B00670 BL8 CAL BLV7 PLACE THE F5B00680 ARS 3,2 PERMUTATION NO. F5B00690 ARS 3,2 IN REGISTER 4 F5B00700 ANA 2LD3 F5B00710 PDC 0,4 (32)F5B00720 CAL BLV8 PERMUTE F5B00730 ALS 3,2 THE LXD F5B00740 ANA BITMK AND SXD F5B00750 ARS -1,4 BITS IN THE (32)F5B00760 ORS BLV9 PRED ENTRY F5B00770 TIX BL8,2,1 COUNT TO 3 F5B00780 CLA BLV9 F5B00790 STO PRED,1 STORE PRED ENTRY WITH PERMUTED BITS F5B00800 CLA BLV01 ARRANGE TO CONSIDER F5B00810 ADD ONEA NEXT PRED ENTRY F5B00820 TRA BL9 F5B00830 BL01 LXD BLV05,1 F5B00840 BL03 TNX BL04,1,1 IS THERE ANOTHER TAG IN BB F5B00850 LXD BLV04,2 YES F5B00860 TIX BL02,2,1 HAVE WE EXHAUSTED STAG WORD F5B00870 SXD BLV05,1 YES, STORE COUNT OF NO. OF TAGS F5B00880 LXD BLV08,2 STORE F5B00890 CLA BLV07 OLD PERMUTED F5B00900 STO STAG,2 STAG WORD F5B00910 CLA ZERO F5B00920 STO BLV07 F5B00930 CLA BLV03 GET F5B00940 TSX SE4,4 NEXT F5B00950 SXD BLV08,1 STAG F5B00960 CAL STAG,1 WORD F5B00970 SLW BLV06 STORE STAG WORD F5B00980 ANA LMSK AND F5B00990 SLW BLV07 INITIALIZE NEW STAG WORD F5B01000 CLA BLV03 INCREASE THE F5B01010 ADD ONEA STAG WORD NO. F5B01020 STO BLV03 F5B01030 AXT 9,2 RESET COUNT TO 9. F5B01040 LXD BLV05,1 RESTORE 1 F5B01050 BL02 SXD BLV04,2 STORE COUNTER F5B01060 CAL BLV06 F5B01070 ALS 2 F5B01080 SLW BLV06 F5B01090 ANA 2LD3 EXTRACT TAG. F5B01100 PDX 0,4 F5B01110 CAL BLV7 PERMUTE F5B01120 ARS 3,4 F5B01130 ARS 3,4 THE F5B01140 TRA PTCHU TAG, AND COMPLEMENT IT. (32)F5B01150 ARS 10,2 F5B01160 ARS 10,2 F5B01170 ORS BLV07 FORM NEW TAG WORD F5B01180 TRA BL03 F5B01190 BL04 LXD BLV4,1 GET INDEX OF BBB F5B01200 CLA BBB,1 IS F5B01210 ARS 33 THIS F5B01220 ADD ONEA A GO N F5B01230 TNZ BL07 NO F5B01240 CLA BLV09 YES, STORE BB NO. F5B01250 ALS 18 OF LAST F5B01260 STD BBB+1,1 GO N ENCOUNTERED F5B01270 CLA BLV1 STORE PRESENT F5B01280 STO BLV09 BB NO. F5B01290 BL07 AXT 3,2 SET COUNT TO 3. F5B01300 BL09 CAL BLV7 F5B01310 ARS 3,2 F5B01320 ARS 3,2 GET PERMUTATION NO. F5B01330 ANA 2LD3 F5B01340 PDC 0,4 (32)F5B01350 CLA BBB+2,1 PERMUTE F5B01360 STO EXCO-4,4 EXIT-ENTRANCE REQUIREMENTS (32)F5B01370 BL08 TXI BL08+1,1,-1 F5B01380 TIX BL09,2,1 COUNT TO 3 F5B01390 AXT 3,2 PLACE PERMUTED F5B01400 BL10 CLA EXCO,2 ENTRANCE-EXIT COND. F5B01410 STO BBB-1,1 BACK IN BBB F5B01420 BL11 TXI BL11+1,1,-1 F5B01430 TIX BL10,2,1 COUNT TO 3 F5B01440 BL05 CLA BLV1 PREPARE TO DEAL WITH F5B01450 ADD ONEA WITH NEXT BB F5B01460 STO BLV1 F5B01470 TRA BL3 F5B01480 BL06 TSX SE1,4 PUT END MARK INTO THE DUMMY BB F5B01490 CLA EN2MK F5B01500 STO BBB+5,1 F5B01510 CLA BLV07 STORE F5B01520 LXD BLV08,2 F5B01530 STO STAG,2 STAG WORD F5B01540 TRA R READ NEXT PART F5B01550 COM1 IORT BLIST,,1484*M/N F5B01560 RMSK PZE -1,7 RIGHT HALF MASK. F5B01570 SALM MTH -1,0,-8 MASK OUT SXD AND LXD PRED REULTS F5B01580 EN2MK PTH -1,-1,-1 PUT IN LOCATION OF DUMMEY BB F5B01590 BITMK PZE 0,4,4 MASK TO EXTRACT ONE SXD AND LXD BIT F5B01600 LMSK MTH 0,0,-1 F5B01610 EXCO BES 3 THE ENTRANCE-EXIT CONDITIONS PERMUTED F5B01620 BLV1 PZE 0 BBNO. F5B01630 BLV2 PZE 0 INDEX IN BB LIST F5B01640 BLV3 PZE 0 TEST CONSTANT F5B01650 BLV4 PZE 0 INDEX OF BB F5B01660 BLV5 PZE 0 1ST PRED NO. IN NEXT BB F5B01670 BLV6 PZE 0 1ST TAG IN NEXT BB F5B01680 BLV7 PZE 0 PERMUTATION NOS. F5B01690 BLV8 PZE 0 OLD PRED ENTRY F5B01700 BLV9 PZE 0 NEW, PERMUTED, PRED ENTRY F5B01710 BLV01 PZE 0 CURRENT PRED. NO. F5B01720 BLV03 PZE 0 NO. OF STAG WORD, INITIALLY ZERO F5B01730 BLV04 PZE 0 COUNTER TO 9, INITIALLY ZERO F5B01740 BLV05 PZE 0 COUNT OF NO. OF TAGS IN BB F5B01750 BLV06 PZE 0 STAG WORD F5B01760 BLV07 PZE 0 NEW, PERMUTED , STAG WORD F5B01770 BLV08 PZE 0 INDEX OF OLD STAG WORD F5B01780 TWO PZE 2 F5B01790 2AMSK PZE -1 F5B01800 2LD3 PZE 0,0,3 F5B01810 PTCHW OCT 4000000 (32)F5B01820 PTCHU ANA 2LD3 ISOLATE TAG (32)F5B01821 SUB PTCHW TAKE FOURS COMPLEMENT (32)F5B01822 ANA 2LD3 (3,2,1,0 BECOME 1,2,3,0) (32)F5B01823 TRA BL04-4 (32)F5B01824 BSS PTL2-5 PATCH SPACE (32)F5B01825 BLIST PZE 0 F5B01830 END30 SYN * F5B01840 TCD -1 $F5B01845 TTL SECTION 5, PART THREE F5B01850 LBL 9F28,S F5C00000 REM F5C00010 REM EDITOR RECORD NO. 28 F5C00020 REM PART 3 OF 4, SECTION 5 F5C00030 ORG SYSCUR $F5C00040 BCI 1,9F2800 $F5C00050 ORG (LODR) $F5C00060 TXI RDIN,,280 F5C00080 REM F5C00100 REM PART 3 F5C00110 REM CHANGE LXD AND SXD RESULTS TO BE COMPATIBLE WITH GO TO F5C00120 REM N RESTRICTION. MODIFY ASSIGN CONSTANT TABLE. F5C00130 REM C CONTAINS THE BB NO. OF THE GO TO N F5C00140 ORG C+1 F5C00150 RDIN AXT 5,2 F5C00160 AAC2 TSX (TAPE),4 F5C00170 3CTL1,,(RBNC) F5C00180 ASCLBL,,FTAPE2 F5C00190 TSX (TAPE),4 F5C00200 SK2F,,(SKBP) F5C00210 ASLBL,,FTAPE2 F5C00220 LDC ASCON-1,1 SET ASCON INDEX. F5C00230 SXD AC22,1 F5C00240 CLA C F5C00250 AC15 LDQ ACK1 GET BB NO. OF 1ST GO TO N F5C00260 TLQ AC16 WAS THIS THE LAST GO TO N F5C00270 ADD ONEA NO F5C00280 TSX SE1,4 F5C00290 CAL BBB,1 FIND NO. OF 1ST SUCC IN NEXT BB F5C00300 ARS 18 F5C00310 STA ACV3 F5C00320 CLA C F5C00330 TSX SE1,4 F5C00340 STZ ACV4 CLEAR THE COMBINED SXD CASE F5C00350 CAL BBB,1 FIND THE NO. OF 1ST SUCC IN THIS BB F5C00360 ARS 18 F5C00370 ANA AMSK F5C00380 AC13 STO ACV2 F5C00390 CAS ACV3 IS THIS SUCC IN SAME BB F5C00400 TRA AAC3 YES F5C00410 TRA AC14 NO F5C00420 AAC3 ALS 18 F5C00430 TSX SE6,4 YES GET BB NO. OF SUCESSOR F5C00440 CAL SUCC,1 F5C00450 STA ACV8 F5C00460 ADD ONEA FIN NO. OF 1ST PRED ENTRY NEXT BBB F5C00470 TSX SE1,4 F5C00480 CLA BBB,1 F5C00490 STA ACV6 F5C00500 STZ ACV10 PRESET COMBINED LXD CASE TO 0 F5C00510 CLA ACV8 FIND NO. OF 1ST PRED IN THIS BB F5C00520 TSX SE1,4 F5C00530 CAL BBB,1 F5C00540 ANA AMSK F5C00550 STA ACV9 RECORD 1ST PRED FOR FUTURE USE F5C00560 AC7 STA ACV7 F5C00570 CAS ACV6 IS THIS PRED IN SAME BB F5C00580 TRA AC4 F5C00590 TRA AC8 NO F5C00600 AC4 TSX SE5,4 IS THIS THE TRANSFER FROM CURRENTLY CONSIF5C00610 CAL PRED,1 ED GO TO NP F5C00620 ANA AMSK F5C00630 SUB C F5C00640 TNZ AC5 IF NOT SKIP THE ORING OF SXD CASE F5C00650 CAL PRED,1 OR THE SXD CASE INTO COMBINED SXD CASE F5C00660 ORS ACV4 F5C00670 CAL NTMSK F5C00680 ANS PRED,1 F5C00690 AC5 CAL PRED,1 IS THE BB WHICH IS PREDECESSOR F5C00700 SXA AC51,1 A GO TO N. F5C00710 TSX SE1,4 F5C00720 CLA BBB,1 F5C00730 ARS 33 F5C00740 ADD ONEA F5C00750 TNZ AC6 F5C00760 AC51 AXT SET,2 YES, OR THE LXD X CASE INTO THE F5C00770 CAL PRED,2 COMBINED LXD CASE F5C00780 ORS ACV10 F5C00790 AC6 CLA ACV7 F5C00800 ADD ONEA F5C00810 TRA AC7 F5C00820 AC8 CAL ACV10 IS THE COMBINED LXD CASE ZERO F5C00830 ANA TMSK F5C00840 TZE AC12 F5C00850 CLA ACV8 NO, HAS THIS BB ALREADY BEEN F5C00860 TSX SE1,4 CONSIDERED F5C00870 LDQ BBB,1 AS A SUCCESSOR TO F5C00880 RQL 20 A GO TO N F5C00890 TQP AC18 F5C00900 TRA AC12 F5C00910 AC18 CLA LT1 F5C00920 ORS BBB,1 RECORD THAT THIS BB HAS BEEN CONSIDERED AF5C00930 CLA ACV9 ECT..PE PREPARE TO SCAN ALL PRED ENTRYS F5C00940 AC11 STA ACV7 F5C00950 CAS ACV6 IS THIS PRED IN SAME BB F5C00960 TRA AC9 F5C00970 TRA AC19 NO F5C00980 AC9 TSX SE5,4 DETERMINE IF THE BB WHICH F5C00990 SXA AC51,1 IS THE PREDECESSOR OF THIS ONE F5C01000 CLA PRED,1 IS A GO TO N F5C01010 TSX SE1,4 F5C01020 CLA BBB,1 F5C01030 ARS 33 F5C01040 ADD ONEA F5C01050 TNZ AC10 F5C01060 AC91 LXA AC51,2 IT IS A GO TO N. F5C01070 CLA ACV10 REPLACE LXD CASE BY THE F5C01080 ANA TMSK COMBINED LXD CASE F5C01090 ORS PRED,2 F5C01100 AC10 CLA ACV7 ARRANGE TO TREAT NEXT PRED ENTRY F5C01110 ADD ONEA F5C01120 TRA AC11 F5C01130 AC12 CLA ACV2 F5C01140 ADD ONEA ARRANGE TO TREAT NEXT SUCC ENTRY F5C01150 TRA AC13 F5C01160 AC14 CLA C STORE COMBINED F5C01170 TSX SE1,4 SXDCASE IN PREFIX F5C01180 CLA ACV4 OF 2ED WORD OF BBB ENTRY F5C01190 ALS 15 F5C01200 STP BBB+1,1 F5C01210 CLA BBB+1,1 GET NEXT GO TO N NUMBER F5C01220 ARS 18 F5C01230 ANA AMSK F5C01240 STO C F5C01250 TRA AC15 F5C01260 AC16 CLA ASCON-1 PICK UP ASCON LENGTH. F5C01270 ADD ACV12 F5C01280 STD 3CTL2 STORE ASCON LENGTH IN WORD COUNT. F5C01290 TSX (TAPE),4 F5C01300 3CTL2,,(WBNC) F5C01310 ASLBL,,FTAPE2 F5C01320 TRA R GO TO NEXT PART F5C01330 AC19 CLA ACV8 F5C01340 TSX SE1,4 F5C01350 AXT 0,2 F5C01360 AC25 CLA BBB+5,1 F5C01370 AC23 CAS ASCON,2 IS THIS ASSIGN CONST. EQUAL TO THE F5C01380 TRA AC20 LOCATION OF 1ST INST IN BB F5C01390 TRA AC24 YES F5C01400 AC20 TXL AC21,2,0 F5C01410 AC22 TXL AC12,2,SET COMPLIMENT OF NUMBER OF ENTRIES IN DECR. F5C01420 AC21 TXI AC23,2,-1 F5C01430 AC24 CAL ACV10 REPLACE ASSIGN CONST. BY NEW F5C01440 ANA TMSK LOCATION SYMBOL F5C01450 ARS 4 ALLOW 11 BITS FOR BBNO (32)F5C01460 ADD ACV8 F5C01470 ACL LXDC F5C01480 SLW ASCON,2 F5C01490 TRA AC25 F5C01500 3CTL1 IORT ASCON-1,,801 F5C01510 IORT ASCON,,800 F5C01520 3CTL2 IOCT ASCON-1,,SET $F5C01530 3CTL3 IOCT ASCON,,SET $F5C01540 SK2F PZE ,,2 F5C01550 AMSK PZE -1 F5C01560 TMSK PZE 0,7 F5C01570 NTMSK MTH -1,7,-8 F5C01580 LXDC PON 0,0,5*4096 THE NUMBER IDENTIFYING THE LOC. OF AN LXDF5C01590 LT1 PZE 0,1 F5C01600 ACK1 PZE -2 F5C01610 ACV2 PZE 0 NO. OF CURRENT SUCC. OF THIS BB IN ADDR.F5C01620 ACV3 PZE 0 NO. OF 1ST SUCC IN NEXT BB IN ADDR F5C01630 ACV4 PZE 0 COMBINED SXD CASE LAST OCTAL DIGIT IN DEF5C01640 ACV5 PZE 0 NO. OF CURRENT PRED IN ADDR F5C01650 ACV6 PZE 0 NO. OF 1ST PRED IN NEXT BB IN ADDR F5C01660 ACV7 PZE 0 MO. OF CURRENT PRED IN THIS BB IN ADDR F5C01670 ACV8 PZE 0 BB NO. OF SUCCESSOR IN ADDR F5C01680 ACV9 PZE 0 NO. OF 1ST PRED IN SUCC BB(IN ADDRESS). F5C01690 ACV10 PZE 0 THE COMBINED LXD CASE F5C01700 ACV11 PZE 0 TEMP. STORE FOR PRED TABLE INDEX AT AC5F5C01710 ACV12 PZE ,,1 WORD FOR ADJUSTING ASCON LENGTH. F5C01720 ACV13 PZE 0 TEMP. STORE FOR LOCATION OF 1ST INST. IN F5C01730 ASCON BES PTL3-2 SPACE FOR PATCHES F5C01740 END31 SYN * F5C01750 TCD -1 $F5C01751 TTL SECTION 5, PART FOUR F5C01760 LBL 9F29,S F5D00000 REM F5D00010 REM EDITOR RECORD NO. 29 F5D00020 REM PART 4 OF 4, SECTION 5 F5D00030 ORG SYSCUR $F5D00040 BCI 1,9F2900 $F5D00050 ORG (LODR) $F5D00060 TXI PASS2,,290 F5D00080 REM F5D00100 REM PART 4 F5D00110 REM COMPILE INSTRUCTIONS FROM PREVIOUS RESULTS F5D00120 REM CONSTANTS F5D00130 ORG C F5D00140 L3 PZE 3 F5D00150 L4 PZE 4 F5D00160 L7 PZE 7 F5D00170 LD1 SYN ONED F5D00180 LD2 PZE 0,0,2 F5D00190 LD3 PZE 0,0,3 F5D00200 LD7 PZE 0,0,7 F5D00210 LD8 PZE 0,0,8 F5D00220 LT7 PZE 0,7 F5D00230 DECMK PZE 0,0,-1 DECREMENT MASK. F5D00240 ENDMK PTH -1,-1,-1 F5D00250 ADDMK PZE -1 F5D00260 STMSK PZE -8,7 F5D00270 PRMK PZE 0,7,7 MASK FOR PRED RESULTS F5D00280 TAGMK PZE -1,-1 MASK FOR TAU- TAGS F5D00290 LFMSK MTH 0,0,-1 F5D00300 LTPL BCI 1,TPL000 F5D00310 LLXP BCI 1,LXP000 F5D00320 LSYN BCI 1,SYN000 F5D00330 LDED BCI 1,DED000 F5D00340 LTRA BCI 1,TRA000 F5D00350 LTSX BCI 1,TSX000 F5D00360 LSXD BCI 1,SXD000 F5D00370 LSXA BCI 1,SXA000 F5D00380 LAXT BCI 1,AXT000 F5D00390 LLXD BCI 1,LXD000 F5D00400 LEQU BCI 1,EQU000 F5D00410 LBSS BCI 1,BSS000 F5D00420 LPSE OCT 76225000000 F5D00430 GSYM PZE 0,0,6*4096 GARBAGE SYMBOL F5D00440 T4SYM PZE 4,0,4 TAG 4 AND RELATIVE PART 4 F5D00450 PZE 4 4 NUMBERS TO CONVERT S-TAG F5D00460 PZE 2 F5D00470 PZE 1 F5D00480 VSTAG PZE 0 F5D00490 LCOUT TXI (DIAG),,0 TRANSFER FOR INEXPLICABLE ERROR $F5D00500 OCT 35121000000 TRA OP CODE F5D00510 OCT 41104000000 PSE-TRA F5D00520 OCT -33642000000 DCT-PSE F5D00530 OCT -24000000000 RTT-DCT F5D00540 OCT 27642000000 MSE-RTT F5D00550 OCT -7100000000 TZE-MSE F5D00560 OCT -32154000000 HPR-TZE F5D00570 LNTOP OCT 31316000000 TSX-HPR F5D00580 OCT 35121000000 F5D00590 OCT 1622000000 TXL-TRA F5D00600 OCT -31772000000 HPR-TXL F5D00610 LTROP OCT 31400000000 TTR-HPR F5D00620 FSTLT OCT -370000000000 F5D00630 FSTT OCT -230000000000 F5D00640 PCC OCT 170000000000 MEANS LOCATION OF THIS INST. F5D00650 PFXMK OCT -300000000000 F5D00660 XXPSX OCT 770000000 CONSTANTS TO TEST PSE ADDR. F5D00670 XX16X OCT 160000000 F5D00680 XX360 OCT 360000000 F5D00690 SHK1 PZE -1,7 CONST. TO EXTRACT R. HALF WORD F5D00700 SIK2 PON 0,0,6*4096 I.D. FOR LOCATION OF SXD F5D00710 SIK3 SYN LSXD F5D00720 IDSXD SYN SIK2 F5D00730 SLK1 SYN LTRA TRA IN BCD F5D00740 SMK1 PON 0,0,5*4096 I.D. FOR LOCATION OF LXD F5D00750 SMK2 SYN LLXD F5D00760 SMK3 SYN LFMSK F5D00770 SMK4 PON 0,0,4*4096 I.D. FOR TAU-TAG F5D00780 SLK2 SYN SMK1 F5D00790 IDLXD SYN SMK1 F5D00800 IDTAG SYN SMK4 F5D00810 Z1K3 MZE 0 F5D00820 MZE SYN Z1K3 F5D00830 Z2K1 PZE 0,0,-2 THE INDEXES NEEDED TO REFER F5D00840 PZE 0,0,-6 TO THE BOTTOM POSITIONS F5D00850 PZE 0,0,-10 IN LIST1, LIST2, LIST3, RESPT. F5D00860 Z2K2 PZE 3,0,7 NO. OF LISTS, NO. OF CASES F5D00870 CASE PZE 1 F5D00880 PZE 2 F5D00890 PZE 4 F5D00900 PZE 3 F5D00910 PZE 5 F5D00920 PZE 6 F5D00930 PZE 7 F5D00940 Z2K3 OCT 32212110 CONST. TO DETERMINE NO. 1 S IN 3 BITS F5D00950 Z2K4 PZE 0,0,3*8 F5D00960 Z2K5 PZE 7 F5D00970 Z4K1 PZE -1 F5D00980 Z4K2 PZE 0 INDEX OF ST SXD CASE F5D00990 LNSXD PZE NSXD*4 NO. OF SXD IN SXD LIST F5D01000 Z7K1 PZE 0,0,-8 INDEAXES OF ASSOCIATED SXD CASES F5D01010 PZE 0,0,-12 F5D01020 PZE 0,0,-16 F5D01030 REM THE DEFINITION OF TEMP. AND VARIABLE STORAGE LOCATIONS F5D01040 BBNO MZE 0,0,1 DECR., CURRENT BB NO. BEING SCANNED F5D01050 NXLOC PZE 0 LOCATION OF 1ST INST OF THE BB F5D01060 ERRBX PZE 0 ERROR INDICATOR F5D01070 BBOX PZE 0 TEMP. STORE FOR INDEXES, MAINLY 2 F5D01080 BBOX1 PZE 0 ANOTHER OF SAME F5D01090 ABOX PZE 0 TEMP. STORE , INDEX 1 F5D01100 TAG PZE 0 TAU-TAG FROM AN INST. F5D01110 STGN1 PZE 0 WORD FROM STAG SHIFTED LEFT MULTIPLE OF IF5D01120 STGN2 PZE 0 SAME WORD SHIFTED BY ONES F5D01130 9CNT PZE 0 COUNT TO 9, 9 TAGS IN STAG WORD F5D01140 STGWD MZE 1 NO. OF STAG ENTRY BEING CONSIDERED F5D01150 TMPD2 PZE 0 IN-OUT BUFFER FOR READING CIT . F5D01160 TMP10 PZE 0 TEMP. STORE , LASTS ONLY 10 INSTRS. F5D01170 CIND PZE 0 + OR - MEANS IR4 ISNT OR IS NECESSARY F5D01180 CPIND MZE 0 - OR + MEADS COMPILE/DONT COMPILE. F5D01190 ARG1 PZE 0 U 1ST ARGUMENT FOR SUBROUTINES F5D01200 MBOX PZE 0 NO. OF TRANSFERS IN GO TO VECTOR F5D01210 SUCNO PZE 0 NO. OF A SUCCESSOR, GOV ROUTINE F5D01220 SXD0 PZE 0 LXD CASE IN DECR., PRED NO. IN ADDR. F5D01230 SXD1 PZE 0 3 TAU TAGS WHICH MUST BE STORED F5D01240 SXD2 PZE 0 FROM IR1,2,3 F5D01250 SXD3 PZE 0 RESPT. F5D01260 SADV2 PZE 0 LOCATION OF 1ST INST IN SUCCESSOR BB F5D01270 SADV3 PZE 0 NO. OF CURRENT PRED F5D01280 SADV4 PZE 0 NO. OF 1ST PRED IN SUCCESSOR BB F5D01290 SADV5 PZE 0 THE SUCCESSOR BB NO. F5D01300 SHV2 PZE 0 ENTRY FROM PRED. F5D01310 SIV3 PZE 0 LOCATION OF 1ST INST. IN SXD GROUP F5D01320 SIV4 PZE 0 TEMP. STORE F5D01330 SIV6 PZE 0 STORE FOR THE TAG F5D01340 SJV1 PZE 0 LXD CASE IN DECR. F5D01350 SJV3 PZE 0 F5D01360 CLST BES LCLST THE NEW LIST OF COMPILED INST. F5D01370 SLV2 PZE 0 LOCATION TO BE ATTACHED TO TRA F5D01380 SLV3 PZE 0 + OR - MEANS ISNT OR IS HANGING TRA0 F5D01390 SMV2 PZE 0 TAG TO BE COMPILED F5D01400 SMV3 PZE 0 STORE INDEX OF QUANTITY IN LIST F5D01410 SMV4 PZE 0 LOCATION , TEMP. STORE F5D01420 Z1V2 PZE 0 NO. OF 1ST PRED. IN NEXT BB F5D01430 Z1V3 PZE 0 NO. OF PRED BEING CONSIDERED F5D01440 Z1V5 PZE 0 THE CASES F5D01450 Z1V8 PZE 0 THE LOC. OF 1ST PRED IN BB, USED IN Z4 F5D01460 Z2V1 PZE 0 IN DECREMENTS, THE INDEXES F5D01470 PZE 0 THE TOP ENTRIES F5D01480 PZE 0 IN THE 3 LXD LISTS F5D01490 Z2V2 PZE 0 IN ADDR, NO. OF 1S IN DIFFERENCE. F5D01500 LIST1 OCT ,,,0 $F5D01510 LIST2 OCT ,,,0 $F5D01520 LIST3 OCT ,,,0 $F5D01530 LLIND BES 3 + OR - MEANS LIST NOT TO BE OR TOBE COMPIF5D01540 Z4V1 PZE 0 TEMP. STORE , LXD CASE IN ADDR. F5D01550 Z5V1 PZE 0 INDEX IN SYN TABLE F5D01560 Z7V1 PZE 0 INDEX OF LIST F5D01570 Z7V2 PZE 0 + OR - MEANS 1ST OR 2ED TIME THRU F5D01580 NDINS BES 12 BLOCK FOR 3 EXTRA COMPILED INST. F5D01590 INST BES ZINST F5D01600 SXST MZE 0 + OR - MEANS SEQUENTIAL TRANSFER OR NOT F5D01610 OCT ,,0 $F5D01620 REM THE SXD INST. ASSOCIATED WITH SEQUENTIAL TRANSFER F5D01630 SXAS0 OCT ,,,0 ASSOCIATED WITH 0 LXD CASE $F5D01640 SXAS1 OCT ,,,0 WITH 1ST LXD LIST $F5D01650 SXAS2 OCT ,,,0 2ND LIST $F5D01660 SXAS3 OCT ,,,0 3RD $F5D01670 SXAS BSS 4*NSXD THE LIST OF SXD INST. F5D01680 SYN MZE 0 SYN CARD TABLE STORED BACKWARD F5D01690 REM WHEN ENTERED WITH PRESENT BB NO. IN ADDR OF ARG1 AND BBNO. F5D01700 REM OF A SUCC. BB IN ADDR. OF AC, SAD FIGURES OUT WHAT THE F5D01710 REM ADDRESS OF THE RELATED TRANSFER INST. SHOULD BE AND RETURNS F5D01720 REM WITH THE ADDR IN LOGICAL AC F5D01730 SAD SXA SAD5,4 STORE RETURN F5D01740 ANA ADDMK STORE THE SUCC. NO. F5D01750 STO SADV5 F5D01760 TSX SE1,4 F5D01770 CLA BBB+5,1 F5D01780 STO SADV2 F5D01790 CLA BBB,1 F5D01800 ANA ADDMK F5D01810 SLW SADV4 F5D01820 SAD1 SLW SADV3 F5D01830 TSX SE5,4 F5D01840 CLA PRED,1 F5D01850 ANA ADDMK IS THIS THE CORRECT F5D01860 SUB ARG1 PRED ENTRY F5D01870 TZE SAD2 F5D01880 CAL SADV3 NO, TRY NEXT RETURN F5D01890 ADD ONEA F5D01900 TRA SAD1 F5D01910 SAD2 CAL PRED,1 IS THE SXD CASE 0 F5D01920 ANA LD7 F5D01930 TZE SAD3 YES F5D01940 CLA SADV3 NO, FORM THE SYMBOLIC ADDR. F5D01950 SUB SADV4 AS ID FOR SXD PLUS NO. OF PRED WITHIN F5D01960 SAD7 TRA SXPC2 BB*(2**N),N=MAX BITS OF BBNO (32)F5D01970 ADD IDSXD F5D01980 TRA SAD6 F5D01990 SAD3 CLA PRED,1 IS THE LXD CASE ZERO F5D02000 ANA LT7 F5D02010 TZE SAD4 F5D02020 ARS 4 ALLOW 11 BITS FOR BBNO (32)F5D02030 ADD IDLXD AS 1024* LXD CASE PLUS BB NO. PLUS F5D02040 SAD6 ADD SADV5 I. D. FOR AN LXD F5D02050 SAD5 AXT SET,4 F5D02060 TRA 1,4 F5D02070 SAD4 CAL SADV2 F5D02080 TRA SAD5 F5D02090 REM THIS ROUTINE COMPILES CURRENT INST) IF INDICATOR IN CPIND F5D02100 REM INDICATES IT SHOULD BE F5D02110 SCMI CLA CPIND SHOULD INST. BE COMPILED F5D02120 TPL SCMI1 F5D02130 SXA SCMI0,4 YES, COMPILE THE INST F5D02140 CLA INST,2 F5D02150 TSX SK,4 F5D02160 CLA INST-1,2 F5D02170 TSX SK,4 F5D02180 CLA INST-2,2 F5D02190 TSX SK,4 F5D02200 CLA INST-3,2 F5D02210 TSX SK,4 F5D02220 SCMI0 AXT SET,4 F5D02230 SCMI1 SSM F5D02240 STO CPIND RECORD INST SHOULD BE COMPILED F5D02250 TRA 1,4 F5D02260 REM DETERMINE AN SXD CASE SUBROUTINE F5D02270 SH SXA SH41,4 STORE RETURN F5D02280 AXT 4,4 CLEAR F5D02290 LDQ ZERO THE F5D02300 SH1 STQ SXD0+4,4 SXD F5D02310 TIX SH1,4,1 POSITIONS 0-3 F5D02320 STA SXD0 STORE THE PRED NO. F5D02330 TSX SE5,4 GET INDEX OF PRED F5D02340 CLA PRED,1 GET AND F5D02350 STO SHV2 STORE PRED ENTRY F5D02360 TSX SE1,4 GET INDEX OF BBB TABLE ENTRY F5D02370 AXT 3,4 NO, SET COUNT TO 3 F5D02380 SH2 LDQ SHV2 IS F5D02390 RQL 18,4 SXD REQUIRED F5D02400 TQP SH3 FOR THIS I.R. F5D02410 CLA BBB+2,1 YES, GET AND F5D02420 ANA TAGMK EXTRACT THE F5D02430 STO SXD1+3,4 EXIT CONDITIONS F5D02440 SH3 TXI SH3+1,1,-1 DOWN THE EXIT CONDITIONS F5D02450 TIX SH2,4,1 COUNT TO 3 F5D02460 SH4 CAL SHV2 GET F5D02470 ANA LT7 AND STORE F5D02480 ALS 3 LXD CASE F5D02490 STD SXD0 F5D02500 SH41 AXT SET,4 F5D02510 TRA 1,4 RETURN F5D02520 REM COMPILE AN SXD CASE SUBROUTINE F5D02530 SI SXA SI6,4 STORE RETURN F5D02540 SXA SI0,1 STORE INDEX OF SXD CASE F5D02550 TSX SL1,4 RECORD ANY HANGING TRANSFER F5D02560 CAL BBNO F5D02570 ARS 18 F5D02580 STO SLV2 STORE BB NO. F5D02590 TSX SE1,4 GET INDEX OF BB F5D02600 CLA BBB,1 F5D02610 ANA ADDMK F5D02620 STO SIV4 STORE LOC. OF 1ST PRED IN BB F5D02630 SI0 AXT SET,1 FORM F5D02640 CLA SXST,1 LOC. OF THIS PRED - F5D02650 ANA ADDMK LOC. OF 1ST PRED IN BB F5D02660 SUB SIV4 F5D02670 XEC SXPC6 (32)F5D02680 ADD SLV2 F5D02690 ADD SIK2 F5D02700 STO SLV2 STORE THE LOC. OF 1ST SXD F5D02710 AXT 3,2 F5D02720 SI2 CLA SXST+1,1 F5D02730 TZE SI1 IS THIS TAG 0 F5D02740 SXA SI21,1 NO, PRESERVE INDEX 1 F5D02750 STO SIV6 PRESERVE THE TAG F5D02760 CLA SLV2 PUT LOCATION WORD ON TAPE F5D02770 TSX SK,4 F5D02780 CLA ZERO AND RESET TO 0 F5D02790 STO SLV2 F5D02800 CLA SIK3 PUT SXD ON TAPE F5D02810 TSX SK,4 F5D02820 CLA SIV6 14*2**-5+TAU-TAG IS F5D02830 ADD SMK4 SYMBOLIC ADDRESS F5D02840 TSX SK,4 F5D02850 CLA VSTAG,2 F5D02860 TSX SK,4 PUT S-TAG ON TAPE F5D02870 SI21 AXT SET,1 F5D02880 SI1 TXI SI1+1,1,-1 F5D02890 TIX SI2,2,1 COUNT TO 3, FORM N+1 F5D02900 LXA SI0,1 F5D02910 CLA SXST,1 F5D02920 PDX 0,2 F5D02930 TXL SI3,2,0 IS THE LXD CASE 0 F5D02940 TXL SI4,1,0 NO, IS THIS THE ST POSITION F5D02950 TXH SI6,1,-16-1 IS THIS ASSOCIATED WITH A LIST F5D02960 SI5 ARS 18 NO F5D02970 TSX SL,4 COMPILE A TRA TO LXD CASE F5D02980 LXA SI6,4 F5D02990 TRA 3,4 RETURN TO LOC. OF TSX + 3 F5D03000 SI3 CLS ONEA RECORD THAT THERE IS F5D03010 STO SLV3 A HANGING TRA TO 0 CASE F5D03020 LXA SI6,4 F5D03030 TRA 1,4 RETURN TO LOC. OF TSX +1 F5D03040 SI4 STO SXD0 STORE LXD CASE AS ARG FOR SJ F5D03050 TSX SJ,4 IS SXD CASE INST POS. ASSOC. WITH LIST F5D03060 HTR 0 SHOULDENT BE WITH CASE 0 F5D03070 TRA SI6 YES F5D03080 LXA SI0,1 NO F5D03090 CLA SXST,1 F5D03100 TRA SI5 GO TO COMPILE TRA TO LXD CASE F5D03110 SI6 AXT SET,4 RETURN TO 2 FOLLOWING TSX WITH F5D03120 TRA 2,4 INDEX OF TOP QUANTITY IN 1 AND LIST INDEXF5D03130 REM DETERMINE IF THE SXD CASE IS ASSOCIATED WITH AN LXD LIST F5D03140 SJ SXA SJ3,4 F5D03150 CLA SXD0 F5D03160 ANA DECMK F5D03170 STO SJV1 F5D03180 TZE SJ3 IS THIS THE 0 LXD CASE F5D03190 AXT 0,4 NO, SET COUNT TO 3, N TO 1 F5D03200 AXT 3,2 2 HAS THE COUNTER F5D03210 SJ2 CLA SXAS1,4 F5D03220 TPL SJ1 DOES THE LIST ALREADY HAVE SXD F5D03230 CLA Z2V1+3,2 NO F5D03240 PDX 0,1 GET INDEX OF TOP QUANTITY F5D03250 CLA LIST1,1 F5D03260 ALS 18 F5D03270 SUB SJV1 IS THIS CASE SAME AS CASE HEADUNG LIST N F5D03280 TNZ SJ1 F5D03290 LXA SJ3,4 YES F5D03300 TRA 2,4 RETURN, INDEX OF TOP OF LIST IN 1 F5D03310 SJ1 TXI SJ1+1,4,-1 F5D03320 TIX SJ2,2,1 COUNT TO 3 F5D03330 LXA SJ3,4 F5D03340 TRA 3,4 F5D03350 SJ3 AXT SET,4 F5D03360 CLA SXAS0 F5D03370 TPL 3,4 F5D03380 TRA 1,4 F5D03390 REM PUT WORD OF COMPILED INST ON TAPE F5D03400 SK AXT LCLST,1 F5D03410 STO CLST,1 STORE THE WORD IN CLST F5D03420 TIX SK1,1,1 COUNT NO OF WORDS IS CLST FULL F5D03430 AXT LCLST,1 YES F5D03440 SXA SK,1 RESET THE INDEX F5D03450 SK2 SXA *+4,4 F5D03460 TSX (TAPE),4 F5D03470 SK11,,(WBNC) F5D03480 CTLBL,,FTAPE3 F5D03490 AXT SET,4 F5D03500 TRA 1,4 F5D03510 SK11 IOCT CLST-LCLST,,LCLST $F5D03520 SK1 SXA SK,1 STORE INDEX OF NEXT WORD F5D03530 TRA 1,4 F5D03540 REM SUBROUTINE FOR COMPILING TRA TO LXD CASE F5D03550 SL ANA Z2K5 FORM F5D03560 ALS 11 ALLOW 11 BITS FOR BBNO (32)F5D03570 ADD SLK2 ADDRESS F5D03580 STO SLV2 OF F5D03590 CLA BBNO THE F5D03600 ANA DECMK F5D03610 ARS 18 TRA IN F5D03620 ORS SLV2 SLV2 F5D03630 SXA SL21,4 STORE RETURN F5D03640 SL2 CLA ZERO PUT 0 LOCATION F5D03650 TSX SK,4 ON TAPE F5D03660 CLA LTRA F5D03670 TSX SK,4 PUT TRA OP. ON TAPE F5D03680 CLA SLV2 F5D03690 TSX SK,4 PUT SYMB. ADDR ON TAPE F5D03700 CLA ZERO F5D03710 TSX SK,4 ANOTHER 0 F5D03720 SL21 AXT SET,4 F5D03730 TRA 1,4 F5D03740 REM SUBROUTINE FOR PUTTING HANGING TRA 0 ON TAPE F5D03750 SL1 CLA SLV3 F5D03760 TPL 1,4 RETURN IF THERE IS NO HANGING TRA0 F5D03770 SXA SL21,4 OTHERWISE , STORE RETURN AND F5D03780 CLA BBNO GET F5D03790 TSX SE,4 THE F5D03800 CLA BBB+5,1 SYMBOLIC LOCATION F5D03810 STO SLV2 OF 1ST INST IN BB AND F5D03820 CLA ZERO STORE IN SYNBOLIS ADDR WORD F5D03830 STO SLV3 SET INDICATOR TO SAY NO HANGING TRA F5D03840 TRA SL2 F5D03850 REM COMPILE AN LXD LIST F5D03860 SM CLA LLIND,2 IMMEDIATELY RETURN IF LIST IS F5D03870 TPL 1,4 ALREADY COMPOLED F5D03880 SLW LLIND,2 RECORD LIST ALREADY COMPILED F5D03890 SXA SM9,4 STORE RETURN F5D03900 CLA Z2K1+3,2 COMPUTE THE F5D03910 SUB ONED INDEX OF SUB BOTTEM F5D03920 STD SM1 POSITION OF LIDT F5D03930 STD SM5 SET END TEST F5D03940 SM6 CLA LIST1,1 F5D03950 TMI SM8 DOES THIS ELEMENT OF LIST REPRESENT AN LXF5D03960 TXL SM1+1,1,0 F5D03970 SM1 TXL SM10,1,SET YES, IS ELEMENT IN SUB BOTTOM POS. F5D03980 SBM LIST1+1,1 NO F5D03990 SM10 STO SMV2 STORE THE TAG AWAY F5D04000 CLA BBNO FORN F5D04010 ANA DECMK THE F5D04020 LRS 29 LOCATION (32)F5D04030 CLA LIST1,1 F5D04040 LLS 11 (32)F5D04050 ADD SMK1 F5D04060 SXD SMV3,1 STORE INDEX OF LIST QUANTITY F5D04070 STO SMV4 F5D04080 TSX SL1,4 RECORD ANY HANGING TRA0 F5D04090 CLA SMV4 F5D04100 TSX SK,4 COMPILE THE LOCATION F5D04110 CLA SMK2 F5D04120 TSX SK,4 COMPILE LXD F5D04130 CLA BBNO F5D04140 TSX SE,4 FIND INDEX OF BB F5D04150 CLA SMV2 F5D04160 SM3 CAS L4 IS THIS THE CORRECT ENT. REQUIREMENT F5D04170 TRA SM2 F5D04180 TRA SM4 YES F5D04190 SM2 ALS 1 NO, SHIFT IT LEFT ONE F5D04200 TXI SM3,1,-1 AND INDEX TO NEXT ENRR. REQUIREMENT F5D04210 SM4 CAL BBB+2,1 FORM F5D04220 ARS 18 AND COMPILE F5D04230 ADD SMK4 THE F5D04240 TSX SK,4 F5D04250 CLA SMV2 COMPILE THE TAG F5D04260 TSX SK,4 F5D04270 LXD SMV3,1 IS THE ELEMENT IN SUB BOTTOM POSITION F5D04280 TXL SM5+1,1,0 F5D04290 SM5 TXL SM7,1,SET F5D04300 TXI SM6,1,-1 NO, INDEX TO NEXT LIST POS. F5D04310 SM7 CLS ONEA F5D04320 STO SLV3 RECORD THAT THERE IS HANGING TRA 0 F5D04330 SM9 AXT SET,4 F5D04340 TRA 1,4 RETURN F5D04350 SM8 TZE SM7 GO TO RECORD HANGING TRA F5D04360 SSP F5D04370 TSX SL,4 RECORD A TRA TO LXD CASE F5D04380 TRA SM9 F5D04390 REM THE METHODS OF BRINGNNG IN BLOCKS OF COMPILED INST. AND F5D04400 REM CHECKING FOR ENDINGS IS THE SAME AS IN PASS 2 OF FLOW ANAL. F5D04410 FNDAS TNX 2FNDS,2,ZINST IS BLOCK OF INST. ALL USED F5D04420 TSX RDINS,4 YES, READ IN NEXT BLOCK F5D04430 2FNDS CAL INST-3,2 IS THIS INST. TAGGED F5D04440 ANA STMSK F5D04450 TZE CI7A F5D04460 CI4 LXD 9CNT,4 YES F5D04470 TIX CI5,4,1 COUNT TO 9, IS STAG WORD EXHAUSTED F5D04480 SXD BBOX,2 YES, GET ANOTHER F5D04490 CLA STGWD INCREASE THE NO. OF CURRENT STAG WORD F5D04500 ADD ONEA F5D04510 STO STGWD F5D04520 TSX SE4,4 GET INDEX OF NEXT STAG WORD F5D04530 CLA STAG,1 F5D04540 STO STGN2 GET AND STORE F5D04550 ALS 2 F5D04560 STO STGN1 THE STAG WORD F5D04570 LXD BBOX,2 RESTORE INDEX REGISER 2 F5D04580 AXT 9,4 RESET COUNT TO 9 F5D04590 CI5 SXD 9CNT,4 F5D04600 CAL INST-3,2 F5D04610 ANA TAGMK EXTRACT THE TAG F5D04620 STO TAG F5D04630 CAL STGN1 F5D04640 ANA LD3 EXTRACT THE S-TAG F5D04650 PDX 0,4 F5D04660 CAL VSTAG,4 CONVERT S-TAG TO 1,2, OR 4 F5D04670 STA INST-3,2 REPLACE TAU-TAG BY S-TAG F5D04680 SUB L4 IS THE TAG 4 F5D04690 TNZ CI5A F5D04700 SSM F5D04710 STO CIND YES, RECORD IR 4 NECESSARY F5D04720 CI5A CAL STGN2 F5D04730 ALS 9 F5D04740 PBT IS AN LXD NECESSARY F5D04750 TRA SKLX NO F5D04760 CLA ZERO YES F5D04770 TSX SK,4 COMPILE LOCATION OF 0 F5D04780 CLA SMK2 COMPILE LXD F5D04790 TSX SK,4 F5D04800 CLA TAG COMPILE THE SYMB. ADDR. OF THE CELL F5D04810 ORA SMK4 F5D04820 TSX SK,4 F5D04830 CLA INST-3,2 COMPILE THE S-TAG F5D04840 ANA ADDMK F5D04850 TSX SK,4 F5D04860 SKLX CAL INST-1,2 F5D04870 ANA LFMSK F5D04880 SLW TMP10 F5D04890 CLA TMP10 F5D04900 CAS LLXP IS THIS AN LXP F5D04910 TRA CI1 F5D04920 TRA SKLY YES F5D04930 TRA CI1 NO F5D04940 SKLY CAL STGN2 IS F5D04950 ALS 9 LXD F5D04960 PBT 0 NECESSARY. F5D04970 TRA CI3A NO. F5D04980 CLA INST-3,2 YES. IS S-TAG =4. F5D04990 SLW CPIND RECORD DONT COMPILE. F5D05000 ANA ADDMK F5D05010 SUB L4 F5D05020 TNZ CI6 NOT 4. F5D05030 CAL INST-5,2 IS NEXT INSTRUCTION (32)F5D05040 ERA LLXD LXD (32)F5D05050 TNZ CI6 NO (32)F5D05060 CAL INST-6,2 YES (32)F5D05070 ANA DECMK (32)F5D05080 SUB GSYM FROM 6) (32)F5D05090 TNZ CI6 NO (32)F5D05100 CLA INST-7,2 YES, (32)F5D05110 SUB T4SYM IS IT +4,4 (32)F5D05120 TNZ CI6 NO (32)F5D05130 TXI CI6,2,4 YES, OMIT IT. (32)F5D05140 CI1 CAS LDED NO F5D05150 TRA CI2 F5D05160 TRA CI3A YES F5D05170 CI2 CLA STGN2 F5D05180 TPL CI6 IS SXD REQUIRED F5D05190 CLA INST,2 NEITHER LXP NOR DED, COMPILE THE F5D05200 TSX SK,4 INST. F5D05210 CLA INST-1,2 F5D05220 TSX SK,4 F5D05230 CLA INST-2,2 F5D05240 TSX SK,4 F5D05250 CLA INST-3,2 F5D05260 TSX SK,4 F5D05270 CLA ZERO YES, COMPILE AN SXD, ZERO LOCATION F5D05280 STO CPIND RECORD THAT THIS INST. SHOULDNT BE CONPILF5D05290 TSX SK,4 F5D05300 CLA SIK3 SXD IN BCD F5D05310 TSX SK,4 F5D05320 CLA TAG SYMB. ADDR. OF TAU-TAG CELL F5D05330 ORA SMK4 F5D05340 TSX SK,4 F5D05350 CLA INST-3,2 AND TAG WORD F5D05360 ANA ADDMK F5D05370 TSX SK,4 F5D05380 CI6 CAL STGN1 F5D05390 ALS 2 F5D05400 SLW STGN1 F5D05410 CAL STGN2 F5D05420 ALS 1 F5D05430 SLW STGN2 F5D05440 TRA CKLOC GO TO CHECK FOR ENDINGS F5D05450 CI7 SSM F5D05460 STO CPIND RECODD LATER COMPILING NECESSARY F5D05470 REM NOW THE END OF BB IS CHECKED FOR F5D05480 CKLOC CLA INST,2 IF NO LOCATION SYMBOL , THIS CANT BE F5D05490 TZE TR3S ENSING OTHER THAN CERTAINTY F5D05500 CLA INST-4,2 IS THIS LAST INST IN BB F5D05510 SUB NXLOC F5D05520 TZE ENDBB YES, LOOK FOR TYPE OF ENDING F5D05530 AXT 8,4 NO, CHECK FOR ENDING OF GROUP OF INST F5D05540 CAL INST-1,2 F5D05550 ANA DECMK LOOK AT OP CODE F5D05560 SUBP SUB LNTOP+1,4 COMPARE TO OP CODES OF POSSIBLE F5D05570 TZE TRTIN+1,4 ENDINGS TRANSFER WHEN FOUND F5D05580 TIX SUBP,4,1 TRY NEXT POSSIBILITY F5D05590 CAL INST-1,2 NOT FOUND, LOOK FORCONDITIONAL TRANSFER F5D05600 6ANA ANA FSTLT F5D05610 SLW TMP10 F5D05620 CLA TMP10 F5D05630 SUB FSTT F5D05640 TZE TTYPE IS A CONDITIONAL TRANSFER F5D05650 NOEND TSX SCMI,4 NOT AN END OD BB COMPILE INST F5D05660 TXI FNDAS,2,4 IF IT NEEDS TO BE F5D05670 TR3S CLA INST-4,2 IS THIS LAST INST IN BB F5D05680 SUB NXLOC F5D05690 TZE SEQTR YES F5D05700 TRA NOEND NO F5D05710 REM TRANSFER VECTOR SEE SUBP+1 ABOVE F5D05720 TRA GOTOV TRA IS OP CODE F5D05730 TRA IF2PS PSE F5D05740 TRA IF2CS DCT F5D05750 TRA IF2CS RTT F5D05760 TRA MSECS MSE F5D05770 TRA IF3CS TZE F5D05780 TRA STPCZ HPR F5D05790 TRTIN TRA NOEND TSX F5D05800 REM THE FOLLOWING IS 4 WORD TRANSFER VECTOR, SEE ENDBB BELOW F5D05810 TRA TRACS TRAIS OP CODE F5D05820 TRA DOCS TXL F5D05830 TRA PAUSE HPR F5D05840 TRTTR TRA TRAC3 TTR F5D05850 ENDBB AXT 4,4 THIS INST ENDS A BASIC F5D05860 CLA INST-1,2 BLOCK LOOKAT OP CODE F5D05870 ANA DECMK FOR TYPE OF ENDING F5D05880 6SUB SUB LTROP+1,4 F5D05890 TZE TRTTR+1,4 TRANSFER IF IOUND F5D05900 TIX 6SUB,4,1 TRY NEXT POSSIBILITY F5D05910 TRA SEQTR F5D05920 TRACS CAL INST-2,2 OP CODE IS TRA SEE IF ADDRESS F5D05930 ANA PFXMK IS IN PROGRAM UNCONDITITONAL TRANSFER F5D05940 TNZ GOTON IF TRANSFER IT IS A GO TO N F5D05950 TRAC3 SXD BBOX,2 THIS IS GO TO ALPHA F5D05960 CAL BBNO F5D05970 ARS 18 F5D05980 STO ARG1 STORE BBNO AS ARGUMENT OF SAD F5D05990 TSX SE1,4 F5D06000 CAL BBB,1 F5D06010 TSX SE6,4 GET SUCC. TABLE ENTRY F5D06020 CAL SUCC,1 F5D06030 TSX SAD,4 GO TO DETERMINE SYMBOLIC ADDRESS F5D06040 LXD BBOX,2 F5D06050 SLW INST-2,2 TEPLACE SYMBOLIC ADDR. F5D06060 TSX SCMI,4 COMPILE THE INSTR F5D06070 TXI BEGBB,2,4 BEGINNING OF BB, INDEX TO NEXT INSTR F5D06080 GOTON SXD BBOX,2 F5D06090 CLA BBNO F5D06100 TSX SE,4 F5D06110 CLA BBB,1 CHECK TO MAKE SURE THIS IS GO TO N F5D06120 ARS 33 F5D06130 ADD ONEA F5D06140 TZE GON1 F5D06150 TSX DIAG,4 DIAGNOSTIC. THIS ISNT GO N F5D06160 GON1 CAL BBB+1,1 F5D06170 ARS 33 PUT SXD CASE IN TMP10 F5D06180 SLW TMP10 F5D06190 REM NOW ANY SXD BEFIR GO TO N ARE COMPILED F5D06200 AXT 3,2 F5D06210 GON3 CLA VSTAG,2 DOES THIS THIS IR NEED SXD F5D06220 ANA TMP10 F5D06230 TZE GON2 F5D06240 SXD ABOX,1 YES F5D06250 LDQ ZERO REPLACE LOCATION BY 0 AND F5D06260 LXD BBOX,4 PUT LOCATION ON THE F5D06270 CLA INST,4 SXD INST. F5D06280 STQ INST,4 SXDINST F5D06290 TSX SK,4 F5D06300 CLA LSXD F5D06310 TSX SK,4 F5D06320 LXD ABOX,1 F5D06330 CAL BBB+2,1 F5D06340 ANA TAGMK F5D06350 ORA IDTAG F5D06360 TSX SK,4 F5D06370 CAL TMP10 F5D06380 ANA VSTAG,2 F5D06390 TSX SK,4 F5D06400 LXD ABOX,1 F5D06410 GON2 TXI GON2+1,1,-1 F5D06420 TIX GON3,2,1 F5D06430 LXD BBOX,2 F5D06440 TSX SCMI,4 COMPILE THE INST F5D06450 TXI BEGBB,2,4 F5D06460 DOCS PXD 0,0 F5D06470 STO SXST T RECORD THERE IS SEQUDNTIAL TRANSFERF5D06480 TRA TRAC3 OTHERWISE DO EXACTLY AS FOR TRA TRANSFER F5D06490 PAUSE PXD 0,0 F5D06500 SEQTR SYN PAUSE F5D06510 STO SXST RECORD SEQUENTIAL TRANSFER F5D06520 TSX SCMI,4 F5D06530 TXI BEGBB,2,4 F5D06540 GOTOV TSX SCMI,4 COMPILE INST IF NECESSARY F5D06550 CLA INST-3,2 FIND NO. OF BRANCHES IN VECTOR F5D06560 SUB LD1 F5D06570 STD MBOX F5D06580 CLA BBNO F5D06590 ARS 18 STORE BBNO FOR SAD ROUTINE F5D06600 STO ARG1 F5D06610 GOV4 TXI GOV4+1,2,4 F5D06620 SXD BBOX1,2 F5D06630 TSX SE1,4 F5D06640 CLA BBB,1 F5D06650 SLW SUCNO STORE NO OF 1ST SUCCESSOR F5D06660 LXD BBOX1,2 F5D06670 13TNX TNX GOV1,2,ZINST IS BLOCK OF INST ALL USED F5D06680 TSX RDINS,4 T READ NEXT BLOCK F5D06690 GOV1 SXD BBOX1,2 F5D06700 CAL SUCNO F5D06710 TSX SE6,4 F5D06720 CLA SUCC,1 F5D06730 TSX SAD,4 FINF NEW SYMBOLIC ADDR FOR THIS TRANSFER F5D06740 LXD BBOX1,2 F5D06750 SLW TMP10 STORE SYMBOLIC ADDR. F5D06760 LXD MBOX,4 F5D06770 TIX GOV2,4,1 IS THIS THE LAST TRANSFER F5D06780 CLA INST-2,2 F5D06790 SUB NXLOC 1ST INST IN NEXT BB, IS IT F5D06800 TZE PS3 YES, THIS IS SEQUENTIAL TRANSFER F5D06810 GOV2 CLA TMP10 NO F5D06820 STO INST-2,2 F5D06830 TSX SCMI,4 COMPILE THE INXT F5D06840 GOV3 TXI GOV3+1,2,4 F5D06850 CAL SUCNO F5D06860 ADD ONED F5D06870 SLW SUCNO F5D06880 LXD MBOX,4 F5D06890 GOV5 TXI GOV5+1,4,-1 F5D06900 SXD MBOX,4 F5D06910 TXH 13TNX,4,0 IS THIS LAST TRA OF VECTOR F5D06920 TRA BEGBB YES F5D06930 IF2PS CLA INST-3,2 THIS IS PSE LOOK AT ADDRESS TO F5D06940 ANA XXPSX SEE IF IT IS 164-6 F5D06950 SUB XX16X F5D06960 TZE PSTCS YES, IT IS A TEST F5D06970 CLA INST-3,2 F5D06980 ANA DECMK NO, SEE IF ADDR IS 360 F5D06990 SUB XX360 F5D07000 TNZ NOEND NO, THIS ISNT BB END F5D07010 PSTCS TSX SCMI,4 THIS IS A PSE TEST INST F5D07020 MSECS SYN PSTCS OR AN MSE INST F5D07030 PS1 TXI PS1+1,2,4 INEDX TO CONSIEER 1ST TRANSFER F5D07040 SXD BBOX1,2 F5D07050 CAL BBNO F5D07060 ARS 18 F5D07070 STO ARG1 STORE BBNO AS ARGUMENT FOR SAD F5D07080 TSX SE1,4 F5D07090 CAL BBB,1 F5D07100 STO SUCNO GETNUMBER OF 1ST SUCCESSOR F5D07110 ADD LD1 F5D07120 TSX SE6,4 GET THE SECOND SUCC ENTRY F5D07130 CLA SUCC,1 F5D07140 TSX SAD,4 F5D07150 LXD BBOX1,2 F5D07160 SLW INST-2,2 REPLACE SYMBOLIC ADDRESS F5D07170 TSX SCMI,4 F5D07180 PS2 TXI PS2+1,2,4 INCREASE INSTR INDEX F5D07190 CLA INST-2,2 IS THIS A SEQUENTIAL TRANSFER F5D07200 SUB NXLOC F5D07210 TZE PS3 YES, SKIP COMPILING THE INST F5D07220 SXD BBOX1,2 NO F5D07230 CLA SUCNO F5D07240 TSX SE6,4 F5D07250 CLA SUCC,1 F5D07260 TSX SAD,4 DETERMINE THE SYMBOLIC ADDRESS F5D07270 LXD BBOX1,2 F5D07280 SLW INST-2,2 REPLACE SYMBOLIC ADDRESS F5D07290 TSX SCMI,4 COMPILE THE INST. F5D07300 TXI BEGBB,2,4 F5D07310 TTYPE CLA INST-2,2 IS THIS TRANSFER TO NEXT INST. F5D07320 CAS INST,2 F5D07330 TRA TTYP1 F5D07340 TRA NOEND YES F5D07350 TTYP1 SUB PCC F5D07360 TZE NOEND YES F5D07370 TRA CNDTR NO, IS CONDITIONAL TRANSFER F5D07380 IF2CS TSX SCMI,4 THIS IS DCT OR RTT F5D07390 RT1 TXI RT1+1,2,4 INDEX TO CONSIDER 1ST TRANSFER F5D07400 CNDTR SXD BBOX1,2 STORE BBNO. AS ARGUMENT F5D07410 CAL BBNO STORE BBNO AS ARGUMENT F5D07420 ARS 18 OF SAD F5D07430 STO ARG1 F5D07440 TSX SE1,4 F5D07450 CAL BBB,1 F5D07460 STO SUCNO F5D07470 TSX SE6,4 GET THE 1ST SUCC ENTRY F5D07480 CLA SUCC,1 F5D07490 TSX SAD,4 F5D07500 LXD BBOX1,2 F5D07510 SLW INST-2,2 REPLACE SYMBOLIC ADDRESS F5D07520 TSX SCMI,4 COMPILE THE INST F5D07530 RT2 TXI RT2+1,2,4 F5D07540 CLA INST-2,2 IS THIS A SEQUENTIAL TRANSFER F5D07550 SUB NXLOC F5D07560 TZE PS3 YES, SKIP COMPILING THE INST F5D07570 SXD BBOX1,2 F5D07580 CLA SUCNO F5D07590 ADD LD1 F5D07600 TSX SE6,4 F5D07610 CLA SUCC,1 F5D07620 TSX SAD,4 DETERMINE THE SYMBOLIC ADDR F5D07630 LXD BBOX1,2 F5D07640 SLW INST-2,2 F5D07650 TSX SCMI,4 COMPILE THE TRANSFER F5D07660 TXI BEGBB,2,4 F5D07670 IF3CS SXD BBOX1,2 THIS IS A TZE INST I. E. AN IF F5D07680 CAL BBNO F5D07690 ARS 18 STORE BB NO. FOR SUBROUTINE F5D07700 STO ARG1 F5D07710 TSX SE1,4 ARGUMENT F5D07720 CAL BBB,1 F5D07730 STO SUCNO F5D07740 ADD LD1 GET THE SUCC ENTRY F5D07750 TSX SE6,4 FOR THE TZE F5D07760 CLA SUCC,1 F5D07770 TSX SAD,4 F5D07780 LXD BBOX1,2 F5D07790 SLW INST-2,2 REPLACE THE SYMBOLIC ADDREAS F5D07800 TSX SCMI,4 COMPILE THE TZE F5D07810 IF1 TXI IF1+1,2,4 F5D07820 CAL INST-1,2 CHECK NEXT INST TO SEE F5D07830 ANA LFMSK IF IT IS TPL F5D07840 SLW TMP10 F5D07850 CLA TMP10 F5D07860 SUB LTPL F5D07870 TZE 16CLA F5D07880 IFHPR TSX DIAG,4 IF NOT, DIAGNOSTIC F5D07890 16CLA CLA INST-2,2 DOES THIS EXIT GO TO NEXT BB F5D07900 SUB NXLOC F5D07910 TNZ IF2 F5D07920 CLA INST-6,2 YES, DOES NEXT ONE ALSO F5D07930 SUB NXLOC F5D07940 TNZ IF2 F5D07950 PXD 0,0 YES, RECORD SEQUENTIAL TRANSFER F5D07960 STO SXST F5D07970 TXI BEGBB,2,8 F5D07980 IF2 SXD BBOX1,2 COMPILE THE TPL F5D07990 CLA SUCNO F5D08000 TSX SE6,4 F5D08010 CLA SUCC,1 F5D08020 TSX SAD,4 FIND AND F5D08030 LXD BBOX1,2 REPLACE F5D08040 SLW INST-2,2 SYMBOLIC ADDRESS F5D08050 TSX SCMI,4 F5D08060 IF3 TXI IF3+1,2,4 F5D08070 CAL INST-1,2 IS THIS TRA F5D08080 ANA LFMSK F5D08090 SLW TMP10 F5D08100 CLA TMP10 F5D08110 SUB LTRA F5D08120 TNZ IFHPR IF NOT , STOP F5D08130 CLA INST-2,2 YES IT IS IS THIS A F5D08140 SUB NXLOC SEQUENTIAL TRANSFER F5D08150 TNZ IF4 F5D08160 PS3 PXD 0,0 YES, RECORD THAT F5D08170 STO SXST F5D08180 TXI BEGBB,2,4 F5D08190 IF4 SXD BBOX1,2 CONPILE THE TRA F5D08200 CLA SUCNO F5D08210 ADD LD2 F5D08220 TSX SE6,4 F5D08230 CLA SUCC,1 IF NECESSARY F5D08240 TSX SAD,4 MODIFY THE F5D08250 LXD BBOX1,2 SYMBOLIC F5D08260 SLW INST-2,2 ADDRESS F5D08270 TSX SCMI,4 F5D08280 TXI BEGBB,2,4 F5D08290 STPCZ CLA INST-5,2 F5D08300 SUB LTRA F5D08310 TNZ NOEND F5D08320 CLA INST,2 F5D08330 SUB INST-6,2 F5D08340 TNZ NOEND F5D08350 STPCS TSX SCMI,4 COMPILE THE TWO INXT F5D08360 STP1 TXI STP1+1,2,4 AND GO TO STAET BB F5D08370 TSX SCMI,4 F5D08380 TXI BEGBB,2,4 F5D08390 REM THIS ROUTINE ELIMINATES EXTRA SXD AND LXD INSERTED AROUND F5D08400 REM SUBROUTINE CALL SEQUENCES F5D08410 CI7A CAL INST-1,2 IS THIS AN SXD INST F5D08420 ANA LFMSK F5D08430 SLW TMP10 F5D08440 CLA TMP10 F5D08450 SUB LSXD F5D08460 TNZ CI7C F5D08470 CAL INST-3,2 YES. DOES IT HAVE TAG 4 ADDRESS +4. F5D08480 SUB T4SYM F5D08490 TNZ CI7C F5D08500 CAL INST-2,2 YES. IS IT 6) F5D08510 ANA DECMK F5D08520 SUB GSYM F5D08530 TNZ CI7C F5D08540 CLA CIND YES, IS IR4 NECESSARY F5D08550 TPL DLSXD NO. DELETE SXD. F5D08560 TRA CI7 GO TO COMPILE INSTRUCTION. F5D08570 DLSXD CLA INST,2 F5D08580 TSX SK,4 IR4 NOT NECESS. COMPILE BSS 0 F5D08590 CLA LBSS F5D08600 TSX SK,4 F5D08610 CLA ZERO F5D08620 TSX SK,4 F5D08630 CLA ZERO F5D08640 TSX SK,4 F5D08650 TXI FNDAS,2,4 F5D08660 CI7C CAL INST-1,2 IS THIS AN LXD F5D08670 ANA LFMSK F5D08680 SLW TMP10 F5D08690 CLA TMP10 F5D08700 SUB LLXD F5D08710 TNZ CI7 NO, GO TO COMPILE THE INST F5D08720 CAL INST-3,2 IS IT +4,4 F5D08730 SUB T4SYM F5D08740 TNZ CI7 NO, GO TO COMPILE THE INST. F5D08750 CAL INST-2,2 IS IT 6) F5D08760 ANA DECMK F5D08770 SUB GSYM F5D08780 TNZ CI7 NO, GO TO COMPILE THE INST. F5D08790 CLA CIND YES, IS IR4 NECESSARY. F5D08800 TPL CI7E NO, GO TO REPRESS LATER COMPILING OF INSTF5D08810 CAL INST-5,2 YES, IS FOLLOWING INST. AN SXD F5D08820 ANA LFMSK F5D08830 SLW TMP10 F5D08840 CLA TMP10 F5D08850 SUB LSXD F5D08860 TNZ CI7D F5D08870 CAL INST-7,2 YES, IS THE TAG A 4 F5D08880 ANA ADDMK F5D08890 SUB L4 F5D08900 TNZ CI7D F5D08910 CLA INST-4,2 IS SXD FIRST INSTR F5D08920 SUB NXLOC OF NEXT BB. F5D08930 TZE CI7D YES, COMPILE LX. F5D08940 TXI DLSXD,2,4 COMPILE BSS 0 TO SAVE EFN-IFN FOR MAP(21)F5D08950 CI7D CLA ZERO CLMPILE THE LXD WITH GARBAGE F5D08960 TSX SK,4 SYMBOLADDEAA AND TAG 4 F5D08970 CLA LLXD F5D08980 TSX SK,4 F5D08990 CLA GSYM F5D09000 TSX SK,4 F5D09010 CLA T4SYM F5D09020 TSX SK,4 F5D09030 CI7E STO CPIND SURPRESS LATER COMPILING INST SET + F5D09040 TRA CKLOC F5D09050 CI3A CLA INST-3,2 IS THE S-TAG EQUAL TO 4 F5D09060 SLW CPIND RECORD INST. NOT TO BE COMPILED F5D09070 ANA ADDMK F5D09080 SUB L4 F5D09090 TNZ CI6 F5D09100 PXD 0,0 YES, RECORD IR4 NOT NECESSARY F5D09110 STO CIND F5D09120 TRA CI6 SINCE LXP OR DED, SKIP COMPILING INST. F5D09130 REM THIS ROUTINE READS ANOTHER BLOCK OF COMPILED INST INTO CS F5D09140 REM AND SHIFTS THE EXTRA INST TO THE BEGINNING OF BLOCK F5D09150 RDINS SXA D1XX,4 SAVE RETURN INDEX F5D09160 SXD BBOX,1 SAVE INDEX 1 F5D09170 AXT 12,4 SHIFT EXTRA INST FROM END F5D09180 D1CLA CLA NDINS,4 OF BLOCK TO BEGINNING F5D09190 STO INST,4 F5D09200 TIX D1CLA,4,1 IS BLOCK SHIFTED F5D09210 TSX (TAPE),4 F5D09220 INSRD,,(RBEC) F5D09230 INSLBL,,FTAPE4 F5D09240 LXA (SCHU)+FTAPE4,1 F5D09250 TXL D2END,1,0 F5D09260 TXI *+1,1,-CTBUF F5D09270 TXL D1END,1,ZINST-1 F5D09280 MO AXT ZINST,1 F5D09290 LAC MO,4 F5D09300 MOVEC CLA CTBUF-1,4 F5D09310 STO INST-12,1 F5D09320 TXI *+1,4,1 F5D09330 TIX MOVEC,1,1 F5D09340 D1XX AXT SET,4 NO ERROR, RESTORE INDEX REGISTERS F5D09350 LXD BBOX,1 F5D09360 TRA 1,4 RETURN TO MAIN ROUTINE F5D09370 D1END NOP *F5D09380 NOP *F5D09390 NOP *F5D09400 D2END SXA MO,1 F5D09410 TXI *+1,1,1 F5D09420 CLA ENDMK F5D09430 STO INST-12,1 F5D09440 TXI *+1,1,8 F5D09450 SXD FNDAS,1 F5D09460 CLA LCOUT PUT ADDR OF FINAL EXIT INTO MAIN F5D09470 STO FNDAS+1 ROUTINE F5D09480 ZET (SCHU)+FTAPE4 F5D09490 TRA MO F5D09500 TRA D1XX F5D09510 INSRD IORT CTBUF,,ZINST F5D09520 REM ENTRY POINT FOR PART 4 HERE. F5D09530 PASS2 AXT 12,2 BEGINNING OF PART 4 CYCLING. F5D09540 TSX (TAPE),4 REWIND TAPE 3. F5D09550 SEK4,,(SKBP) F5D09560 ,,FTAPE3 F5D09570 1TXI TXI SXPC1,2,ZINST+1 (32)F5D09580 REM INITIALIZE FOR START OF BB F5D09590 BEGBB SXD BBOX1,2 STORE INDEX OF POSITION ON INST TAPE F5D09600 CLA ONED F5D09610 ADD BBNO F5D09620 STO BBNO F5D09630 ARS 18 WAS THIS THE LAST BB F5D09640 SUB KEYS F5D09650 ADD ONEA F5D09660 NDTST TZE CHEF *F5D09670 CLA SXST NO F5D09680 TMI BEGBY F5D09690 CLA ADDMK F5D09700 STO SXST F5D09710 BEGBY CLA BBNO F5D09720 TSX SE,4 F5D09730 CAL BBB+2,1 GET ENTRANCE REQUIREMENT F5D09740 ARS 18 FOR IR4 F5D09750 SUB STMSK STORE + OR - IF IR4 F5D09760 STO CIND ISNT OR IS NECESSARY F5D09770 CLA ONEA RECORD THERE ISNT HANGING TRA 0 F5D09780 STO SLV3 F5D09790 CAL BBNO FIND THE 1ST INST IN NEXT F5D09800 ADD ONED F5D09810 TSX SE,4 BB F5D09820 CLA BBB+5,1 F5D09830 STO NXLOC F5D09840 REM DETERMINE WHICH LXD CASES EXIST , RESULT IN Z1V5 F5D09850 Z1 LDQ ZERO INITIALIZE THE EXISTENCE F5D09860 STQ Z1V5 INDICATOR WORD F5D09870 CLA BBB,1 GET AND STORE NO. OF 1ST PRED IN F5D09880 STA Z1V2 NEXT BB F5D09890 CAL BBNO F5D09900 TSX SE,4 F5D09910 CAL BBB,1 STORE THE NO OF F5D09920 STA Z1V3 1ST PRED IN F5D09930 STA Z1V8 THIS BB F5D09940 CLA Z1V3 F5D09950 Z15 CAS Z1V2 IS THIS PRED IN SAME BB F5D09960 TRA Z12 YES F5D09970 TRA Z2 NO F5D09980 Z12 TSX SE5,4 F5D09990 CLA PRED,1 DETERMINE THE F5D10000 ANA LT7 LXD CASE F5D10010 ALS 3 F5D10020 PDX 0,4 F5D10030 CAL Z1K3 STORE BIT AS INDICATOR F5D10040 ARS 7,4 FOR THIS F5D10050 ORS Z1V5 LXD CASE F5D10060 CLA Z1V3 F5D10070 ADD ONEA ARRANGE TO DEAL WITH NEXT F5D10080 STA Z1V3 PRED F5D10090 TRA Z15 F5D10100 REM THIS OPEN S. R. FORMS THE LXD LISTS FROM TNE INFO LEFT IN F5D10110 REM Z1V5 BY Z1 F5D10120 Z2 LDQ ZERO F5D10130 AXT 3,1 F5D10140 Z21 STQ LLIND,1 SET THE 3 INDEXDS TO THE SUB F5D10150 CLA Z2K1+3,1 BOTTOM POSITIONS F5D10160 SUB ONED IN THE 3 LISTS AND ALL F5D10170 STO Z2V1+3,1 INDICATORS TO SAY COMPILED F5D10180 TIX Z21,1,1 F5D10190 AXT 12,1 F5D10200 CLA MZE PLACE -0 S IN THE F5D10210 Z28 STO LIST1+12,1 LXD LISTS F5D10220 TIX Z28,1,1 F5D10230 AXT 7,1 SET TO BEGINNING OF CASE LIST F5D10240 Z25 LDQ Z1V5 DID F5D10250 CLA CASE+7,1 THIS F5D10260 PAX 0,2 CASE F5D10270 RQL 7,2 OCCURR F5D10280 TQP Z26 F5D10290 CLA Z2K5 YES, SET NO OF ONES IN F5D10300 STO Z2V2 DIFFERENCE TO HIGH NUMBER F5D10310 AXT 3,2 INITIALIZE TO 1ST LIST F5D10320 Z23 LDQ ZERO IS P004 F5D10330 CLA Z2V1+3,2 F5D10340 R004 PDX 0,4 QUANTITY IN THE LIST F5D10350 CLA LIST1,4 IS THE TOP F5D10360 ANA CASE+7,1 YES, DETERMINE F5D10370 SBM LIST1,4 CONTAINED IN THIS F5D10380 TNZ Z27 CASE F5D10390 CLA CASE+7,1 YES, DETERMINE F5D10400 SUB LIST1,4 THE NO. F5D10410 LRS 21 OF ONES F5D10420 MPY Z2K4 IN THE F5D10430 STA Z22 LOGICAL F5D10440 CLA Z2K3 DIFFERENCE F5D10450 Z22 ARS SET F5D10460 ANA Z2K5 F5D10470 CAS Z2V2 IS THE NUMBER OF ONES IN THE F5D10480 TRA Z27 DIFFERENCE LESS THAN OR EQUAL TO F5D10490 TRA Z27 THE PREVIOUS MINIMUM. NO F5D10500 STO Z2V2 YES, STORE NEW MIN F5D10510 SXA Z271,2 STORE INDEX OF LIST OF GIVING NEW MIN F5D10520 Z27 TIX Z23,2,1 COUNT TO 3 LISTS ARE WE THRU F5D10530 Z271 AXT SET,2 YES, GET INDEX OF LIST WITH MIN DIFF F5D10540 CLA Z2V1+3,2 STIRE F5D10550 PDX 0,4 THIS F5D10560 CLA CASE+7,1 CASE AT TOP OF F5D10570 Z24 TXI Z24+1,4,1 THAT LIST F5D10580 STO LIST1,4 F5D10590 PXD 0,4 STORE INDEX OF TOP F5D10600 STO Z2V1+3,2 POSITION IN THAT LIST F5D10610 CLA MZE STORE INDICATION THAT THE F5D10620 STO LLIND,2 LIST IS TO BE COMPILED F5D10630 Z26 TIX Z25,1,1 COUNT THE 7 CASES F5D10640 REM EXPAND THE LXD LISTS. F5D10650 Z3 CLA Z2K5 IS THE F5D10660 SBM LIST1+2 BOTTOM ENTRY OF F5D10670 TZE Z307 LIST1 A CASE 7 F5D10680 CLA LIST1+2 NO, DO THE BOTTOMS F5D10690 ANA LIST2+2 OF LISTS 1 AND 2 HAVE F5D10700 TZE Z35 A NON ZERO INTERSECTION F5D10710 CAS LIST1+2 YES, DOES INTERSECTION EQUAL 1 F5D10720 TRA Z31 F5D10730 TRA Z33 YES F5D10740 Z31 CAS LIST2+2 IS IT EQUAL TO BOTTOM OF 2 F5D10750 TRA Z32 F5D10760 TRA Z34 YES F5D10770 Z32 STO LIST1+3 STORE INTERSECTION IN SUB1 F5D10780 SSM POSITITON AND -(INTER.) IN F5D10790 STO LIST2+3 SUB2 POS. F5D10800 TRA Z306 F5D10810 Z38 SSM ENTER -INTER1 AND 3 F5D10820 STO LIST3+3 IN SUB3 POS. F5D10830 TRA Z306 F5D10840 Z39 SSM ENTER - INTER 1 AND 3 F5D10850 STO LIST1+3 INSUV1 POS. F5D10860 TRA Z306 F5D10870 Z300 CLA LIST2+2 DO BOTTOM ENTRIES F5D10880 ANA LIST3+2 OF 2 AND 3 HAVE F5D10890 TZE Z306 NONZERO INTERSECTION F5D10900 CAS LIST2+2 YES, IS INTRE 2 AND 3 F5D10910 TRA Z301 F5D10920 TRA Z303 YES F5D10930 Z301 CAS LIST3+2 IS INTERSECTION EQUAL TO BOTTOM OF LIST 3F5D10940 TRA Z302 F5D10950 TRA Z304 YES F5D10960 Z302 STO LIST3+3 STORE INTER 2 AND 3 IN SUB 3 POS. F5D10970 SSM AND -INTER IN F5D10980 STO LIST2+3 SUB 2 POS. F5D10990 TRA Z306 F5D11000 Z303 SSM ENTER -(INTER 2 AND 3 ) F5D11010 STO LIST3+3 IN SUB 3 POS. F5D11020 TRA Z306 F5D11030 Z33 SSM ENTER -(INTER 1 AND 2 ) F5D11040 STO LIST2+3 IN SUB 2 POS. F5D11050 TRA Z306 F5D11060 Z34 SSM STORE -(INTER 1 AND 2 ) F5D11070 STO LIST1+3 IN SUB 1 POS. F5D11080 TRA Z306 F5D11090 Z35 CLA LIST1+2 DO BOTTOM ENTRIES IN F5D11100 ANA LIST3+2 1 AND 3 HAVE NONZERO F5D11110 TZE Z300 INTERSECTION F5D11120 CAS LIST1+2 YES, IS IT EQUAL TO BOT. 1 F5D11130 TRA Z36 F5D11140 TRA Z38 YES F5D11150 Z36 CAS LIST3+2 TO THE BOTTOM ENTRY IN 3 F5D11160 TRA Z37 F5D11170 TRA Z39 YES F5D11180 Z37 STO LIST3+3 ENTER INTER 1 AND 3 IN SUB F5D11190 SSM 3 POS. AND -( INTER ) IN F5D11200 STO LIST1+3 SUB1 POS. F5D11210 TRA Z306 F5D11220 Z307 SXD Z2V1,0 CREATE THE LIST F5D11230 CLA L7 F5D11240 STO LIST1 F5D11250 CLA L3 F5D11260 STO LIST1+1 F5D11270 CLA ONEA F5D11280 STO LIST1+2 F5D11290 TRA Z4 F5D11300 Z304 SSM ENTER - INTER 2 AND 3 F5D11310 Z305 STO LIST2+3 INSUB2 POS. F5D11320 Z306 AXT 3,2 SET COUNT TO 3 F5D11330 AXT 0,1 SET TO INSPECT 1ST LIST F5D11340 Z309 CLA LIST1+2,1 F5D11350 TZE Z308 IS THE BOTTOM ENTRY ZERO F5D11360 SUB ONEA NO F5D11370 ANA LIST1+2,1 DOES IT HAVE TWO ONES F5D11380 TZE Z308 F5D11390 STO TMP10 YES F5D11400 CLA LIST1+3,1 IS THE SUB BOTTOM F5D11410 TNZ Z308 ENTRY ZERO F5D11420 CLA TMP10 YES F5D11430 STO LIST1+3,1 F5D11440 Z308 TXI Z308+1,1,-4 PREPARE FOR NEXT LIST F5D11450 TIX Z309,2,1 COUNT TO 3 F5D11460 CLA Z2K5 F5D11470 SBM LIST1+1 F5D11480 TNZ Z4 F5D11490 CLA LIST1+2 F5D11500 SUB ONEA F5D11510 ANA LIST1+2 F5D11520 TNZ Z4 F5D11530 CLA LIST1+2 F5D11540 STO LIST1+3 F5D11550 CLA Z2K5 F5D11560 SUB LIST1+2 F5D11570 STO LIST1+2 F5D11580 SUB ONEA F5D11590 ANS LIST1+2 F5D11600 CAL LIST1+3 F5D11610 ORS LIST1+2 F5D11620 REM DETECT AND COMPILE ANY SEQUENTIAL TRANSFER F5D11630 Z4 LDQ MZE PUT MINUS ZEROS IN F5D11640 STQ SXAS THE ASSOXIATED F5D11650 AXT 19,4 SXDPOSITIONS F5D11660 Z411 STQ SXST+20,4 F5D11670 TIX Z411,4,1 F5D11680 CLA SXST F5D11690 TMI Z5 IS THERE A SEQUENTIAL TRANSFER F5D11700 CAL BBNO YES F5D11710 ARS 18 F5D11720 SUB ONEA F5D11730 STO TMP10 PUT NO OF PREV. BB IN TMP10 F5D11740 CLA Z1V8 INITIALIZE 1ST PRED NO THIS BB F5D11750 Z49 STO Z1V3 F5D11760 TSX SE5,4 F5D11770 CAL PRED,1 F5D11780 ANA ADDMK IS THIS THE SEQUENTIAL F5D11790 SUB TMP10 TRANSFERS PRED ENTRY F5D11800 TZE Z410 F5D11810 CAL Z1V3 NO, TRY NEXT ONE F5D11820 ADD ONEA F5D11830 TRA Z49 F5D11840 Z410 CLA Z1V3 GET THE PRED NO F5D11850 TSX SH,4 FORM THE SXD CASE F5D11860 CLA SXD1 F5D11870 ADD SXD2 F5D11880 ADD SXD3 F5D11890 TZE Z44 IS THIS A 0 SXD CASE F5D11900 AXT 4,4 ISNT 0 SXD CASE F5D11910 Z41 CLA SXD1+3,4 RECORD SXD CASE F5D11920 STO SXST+4,4 IN POSITION ASSOCIATED F5D11930 TIX Z41,4,1 WITH SEQUENTIAL TRANSFER F5D11940 AXT 0,1 COMPILE THE SXD F5D11950 TSX SI,4 INST. WITH F5D11960 TRA Z47 (1) ASSOCIATED SXD WITH 0 LXD CASE F5D11970 Z42 TSX SM,4 (2)ASSOCIATED WITH AN LXD LIST F5D11980 TRA Z47 (3) NOT ASSOCIATED ( TRA COMPILED ) F5D11990 Z44 LXD SXD0,4 F5D12000 TXL Z46,4,0 DOES IT HAVE A 0 LXD CASE F5D12010 PXD 0,4 NO F5D12020 ARS 18 LXD CASE TO AC (ADDR) F5D12030 STO Z4V1 F5D12040 AXT 3,2 SET COUNT TO 3 , N=1 F5D12050 Z45 CLA Z2V1+3,2 GET INDEX F5D12060 PDX 0,1 OF TOP QUANTITY IN LIST N F5D12070 CLA LIST1,1 IS THE LXD CASE OF THIS SXD F5D12080 SUB Z4V1 CASE THE SAME AS F5D12090 TZE Z42 THE TOP QUANTITY IN LIST N F5D12100 TIX Z45,2,1 NO, COUNT TO 3 F5D12110 CLA Z4V1 COMPILE A F5D12120 TSX SL,4 TRA (LXD ) F5D12130 TRA Z47 F5D12140 Z46 CLS ONEA RECORD THAT THERE F5D12150 Z48 STO SLV3 IS A HANGING TRA 0CASE F5D12160 Z47 SYN Z48+1 F5D12170 REM FORM THE SXD LIST AND THE SYN CARD LIST F5D12180 Z5 CLA ONED SET INDEX IN SYN TABLE F5D12190 STO Z5V1 F5D12200 CLA Z1V8 RESET 1 ST PRED IN BB F5D12210 Z53 STO Z1V3 F5D12220 SUB Z1V2 IS THIS PRED IN SAME BB F5D12230 TZE Z6 NO, ADD FINISHED F5D12240 CLA SXST YES F5D12250 TMI Z51 WAS THERE A SEQUENTIAL TRANSFER F5D12260 ANA ADDMK YES, EXTRACT ADDRESS F5D12270 SUB Z1V3 HAS PRED ALREDY BEEN CONSIDERED F5D12280 TZE Z55 AS A SEQUENTIAL TRANSFER F5D12290 Z51 CLA Z1V3 NO F5D12300 TSX SH,4 GENERATE SXD CASE F5D12310 CLA SXD1 IS THE F5D12320 ADD SXD2 SXD CASE F5D12330 ADD SXD3 ZERO F5D12340 TZE Z55 F5D12350 AXT 0,1 NO, PREPARE TO SCAN SXD LIST F5D12360 Z503 CLA SXST,1 IS SUBSXD0 F5D12370 ANA DECMK F5D12380 STO TMP10 F5D12390 CLA SXD0 F5D12400 ANA DECMK F5D12410 SUB TMP10 F5D12420 TNZ Z54 F5D12430 CLA SXST+1,1 THIS SXD CASE F5D12440 SUB SXD1 F5D12450 TNZ Z54 F5D12460 CLA SXST+2,1 SAME AS F5D12470 SUB SXD2 F5D12480 TNZ Z54 F5D12490 CLA SXST+3,1 THE ONE ALREADY F5D12500 SUB SXD3 STORED F5D12510 TNZ Z54 F5D12520 CLA SXST,1 YES, STORE INDICATION F5D12530 TEST1 TRA PTCH1 TEST FOR ROOM IN THE SYN CARD TABLE $F5D12540 ANA ADDMK SYN,2 CARD F5D12550 STO SYN,2 IN THE F5D12560 CLA SXD0 SYN F5D12570 ALS 18 LIST F5D12580 STD SYN,2 F5D12590 Z52 TXI Z52+1,2,1 F5D12600 SXD Z5V1,2 F5D12610 Z55 CLA Z1V3 PREPARE TO DEAL WITH NEXT PRED F5D12620 ADD ONEA F5D12630 TRA Z53 F5D12640 Z54 CLA SXST,1 F5D12650 TPL Z502 IS THIS SXD POS. EMPTY F5D12660 TEST2 TRA PTCH2 TEST FOR ROOM IN THE SXD TABLE $F5D12670 TXL Z502,1,0 IS THIS ST CASE F5D12680 TXH Z504,1,-4-1 NO, IS THIS 0 LIST CASE F5D12690 TXH Z507,1,-8-1 NO 1ST F5D12700 TXH Z506,1,-12-1 2ED F5D12710 TXH Z505,1,-16-1 3RD F5D12720 TSX Z500,4 ENTER THE SXD CASE IN THE LIST F5D12730 CLA MZE F5D12740 STO SXST+4,1 STORE END MARK FOR SYN CAEDS F5D12750 TRA Z55 F5D12760 Z502 TXI Z503,1,-4 EXAMINE NEXT SXD CASE F5D12770 Z504 CAL SXD0 ZERO LIST CASE F5D12780 ANA DECMK IS THE LXD CASE 0 F5D12790 TNZ Z502 F5D12800 TSX Z500,4 YES, ENTER SXD CASE IN F5D12810 TRA Z55 ASSOCIATED POSITION F5D12820 Z505 TIX Z505+1,2,1 GENERATE INDEX OF LIST F5D12830 Z506 TIX Z506+1,2,1 F5D12840 Z507 CAL Z2V1+3,2 IS F5D12850 PDX 0,4 THE F5D12860 CLA SXD0 LXD F5D12870 ARS 18 CASE THE F5D12880 SUB LIST1,4 SAME F5D12890 TNZ Z502 F5D12900 TSX Z500,4 YES F5D12910 TRA Z55 F5D12920 REM SUBROUTINE FOR ENTERING SXD CASE IN SXD LIST F5D12930 Z500 CLA SXD0 F5D12940 STO SXST,1 F5D12950 CLA SXD1 F5D12960 STO SXST+1,1 F5D12970 CLA SXD2 F5D12980 STO SXST+2,1 F5D12990 CLA SXD3 F5D13000 STO SXST+3,1 F5D13010 TRA 1,4 F5D13020 REM COMPILE THE SXD LIST F5D13030 Z6 AXT -20,1 SET TO START OF SXD LIST F5D13040 Z61 CLA SXST,1 F5D13050 TMI Z7 IS THIS SXD POSITION EMPTY F5D13060 SXD Z6V1,1 NO F5D13070 TSX SI,4 COMPILE THE SXD CASE WITH F5D13080 NOP (1) 0 LXD CASE, OR F5D13090 Z6V1 TXH 0,0,SET (2) THIS RETURN CANT OCCURR F5D13100 LXD Z6V1,1 (3) TRA ALREADY CONPILED F5D13110 TXI Z61,1,-4 F5D13120 REM COMPILE TNE LXD LISTS AND ASSOCIATED SXD S F5D13130 Z7 AXT 3,2 SET TO BEGIN SCAN OF LISTS F5D13140 Z72 CLA Z2K1+3,2 F5D13150 PDX 0,1 PUT INDEX OF BOTTOM POSITION IN 1 F5D13160 CLA LIST1,1 F5D13170 TMI Z75 YES, IS IT A TRA(0) CASE F5D13180 TZE Z73 IS THE LIST FILLED F5D13190 CLA LIST1+1,1 PERHAPS, IS IT A FOR SURE F5D13200 TZE Z75 IT IS IF EITHER THE SUB BOTTOM F5D13210 TPL Z75 ENTRY IS -0 OR POSITIVE F5D13220 CLA Z7V2 F5D13230 TMI Z73 IS THIS 1ST TIME THRU F5D13240 Z76 CLA Z7K1+3,2 YES F5D13250 PDX 0,1 IS THERE ASSOCIATED F5D13260 CLA SXST,1 SXDLIST F5D13270 SXD Z7V1,2 F5D13280 TMI Z74 F5D13290 TSX SI,4 YES, COMPILE SXD CASE F5D13300 TRA Z71 F5D13310 TRA Z77 COMPILE F5D13320 Z71 LXD Z7V1,2 F5D13330 Z73 TIX Z72,2,1 COUNT TO 3 F5D13340 CLS Z7V2 IS THIS 1ST TIME THRU F5D13350 STO Z7V2 F5D13360 TMI Z7 YES, GO BACK CLASXST F5D13370 CLA SXAS0 IS THERE A 0 ASSOCIATED SXD CASE F5D13380 TMI Z8 F5D13390 AXT -4,1 YES F5D13400 TSX SI,4 COMPILE SXD CASE F5D13410 TRA Z8 F5D13420 TRA Z8 F5D13430 TRA Z8 F5D13440 Z77 LXD Z7V1,2 F5D13450 CLA Z4V1,2 F5D13460 TMI Z74 F5D13470 CLA Z7K1+3,2 F5D13480 PDX 0,1 F5D13490 CLA SXST,1 F5D13500 ARS 18 F5D13510 TSX SL,4 F5D13520 TRA Z71 F5D13530 Z74 CLA Z2V1+3,2 COMPILE THE LXD LIST F5D13540 PDX 0,1 F5D13550 TSX SM,4 F5D13560 TRA Z71 F5D13570 Z75 CLA Z7V2 IS THIS 1ST TIME THRU F5D13580 TMI Z76 NO, 2ED TIME F5D13590 TRA Z73 YES F5D13600 REM COMPILE ANY SYN CARDS F5D13610 Z8 CAL BBNO FORM F5D13620 ARS 18 AND F5D13630 STO TMP10 STORE F5D13640 TSX SE1,4 F5D13650 CAL BBB,1 -(IDSXD)-(BBNO)+(1ST PRED)*2**25 F5D13660 ANA ADDMK F5D13670 XEC SXPC6 (32)F5D13680 SUB TMP10 F5D13690 SUB IDSXD F5D13700 STO TMP10 F5D13710 LXD Z5V1,2 SET TO START OF SYN LIST F5D13720 Z81 TXL Z83,2,1 ARE WE THRU F5D13730 Z82 TIX Z82+1,2,1 DECREASE INDEX F5D13740 CAL SYN,2 F5D13750 ANA DECMK COMPILE THE SYN CARD F5D13760 Z84 ARS ** INITIALIZED FOR LARGEST BBNO (32)F5D13770 SUB TMP10 F5D13780 TSX SK,4 F5D13790 CLA LSYN F5D13800 TSX SK,4 F5D13810 CAL SYN,2 F5D13820 ANA ADDMK F5D13830 XEC SXPC6 (32)F5D13840 SUB TMP10 F5D13850 TSX SK,4 F5D13860 CLA ZERO F5D13870 TSX SK,4 F5D13880 TRA Z81 F5D13890 Z83 LXD BBOX1,2 GET INDEX OF COMPILED INDT F5D13900 CLA MZE RECORD NO SEQUENTIAL TRANSFER F5D13910 STO SXST F5D13920 TRA FNDAS F5D13930 REM WRITE TH E LAST BLOCK OF C.I. T. ON TAPE F5D13940 REM AFTER PUTTING RELATIVE CONSTANT ROUTINES AT END F5D13950 LSTBB AXT -1,2 F5D13960 TSX (TAPE),4 F5D13970 EFCW2,,(RBEC) F5D13980 SBLBL,,FTAPE4 F5D13990 NZT (SCHU)+FTAPE4 F5D14000 TRA EFREW F5D14010 LAC (SCHU)+FTAPE4,1 F5D14020 TXI *+1,1,RELSR F5D14030 SXD EFTXL,1 F5D14040 EFTXL TXL LSTBB,2,SET F5D14050 CLA RELSR,2 F5D14060 TSX SK,4 F5D14070 TXI EFTXL,2,-1 F5D14080 EFREW TSX (TAPE),4 F5D14090 RWD,,(SKBP) F5D14100 CTLBL,,FTAPE4 F5D14110 LAC SK,4 F5D14120 TXI *+1,4,LCLST F5D14130 SXD LSTCW,4 F5D14140 TNX R,4,0 F5D14150 TSX (TAPE),4 F5D14160 LSTCW,,(WBNC) F5D14170 CTLBL,,FTAPE3 F5D14180 TRA R F5D14190 EFCW2 IORT RELSR+1,,ZINST F5D14230 LSTCW IOCT CLST-LCLST,,SET $F5D14240 RWD PZE ,,-1 F5D14250 CHEF NZT (SCHU)+FTAPE4 *F5D14251 TRA LSTBB *F5D14252 TSX (TAPE),4 *F5D14253 SK1F,,(SKBP) *F5D14254 SBLBL,,FTAPE4 *F5D14255 TRA LSTBB *F5D14256 PTCH1 LXD Z5V1,2 ONE MORE THAN THE NO. OF SYN CARDS STORED $F5D14257 SXD UP1,2 PREPARE TO ADD TO NO OF SXD ENTRIES $F5D14258 LXA LNSXD,4 NO. OF SXD POSITIONS IN TABLE $F5D14259 TXI *+1,4,16 UP TO COMPENSATE FOR RELATIVE ADDRESS $F5D1425A SXD UP2,4 PREPARE TO ADD SXD ENTRIES TO SYN CARDS $F5D1425B LXD TXI,4 PICK UP NO. OF SXD ENTRIES THUS FAR $F5D1425D UP1 TXI *+1,4,*-* ADD NO. OF SYN CARD ENTRIES + 1 $F5D1425E UP2 TXL TEST1+1,4,*-* ERROR IF BUFFER IS ALL FILLED $F5D1425F TSX TSX ERR58,4 TABLE OVERFLOW, GO TO GENERAL DIAGNOSTIC $F5D1425G ERR58 TXI (DIAG),,-11 DECREMENT WILL IDENTIFY THIS ERROR LATER $F5D1425H PTCH2 PXA ,1 -NO. OF LOCATIONS USED THUS FAR IN SXD LIST$F5D1425I PAC ,2 GET COMPLEMENT OF THIS NUMBER $F5D1425J SXD TXI,2 TO ADD TO NO. OF SYN CARD ENTRIES $F5D1425K LXA LNSXD,2 TOTAL CELLS AVAILABLE IN SXD TABLE $F5D1425L TXI *+1,2,16 UP TO COMPENSATE FOR RELATIVE ADDRESSING $F5D1425M SXD TXH,2 SET TO COMPARE WITH NO. ALREADY USED $F5D1425N LXD Z5V1,2 ADD NO. OF CELLS USED IN SXD LIST TO $F5D1425O TXI TXI *+1,2,*-* ONE PLUS THE NO. USED FOR SYN CARDS $F5D1425P TXH TXH TSX,2,*-* ERROR IF TABLE OVERFLOWS ON NEXT SXD ENTRY$F5D1425Q AXT 3,2 NO OVERFLOW, $F5D1425R TRA TEST2+1 CONTINUE COMPILATION $F5D1425S BSS PTL4-29 4 CELLS LEFT FOR PATCHING $F5D14260 CTBUF BSS ZINST F5D14270 RELSR PZE 0 START OF BUFFER FOR REL SUBROUTINES. F5D14280 SXPC1 AXT 1,4 (32)F5D14290 CLA KEYS LAST BBNO (32)F5D14300 ANA ADDMK FIND HOW MANY BITS (32)F5D14310 ARS 1 IT OCCUPIES (32)F5D14320 TZE *+2 (32)F5D14330 TXI *-2,4,1 (32)F5D14340 SXA SXPC6,4 FOR SHIFTS (32)F5D14350 PXA ,4 (32)F5D14360 PAC ,4 (32)F5D14370 TXI *+1,4,17 (32)F5D14380 SXA SXPC3,4 NO OF BITS PRED NO (32)F5D14390 SXA SXPC4,4 OCCUPIES (32)F5D14400 TXI *+1,4,1 (32)F5D14410 SXA Z84,4 (32)F5D14420 TRA BEGBB RETURN (32)F5D14430 SXPC2 ANA ADDMK (32)F5D14440 STO SXPC7 (32)F5D14450 SXPC3 LGR ** DOES PRED NO OCCUPY MORE THAN (32)F5D14460 TZE SXPC5 ALLOTTED BITS,TRA IF NOT (32)F5D14470 ZAC YES (32)F5D14480 SXPC4 LGL ** GET ALLOTTED BITS (32)F5D14490 ADD SADV4 (32)F5D14500 PAC ,4 (32)F5D14510 CLA PRED,4 WILL THERE BE A DUPLICATE (32)F5D14520 ANA LD7 (32)F5D14530 TZE SXPC5 TRA IF NOT (32)F5D14540 CLA PRED,4 (32)F5D14550 PAX ,2 (32)F5D14560 CLA BBLIST-1,2 (32)F5D14570 STD PRAM (32)F5D14580 LAC SXPC7,4 (32)F5D14590 CLA PRED,4 (32)F5D14600 PAX ,2 (32)F5D14610 CLA BBLIST-1,2 (32)F5D14620 ARS 18 (32)F5D14630 STA PRAM (32)F5D14640 CLA SADV5 (32)F5D14650 PAX ,2 (32)F5D14660 CLA BBLIST,2 (32)F5D14670 STD PRAM+1 (32)F5D14680 TSX *+1,4 PRINT DIAGNOSTIC-TOO (32)F5D14690 TXI (DIAG),,-5 MANY PATHS OF FLOW TO (32)F5D14700 PRAM PZE (32)F5D14710 PZE (32)F5D14720 SXPC5 CLA SXPC7 (32)F5D14730 SXPC6 ALS ** (32)F5D14740 TRA SAD7+1 (32)F5D14750 SXPC7 PZE (32)F5D14760 BSS 100 PATCH SPACE (32)F5D14770 END32 SYN * (32)F5D14890 END -1 (32)F5D14900