15 22FL #SEG TRANSFER70 [JOHN BAILEY 7 22_= #LIS K0TRANSFER 7 23DW 8HTRANSFER 4 23YG # 11 24D6 SEGENTRY K1TRANSFER,QK1TR 11 24XQ SEGENTRY K3TRANSFER,QK3TR 11 25CB SEGENTRY K4TRANSFER,QK4TR 11 25X2 SEGENTRY K5TRANSFER,QK5TR 11 26BL SEGENTRY K7TRANSFER,QK7TR 11 26W= SEGENTRY K8TRANSFER,QK8TR 4 27*W # 5 27TG QK1TR 15 28*6 MHUNT 3,EWDAS,GEXD [REFIND GEXD 7 28SQ LDN 0 1 20 29#B ADS 0 ETLINK(3) [AVOID NON-COORDINATING BRANCH 17 29S2 LDX 4 ECOR(3) [REMEMBER ECOR IN X4 10 2=?L LDN 1 EBUF-A1(3) 19 2=R= W2 LDX 1 A1(1) [GET POINTER TO NEXT BUFFER 18 2?=W BZE 1 W1 [NONE MARKED NOT SAVED 9 2?QG LDX 6 A1+2(1) 16 2#=6 ANDX 6 BITS22LS [GET SAVED COUNT 8 2#PQ BNZ 6 W2 9 2*9B W3 LDN 6 FBUFR(1) 15 2*P2 STO 6 ECOR(3) [CORE ADDRESS 9 2B8L LDX 6 A1+2(1) 9 2BN= LDX 5 EBLOCK(3) 21 2C7W BPZ 6 W4 [BRANCH IF NOT MARKED'TO BE WRITTEN' 9 2CMG LDX 6 A1+1(1) 18 2D76 STO 6 EBLOCK(3) [BLOCK ADDRESS OF BLOCK 7 2DLQ LDN 6 1 15 2F6B STO 6 EMODE(3) [WRITE MODE 15 2FL2 CALL 0 TRAN [DO TRANSFER 9 2G5L STO 5 EBLOCK(3) 19 2GK= STOZ ETMARK(3) [NO MORE OUTSTANDING WRITES 9 2H4W W4 STO 5 A1+1(1) 9 2HJG STOZ A1+2(1) 15 2J46 LDN 6 0 [READ MODE 9 2JHQ STO 6 EMODE(3) 15 2K3B CALL 0 TRAN [DO TRANSFER 9 2KH2 LDX 0 EWK+3(3) 8 2L2L BZE 0 W37 17 2LG= LDN 0 1 [JUMP IF READ ONLY 17 2L_W ADS 0 A1+2(1) [UPDATE SAVED COUNT 8 2MFG W37 CALL 0 TIDY 18 2M_6 ADS 4 ECOR(3) [ADD WORD PART OF ADDRESS 8 2NDQ W18 SETREP OK 5 2NYB UP 8 2PD2 W1 LDN 6 128 18 2PXL ADN 6 FBUFR-A1 [X6=LENGTH OF FBUF BLOCK 17 2QC= GETCORE 6,1,1 [MANDATORY,LONGLOCK 7 2QWW FINDCORE 2 7 2RBG LOCK 2 7 2RW6 FINDCORE 1 10 2S*Q NAME 1,EWDAS,FBUF 9 2STB STOZ A1+2(1) 10 2T*2 MHUNT 3,EWDAS,GEXD 9 2TSL LDX 6 EBUF(3) 20 2W#= STO 6 A1(1) [CHAIN INTO FRONT OF FBUF CHAIN 9 2WRW STO 1 EBUF(3) 8 2X?G BRN W3 8 2XR6 TRAN SBX 0 FX1 16 2Y=Q STO 0 EWK+2(3) [REMEMBER LINK 16 2YQB BZE 6 W5 [BRANCH IF READ 9 2_=2 LDX 7 EBLOCK(3) 15 2_PL STO 7 FBUFR(1) [BLOCK NUMBER 9 329= LDN 0 FBUFR(1) 16 32NW SUM 7 128 [CHECKSUM BLOCK 10 338G SBS 7 FBUFR+1(1) 18 33N6 W5 STO 1 EWK+1(3) [REMEMBER ADDRESS OF FBUF 9 347Q LDX 1 EBLOCK(3) 15 34MB CONVERT EBS(3),ETYPE(3),EBASE(3),EDEPF(3) 21 3572 ... BACKTRAN EMODE(3),BSET+FLAW+BONL,ECNT(3),,EBSUN(3),EBS(3),ECOR(3) 10 35LL MHUNT 3,EWDAS,GEXD 12 366= CHTRAN ETYPE(3),WFAIL,WINOP 17 36KW LDX 1 EWK+1(3) [TRANSFER SUCCESSFUL 16 375G BZE 6 W6A [BRANCH IF READ 9 37K6 LDX 0 BITS22LS 17 384Q ANDS 0 A1+2(1) [REMOVE WRITE BITS 8 38JB BRN W6 9 3942 W6A LDX 7 EBLOCK(3) 20 39HL TXU 7 FBUFR(1) [CHECK CORRECT BLOCK READ DOWN 8 3=3= BCC W7 8 3=GW W12 LDX 1 FX1 13 3?2G KEEPMESS XCH(1),ESERL(3),EBLOCK(3) 8 3?G6 BRN W8 10 3?_Q W7 LDX 7 FBUFR+1(1) 18 3#FB BZE 7 W6 [BRANCH IF NO CHECKSUM 9 3#_2 LDN 0 FBUFR(1) 8 3*DL SUM 7 128 18 3*Y= BNZ 7 W12 [BRANCH IF CHECKSUM FAIL 9 3BCW W6 LDX 0 EWK+2(3) 8 3BXG ADX 0 FX1 7 3CC6 EXIT 0 0 14 3CWQ WFAIL KEEPMESS XFAIL(1),ESERL(3),EBLOCK(3) 10 3DBB MHUNT 3,EWDAS,GEXD 9 3F*L W8 KEEPREP 7,EXFAIL 10 3FT= MHUNT 3,EWDAS,GEXD 9 3G#W W11 LDX 1 EBUF(3) 20 3GSG STOZ EBUF(3) [LOOK DOWN FBUF CHAIN AND FREE 8 3H#6 W10 BNZ 1 W9 16 3HRQ STOZ ECOR(3) [ZEROISE POINTER 7 3J?B PUTREP 7 5 3JR2 UP 20 3K=L W9 LDX 4 A1(1) [REMEMBER POINTER TO NEXT FBUF 15 3KQ= FREECORE 1 [FREE FBUF 7 3L9W LDX 1 4 8 3LPG BRN W10 15 3M96 WINOP KEEPMESS XINOP(1),ESERL(3) [INOPERABLE 10 3MNQ MHUNT 3,EWDAS,GEXD 10 3NN2 MHUNT 3,EWDAS,GEXD 9 3P7L LDX 1 EWK+1(3) 9 3PM= LDX 0 A1+2(1) 7 3Q6W SLL 0 1 19 3QLG BPZ 0 W8 [BRANCH IF NOT SPECIAL WRITE 9 3R66 KEEPREP 7,INOP 8 3RKQ BRN W11 9 3S5B XCH +EWCHSUM 9 3T4L XINOP +EWINOP 9 3TJ= XFAIL +EWSCAF 16 3WHG TIDY STO 0 EWK+2(3) [REMEMBER LINK 10 3X36 LDN 1 EBUF-A1(3) 18 3XGQ W15 LDX 5 1 [REMEMEMBER BUFF. ADDRESS 8 3Y2B W16 LDX 1 A1(1) 17 3YG2 BNZ 1 W13 [BRANCH IF MORE FBUFS 9 3Y_L LDX 0 EWK+2(3) 7 3_F= EXIT 0 0 16 3_YW W13 BNZ 6 W14 [BRANCH IF WRITE 9 42DG TXU 1 EWK+1(3) 20 42Y6 BCC W15 [BRANCH IF BLOCK ONLY JUST BEEN 21 43CQ W14 LDXC 7 A1+2(1) [READ INTO OR MARKED TO BE WRITTEN 8 43XB BCS W15 7 44C2 SLL 7 2 19 44WL BNZ 7 W15 [BRANCH IF MARKED TO BE SAVED 8 45B= LDX 7 A1(1) 18 45TW SMO 5 [KEEP FBUF LIST IN ORDER 8 46*G STO 7 A1 15 46T6 FREECORE 1 [FREE FBUF 7 47#Q LDX 1 5 8 47SB BRN W16 5 48#2 QK3TR 10 48RL MHUNT 3,EWDAS,GEXD 4 49?= W30 11 49QW #SKIP K6TRANSFER>99-99 7 4==G LDN 4 0 18 4=Q6 W20 LDX 1 EBUF(3) [GET ADDRESS OF NEXT FBUF 11 4?9Q #SKIP K6TRANSFER>99-99 4 4?PB ( 8 4#92 BNZ 1 W17 18 4#NL SBN 4 1 [ENSURE ONLY ONE TO WRITE 8 4*8= BZE 4 W18 10 4*MW GEOERR 1,NOSFBUFS 4 4B7G ) 11 4BM6 #SKIP K6TRANSFER>99-99 5 4C6Q #SKIP 18 4CLB BZE 1 W18 [BRANCH IF NO MORE FBUFS 9 4D62 W17 LDXC 0 A1+2(1) 19 4DKL BCC W19 [BRANCH IF NOT TO BE WRITTEN 8 4F5= CALL 5 WTRAN 11 4FJW #SKIP K6TRANSFER>99-99 7 4G4G ADN 4 1 8 4GJ6 W19 LDX 0 A1(1) 9 4H3Q STO 0 EBUF(3) 16 4HHB FREECORE 1 [FREE ALL FBUFS 8 4J32 BRN W20 10 4JGL POINT1 LDN 1 EBUF-A1(3) 17 4K2= W22 LDX 1 A1(1) [POINTER TO NEXT FBUF 8 4KFW BNZ 1 W21 9 4K_G W23 GEOERR 1,NOFBUF! 10 4LF6 W21 LDN 7 FBUFR-1(1) 20 4LYQ TXL 7 EBLOCK(3) [SEE IF CORE POINTER WITHIN... 18 4MDB BCC W22 [...THIS BUFFERS BOUNDARY 8 4MY2 ADN 7 129 9 4NCL TXL 7 EBLOCK(3) 8 4NX= BCS W22 16 4PBW EXIT 0 0 [EXIT WHEN FOUND 9 4PWG POINT2 LDX 7 EBLOCK(3) 20 4QB6 DVS 6 ECNT(3) [CHANGE WORD ADDRESS TO BLOCK NO. 10 4QTQ LDN 1 EBUF-A1(3) 8 4R*B W24 LDX 1 A1(1) 19 4RT2 BZE 1 W23 [BRANCH IF BUFFER NOT FOUND 9 4S#L TXU 7 A1+1(1) 8 4SS= BCS W24 7 4T?W EXIT 0 0 16 4TRG WTRAN SBX 5 FX1 [RELATAVISE LINK 9 4W?6 LDN 0 FBUFR(1) 15 4WQQ STO 0 ECOR(3) [CORE ADDRESS 9 4X=B LDX 0 A1+1(1) 15 4XQ2 STO 0 EBLOCK(3) [BLOCK NUMBER 7 4Y9L LDN 6 1 16 4YP= STO 6 EMODE(3) [MODE 1(WRITE) 17 4_8W CALL 0 TRAN [DO ACTUAL TRANSFER 8 4_NG ADX 5 FX1 7 5286 EXIT 5 0 5 52MQ QK4TR 10 537B MHUNT 3,EWDAS,GEXD 19 53M2 CALL 0 POINT1 [FIND BUFFER TO BE WRITTEN 8 546L BRN W25 4 54L= # 5 555W QK5TR 10 55KG MHUNT 3,EWDAS,GEXD 19 5656 CALL 0 POINT2 [FIND BUFFER TO BE WRITTEN 9 56JQ W25 STO 1 EWK+3(3) 9 574B LDX 0 ETMARK(3) 20 57J2 BZE 0 W26 [BRANCH IF NO OUTSTANDING WRITES 10 583L LDN 1 EBUF-A1(3) 8 58H= W28 LDX 1 A1(1) 15 592W BNZ 1 W27 [MORE FBUFS 9 59GG W32 GEOERR 1,WRFBUF? 9 5=26 W27 LDXC 0 A1+2(1) 16 5=FQ BCC W28 [TO BE WRITTEN? 9 5=_B TXU 1 EWK+3(3) 15 5?F2 BCC W29 [SAME BLOCK? 15 5?YL CALL 5 WTRAN [WRITE BLOCK 9 5#D= W26 LDX 1 EWK+3(3) 16 5#XW LDX 5 EWK(3) [WRITE MARKERS 19 5*CG STO 5 A1+2(1) [STORE WRITE MARKERS IN FBUF 9 5*X6 W29 STO 1 ETMARK(3) 8 5BBQ BRN W30 4 5BWB # 5 5CB2 QK7TR 10 5CTL MHUNT 3,EWDAS,GEXD 17 5D*= CALL 0 POINT1 [FIND RELEVANT FBUF 8 5DSW BRN W38 4 5F#G # 5 5FS6 QK8TR 17 5G?Q MHUNT 3,EWDAS,GEXD [FIND RELEVANT FBUF 9 5GRB CALL 0 POINT2 9 5H?2 W38 LDX 4 EWK+3(3) 8 5HQL BZE 4 W31 17 5J== LDN 4 1 [IF CHUCK WRITE X4=1 9 5JPW W31 STO 1 EWK+3(3) 10 5K9G LDN 1 EBUF-A1(3) 19 5KP6 W33 LDX 1 A1(1) [LOOK FOR A BLOCK TO WRITE 8 5L8Q BZE 1 W32 9 5LNB LDXC 0 A1+2(1) 17 5M82 BCC W33 [NOT TO BE WRITTEN 9 5MML TXU 1 EWK+3(3) 8 5N7= BCC W34 7 5NLW LDN 0 1 20 5P6G ADS 0 ETLINK(3) [AVOID NON-COORDINATING BRANCH 16 5PL6 CALL 5 WTRAN [WRITE AWAY BLOCK 9 5Q5Q LDX 1 EWK+3(3) 18 5QKB W34 LDX 5 A1+2(1) [UPDATE COUNT OF SAVES 9 5R52 ANDX 5 BITS22LS 7 5RJL SBX 5 4 11 5S4= #SKIP K6TRANSFER>99-99 4 5SHW ( 18 5T3G BPZ 5 W35 [ERROR IF SAVES NEGATIVE 10 5TH6 GEOERR 1,COUNTNEG 4 5W2Q W35 4 5WGB ) 9 5X22 ORX 5 EWK(3) 19 5XFL STO 5 A1+2(1) [STORE WRITE MARKERS IN FBUF 7 5X_= LDN 6 1 17 5YDW CALL 0 TIDY [TIDY UP FBUF LIST 8 5YYG BRN W18 4 5_D6 # 11 5_XQ MENDAREA 30,K99TRANSFER 4 62CB #END 8 ____ ...36421524000300000000