Dateien laden und speichern

Der JU+TE-Computer verwendet als Massenspeicher einen Kassettenrecorder. Beim Emulator jedoch sollen die Dateien nicht auf Kassette, sondern im Dateisystem des Emulator-Rechners gespeichert werden. Aus diesem Grund kommen nicht die Funktionen des Betriebssystems des emulierten Computers zur Anwendung, sondern der Emulator bietet selbst entsprechende Funktionalitäten an. Unabhängig davon ist es aber mit Hilfe der Audio-Funktionen trotzdem möglich, Dateien auf Kassette zu speichern.

1. Dateiformate

JTCEMU unterstützt folgende Dateiformate:

1.1. JTC-Datei

Das JTC-Format ist das Standardformat des Emulators und entspricht inhaltlich dem Format, mit dem das Betriebssystem EMR-ES 1988 Dateien auf Kassette speichert. Dieses Format besteht aus einem 128 Byte großen Kopf, an den sich der Datenbereich anschließt, der wiederum ein binärer Abzug eines Speicherbereichs ist. Der Dateikopf hat folgenden Aufbau:
Das JTC-Format ist kompatibel zu dem von einigen KC-Emulatoren her bekannten KCC-Format, d.h., möchten Sie eine JTC-Datei in einen solchen KC-Emulator laden, reicht es i.d.R. aus, die Datei in eine KCC-Datei umzubenennen. Umgekehrt können KCC-Dateien geladen werden, wenn sie dem Format von KC-Systemdateien entsprechen. KC-BASIC-Dateien werden dagegen nicht unterstützt.

1.2. KC-TAP-Datei

Ein weit verbreitetes Format bei KC-Emulatoren ist das KC-TAP-Format. JTCEMU unterstützt dieses Format auch, allerdings mit folgenden Einschränkungen:

Das KC-TAP-Format hat üblicherweise die Dateiendung .tap. Da es aber auch bei anderen Systemen, z.B. einige C64-Emulatoren, TAP-Dateien gibt, die völlig anders aufgebaut sind, wird das hier gemeinte Format KC-TAP genannt.

1.3. Binärdatei

Bei einer Binärdatei handelt es sich um einen reinen binären Speicherabzug ohne weitere Zusatzinformationen, d.h. ohne jegliche Adressangabe. Man muss sich somit die Anfangsadresse des Speicherbereichs separat merken und beim Laden immer mit angeben.

Da bei einer Binärdatei die gesamte Datei unverändert in den Arbeitsspeicher geladen wird, können auch alle anderen Dateiformate als Binärdatei geladen werden. Allerdings werden dann aber auch die Kopf- und Metadaten mit in den Arbeitsspeicher übertragen.

1.4. Intel-HEX-Datei

Bei diesem Format handelt es sich auch um einen Speicherabzug, jedoch sind die einzelnen Bytes hexadezimal kodiert, d.h. die Datei ist eine reine ASCII-Datei und kann auch in einem Texteditor geöffnet werden. Des weiteren enthält die Datei die Anfangsadresse des betreffenden Speicherbereichs, d.h. beim Laden müssen Sie diese Adresse nicht mehr eingeben.

2. Datei laden

Die Funktion zum Laden einer Datei finden Sie im Menü Datei. Alternativ können Sie auch eine Datei einfach in das Emulatorfenster hineinziehen und dort loslassen, sofern das Betriebssystem und die Java-Laufzeitumgebung Drag&Drop unterstützen.

Nach dem Auswählen einer Datei öffnet sich ein Dialog zur Festlegung des Dateiformats und zur Eingabe der Ladeadresse. Das Dateiformat sollte bereits richtig voreingestellt sein. Enthält die Datei eine Ladeadresse, wird diese in das Eingabefeld Laden ab Adresse geschrieben, d.h., in dem Fall brauchen Sie normalerweise keine weiteren Eingaben in dem Dialog tätigen. Das Feld Bis. max. Adresse kann leer bleiben. Anschließend drücken Sie den Knopf Laden.

3. Datei speichern

Diese Funktion finden Sie ebenfalls im Menü Datei. Zuerst öffnet sich ein Dialog zur Eingabe der Anfangs- und Endadresse des zu speichernden Bereichs und zur Festlegung des Dateiformats. Der Emulator prüft, ob sich ab Adresse E000h ein BASIC-Programm im Speicher befindet. Wenn ja, werden die beiden Eingabefelder mit der Anfangs- und Endadresse dieses BASIC-Programms vorbelegt, d.h., beim Speichern eines BASIC-Programms brauchen Sie keine Adressen selbst eingeben.

Beim Speichern einer JTC-, KC-TAP oder Intel-HEX-Datei wird auch die Anfangsadresse mit gespeichert. Möchten Sie, das in der Datei eine andere Anfangsadresse als die tatsächliche eingetragen wird, so geben Sie das im Feld Abweichende Anfangsadresse an.

Des weiteren gibt es das Feld Name in der Datei, dass jedoch nur beim JTC- und KC-TAP-Format verwendet wird. Hier geben Sie eine beliebige, max. 11-stellige Bezeichnung an, die mit in der Datei gespeichert wird.

Nachdem Sie den Dialog bestätigt haben, öffnet sich eine Dateiauswahlbox, in der Sie den Namen der Datei festlegen. Mit Bestätigen dieses Dateiauswahldialogs wird der angegebene Speicherbereich in die gewünschte Datei geschrieben.