------------------
{$ELSE}
{unpack digits}
for I := 1 to BcdSize-1 do begin
UB[2*I-1] := B[I] and $F;
UB[2*I] := B[I] shr 4;
end;
{set last overflow digit to zero}
UB[2*BcdSize-1] := 0;
{$ENDIF}
{copy sign/exponent}
UB[0] := 0;
Exponent := B[0] and NoSignBit; <----------------- error occurs
here
Sign := B[0] and SignBit;
end;
------------------
I've tried many different ways to read this data, including using BcdExt,
FloatFormBcd, StrBcd, and they all seem to fail in the Unpack function at
the same line. I've examined the field data coming in, and it appears to
be a 10 byte BCD. I thought that an EAccessError was probably related to a
memory location not being present, but I haven't had any luck in finding the
problem here. A friend of mine using the same source and destination
libraries has been successful with BcdExt, but I'm stumped. Can you help?
Carl Scorup
I would guess that B[0] is the cause, is B[0] a valid index or is the
array 1 based. It is the first time in your code that you have looked at
the [0]
position.
Robert Love [TPX]
"Carl Scorup" <csc...@charter.net> wrote in message
news:jxSdRL4...@tpsmail01.turbopower.net...
Carl
"Robert Love [TPX]" <rober...@tpx.turbopower.com> wrote in message
news:eLFiosXk...@tpsmail01.turbopower.net...