Call-modifizieren
-
Ich möchte mich in den Interrupt 21h einhaken.Ich dachte am beste mache ich das indem ich die alte Adresse speicher und die neue hinschreibe.
Damit aber weiter hin der int21h ausgeführt wird muss ich ihn mit den gespeicherten Adressen(Segemnt,Offset) aufrufen.Was ich wissen möchte ist die "Opcode Syntax" des Call befehls.
zB
db CALL_;CALL_ soll für den call opcode stehen.
dw segment;
dw offset;das wird ja dann wie ein call ausgeführt nur das die ziel adresse variable ist.
Versteht ihr was ich meine?
-
ja... warum machst du eigentlich nicht gleich einen indirekten call mit einer Variable...
Beim TASM wuerde das so aussehen: call [dword ptr ds:CallAddr]
Bei der Addresse muss zuerst offset stehen und dann Segment.Das ganze kannst aber auch ueber einen direkten call machen...
Das wuerde dann so aussehen:
db 9Ah
dw ... ;offset
dw ... ;Segment
-
Danke!
Das zweite war was ich gesucht habe,beim ersten war ich mir nich ganz sicher ob das geht,aber die 2. Methode lässt sich meiner Meinung nach etwas leichter lesen.
Achja, es funzt auch