13 227T ... SEG DTSUBSA,867,C.R.JOHNSON,SCHEDULER 4 22*N ...[ 15 22HH ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 4 22PD ...[ 12 22SR ... SEGENTRY K1DTSUBSA,X1DTSUBSA 12 22Y6 ... SEGENTRY K2DTSUBSA,X2DTSUBSA 12 22_R ... SEGENTRY K3DTSUBSA,X3DTSUBSA 4 233F ...[ 9 236S ...TFMASK #42020000 20 23=7 ...QLOAD 8HLOADMT00 [USED BY X2DTSUBSA...CD LOAD CODE 9 23*G ...PAIR PAIR DTSTART,1 4 23DW ...[ 21 2SM# ...[ ****************************************************************** 4 2SN3 ...[ 21 2SNQ ...[ THIS SUBROUTINE APPENDS TO THE FDT AN ENTRY FOR THE TSN SPECIFIED 21 2SPF ...[ IN AWORK2 OF THE ACTIVITY BLOCK. IF AN ENTRY ALREADY EXISTS THEN T 14 2SQ8 ...[ SUBROUTINE WILL UNFORTUNATELY GEOERR. 14 2TMC ...[ THE LINK ADDRESS MUST BE RELATIVISED 4 2T_S ...[ 4 2W#= [ 5 2WRW ...UPFDT 8 2X?G SBX 7 FX1 8 2XR6 SMO FX2 14 2Y5H ... LDX 5 AWORK2 [GET TSN 4 2YCY ...[ 18 2YQ* ...[ FIND FDT ENTRY FOR TSN IN X5-IF NOT IN,GO TO NOFDTTAPE 4 2_4Q ...[ 10 2_C7 ... FDTENT 3,5,NOFDTTAPE 17 2_PJ ... GEOERR 1,INFDT [FDT ENTRY ALREADY 4 323_ ...[ 11 32BB ...[ TAPE NOT IN,MAKE NEW ENTRY 21 32NR ...[ FDT BLOCK MUST ALWAYS HAVE 4 SPARE WORDS-THERE CAN BE NO COORD. 15 3338 ...[ BETWEEN SEARCH AND NEW ENTRY INSERTION. 4 33*K ...[ 6 33N6 NOFDTTAPE 17 347Q LDX 3 BOLC [POINT TO EDT BLOCK 8 34MB LDX 3 A1(3) 7 3572 SLL 3 2 19 35LL ADX 3 BOLC [POINT TO SPACE FOR NEW ENTRY 18 366= ... STO 5 FDSN(3) [SET UP NEW ENTRY -TSN 21 36KW STOZ FDINC(3) [ -INCREMENT NUMBER 20 375G STOZ FDFILE(3) [ -FILE NUMBER 19 37K6 ... STOZ FDST(3) [ -STATE WORD 21 384Q ... BS 3,BIFDTCD [SET 'BEING OPENED' & 'CURRENT DUMP TAPE' BIT 15 3?7_ ... LDX 3 BOLC [X3 -> OFLC 17 3?G6 LDX 6 A1(3) [NUMBER OF ENTRIES 7 3?_Q ADN 6 1 14 3#FB STO 6 A1(3) [UPDATED 4 3#P8 ...[ 11 3#_2 ...[ GET SPACE FOR NEXT ENTRY 4 3*8S ...[ 7 3*DL SLL 6 2 7 3*Y= ADN 6 5 9 3BCW ALTLEN BOLC,6 19 3BF4 ... ADX 7 FX1 [RELATIVIZE LINK ACCUMULATOR 13 3BG= ... EXIT 7 0 [EXIT 4 3BHD ...[ 21 3BJL ...[ ****************************************************************** 4 3BKS ...[ 19 3BM2 ...[ THIS SUBROUTINE SETS UP A DUMP TAPE ACTIVITY FOR THE TAPE 18 3BN8 ...[ WHOSE TSN IS IN AWORK2 OF THE ACTIVITY BLOCK. THE FIRST 18 3BPB ...[ FDINCS BLOCK FOUND AFTER THE CURRENT ACTIVITY IS THEN 17 3BQJ ...[ CHAINED AFTER THE DTA AND THE DTA IS THEN FPUT'ED. 4 3BRQ ...[ 5 3BSY ...SETUPACT 19 3BW6 ... SBX 7 FX1 [RELATIVIZE LINK ACCUMULATOR 19 3BXG GETACT ACTDOC,ADUMPT,1 [SET UP DUMP TAPE ACTIVITY 19 3CC6 ... LDX 5 AWORK2(2) [GET TSN BEFORE CORRUPTING X2 18 3DW2 LDX 3 BPTR(2) [X2 POINTS TO ITS BASE 4 3F5S ...[ 11 3F*L [ CHECK LINKSET PARAMETERS 4 3FKD ...[ 15 3FT= LINKSET 3,PAIR(1) [SET UP LINK 15 3G#W ... STO 5 ADTSN(3) [MOVE IN TSN 10 3H#6 MHUNTW 1,FILE,FDINCS 18 3HRQ CHAIN 1,3 [CHAIN FDINCS AFTER NEWLY 16 3J?B [ SET UP DTA 7 3JR2 LDX 2 3 17 3K=L FPUT [PUT ACTIVITY ON LIST 15 3KQ= ADX 7 FX1 [RESETLINK 7 3L9W EXIT 7 0 4 3LPG ...[ 21 3M96 ...[ ****************************************************************** 4 3MNQ ...[ 13 3N8B ...[ THIS SUBROUTINE FINDS A FDT ENTRY. 4 3NN2 ...[ 12 3P7L ...XFDTENT [ 17 3PM= ... FDTENT 3,6,NOENTRY [J IF NO FDT ENTRY 15 3Q6W ... EXIT 7 1 [ENTRY FOUND 12 3QLG ...NOENTRY [ 16 3R66 ... EXIT 7 0 [ENTRY NOT FOUND 4 3RKQ ...[ 21 3S5B ...[ ****************************************************************** 4 3SK2 ...[ 19 3T4L ...[ SUBROUTINE TO SEARCH FOR FGET BLOCK ATTACHED TO DUMPER'S 20 3TJ= ...[ ACTIVITY .... WOULD BE BETTER IF DUMPER PUT IT IN MISC CHAIN. 4 3W3W ...[ 16 82B= XFGET LDCT 0 #443 [BLK TYPE OF FGET 8 82TW LDX 3 BACT 9 83*G XGET1 LDX 3 FPTR(3) 10 83T6 BXE 3 BACT,XGET2 11 84#Q BXU 0 ATYPE(3),XGET1 7 84SB EXIT 7 0 9 85#2 XGET2 GEOERR 1,NOFGET 4 85RL ...[ 21 86?= ...[ ****************************************************************** 4 86QW ...[ 21 87=G ...[ THIS SUBROUTINE IS DESIGNED TO DO A NON-CORDINATING SEARCH OP THE 20 87Q6 ...[ OLC, UPDATING ALL THE RELEVANT REQUEST BLOCKS. THERE ARE FOUR 20 889Q ...[ ENTRY POINTS CORRESPONDING TO FOUR SEPERATE ACTIONS TO BE TAKEN 4 88PB ...[ 18 8992 ...[ 1 XTAPEM/XTAPEP : SEARCH DOWN THE OFF LINE CHAIN 20 89NL ...[ INCREMENTING/DECREMENTING ADTCOUNT IN 20 8=8= ...[ ALL REQUEST BLOCKS WHOSE INC. NO. IS IN 19 8=MW ...[ THE RANGE GIVEN BY FILE FDINCS BLOCK 4 8?7G ...[ 13 8?M6 ...[ ENTRY : X2 = FX2 17 8#6Q ...[ FILE FDINCS BLOCK PRESENT 4 8#LB ...[ 20 8*62 ...[ 2 XCOUNT : SEARCH DOWN OLC UPDATING ADTCOUNT WITH A 20 8*KL ...[ VALUE SPECIFIED IN X0, IN ALL REQUEST 20 8B5= ...[ BLOCKS WHOSE INC. NO. IS SAME AS IN X4 19 8BJW ...[ AND WHOSE FILESTORE NUMBER IS IN X6. 4 8C4G ...[ 12 8CJ6 ...[ ENTRY : X2 = FX2 17 8D3Q ...[ X0 = COUNT OF DTAS AVAILABLE 14 8DHB ...[ X4 = INC. NO. 16 8F32 ...[ X6 = FILESTORE NUMBER. 4 8FGL ...[ 21 8G2= ...[ 3 XSTATE : SEARCH DOWN OLC SETTING APPROPRIATE BIT IN 21 8GFW ...[ FDTSTATE WORD IN ALL REQUEST BLOCKS WHOSE 21 8G_G ...[ INC.NO. IS GIVEN IN X4 AND WHOSE FILESTORE 14 8HF6 ...[ NUMBER IS IN X6. 4 8HYQ ...[ 12 8JDB ...[ ENTRY : X2 = FX2 14 8JY2 ...[ X0 = STATE WORD 14 8KCL ...[ X4 = INC. NO. 15 8KX= ...[ X6 =FILESTORE NUMBER 4 8LBW ...[ 20 8LWG ...[ EXIT IN ALL THESE CASES ALL THE ACCUMULATORS ARE CORRUPTED 4 8MB6 ...[ 14 8MTQ ...[ NOTE THE LINK ACCUMULATOR IS X7 6 8N*B ... UPDOLC 4 8NT2 ...[ 21 8P#L ...[ ****************************************************************** 4 8PS= ...[ 19 8Q?W ...[ THIS CODE IS ENTERED AFTER THE DTS HAS NOTICED THAT DUMPER 15 8QRG ...[ HAS BEEN INITIATED (VIA B21 OF INCWORD) 4 8R?6 ...[ 19 8RQQ ...[ EACH TAPE ENTRY IN DUMPERS FILE/FGET BLOCK IS LOOKED AT. 17 8S=B ...[ IF THE TAPE IS FOUND TO HAVE FAILED OR BE WRONGED 19 8SQ2 ...[ APROPRIATE BITS ARE SET IN THE FGET OTHERWISE A DUMP TAPE 17 8T9L ...[ ACTIVITY IS SET UP AND ALL FREQS ADTCOUNTS ALTERED 8 8TP= ...[ ACCORDINGLY 4 8W8W ...[ 6 8WNG ...X1DTSUBSA 4 8X86 ...[ 4 8XMQ ...[ 18 8Y7B ...[ FIRST THING TO DO IS TO REMOVE DUMPER BIT FROM INCWORD 4 8YM2 ...[ 21 8_6L ... BC ,BMTSREQ [CLEAR 'DUMPER REQUIRES TAPES' BIT 5 8_L= ...REHUNT 8 925W ... LDX 2 FX2 5 92KG ...#UNS IDC 20 9356 ... JBSC NOWFINI,,BMTSCAN [CLEAR BIT & J IF DUMP CANCELLED 18 93JQ ... CALL 7 XFGET [SEARCH FOR F/FGET BLOCK 17 944B ... [ON EXIT X3-> FGET 6 94J2 ...#UNS FPD 10 953L ... LDX 5 INCCOPIES(3) 6 95H= ...#UNS FPD 4 962W ...#SKI 4 96GG ...( 7 9726 ... LDX 5 3 10 97FQ ... ADX 5 ALOGLEN(3) 4 97_B ...) 5 98F2 ...NFGET 10 98YL ... LDX 0 FGETSTATE(3) 17 99D= ... BPZ 0 XREQNOT [IF -VE ENTRY ALREADY 16 99XW ... [BEEN LOOKED AT 9 9=CG ... ADN 3 FGETLEN 6 9=X6 ...#UNS FPD 8 9?BQ ... BCT 5 NFGET 6 9?WB ...#UNS FPD 4 9#B2 ...#SKI 9 9#TL ... BXU 3 5,NFGET 5 9**= ...NOWFINI 18 9*SW ... FON FGOTWAIT [ALL ENTRIES LOOKED AT 16 9B#G ... [SO KICK DUMPER 10 9BS6 ... STOZ ADUMTST(2) 17 9C?Q ... UP [BACK UP TO SCHEDMTX 5 9CRB ...XREQNOT 18 9D?2 ... SETBIT 0,FGETSTATE(3) [MARK ENTRY AS LOOKED AT 19 9DQL ... LDX 6 FGETSER(3) [PICK UP TSN FROM FGET ENTRY 18 9F== ... STO 6 AWORK2(2) [USE AWORK2 FOR SETUPACT 7 9FPW ... SBX 3 4 19 9G9G ... LONGOFF [DTSUBS8 OPENS INCINDEX!!! 18 9GP6 ... DOWN DTSUBS,8 [SETS UP A F/FDINCS BLOCK 17 9H8Q ... [COMES UP FOR OK CASE 19 9HNB ... [OR UPPLUS 1 IF TAPE FOUND 18 9J82 ... [TO BE FAILED OR WRONGED 9 9JML ... BRN TESTFDT 5 9K7= ...NOGOOD 10 9KLW ... MFREEW FILE,FDINCS 5 9L6G ...#UNS IDC 20 9LL6 ... JBSC NOWFINI,,BMTSCAN [CLEAR BIT & J IF DUMP CANCELLED 19 9M5Q ... LDX 6 ACOMMUNE1(2) [MAGSTATE FOR DUMPING CASE 5 9MKB ...NFDST 8 9N52 ... LDX 2 FX2 13 9NJL ... LDX 4 AWORK2(2) [TSN 16 9P4= ... CALL 7 XFGET [X3 -> FGET BLOCK 6 9PHW ...#UNS FPD 10 9Q3G ... LDX 7 INCCOPIES(3) 6 9QH6 ...#UNS FPD 4 9R2Q ...#SKI 4 9RGB ...( 20 9S22 ... LDX 7 ALOGLEN(3) [ ***** SHOULD BE RECORD HEADER 18 9SFL ... ADX 7 3 [POINTER TO END OF BLOCK 4 9S_= ...) 5 9TDW ...NEXTFGET 12 9TYG ... BXE 4 FGETSER(3),XTSNINFGET 18 9WD6 ... ADN 3 FGETLEN [STEP TO NEXT ELEMENT 6 9WXQ ...#UNS FPD 9 9XCB ... BCT 7 NEXTFGET 6 9XX2 ...#UNS FPD 4 9YBL ...#SKI 10 9YW= ... BXL 3 7,NEXTFGET 10 9_*W ... GEOERR 1,NOTNFGET 6 9_TG ...XTSNINFGET 16 =2*6 ... BPZ 6 NOTFAILED [X6 = MAGSTATE 11 =2SQ ... SETBIT 3,FGETSTATE(3) 9 =34J ... BRN REHUNT 6 =3#B ...NOTFAILED 8 =3D? ... LDCT 0 #002 7 =3J8 ... ANDX 0 6 9 =3N5 ... BNZ 0 TWDUMP 11 =3S2 ... SETBIT 2,FGETSTATE(3) 19 =4?L ... BRN REHUNT [LOOK AT NEXT ENTRY IN FDINCS 17 =4CH ...TWDUMP [SET BIT 5 IF TW DUMP 11 =4HD ... SETBIT 5,FGETSTATE(3) 9 =4M* ... BRN REHUNT 5 =4R= ...TESTFDT 5 =5=W ...#UNS IDC 17 =5QG ... JBS NOGOOD,,BMTSCAN [J IF DUMP CANCELLED 16 =6=6 ... LDX 7 ACOMMUNE1(2) [STATE OF MAGTAPE 9 =6PQ ... STO 7 AWORK3(2) 19 =79B ... CALL 7 XFDTENT [TSN IN X6 BEFORE WENT DOWN 17 =7P2 ... BRN NOTHERE [J IF NO ENTRY IN FDT 4 =88L ...[ 18 =8N= ...[ FDT ENTRY ALREADY SO CHECK IF FAILING AND FREE FDINCS 4 =97W ...[ 8 =9MG ... SMO FX1 21 ==76 ... LDX 6 TFMASK [B0=FAIL,B4=CD OR OPERATOR WRONGED,B1 9 ==LQ ... ANDX 6 FDST(3) 18 =?6B ... BNZ 6 XFREEFF [J IF THE TAPE IS WRONGED 20 =?L2 ... JMBS XDUMPACT,3,BIFDTO,BIFDTJL [J TO XDUMPACT IF NO ACTIVITY 16 =#5L ... [SET UP YET 12 =#K= ...XFREEFF [ 17 =*4W ... MFREEW FILE,FDINCS [FREE FDINCS BLOCK 18 =*JG ... BNZ 6 NFDST [GO AND SET STATE OF TAPE 16 =B46 ... [IN FGET ENTRY 12 =BHQ ... BRN SETDUMPBIT [ 5 =C3B ...NOTHERE 8 =CH2 ... LDX 2 FX2 19 =D2L ... CALL 7 XTAPEP [NO FDT SO UPDATE ADTCOUNT 20 =DG= ... CALL 7 UPFDT [UPDATE FDT - INSERT TSN,SET BIT 20 =D_W ... [BIFDTO,LENGTHEN FDT BY 4 WORDS. 21 =F_6 ... CALL 7 SETUPACT [SET UP DTA FOR DUMP TAPE AND CHAIN 17 =GDQ ... [THE FDINCS AFTER IT 16 =GYB ... SMO FX2 [X2 IS CORRUPT 18 =HD2 ... LDX 6 AWORK2 [X6 => TSN FOR XFDTENT 9 =HXL ... CALL 7 XFDTENT 16 =JC= ... BRN XGERR [NO FDT ENTRY ? 6 =JWW ...SETDUMPBIT 5 =KBG ...#UNS IDC 17 =KW6 ... JBS SETBITS,,BMTSCAN [J IF DUMP CANCELLED 19 =L*Q ... BS 3,BIFDTD [SET 'NEEDED BY DUMPER' BIT 5 =LTB ...SETBITS 20 =M*2 ... MBC 3,BIFDTO,BIFDTJL [CLEAR 'TAPE TO BE OPENED' BIT 19 =MSL ... [AND 'TAPE JUST LOADED' BIT 9 =N#= ... BRN REHUNT 12 =N*M ...XDUMPACT [ 5 =NC4 ...#UNS IDC 17 =NDF ... JBS NODUMP,,BMTSCAN [J IF DUMP CANCELLED 19 =NFW ... BS 3,BIFDTD [SET 'NEEDED BY DUMPER' BIT 12 =NH? ...NODUMP [ 19 =NJN ... BS 3,BIFDTJL [SET 'TAPE JUST LOADED' BIT 20 =NL5 ... BC 3,BIFDTO [CLEAR 'TAPE TO BE LOADED' BIT 19 =NMG ... BS BOLC,BIFDTLMEF [SET 'EXTANT LOADED TAPE' BIT 17 =NNX ... MFREEW FILE,FDINCS [ONE ALREADY PRESENT 19 =NQ# ... BRN REHUNT [GO LOOK AT NEXT FGET ENTRY 5 =NRW ...XGERR 10 =P?G ... GEOERR 1,NOTINFDT 4 =PR6 ...[ 21 =Q=Q ...[ ****************************************************************** 4 =QQB ...[ 21 =R=2 ...[ CHECK FOR CANTDO LOAD TAPE AND SET BIT BIFDTCL IN FDT IF APPROPRIA 14 =RPL ...[ .....ENTERED DOWN FROM MACRO CDRVTAPE 4 =S9= ...[ 12 =SNW ...X2DTSUBSA [ 21 =SS2 ... LDX 6 ACOMMUNE1(2) [X6 => COUNT OF REQUESTS ALREADY FOUN 15 =SX6 ... LDX 3 BOLC [X3 -> FDT 19 =T2= ... LDX 0 A1(3) [X0 => NUMBER OF FDT ENTRIES 18 =T5B ... BZE 0 NOTEXTANT [J IF NO RETRIEVE TAPES 16 =T8G ... MHUNT 3,CPB,CUNI [FIND PARAMETER 19 =TN6 ... LDX 4 ANUM(3) [X4 => COUNT OF CHARACTERS 19 =W7Q ... SBN 4 1 [PARAMETER EXISTS IF X4 > 0 15 =WMB ... BPZ 4 XEXIST [J IF EXISTS 20 =X72 ... BRN NOTEXTANT [GO UP - NOT AN EXTANT REQUEST 12 =XLL ...XEXIST [ 14 =Y6= ... ADN 4 1 [RESET X4 18 =YKW ... ANDN 4 #7777 [B0-11 IS PARAMETER TYPE 20 =_5G ... ADN 3 APARA [X3 -> FIRST CHARACTER OF MESSAGE 12 =_K6 ...XLDCH [ 20 ?24Q ... LDN 0 0 [COMPARISON STRING ENDS WITH ZERO 21 ?2JB ... LDCH 5 QLOAD(1) [X5 => CHARACTER FROM COMPARASON STRI 16 ?342 ... BXE 5 0,TSNGIVEN [J IF TSN FOUND 18 ?3HL ... LDCH 0 0(3) [X0 => CHARACTER FROM CD 17 ?43= ... BXE 0 5,XCHEL [J IF CHARACTER EQUAL 20 ?4GW ... BRN NOTEXTANT [GO UP - NOT AN EXTANT REQUEST 12 ?52G ...XCHEL [ 20 ?5G6 ... BCT 4 NOTEXAU [J IF CD CHAR CT NOT EXHAUSTED 20 ?5_Q ... LDX 2 BOLC [CORRECT MESSAGE BUT NO TSN GIVEN 20 ?6FB ... LDX 3 A1(2) [X3 => COUNT OF ENTRIES IN FDT 18 ?6_2 ... BZE 3 NOTEXTANT [J IF NO EXTANT REQUESTS 17 ?7DL ... LDN 1 0 [X1 USED AS COUNTER 17 ?7Y= ... SLL 3 2 [FOUR WORDS PER TSN 18 ?8CW ... ADX 3 BOLC [X3 => LAST ENTRY IN FDT 17 ?8XG ... SBN 3 4 [LAST ENTRY IS EMPTY 12 ?9C6 ...RMREPEAT [ 18 ?9WQ ... JBC RMNEX,3,BIFDTO [J IF NOT TO BE LOADED 18 ?=6J ... BNZ 6 NOTUNIQUE [MORE THAN ONE REQUEST 20 ?=BB ... STO 3 7 [REMEMBER POINTER TO EXTANT TAPE 21 ?=W2 ... SBN 1 1 [ARER THERE >1 OUTSTANDING REQUESTS 14 ??*L ... BPZ 1 NOTUNIQUE [J IF YES 19 ??T= ... ADN 1 2 [INCREMENT COUNT OF REQUESTS 12 ?##W ...RMNEX [ 16 ?#SG ... SBN 3 4 [UPDATE MODIFIER 15 ?*#6 ... TXL 3 BOLC [END OF FDT? 14 ?*RQ ... BCC RMREPEAT [J IF NOT 18 ?B?B ... BZE 1 NOTEXTANT [J IF NO ENTRIES FOUND 18 ?BR2 ... BS 7,BIFDTCL [SET THE CANT DO LOAD BIT 17 ?C=L ... BRN NCDLOK [GO UPPLUS 2 - CD OK 12 ?CQ= ...NOTEXAU [ 19 ?D9W ... BCHX 3 / [UPDATE POINTER TO PARAMETER 21 ?DPG ... BCHX 1 / [ UPDATE POINTER TO COMPARISON STRING 12 ?F96 ... BRN XLDCH [ 19 ?FNQ ...TSNGIVEN [X3 -> FIRST CHARACTER OF TSN 19 ?G8B ... [X4 => NO. OF CHARACTERS LEFT 17 ?GN2 ... LDX 7 3 [SAVE POINTER TO TSN 17 ?H7L ... LDN 5 0 [X5 USED AS COUNTER 20 ?HM= ... LDN 1 8 [USED TO CHECK VALIDITY OF TSN 12 ?J6W ...TSNLOOPY [ 17 ?JLG ... LDCH 2 0(3) [X2 => NEXT CHARACTER 16 ?K66 ... BXGE 2 1,TSNENDED [J IF END OF TSN 18 ?KKQ ... ADN 5 1 [UPDATE CHARACTER COUNT 16 ?L5B ... BCHX 3 / [UPDATE POINTER 16 ?LK2 ... BCT 4 TSNLOOPY [J IF MORE TSN 17 ?M4L ... [X7 -> START OF TSN 19 ?MJ= ... [X5 => NO. OF CHARS IN TSN 19 ?N3W ... [X4 => NO. OF CHARS REMAINING 17 ?NHG ... [X3 -> NEXT CHARACTER 12 ?P36 ...TSNENDED [ 17 ?P9_ ... BZE 5 NOTEXTANT [J IF ZERO LENGTH TSN 20 ?PDS ... BXL 1 5,NOTEXTANT [J IF MORE THAN 8 CHARS IN TSN 21 ?PMM ... NGX 6 6 [SET X6 TO -1 IF +1 ... USED LATER 15 ?PWG ... MHUNT 2,CPB,CUNI [FIND CUNI 19 ?Q5* ... SLL 2 2 [CONVERT TO CHARACTER COUNT 19 ?Q#8 ... SLC 7 2 [CONVERT TSN POINTER AS WELL 17 ?QH3 ... SBX 7 2 [RELATIVIZE POINTER 19 ?QPW ...TSNREPEAT1 [START LOOKING DOWN FDT BLOCK 15 ?QYP ... LDX 1 BOLC [X1 -> FDT 18 ?R7J ... LDX 2 A1(1) [X2 => NUMBER OF ENTRIES 18 ?RBC ... BZE 2 NOTEXTANT [J IF NO EXTANT REQUESTS 17 ?RK= ... SLL 2 2 [FOUR WORDS PER TSN 18 ?RS5 ... ADX 2 BOLC [X3 -> LAST ENTRY IN FDT 17 ?S2Y ... SBN 2 4 [LAST ENTRY IS EMPTY 18 ?S9R ...TSNREPEAT2 [LOOK AT NEXT FDT ENTRY 18 ?SDL ... JBC TSNEXT,2,BIFDTO [J IF NOT TO BE LOADED 16 ?SMF ... LDX 3 FDSN(2) [X3 => BINARY TSN 18 ?SW# ... CONSERNO 3,ACOMMUNE1 [CONVERT TO CHARACTERS 15 ?T57 ... MHUNT 1,CPB,CUNI [REFIND CUNI 20 ?T#2 ... SLL 1 2 [CONVERT ADDRESS TO CHARACTERS 21 ?TGT ... ADX 1 7 [X1 -> TSN IN CHARACTERS IN COMMAND P 21 ?TPN ... SRC 1 2 [X1 -> TSN IN WORDS AND CHARACTERS 20 ?TYH ... LDX 0 ACOMMUNE1(2) [X0 => CHARACTER COUNT OF FDT TSN 21 ?W7B ... BXL 0 5,REFIND [J IF TSN IN COMMAND LONGER THAN IN F 21 ?WB9 ... LDX 0 5 [X0 => NUMBER OF CHARACTERS TO COMPAR 17 ?WK4 ... STO 7 ACOMMUNE1(2) [STORE X7 TEMPORARILY 17 ?WRX ...TSNREPEAT3 [NOW COMPARE TWO TSNS 20 ?X2Q ... LDCH 4 ACOMMUNE2(2) [X4 => FIRST CHARACTER OF FDT TSN 21 ?X9K ... LDCH 7 0(1) [X7 -> FIRST CHARACTER OF COMMAND TSN 17 ?XDD ... BXE 4 7,MODUPDATE [J IF EQUAL...SO FAR! 12 ?XM? ... LDX 2 FX2 [ 15 ?XW6 ... LDX 7 ACOMMUNE1(2) [REINSTATE X7 15 ?Y4_ ... BRN REFIND [NOT THIS TSN 12 ?Y?S ...MODUPDATE [ 20 ?YGM ... BCT 0 NOTEXAU1 [J IF MORE CHARACTERS TO COMPARE 18 ?YPG ... BNZ 6 NOTUNIQUE [MORE THAN ONE REQUEST 16 ?YY* ... STO 3 6 [STORE BINARY TSN 12 ?_78 ... LDX 2 FX2 [ 15 ?_B3 ... LDX 7 ACOMMUNE1(2) [REINSTATE X7 12 ?_JW ...REFIND [ 21 ?_RP ... FDTENT 2,3,TSNREPEAT1 [ACUMMULATORS UNSUITABLE FOR XFDTENT! 19 #22J ...TSNEXT [POSITION ON NEXT FDT ENTRY 17 #29C ... SBN 2 4 [FOUR WORDS PER ENTRY 15 #2D= ... TXL 2 BOLC [END OF FDT 14 #2M5 ... BCC TSNREPEAT2 [J IF NOT 18 #2TY ... BNG 6 NOTEXTANT [J IF NO EXTANT REQUESTS 14 #34R ... BZE 6 NOTEXTANT [DITTO 16 #3?L ... CALL 7 XFDTENT [REFIND FDT ENTRY 19 #3GF ... BRN NOTEXTANT [J IF ENTRY NO LONGER WITH US 19 #3P# ... JBC NOTEXTANT,3,BIFDTO [J IF NO LONGER TO BE LOADED 16 #3Y7 ... BS 3,BIFDTCL [SET CD LOAD BIT 16 #472 ... BRN NCDLOK [EVERYTHING OK 16 #4*T ...NOTEXAU1 [UPDATE POINTERS 19 #4JN ... BCHX 2 / [UPDATE POINTER TO FDT TSN 20 #4RH ... BCHX 1 / [UPDATE POINTER TO COMMAND TSN 18 #52B ... BRN TSNREPEAT3 [COMPARE NEXT CHARACTER 12 #59Q ...NCDLOK [ 19 #5PB ... BS BOLC,BIFDTLMEF [SET 'LOOK AT FDT FIRST' BIT 19 #692 ... STARTACT RET [KICK DTS TO DEAL WITH TAPE 15 #6NL ... UPPLUS 2 [CD LOAD OK 12 #78= ...NOTUNIQUE [ 15 #7MW ... UPPLUS 1 [NOT UNIQUE 12 #87G ...NOTEXTANT [ 15 #8M6 ... UP [NOT EXTANT 4 #8MP ...[ 21 #8N# ...[ ******************************************************* X3DTSUBSA 4 #8NX ...[ 4 #8PG ...[ 19 #8Q5 ...[ ENTRY FROM TSININC MACRO TO CHECK IF GIVEN TSN IN INCINDEX 4 #8QN ...[ 6 #8R? ...X3DTSUBSA 14 #8RW ... LDX 4 ACOMMUNE2(2) [X4 = TSN 18 #8SF ... LDX 5 ACOMMUNE1(2) [X5 = DEPTH OF INCINDEX 7 #8T4 ... LDX 2 5 8 #8TM ... REWIND 0(2) 4 #8W= ...XIN1 7 #8WT ... LDX 2 5 8 #8XD ... STEP 0(2) 8 #8Y3 ... BZE 3 XIN4 10 #8YL ... LDX 6 AMTS-A1(3) 4 #8_9 ...XIN2 11 #8_S ... BXE 4 AMAG-A1(3),XIN3 9 #92C ... ADN 3 INCMAGLEN 8 #932 ... BCT 6 XIN2 8 #93K ... BRN XIN1 4 #948 ...XIN3 5 #94R ... UP 4 #95B ...XIN4 7 #95_ ... UPPLUS 1 4 #96Q ...[ 4 #9LB ...#END 6 ____ ...447450050001