14 22FL #LIS K0PSPLIT>K0ALLGEO>K0GREATGEO 17 22_= #SEG PSPLIT [ BILL IZATT : CENT 7 23DW 8HPSPLIT 15 23YG [ ENTRY POINT. THIS LOCATION MUST REMAIN FIXED 11 24D6 SEGENTRY K1PSPLIT,QENTRY1 4 24XQ [ 4 25CB [ 0 4 25X2 [ 1 15 26BL [ 1 PSPLIT SEGMENT IMPLEMENTS PARSPLIT MACRO 21 26W= [ 1 TAKE A PARAMETER IN FIRST CPB/CUNIAFTER CPAT AND SEPARATE 21 27*W [ 1 LETTER-STRING FROM AN ARITH.EXPRESSION.PASS THE LETTER ST 21 27TG [ 1 (LEFT-JUSTIFIED AND SPACE-FILLED IF NECESSARY) ACROSS IN 21 28*6 [ 1 IF NO LETTER-STRING SET EXEC1=0.PASS THE RESULT OF EVALUA 18 28SQ [ 1 THE EXPRESSION BY CHNUMCON ACROSS IN EXEC2 21 29#B [ 3 OUTPUT 1.EXEC1 = LETTER STRING (LEFT-JUSTIFIED AND SPACE-FILLED, 14 29S2 [ 3 OR = 0 IF NO LETTERS 15 2=?L [ 3 OR = 1 IF NULL PARAMETER 15 2=R= [ 3 OR = 2 IF PARAMETER ABSENT 16 2?=W [ 3 OR = 3 IF PARAMETER FORMAT ERROR 20 2?QG [ 3 2.EXEC2 = RESULT OF EVALUATING EXPRESSION BY CHNUMCON 16 2#=6 [ 3 OR = UNDEFINED IF FORMAT ERROR 21 2#PQ [ 3 3.EXEC3 = REPLY WORD,SET BY SETREP,=OK,NULL,NONEX,OR FORM 4 2*9B [ 3 21 2*P2 [ 4 ERROR ACTION -ERROR FOUND BY CHNUMCON -> SET EXEC1=3 AND O/P ERROR 20 2B8L [ 4 ERROR %B %A:'ARITH.EXPR.'IS NOT A VALID NUMBER FORMAT 21 2BN= [ 4 - ERROR FOUND BY PSPLIT-> SET EXEC1=3 AND O/P ERROR M 16 2C7W [ 4 ERROR %B %A:FORMAT ERROR:'PARAMETER' 14 2CMG [ 4 NULL PARAMETER-SETREP NULL 14 2D76 [ 4 ABSENT -DO- -SETREP NONEX 15 2DLQ [ 4 GEORGE ERROR IF NO CPB/CUNI BLOCK 4 2F6B [ 4 15 2FL2 ZA #41 [LETTER'A' 7 2G5L ZZ #73 5 2GK= QENTRY1 11 2H4W #SKI K6PSPLIT>99-99 9 2HJG TRACE 0,PSPLIT 21 2J46 MHUNT 3,CPB,CUNI [HUNT FOR CPB/CUNI BLOCK.GEOERR IF AB 9 2JHQ LDX 5 ANUM(3) 8 2K3B BNG 5 PABS 8 2KH2 BZE 5 PNULL 8 2L2L ANDN 5 #7777 18 2LG= STO 5 AWORK1(2) [PRESERVE CHARACTER COUNT 18 2L_W STO 3 AWORK2(2) [PRESERVE UNIBLOCK DATUM 7 2MFG LDN 7 0 18 2M_6 LDCH 0 APARA(3) [EXAMINE 1ST CHARACTER 17 2NDQ TXL 0 ZA(1) [IS 1ST CH.A LETTER? 17 2NYB BCS XPRFIRST [BRN IF NOT LETTER 8 2PD2 TXL 0 ZZ(1) 15 2PXL BCC XPRFIRST [NOT A LETTER 20 2QC= [ LETTER STRING IS SPLIT OFF AND LOADED INTO X7,LEFT-JUSTIFIED 12 2QWW [ AND SPACE-FILLED IF NECESSARY 21 2RBG LDN 6 4 [MAX OF 4 LETTERS IN LETTER STRING 9 2RW6 LDN 3 APARA(3) 19 2S*Q BRN PLOOP2 [X0 ALREADY HOLDS 1ST LETTER 5 2STB PLOOP1 8 2T*2 LDCH 0 0(3) 14 2TSL TXL 0 ZA(1) [LETTER? 9 2W#= BCS SPFILL3 8 2WRW TXL 0 ZZ(1) 15 2X?G BCC SPFILL3 [NOT A LETTER 19 2XR6 PLOOP2 ['LETTERS-FIRST'FLAG IS SET 20 2Y=Q SLL 7 6 [LETTER STRING IS ASSEMBLED IN X7 7 2YQB ORX 7 0 7 2_=2 SBN 5 1 17 2_PL BZE 5 PFERR [ERROR IF NO NUMBERS 21 329= [SET,LETTER STRING ONLY.=> PARAM.FORM 20 32NW BCHX 3 / [MOVE UP THE CHARACTER POINTER 9 338G BCT 6 PLOOP1 7 33N6 [TO REACH HERE: 18 347Q [ 1) 4 LETTERS HAVE BEEN FOUND AND PUT INTO X7, 15 34MB [ 2) IT IS A'LETTERS-FIRST'PARAMETER 16 3572 [ 3) THERE IS AT LEAST ONE MORE CHARACTER 8 35LL LDCH 0 0(3) 14 366= TXL 0 ZA(1) [LETTER? 15 36KW BCS ZANUM [NOT A LETTER 8 375G TXL 0 ZZ(1) 14 37K6 BCS PFERR [A LETTER 8 384Q BRN ZANUM 5 38JB SPFILL3 16 3942 LDN 4 #20 [LOAD SPACE CH. 15 39HL SLL 7 6 [MAKE ROOM 15 3=3= ORX 7 4 ['OR'IT IN 19 3=GW BCT 6 SPFILL3+1 [AVOID REPEATING'LDN 4 #20' 18 3?2G [X7 NOW HOLDS LETTER STRING,LEFT JUSTIFIED AND SPACE-FILLED 17 3?G6 ZANUM LDX 1 AWORK2(2) [LOAD CPB/CUNI DATUM 18 3?_Q DSA 5 ANUM(1) [ADJUST ANUM FOR CHNUMCON 21 3#FB SBS 5 AWORK1(2) [AWORK1 NOW HOLDS NUMBER OF LETTERS 9 3#_2 LDN 4 APARA(1) 20 3*DL CHARMOVE 3,5 [X5 HOLDS LENGTH OF NUMBER STRING 7 3*Y= PHOTO 6 8 3BCW CHNUMCOD ,1 9 3BXG TESTMOVE 6,NHUNT 10 3CC6 HUNT 1,CPB,CUNI 9 3CLY ... STO 1 AWORK2(2) 9 3CWQ BRN NHUNTA 5 3DBB NHUNT 9 3DW2 LDX 1 AWORK2(2) 5 3F*L NHUNTA 16 3FT= [ THIS PERFORMANCE RECONSTITUTES THE CPB/CUNI BLOCK. 4 3G#W # 9 3GBN ... LDN 3 APARA(1) 7 3GDH ... SLL 3 2 7 3GJ8 ... ADX 3 5 7 3GMT ... SBN 3 1 7 3GRG ... LDX 1 3 9 3GX7 ... ADX 1 AWORK1(2) 5 3H2S ...MOVELOOP 7 3H6F ... SRC 3 2 7 3H=6 ... SRC 1 2 8 3H*R ... LDCH 0 0(3) 8 3HFD ... DCH 0 0(1) 7 3HK5 ... SLC 3 2 7 3HNQ ... SLC 1 2 7 3HSC ... SBN 3 1 7 3HY4 ... SBN 1 1 9 3J3P ... BCT 5 MOVELOOP 9 3J7B ... LDX 1 AWORK2(2) 7 3J?B LDN 3 7 9 3JR2 LDN 4 APARA(1) 10 3K=L CHARMOVE 3,AWORK1(2) 9 3LPG LDX 3 AWORK1(2) 15 3M96 ADS 3 ANUM(1) [RESET ANUM 7 3MNQ LDX 3 1 4 3N8B # 5 3NN2 PURPLE 11 3P7L TESTREP CHNUMERR,PFERR2 10 3PM= STO 7 ACOMMUNE2(2) 8 3Q6W SETREP OK 5 3QLG UP 4 3R66 [ 5 3RKQ XPRFIRST 7 3S5B SBN 5 1 8 3SK2 BZE 5 XCONV 16 3T4L BCHX 3 / [ADVANCE CH.PTR. 16 3TJ= LDCH 0 APARA(3) [EXAMINE NEXT CH. 14 3W3W TXL 0 ZA(1) [LETTER? 20 3WHG BCS XPRFIRST [CONTINUE IF NOT END OF NUMBERS 8 3X36 TXL 0 ZZ(1) 9 3XGQ BCC XPRFIRST 7 3Y2B LDN 6 4 7 3YG2 TXL 6 5 20 3Y_L BCS PFERR [ERROR IF >4 LETTERS IN STRING 9 3_F= LDX 4 AWORK1(2) 7 3_YW SBX 4 5 9 42DG SMO AWORK2(2) 8 42Y6 DSA 4 ANUM 8 43CQ BRN SLL76 9 43XB PRUNE LDCH 0 APARA(3) 8 44C2 TXL 0 ZA(1) 15 44WL BCS RECON [NOT A LETTER 8 45B= TXL 0 ZZ(1) 15 45TW BCC RECON [NOT A LETTER 5 46*G SLL76 7 46T6 SLL 7 6 7 47#Q ORX 7 0 8 47SB BCT 5 ONON 8 48#2 BRN XDROP 7 48RL ONON BCHX 3 / 8 49?= BCT 6 PRUNE 9 49QW RECON LDX 5 AWORK1(2) 9 4==G LDX 3 AWORK2(2) 19 4=Q6 DSA 5 ANUM(3) [RECONSTITUTE CPB/CUNI BLOCK 8 4?9Q BRN PFERR 8 4?PB SLLL LDN 0 #20 7 4#92 SLL 7 6 7 4#NL ORX 7 0 8 4*8= XDROP BCT 6 SLLL 5 4*MW XCONV 7 4B7G PHOTO 6 9 4BM6 LDX 3 AWORK2(2) 8 4C6Q CHNUMCOD ,3 9 4CLB TESTMOVE 6,NHUN 10 4D62 HUNT 3,CPB,CUNI 4 4DKL NHUN 9 4F5= BZE 7 PURPLE 12 4FJW [ RECONSITUTE CPB/CUNI BLOCK 9 4G4G LDX 5 AWORK1(2) 9 4GJ6 DSA 5 ANUM(3) 9 4H3Q BRN PURPLE 4 4HHB PABS 8 4J32 #SKI K6PSPLIT>99-99 10 4JGL TRACE 0,ABSENT P 8 4K2= SETREP NONEX 7 4KFW LDN 0 2 8 4K_G BRN STOR 5 4LF6 PNULL 8 4LYQ #SKI K6PSPLIT>99-99 9 4MDB TRACE 0,NULL P. 8 4MY2 SETREP NULL 7 4NCL LDN 0 1 8 4NX= BRN STOR 5 4PBW PFERR 21 4PWG ERROR APFERR [ERROR MESSAGE : PARAMETER FORMAT ERR 5 4QB6 PFERR2 9 4QTQ SETREP FORMAT 7 4R*B LDN 0 3 8 4RT2 STOR SMO FX2 9 4S#L STO 0 ACOMMUNE2 5 4SS= UP 10 4T?W MENDAREA 15,K99PSPLIT 4 4TRG #END 8 ____ ...04056022000500000000