diff -r fd9613278d1b -r f324a18698fe hedgewars/uSHA.pas --- a/hedgewars/uSHA.pas Sun Aug 06 17:11:33 2006 +0000 +++ b/hedgewars/uSHA.pas Sun Aug 06 20:08:15 2006 +0000 @@ -52,15 +52,14 @@ implementation -function _bswap(X: LongWord): LongWord; assembler; -asm - bswap eax +function _bswap(X: LongWord): LongWord; +begin + Result:= (X shr 24) or ((X shr 8) and $FF00) or ((X shl 8) and $FF0000) or (X shl 24) end; -function rol(x: LongWord; y: Byte): LongWord; assembler; -asm - mov cl,dl - rol eax,cl +function rol(x: LongWord; y: Byte): LongWord; +begin + Result:= (X shl y) or (X shr (32 - y)) end; function Ft(t, b, c, d: LongWord): LongWord;