--- a/bochs.h +++ b/bochs.h @@ -530,7 +530,7 @@ *((Bit16u*)(hostPtr)) = (nativeVar16) #define WriteHostDWordToLittleEndian(hostPtr, nativeVar32) \ *((Bit32u*)(hostPtr)) = (nativeVar32) -#ifdef ANDROID +#if defined ANDROID || (defined __ANDROID__ && defined __arm__) // Resolve problems with unaligned access #define WriteHostQWordToLittleEndian(hostPtr, nativeVar64) { \ ((Bit8u *)(hostPtr))[0] = (Bit8u) (nativeVar64); \ @@ -550,7 +550,7 @@ (nativeVar16) = *((Bit16u*)(hostPtr)) #define ReadHostDWordFromLittleEndian(hostPtr, nativeVar32) \ (nativeVar32) = *((Bit32u*)(hostPtr)) -#ifdef ANDROID +#if defined ANDROID || (defined __ANDROID__ && defined __arm__) // Resolve problems with unaligned access #define ReadHostQWordFromLittleEndian(hostPtr, nativeVar64) { \ (nativeVar64) = ((Bit64u) ((Bit8u *)(hostPtr))[0]) | \