FE3:Handbuch/LOADER
Inhaltsverzeichnis
LOADER Dateien
Auf einem Massenspeicher wie SD-Karte oder Diskette befinden sich Dateien. Es gibt Dateien die sind Programme (Spiele oder Anwendungen) und andere, die Daten beinhalten. Nicht alle Programmdateien sind startbar, denn einige werden von einem Programm nachgeladen.
Die startbaren Programmdateien sind von unterschiedlicher Natur:
- manche haben einen BASIC Vorspann und andere sind Maschinencode
- einige werden an bestimmte Adressen geladen
- andere haben keine Startadresse am Dateianfang
- es gibt Programme die in mehrere Dateien aufgeteilt sind
Zudem haben Programme bestimmte Anforderungen an die Hardware:
- Speichererweiterung in bestimmte Adressräume
- nicht überschreibbarer Speicher (ROM)
- sogar "kein Speicher" in bestimmte Adressräume
- IO Adressen Konflikt
- : :
Zweck der LOADER Dateien
Ein Programm zu laden und zu starten ist teilweise nicht einfach und erfordert entsprechendes Hintergrund-Wissen.
Der FE3 Disk-Loader wurde geschaffen, um das starten von Spiele auf der Disk (SD-Karte oder Diskette) so einfach wie möglich zu machen.
Das ist der Grund, warum es die LOADER Datei braucht.
Sie enthält alle benötigten Informationen, um ein Programm zu starten:
- Name des Spiel oder der Anwendung
- Dateiname des Programm (oder der Programme)
- evt. Startadresse
- evt. Art des Programm
- Speicherkonfiguration
- Art des Programmstart
- : :
Die LOADER Datei wird vom FE3 Disk-Loader benötigt. Der Disk-Loader sucht immer nach einer Datei mit dem Namen "LOADER". Dann wird diese Datei vom Disk-Loader geladen und interpretiert.
Die LOADER Datei enthält die Namen der zu startenden Programme samt benötigter Start Informationen. Der Disk-Loader zeigt alle Namen in einer Liste an und der Benutzer kann sich das gewünschte Programm auswählen. Dadurch kann man bequem und ohne Computerkenntnisse beliebige Spiele und/oder Programme auswählen und starten.
Wenn es funktionierende LOADER Dateien gibt, dann kann man die konfigurierten Spiele und Anwendungen auch ganz einfach in den Flash Speicher der FE3 übertragen (Hauptmenü - Cart Utilities (F6), dann F1). Die Spiele und Programme im Flash können blitzschnell gestartet werden mit Hilfe des FE3 Disk-Loader. Es braucht dann dazu weder eine Diskette noch eine SD-Karte.
Aufbau der LOADER Datei
Die LOADER Datei besteht aus einem oder mehreren Abschnitten. Jeder Abschnitt wird als ein Menüpunkt im Disk-Loader dargestellt. Ein Abschnitt besteht aus:
- einem Namen: Jeder Abschnitt beginnt mit einem Namen der im Diskloader Menü angezeigt wird
- einem oder mehreren LOADER Anweisungen
- optional können jederzeit Kommentarzeilen eingefügt werden.
Der Abschnittsname beginnt einfach mit einem Anführungszeichen (") und endet auch mit einem Anführungszeichen. Der Name kann bis zu 20 Zeichen lang sein und darf auch Sonderzeichen beinhalten. Ist der Name länger als 20 Zeichen werden vom Disk-Loader nur die ersten 20 Zeichen dargestellt. Steuerzeichen werden ignoriert.
Die optionalen Kommentarzeilen beginnen mit einem Doppelpunkt (:). Die Kommentarzeile kann leer sein (Abschnittstrenner) oder beliebige Zeichenfolgen beinhalten. Eine Kommentarzeile beendet den Abschnitt nicht. Kommentarzeilen sind optional und können daher auch ganz entfallen.
Die Anweisungen in einem Abschnitt werden ausgeführt, wenn der Benutzer das Programm im Disk-Loader startet durch drücken der <ENTER> Taste oder des Feuerknopf am Joystick. Anweisungszeilen beginnen immer mit einem Plus (+) Zeichen. Die Reihenfolge der Anweisungen wird vom Disk-Loader selbst gewählt.
Ein Abschnitt endet mit dem Dateiende oder mit dem Beginn eines neuen Abschnittes.
Anweisungen
Anweisungszeilen starten immer mit einem Pluszeichen (+). Die folgenden Anweisungen werden vom Disk-Loader erkannt und interpretiert:
- Lade Anweisung: ladet eine Datei von SD oder einer Diskette
- DOS Befehl: sendet einen Befehl an das SD2IEC oder an ein Diskettenlaufwerk
- BLK, BLKP, BLKD: Anweisung zur Konfiguration der FE3 Speicher Hardware.
- NOIO: Anweisung zur Konfiguration der FE3 Hardware - IO Register verstecken.
- RESET: Anweisung zum Neustart des VC-20 (Soft Reset)
- SYS: startet ein Maschinenprogramm an der angegebenen Adresse (hexadezimal!!)
- RUN: startet ein BASIC Programm
- RELOAD: Anweisung die LOADER Datei neu zu laden
Der Disk-Loader entscheidet selbst die Reihenfolge der Ausführung von Anweisungen. Mehrere Anweisungen des selben Typ werden in der angegebenen Reihenfolge ausgeführt.
Ladeanweisung
Die Ladeanweisung lädt eine Datei von der SD Karte oder von einer Floppy. Es können mehrere Ladeanweisungen ausgeführt werden, wenn zb. Spiele aus mehreren Teilen bestehen. Die Anweisung besteht im einfachsten Fall aus nur einer Datei. Der Dateiname besteht aus bis zu 16 Zeichen und ist von Anführungszeichen umschlossen.
Zu der Ladeanweisung kann optional ein Dateityp angegeben werden. Dateitypen sind B (BASIC), P (PROGRAM) und C (Cartridge). Es entspricht der Sekundäradresse (0,1,2) des modifizierten LOAD Befehl der FE3 Wedge.
- Der Dateityp BASIC wird automatisch immer an der Adresse geladen, wo der BASIC Speicher anfängt (Sekundäradresse 0). Die Adresse kann je nach Speicherkonfiguration variieren.
- Der Dateityp PROGRAM wird immer an der Adresse geladen, die in der Datei steht (die ersten beiden Bytes). Das entspricht einem LOAD mit Sekundäradresse 1. Die Ladeadresse kann aber optional auch übersteuert werden, siehe optionale Ladeadresse.
- Der Dateityp CARTRIDGE ist für Dateien ohne Ladeadresse. Man erkennt diese Dateien oft an der prägnanten Länge von exakt 4K, 8K oder 16K. Dieser Dateityp erfordert immer die Angabe der Ladeadresse!
Der Ladeanweisung kann optional auch noch eine Ladeadresse folgen. Beim Dateityp C ist die Ladeadresse immer erforderlich. Die Ladeadresse muss immer hexadezimal erfolgen und beginnt mit einem $ Zeichen.
Die Ladebefehle werden in der angegeben Reihenfolge augeführt. Wenn man etwas in den Kasettenbuffer ab $330 lädt, dann muss dieser Ladebefehl der letzte des Abschnitts sein!! Das ist deswegen, weil der Diskloader diesen Bereich verwendet.
Beispiele für Ladebefehle:
<syntaxhighlight> +"MOONPATROL"
+"EXBASIC2",C,$A000
+"AUSTRO COMP",B
+"VICMON",P,$3000 </syntaxhighlight>