|
Hauptseite - Welches System? - Hardware - Software - Emulatoren - |
Internet MausNet Programmieren Verweise Über |
Die Funktionen in der vom Einsprungpunkt zurückgelieferten Tabelle sind bis auff die erste Funktion zur Initialisierung die Funktionen, die auch das GEMDOS für Verzeichnis- und Dateizugriff zur Verfügung stellt. Sämtliche Parameter, die an den GEMDOS Aufruf übergeben werden, werden diesen Funktion auf dem Stack nach C Konvention übergeben. Zusätzlich bekommen diese Funktionen weiter Parameter in Registern übergeben. In Register A3 wird der Logical Device Buffer Pointer übergeben. Das ist der Speicherbereich, den die Initialisierungsfunktion InitDevice() für private Daten anlegt und als Returnwert MetaDOS zurückliefert. In Register A4 wird der Datei- bzw. Pfadname übergeben. Im Gegensatz zu den Parametern der GEMDOS Funktion sind heir z.B. Pfade in absolute Pfade konvertiert, ... In Register A5 wird die Adresse des DTA Buffers für Fsfirst()/Fsnext() übergeben. In Register A6 wird die Adresse der Funktionstabelle übergeben.
Da Parameter sowohl auf dem Stack als auch per Register übergeben werden, müssen diese Funktionen in Assembler realisiert werden bzw. einen Wrapper in Assembler haben.
Da die Funktionen die GEMDOS Aufrufe für ein spezielle Dateisystem implementieren, werden sie bis auf die Initialisierung hier nicht weiter vorgestellt. Die Beschreibung kann z.B. dem Hypertext tos.hyp entnommen werden.
TOS.HYP
![]() |
English version not yet available. |