Ich möchte für meine Delphi-Programme ein par Assembler-Routinen schreiben aber bin dummerweise Assembler-Anfänger und die Delphi-Hilfe gibt in sachen Parameter übergabe nicht viel her. Hoffe ihr könnt mir hiermit helfen:<br>
<br>
function MachWas(x, y, z: Byte): Integer;<br>
asm<br>
...<br>
end;<br>
<br>
procedure MachWasAnderes;<br>
asm<br>
CALL MachWas;<br>
...<br>
end;<br>
<br>
Soweit alles kein Problem aber wie übergebe ich jetzt die Parameter? Bzw. in welche Register (oder in den Stack?) gehören die Parameter? Da das ganze sicher vom Typ der Parameter abhängt, wo kann ich entsprechende Info's bekommen?
Und wie sieht das ganze mit API-Calls aus? Ich weiss dass CreateSolidBrush das EAX nimmt aber wie sieht es z.b. mit CreateHatchBrush aus?
Wo sich die "Rückgabewerte" (komme nicht auf das richtige wort) befinden ist wunderbar erklärt nur die Übergabe...
HILFE, danke!
mfg,
bp
<br>
function MachWas(x, y, z: Byte): Integer;<br>
asm<br>
...<br>
end;<br>
<br>
procedure MachWasAnderes;<br>
asm<br>
CALL MachWas;<br>
...<br>
end;<br>
<br>
Soweit alles kein Problem aber wie übergebe ich jetzt die Parameter? Bzw. in welche Register (oder in den Stack?) gehören die Parameter? Da das ganze sicher vom Typ der Parameter abhängt, wo kann ich entsprechende Info's bekommen?
Und wie sieht das ganze mit API-Calls aus? Ich weiss dass CreateSolidBrush das EAX nimmt aber wie sieht es z.b. mit CreateHatchBrush aus?
Wo sich die "Rückgabewerte" (komme nicht auf das richtige wort) befinden ist wunderbar erklärt nur die Übergabe...
HILFE, danke!
mfg,
bp
Comment