Thanks for all the replies. See the code sample below. I'm getting stuck trying to get the length for the next table entry into R8 so the BXLE instruction loop the correct length. Let me know if I'm on the correct path, or I'm in never never land. Also, the --->>> <<<--- is where I think I'm getting stuck.
TESTBXLE CSECT , TESTBXLE AMODE 31 TESTBXLE RMODE ANY SAVE (14,12),,TESTBXLE*&SYSDATE*&SYSTIME BALR R12,0 R12 - BASE REGISTER USING *,R12 ESTABLISH ADDRESSABILITY ST R13,SAVEAREA+4 SAVEAREA LA R13,SAVEAREA POINTERS * CHKOPTS1 LA R7,TABLE1+4 ADDRESS OF FIRST ELEMENT LH R8,TABLE1+2 LENGTH OF TABLE ENTRY LA R9,TABLE1+2 ADDRESS OF BEGINNING OF TABLE AH R9,TABLE1 CALC ADDR OF END OF TABLE LOOP1 CLC 0(9,R7),=C'FFFFFFFFF' BE FOUND ENTRY FOUND = RC=0 --->>> LH R8,0(2,R7) <<<--- POINT TO LENGTH OF NEXT ENTRY BXLE R7,R8,LOOP1 LOOPING UNTIL OPT FOUND B NOTFND ENRTY NOT FOUND ? RC=8 * FOUND L R13,SAVEAREA+4 RETURN (14,12),RC=0 * NOTFND L R13,SAVEAREA+4 RETURN (14,12),RC=8 * PRINT NOGEN YREGS SAVEAREA DS 18F TABLE1 DS 0F DC XL2'008F' DC XL2'000E',CL14'AAAAAAAAAAAAAA' DC XL2'000F',CL15'BBBBBBBBBBBBBBB' DC XL2'0011',CL17'CCCCCCCCCCCCCCCCC' DC XL2'000D',CL13'DDDDDDDDDDDDD' DC XL2'0017',CL23'EEEEEEEEEEEEEEEEEEEEEEE' DC XL2'0009',CL9'FFFFFFFFF' DC XL2'0013',CL19'GGGGGGGGGGGGGGGGGGG' DC XL2'0019',CL25'HHHHHHHHHHHHHHHHHHHHHHHHH' DC XL2'0008',CL8'IIIIIIII' END TESTBXLE Thanks, Mark.