Autor Thema: Indirect Call  (Gelesen 2596 mal)

sp

  • Gast
Gespeichert
« am: 09. April 2005, 21:31 »
Hallo
ich möchte 32 BIT BIOS Funktionen im PM nutzen, dafür ist aber ein Far-Call notwendig. Nun weiß ich nicht so ganz, wie ich das realisieren soll.

lcall $12, $43
Nimmt der Assembler ohne Meckern an, aber leider nützt es so nicht viel, da ich Segment und Offset natürlich dynamisch angeben muss. Jetzt habe ich etwas über indirect Call's gelesen, kann mir vielleicht jemand erklären worum es sich dabei handelt und ob ich damit dieses Problem lösen kann. Oder gibt es vielleicht noch eine einfache Möglichkeit?

Sry für diese DAU Frage :roll:.

sp

elfish_rider

  • Beiträge: 293
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 09. April 2005, 21:35 »
Folgendes ist eine einfache Möglichkeit:

# Segment PUSHen

# Offset PUSHen

# RETF

elfish_rider

  • Beiträge: 293
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 09. April 2005, 23:23 »
Wie meinst du das?

elfish_rider

  • Beiträge: 293
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 10. April 2005, 11:55 »
# Aktuelles Segment PUSHen

# Offset des Befehls nach RETF PUSHen

# Segment der BIOS-Funktion PUSHen

# Offset der BIOS-Funktion PUSHen

(also nur wenn die BIOS-Funktion am Schluss auch ein RETF macht)

 

Einloggen