yes i thought about doing it that way where i get a word then use high, lowbyte , and thats ok when the for/next loop is for x = 1 to 2 , 4,6 etc so it uses the 2 bytes of the word per loop

but my for/next loop 1-3 depending on the font so not even word use of 2 bytes is possible

and if you just get 1 byte using readcode addresss , byte ,

it will appears to get low byte for an even address , high byte for odd address - regardless of the data stored at that specific address

eg my listing i put in post - address in flash at 5172,73 = 3FFC

USING READCODE at address $5172 = $FC -not $3F as stored in flash


5170- 0000 3ffc 003f fc00 3ffc 003f fc00 3ffc
5180- 0000 0000 0000 0000 0000 0000 0000 0000
5190- 0000 0000 0000 0000 0000 0000 0000 0000
51a0- 0000

terminal debug dump - for each address read by readcode
5170- 0 , 5171- 0,
5172- FC, 5173- 3F,
5174- 3F, 5175- 0,
5176- 0 , 5177- FC,
5178- FC, 5179- 3F,
517A- 3F, 517B- 0,
517C- 0 , 517D- FC,
517E- FC, 517F- 3F,
5180- 0 , 5181- 0





if you put this your example of string 3 in
so if say address return is adress 1234 say 0000


Code:
@ GetAddress _String3 ,_addr  
for lc=0 to 3 
readcode addr ,lb
addr=addr+1 
readcode addr ,hb
addr=addr+1 
Serout2 PORTb.7,84, ["hb ",hex2 hb," lb ",hex2 lb,13,10]
next