Hi Martin,
I did some tests and indeed I get:
32 bit IOC 64 bit IOC
big endian signed: 2283351134 18446744071697936384
little endian signed: 2283351134 18446744071697936384
big endian unsigned: -2011616162 2283351134
little endian unsigned: -2011616162 -2011616162
This seems all quite wrong. I will have a look.
Dirk
On 02.08.2018 21:57, Martin L. Smith wrote:
Hi,
I'm being sent a ULONG such as 2283351134 (base 10) and asyn shows
me in hex the number coming across as 5e 2c 19 88 and it should be
88 19 2c 5e so the order is reversed when the number is sent to the
IOC.
When I use the format converter %04r
I get the number 1579948424 (base 10) which is 5e 2c 19 88
When I use the format converter %#4r
I get the number -2011616162 which I think would be the correct
number if it was unsigned.
What I really want to do is something like a format converter %#04r
but combining the # and the 0 flags doesn't seem to do what I want.
I need the value to be unsigned AND 32 bits byte order swapped.
Has anyone else run across this issue and if so how did you make it
work?
We are going to try sending a char array instead and see if that helps.
Thanks,
Marty