Okay, this one should actually work as advertised. Pardon the mental meltdown earlier. This also changes "extern inline" to "static inline" (per Linus' request) and always ignores the bigendian part of a bi-endian datum (per Tim Riker's observation that lots of [Windoze?] programs get that wrong.) It's still a bit of a loss to have to do unaligned load and endianness conversion as two operations; on some machines it's doubtlessly faster to do both at the same time. However, *those* macros I didn't find... -hpa