diff --git a/stepmania/src/archutils/Win32/arch_setup.h b/stepmania/src/archutils/Win32/arch_setup.h index 05b8346ee4..e9c9d0ecc9 100644 --- a/stepmania/src/archutils/Win32/arch_setup.h +++ b/stepmania/src/archutils/Win32/arch_setup.h @@ -104,7 +104,7 @@ inline uint32_t ArchSwap32( uint32_t n ) xchg al, ah ror eax, 16 xchg al, ah - mov n, eax + ret }; } @@ -117,7 +117,7 @@ inline uint32_t ArchSwap24( uint32_t n ) ror eax, 16 xchg al, ah ror eax, 8 - mov n, eax + ret }; } @@ -125,9 +125,10 @@ inline uint16_t ArchSwap16( uint16_t n ) { __asm { + mov eax, 0 /* make sure high 16-bits are zero */ mov ax, n xchg al, ah - mov n, ax + ret }; }