[fpc-pascal] x86 asm bswap

Juha Manninen juha.manninen62 at gmail.com
Wed Feb 6 09:25:47 CET 2013

A Delphi project "DeleD 3-D" which I try to convert, has
unit_PNGSupport with method:

function TPNGProcessor.SwapLong( const aValue: Cardinal ): Cardinal; assembler;
    mov eax, aValue
    bswap eax;

What would be a cross-platform replacement?

I read that bswap is used for converting big-endian (Intel) format to
little-endian (Motorolla etc.) format.
However this a an old Delphi app, Win32 only.

Later PNG support functions can be replaced with something else, bu
that is another story.


More information about the fpc-pascal mailing list