14 22FL ... SEG INRESTAR,74,M VELLACOTT,USERCOMS 4 22_= [ 4 23DW [ 12 23YG SEGENTRY K1INRESTAR,Z1INRESTAR 12 24D6 SEGENTRY K2INRESTAR,Z2INRESTAR 12 24XQ SEGENTRY K3INRESTAR,Z3INRESTAR 4 25CB # 4 25X2 # 16 26BL # K1 ENTRY: CONTROLS RESTART DURING INPUT 12 26W= # K2 ENTRY: EXPANDS TABS 13 2764 ...# K3 ENTRY : INPUT FULL CASE 4 27*W # 9 27TG XJOVER +JOVER 9 28*6 QMASK #777777 4 28SQ # 4 29#B # 6 29S2 Z1INRESTAR 18 2=?L LDX 0 FINISH [TEST IF 'FINISH' COMMAND 7 2=R= SLL 0 2 17 2?=W BNG 0 WRECK [J IF 'FINISH NOW' 8 2?QG LDN 0 127 15 2#=6 DCA ,STO,0,COUNT [COUNT=127 15 2#PQ REP LOCKC 2,/ [LOCK UP CPAT 8 2*9B GPERI ,2 6 2*P2 COOR1 15 2B8L UNLOCK 2 [UNLOCK CPAT 16 2BN= LDX 2 AWORK3(2) [PTR TO BUFFER 8 2C7W SBN 2 A1+2 16 2CMG UNLOCK 2 [UNLOCK BUFFER 11 2D76 RESTART YTM1,WRECK,REP1 20 2DLQ CALL 3 RESADD [RESTORE BUFFER/PERI ADDRESSES 15 2F6B LDX 0 CPRW1(2) [REPLY WORD 9 2FL2 ANDX 0 QMASK(1) 15 2G5L DCA ,LDX,3,CTSA [PERI ADDRESS 17 2GK= SBN 3 A1+2 [PTR TO ADATA/ALINE 15 2H4W DCA ,LDX,7,COUNT [PERI COUNT 16 2HJG SBX 7 0 [N/CH IN RECORD 7 2J46 SRC 7 2 8 2JHQ LDCT 0 #600 7 2K3B ANDX 0 7 15 2KH2 LDCH 4 AWORK4(2) [LAST SHIFT 7 2L2L SLL 4 6 7 2LG= ORX 0 4 17 2L_W STO 0 A1+1(3) [2ND WORD OF RED TAPE 7 2MFG SLC 7 2 15 2M_6 LDX 0 7 [N/CH IN REC. 8 2NDQ ADN 0 11 17 2NYB SRL 0 2 [N/W IN REC+RED TAPE 16 2PD2 STO 0 A1(3) [RECORD HEADER 14 2PXL LDN 1 #22 [ALPHA 14 2QC= LDN 2 #26 [PREVIOUS 7 2QWW STOZ 6 10 2RBG NAMETOP 3,ADATA,ACONV 19 2RW6 TRANSFORM 1,2 [CONVERT RECORD TO PREVIOUS 18 2S*Q TESTREP2 SHIFT,SHIFT1 [J IF RECORD CONVERTED 14 2STB NGN 6 1 [SWITCH 5 2T*2 SHIFT1 10 2TSL NAMETOP 3,ADATA,ALINE 16 2W#= LDX 0 A1(3) [N/W IN NEW REC. 15 2WRW SBN 0 2 [-RED TAPE 7 2X?G SLL 0 2 9 2XR6 LDX 4 A1+1(3) 7 2Y=Q SLC 4 2 17 2YQB ANDN 4 3 [N/CH IN LAST WORD 8 2_=2 BZE 4 OK 7 2_PL SBN 0 4 17 329= ADX 0 4 [X0=N/CH IN RECORD 17 32NW OK ADN 7 1 [N/CH IN OLD REC.+1 19 338G SBX 7 0 [SUBTRACT N/CH IN NEW RECORD 17 33N6 ADS 7 CPRW1(2) [CORRECT REPLY WORD 8 347Q LDN 0 128 17 34MB DCA ,STO,0,COUNT [RESTORE PERI COUNT 16 3572 STO 6 ACOMMUNE1(2) [SET UP SWITCH 5 35LL UP 16 366= YTM1 UPPLUS 1 [UP IF BREAK IN 15 36KW WRECK UPPLUS 2 [UP IF CANTDO 4 375G # 20 37K6 REP1 CALL 3 RESADD [RESTORE BUFFER/PERI ADDRESSES 8 384Q BRN REP 4 38JB # 5 3942 RESADD 8 39HL SBX 3 FX1 10 3=3= MHUNT 1,ADATA,ALINE 16 3=GW LOCKC 1,SALINE [LOCK UP BUFFER 10 3?2G MHUNT 1,ADATA,ALINE 15 3?G6 ADN 1 A1+2 [BUFFER PTR 9 3?_Q SBX 1 AWORK3(2) 19 3#FB BZE 1 NOMOV [BUFFER HAS NOT BEEN MOVED 9 3#_2 ADX 1 AWORK3(2) 18 3*DL STO 1 AWORK3(2) [UPDATE BUFFER ADDRESS 17 3*Y= DCA ,STO,1,CTSA [UPDATE PERI ADDRESS 8 3BCW NOMOV LDX 1 FX1 7 3BXG ADX 3 1 7 3CC6 EXIT 3 0 4 3CWQ # 5 3DBB SALINE 10 3DW2 MHUNT 2,ADATA,ALINE 7 3F*L EXIT 1 0 4 3FT= # 4 3G#W SATB 10 3GSG MHUNT 2,AINPAR,ATB 7 3H#6 EXIT 1 0 4 3HRQ # 4 3J?B # 16 3JR2 # R O U T I N E T O E X P A N D T A B S 4 3K=L # 6 3KQ= Z2INRESTAR 15 3L9W HUNT 1,AINPAR,ATB [TABS BLOCK 7 3LPG LDX 6 1 10 3M96 ADX 6 ALOGLEN(1) 18 3MNQ ADN 6 A1-2 [ABOUT THE END OF THE ATB 16 3N8B ADN 1 A1 [PTR TO HEADER 16 3NN2 STO 1 AWORK4(2) [N/CH IN RCD + RT 7 3NXS ... SMO 7 19 3P7L ... LDX 5 A1 [NO. OF WORDS IN ALINE RECORD 18 3PCD ... SLL 5 2 [CONVERT TO CHARACTERS 7 3PG3 ... SMO 7 8 3PJL ... LDX 0 A1+1 7 3PM9 ... SLC 0 2 18 3PPS ... ANDN 0 3 [NO CHARS IN LAST WORD 8 3PSC ... BZE 0 XOK 7 3PX2 ... SBN 5 4 17 3P_K ... ADX 5 0 [X5=N/CH IN RECORD 9 3Q48 ...XOK STO 5 AWORK2(2) 15 3Q6W SBN 5 8 [-RED TAPE 14 3QLG LDX 3 0(1) [N/TABS 19 3R66 ADN 3 1(1) [PTR FOR INF IN AINPAR/ATB 17 3RKQ BZE 5 RCEND [J IF EMPTY RECORD 16 3S5B STOZ 4 [N/CH IN GRAPHIC 17 3SK2 LDX 2 7 [PTR TO ADATA/ALINE 15 3T4L ADN 2 A1+2 [PTR TO RCD 15 3TJ= NXTCH LDCH 0 0(2) [LOAD CHAR 8 3W3W SBN 0 #74 15 3WHG BPZ 0 SHIFT [J IF A SHIFT 15 3X36 UPDT ADN 4 1 [N/CH GRAP 15 3XGQ UPDAT BCHX 2 / [UPDATE PTR 8 3Y2B BCT 5 NXTCH 19 3YG2 BRN RCEND [J IF NO MORE CHARS IN RCD 7 3Y_L SHIFT SBN 0 2 16 3_F= BNZ 0 UPDAT [J IF NOT DELTA 7 3_YW SHDEL BCHX 2 / 17 42DG BCT 5 SUCS [J TO TEST SUCCESOR 17 42Y6 BRN RCEND [J IF NO MORE RECORDS 16 43CQ SUCS LDCH 0 0(2) [LOAD SUCCESOR 8 43XB SBN 0 #30 16 44C2 BZE 0 XBSP [J IF BACKSPACE 7 44WL SBN 0 1 14 45B= BZE 0 XTAB [J IF TAB 7 45TW SBN 0 4 16 46*G BZE 0 XCRET [J IF CAR.RETURN 7 46T6 SBN 0 3 15 47#Q BPZ 0 UPDT [J IF CHAR 15 47SB BRN UPDAT [NOT CHAR. 7 48#2 XBSP SBN 4 1 8 48RL BRN UPDAT 7 49?= XCRET STOZ 4 8 49QW BRN UPDAT 7 4==G XTAB BCHX 2 / 17 4=Q6 BCT 5 SPACE [J TO INSERT SPACES 4 4?9Q #SKI 8 4?PB BRN RCEND 8 4#92 SPACE SMO FX2 16 4#NL LDX 1 AWORK4 [PTR TO N/TABS 14 4*8= LDX 7 0(1) [N/TABS 13 4*MW TESTB LDX 0 1(1) [TAB 16 4B7G SBX 0 4 [TAB-N/GRAP.CHAR 7 4BM6 SBN 0 1 18 4C6Q BZE 0 NXTAB [J IF NO SPACES TO INSERT 17 4CLB BPZ 0 SPIN [J TO INSERT SPACES 15 4D62 NXTAB ADN 1 1 [UPDATE PTR 17 4DKL BCT 7 TESTB [J TO TEST NEXT TAB 14 4F5= ...# THIS TAB POSITION CANNOT BE MATCHED WITH 17 4FJW ...# A TAB IN THE TABS BLOCK, SO WE DEFAULT TO ONE SPACE. 3 4G4G ... 15 4GJ6 ... LDN 0 1 [ NUMBER OF SPACES = 1 20 4K2= [ THE SECTION UP TO OKTABLEN LENGTHENS THE AINPAR/ATB IF THERE 20 4KFW [ ARE MORE TAB CHARACTERS, '_)', IN A RECORD THAN THERE ARE TAB 19 4K_G [ POSITIONS SPECIFIED IN THE 'TABS' QUALIFIER UNLESS THE ATB 19 4LF6 [ IS ALREADY LONG ENUF (BECAUSE OF SOME PREVIOUS ALTLENG). 4 4LYQ SPIN 7 4MDB LDX 7 6 21 4MY2 SBX 7 3 [CHECK IF X3 NOT BEYOND END OF ATB 18 4NCL BPZ 7 OKTABLEN [J IF ATB IS LONG ENUF 8 4NX= LDX 1 FX2 14 4PBW STO 2 ACOMMUNE4(1) [SAVE X2 14 4PWG STO 0 ACOMMUNE5(1) [SAVE X0 16 4QB6 LDX 2 AWORK4(1) [PTR TO HEADER 14 4QTQ LDX 7 0(2) [N/TABS 10 4R*B MHUNT 1,AINPAR,ATB 16 4RT2 SLL 7 2 [MULTIPLY BY 4 10 4S#L ADX 7 ALOGLEN(1) 9 4SS= ALTLENG 1,7,SATB 10 4T?W MHUNT 1,AINPAR,ATB 7 4TRG LDX 6 1 10 4W?6 ADX 6 ALOGLEN(1) 18 4WQQ ADN 6 A1-2 [NEAR THE END OF NEW ATB 8 4X=B ADN 1 A1 19 4XQ2 SBX 1 AWORK4(2) [GET AMOUNT MOVED BY HEADER 20 4Y9L ADS 1 AWORK4(2) [READJUST PTR TO HEADER OF ATB 21 4YP= ADX 3 1 [READJUST PTR FOR NEXT SET OF TAB POS 17 4_8W LDX 0 ACOMMUNE5(2) [RESTORE ORIGINAL X0 14 4_NG LDX 2 ACOMMUNE4(2) [AND X2 5 5286 OKTABLEN 17 52MQ STO 2 0(3) [STORE PTR AFTER TAB 16 537B STO 0 1(3) [STORE N/SPACES 18 53M2 ADX 4 0 [UPDATE N/CH IN GRAPHIC 17 546L SBN 0 2 [SUBTRACT 2 CHARS _) 8 54L= SMO FX2 18 555W ADS 0 AWORK2 [UPDATE N/3H IN NEW RCD 15 55KG ADN 3 2 [UPDATE PTR 5 5656 #SKI 1 18 56JQ BNZ 5 NXTCH [J TO SEARCH NEXT TABS 4 574B #SKI 16 57J2 BRN NXTCH [J TO SEARCH TABS 8 583L RCEND LDX 2 FX2 17 58H= STOZ 0(3) [PUT ZERO INTO AININF 8 592W TABEX LDN 3 503 17 59GG LDX 4 AWORK2(2) [N/CH IN NEW RECORD 7 5=26 ADN 4 3 17 5=FQ SRL 4 2 [N/W IN NEW RECORD 18 5=_B BXL 4 3,OKL [TEST LENGTH OF NEW RCD 14 5?F2 LDN 4 2008 [RCD MAX 17 5?YL STO 4 AWORK2(2) [CHANGE RECORD LENGTH 16 5#D= LDN 4 502 [USE MAX LENGTH 9 5#XW OKL LDCH 0 AWORK1(2) 8 5*CG SBN 0 #44 18 5*X6 BNZ 0 STEP1 [J IF NOT GRAPHIC INPUT 19 5BBQ SETUPCOR 4,3,ADATA,ACONV [SET UP BLOCK FOR CONVERSION 16 5BWB ADN 3 A1 [PTR TO RED TAPE 16 5CB2 BRN RECMV [J TO MOVE RECORD 7 5CTL STEP1 LDX 3 4 9 5D*= STEP 0,0(3) 15 5DSW TESTREP2 FILEFULL,YTMX,APPWAIT,WAITSTEP1 9 5F#G RECMV LDX 6 AWORK3(2) 17 5FS6 SBN 6 2 [PTR TO ADATA/ALINE 15 5G?Q LDX 7 3 [PTR TO FURB 10 5GRB MHUNT 1,AINPAR,ATB 8 5H?2 ADX 1 A1(1) 8 5HQL ADN 1 A1+1 15 5J== LDX 0 0(1) [PICK UP PTR 17 5JPW BNZ 0 TEX4 [J IF TABS TO EXPAND 7 5K9G SMO 4 17 5KP6 MOVE 6 0 [MOVE RCD INTO FURB 17 5L8Q BRN NEWRT [J TO UPDATE RED TAPE 16 5LNB TEX4 LDX 4 AWORK2(2) [N/CH IN NEW RCD 15 5M82 TEX LDX 5 0(1) [PTR TO TAB 8 5MML BZE 5 TBFIN 7 5N7= SLC 5 2 7 5NLW SLC 6 2 14 5P6G SBX 5 6 [N/CH+TAB 7 5PL6 SRC 6 2 15 5Q5Q SBN 5 2 [N/CH TO MOVE 8 5QKB TNCH LDN 2 511 17 5R52 BXGE 5 2,PPART [J TO MOVE PER PARTES 18 5RJL BZE 5 NOMV [J IF NO CHARS TO MOVE 15 5S4= LDX 2 5 [N/CH TO MOVE 15 5SHW PPART SBX 4 2 [N/CH IN RCD 15 5T3G SBX 5 2 [N/CH TO MOVE 8 5TH6 MVCH 6 0(2) 19 5W2Q BRN TNCH [TEST IF MORE CHARS TO MOVE 14 5WGB NOMV LDX 5 1(1) [N/SPACES 15 5X22 LDN 0 #20 [LOAD SPACE 16 5XFL LDX 2 7 [PTR FOR SPACE 15 5X_= DCH 0 0(2) [INSERT SPACE 7 5YDW SBN 5 1 14 5YYG SBN 4 1 [- 1 CHAR 7 5_D6 LDX 0 7 7 5_XQ BCHX 0 / 8 62CB SPEX LDN 2 511 17 62X2 BXGE 5 2,PERP [J IF N/SPACES>510 18 63BL BZE 5 ONESP [J IF ALL SPACES EXPANDED 17 63W= LDX 2 5 [N/SPACES TO EXPAND 19 64*W PERP SBX 4 2 [N/CH IN RCD-N/SP EXPANDED 18 64TG SBX 5 2 [TOTAL N/SP-NSP EXPANDED 16 65*6 MVCH 7 0(2) [EXPAND SPACES 17 65SQ BRN SPEX [J TO EXPAND SPACES 7 66#B ONESP BCHX 7 / 17 66S2 ADN 1 2 [UPDATE PTR IN AININF 7 67?L BCHX 6 / 15 67R= BCHX 6 / [IGNORE _) 8 68=W BRN TEX 16 68QG TBFIN BZE 4 NEWRT [NO CHARS TO MOVE 7 69=6 SMO 4 16 69PQ MVCH 6 0 [MOVE REST OF RCD 4 6=9B # 21 6=P2 # ROUTINE TO UPDATE THE RED TAPE AND CONVERT THE RECORD MODE 12 6?8L # TO GRAPHIC IF NECESSARY 13 6?N= # X3=PTR TO RCD RED TAPE 12 6#7W # AWORK2=N/CH IN RCD 5 6#MG NEWRT 8 6*76 LDX 2 FX2 16 6*LQ LDX 1 AWORK2(2) [N/CH IN RECORD 7 6B6B NGX 0 1 7 6BL2 SRC 1 2 8 6C5L LDN 4 #7777 15 6CK= ANDS 4 1(3) [CLEAR B0,B1 8 6D4W LDCT 4 #600 7 6DJG ANDX 4 1 18 6F46 ORS 4 1(3) [UPDATE N/CH IN LAST WORD 8 6FHQ ANDN 0 #3 8 6G3B BZE 0 WF 14 6GH2 LDN 4 #20 [SPACE 7 6H2L STOR1 SMO 3 15 6HG= DCH 4 0(1) [SPACEFILL 7 6H_W BCHX 1 / 8 6JFG BCT 0 STOR1 16 6J_6 WF STO 1 0(3) [RECORD LENGTH 9 6KDQ LDCH 0 AWORK1(2) 8 6KYB SBN 0 #44 16 6LD2 BNZ 0 RESTO [J IF NOT GRAPHIC 8 6LXL LDN 1 #26 8 6MC= LDN 2 #10 20 6MWW TRANSFORM 1,2 [CONVERT THE RECORD TO GRAPHIC 5 6NBG NEWSTEP 10 6NW6 MHUNT 2,ADATA,ACONV 8 6P*Q LDX 3 A1(2) 9 6PTB STEP 0,0(3) 14 6Q*2 TESTREP2 FILEFULL,YTMX,APPWAIT,WAITNEW 10 6QSL MHUNT 2,ADATA,ACONV 15 6R#= ADN 2 A1 [RECORD PTR 17 6RRW LDX 1 0(2) [N/W IN THE RECORD 17 6S?G MOVE 2 0(1) [MOVE RCD INTO FURB 8 6SR6 SBN 2 A1 16 6T=Q FREECORE 2 [FREE ACONV BLOCK 5 6TQB RESTO UP 4 6W=2 [ 6 6WPL WAITSTEP1 8 6X9= CALL 7 WAIT 8 6XNW BRN STEP1 5 6Y8G WAITNEW 8 6YN6 CALL 7 WAIT 9 6_7Q BRN NEWSTEP 8 6_MB WAIT SBX 7 FX1 11 6_X8 LONGSET IWTDEST,XGEOERR 9 7272 LONGSTOP XBRK,, 8 72LL ADX 7 FX1 7 736= EXIT 7 0 4 73KW [ 4 745G YTMX 11 74K6 [ FILEFULL-HANDLING MACRO 11 754Q INPUTFULL XBRK,ROK,JOVER 5 75JB UPONE 18 7642 UPPLUS 1 [IF NON-MULTIFILE IS FULL 4 76HL XBRK 14 773= UPPLUS 2 [BREAK-IN 4 77GW ROK 9 782G LDCH 0 AWORK1(2) 8 78G6 SBN 0 #44 16 78_Q BNZ 0 STEP1 [J IF NOT GRAPHIC 13 79FB BRN NEWSTEP [J IF 4 79_2 # 6 7=DL Z3INRESTAR 10 7=Y= LDX 3 ACOMMUNE1(2) 17 7?CW STO 3 AWORK1(2) [ STORE JOVER,JOVER1 15 7?XG TESTMULT XMULT [ J IF MULT 16 7#C6 ISITJOB NOTJOB [ J IF NOT JOB 8 7#WQ CLOSEABANDON 18 7*BB SETERR [ SET ERROR FLAG FOR C.P. 20 7*W2 SETUP SETNCORE 10,3,ADATA,CREADL [ SET UP BLOCK FOR ERROR REPORT 8 7B*L STOZ A1(3) 19 7BT= UNNORM TWO [ USE FABSNB FROM USEROPEN 20 7C54 ... MHUNT 3,ADATA,CREADL [ REHUNT BLOCK AFTER COORDINATION. 17 7C#W LDX 3 A1(3) [ X3= NO. OF CHARS. 12 7CSG OUTPARAM 3,CPDATA,ADATA,CREADL 10 7D#6 MFREEW ADATA,CREADL 20 7DRQ LDX 3 AWORK1(2) [ CONTAINS IDENT. FOR MONOUTX 16 7F?B ... BXU 3 XJOVER(1),MONOUT [ J IF JOVER1 6 7FR2 OUTPER 5 7G=L MONOUT 17 7GQ= MONOUTX AWORK1(2) [ FILE HAS OVERFLOWED 7 7H9W UPPLUS 3 18 7HPG XMULT CLOSE [ CLOSE ELEMENT OF M,F 17 7J96 CREATEB 3 [ SET UP CREATE BLOCK 14 7JNQ TOPFCB 1 [ GET FCB 9 7K8B LDX 5 FETM(1) 18 7KN2 STO 5 CETM(3) [ GET FILE MODE FROM FCB 15 7L7L BS 3,CESERIAL [ SERIAL FILE 15 7LM= BS 3,CEMULT [ MULTIFILE 16 7M6W ISITJOB XOVER [ J IF NOT JOB 16 7MLG BS 3,CETEMP [ TEMPORARY FILE 5 7N66 XOVER 6 7N7H ...#UNS FTS1 18 7NBJ ... USEROPEN XBRKIN,APPEND,CREATE,EMPTY,STREAMCOMP,FROZEN 6 7NFB ...#UNS FTS1 4 7NGR ...#SKI 16 7Q4L USEROPEN XBRKIN,APPEND,CREATE,EMPTY,STREAMCOMP 15 7QJ= REPERR2 REPOK [ GOOD REPLY 16 7R3W BRN SETUP [ REPORT ERROR 7 7RHG REPOK UPPLUS 2 5 7S36 XBRKIN 16 7SGQ CLOSEMULT [ MDF STILL OPEN 7 7T2B UPPLUS 1 5 7TG2 NOTJOB 6 7T_L CLOSE 8 7WF= BRN SETUP 5 7WLD XGEOERR 9 7WRL GEOERR 1,LONGSET? 10 7WYW SEGENTRY K99INRESTAR 11 7XDG MENDAREA 50,K99INRESTAR 4 7XY6 # 4 7YCQ #END 8 ____ ...17113000000500000000