This problem is almost certanly due to the unusual double format used on arm (which is old ABI, little endian on debian currently).
The two 32-bit words are arranged big-endian, whilst the bytes withint each word are arranged little-endian. This (odd, but IEEE-754 compliant) format is unique to arm. i.e. double format bytes are laid out 56781234 (on armeb it is big-endian word, big-endian bytes). Same on armel (forthcoming EABI distribution). That is probably enough info for those familiar with the code to fix the problem. I'll take a look now and see if I can workout the right runes. To make it work for the existing arm arch and for armeb and armel use this compiler directive to surround code swaping the bytes about: #if defined(__arm__) && !defined(__vfp__) && (__ARMEL__) swap top word and bottom word Wookey -- Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK Tel +44 (0) 1223 811679 work: http://www.aleph1.co.uk/ play: http://wookware.org/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]