Frage

Ich habe einen Sample-Quellcode für OpenGL, ich wollte eine 64-Bit-Version (mit Delphi XE2) kompilieren, aber es gibt einen ASM-Code, der nicht kompiliert, und ich weiß nichts von ASM.Hier ist der Code unten, und ich lege die zwei Fehlermeldungen in die Zeilen, die fehlschlagen ...

generasacodicetagpre.

War es hilfreich?

Lösung

Diese Prozedur sgibt ABGR-Byte-Reihenfolge an das Argb und umgekehrt.
Im 32-Bit sollte dieser Code den gesamten Job erledigen:

generasacodicetagpre.

Der korrekte Code für x64 ist

generasacodicetagpre.

noch eine andere Option - erstellen Sie die reine Pascal-Version, die die Reihenfolge der Bytes in der Array-Darstellung ändert: 0123 bis 2103 (Swap 0. und 2. Bytes).

generasacodicetagpre.

Andere Tipps

64-Bit hat unterschiedliche Namen für Zeigerregister und es wird unterschieden. Die ersten vier Parameter für Inline-Assembler-Funktionen werden über RCX, RDX, R8 und R9 bzw. R9 geleitet

generasacodicetagpre.

Versuchen Sie es mit

generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top