Ultima 8 memset tests fail on big-endian platforms
|Reported by:||skitt||Owned by:||mduggan|
On big-endian platforms, test/engines/ultima/ultima8/misc/memset_n.h fails because the memset_n functions assume they're running on a little-endian platform. On a big-endian platform, the value written to memory will depend on the alignment: if the value is aligned, it will be written as expected (MSB first), but if it's not aligned, it will be written in a mixture of little- and big-endian. The tests always use the host memory order.
I can fix this, but I don't know what the correct order is: does the Ultima 8 engine assume little-endian order, or does it work with the host order?
To reproduce this, build and run the tests on a big-endian platform. See https://buildd.debian.org/status/package.php?p=scummvm for some examples (on 2.2.0, but the tests fail in the same way on the current git head).