Charles,
You got me thinking about breaking up array, so I tried a few things,
Arrayread Array[index point in array], limit,goto................................. starts read at a point into array.
After storing chars with RXint, framing with start and end char to start loading and triggering a finish to rcv and parse, I have an index of char count. So now I can figure indexing points and lengths as follows.
Code:
ParseSUB: 'InDX up to 500 dec
b6=0
if indx<250 then 'char count less than 250 for 1 sweep
arrayread rcvdata, INDX,NONE, [wait("RUN")]:b6=1:return
else
INDX1=indx-245 'char count >250 and < 500 about
arrayread rcvdata, 250,NONE1, [wait("RUN")]:b6=1:return 'test first 250 char in array
NONE1;
arrayread rcvdata[245], INDX1,NONE, [wait("RUN")]:b6=1:return 'test balance of chars at >245 indx
NONE: RETURN 'back-up a few chars incase "wait" straddles arrayread
endif
Same setup for other parses, I'm not sure if some code could be reduced.
Don
Bookmarks