Projekt Hardware Bedienung Kompatibilität Erweiterungen Programme |
AX81b: Bedienung
1 Der StartbildschirmNach dem Einschalten erscheint der Startbildschirm. Hier können die Art der Emulation sowie zusätzliche Optionen gewählt werden. Die Auswahl erfolgt über die Zifferntasten und wird im EEPROM des Mikrocontrollers gespeichert. Zusätzlich wird angezeigt, ob ein Snapshot aktiv ist.
Bei 12 und 14,7456MHz Taktfrequenz ist ein Umschalten auf "Originalgeschwindigkeit" wenig sinnvoll, da bei 12MHz die Originalgeschwindigkeit in der Maximaleinstellung nicht und bei der 14,7456MHz Version gerade so erreicht wird. Die Jupiter ACE Emulation ist bei den beiden kleinen Taktfrequenzen und LCD-Ausgabe derzeit nicht nutzbar. Die Abfrage ist nur eine begrenzte Zeit aktiv und kann auch mit der Leertaste abgebrochen werden. Danach wird nach einer MMC/SD/SDHC-Karte sowie passendem Image gesucht und das Ergebnis unterhalb der Auswahl angezeigt. Abschließend wird der Emulator im gewählten Mode gestartet. Unterhalb des Auswahlmenüs werden Informationen zur SD-Karte ausgegeben, zuerst der Kartentyp:
Wurde die Karte erfolgreich initialisiert, wird im zweiten Schritt nach einem passenden Image gesucht:
Wird nach Auswahl der Emulation die Alternate-Taste gedrückt gehalten, so wird die SPI-Transfergeschwindigkeit auf 1/4 reduziert. Eine Rückmeldung erfolgt durch einen Stern vor der Image-Textanzeige. 2 TastaturfunktionenAls Eingabegerät dient eine PS2-Computertastatur wobei derzeit nur das deutsche (dabei sind Z und Y vertauscht) und das UK Layout unterstützt wird. Die Auswahl geschieht zum Zeitpunkt der Compilation und ist während des Betriebs nicht änderbar.Einige der Mehrfachbelegungen sind, soweit sinnvoll, auch auf eigene Tasten geführt. Beim ZX81 funktioniert das bei einigen Programmen leider nicht, da diese eigene Tastaturroutinen verwenden.
3 Das DateisystemDie Organisation des Massenspeichers (SD-Karte) erfolgt in Tapes, die jeweils bis zu 32 Programme enthalten können. Für die Emulation von LOAD und SAVE wurden die originalen ROM-Files entsprechend gepatcht, für den Jupiter ACE und den ZX Spectrum ist nur das Laden und Speichern von Snapshots vorgesehen. Für den ZX81 gibt es zwei neue Fehlercodes:Wenn die zu ladende Datei nicht gefunden wird, wir der Error S ausgegeben, für die restlichen Dateisystemfunktionen ist der Fehlercode T vorgesehen, Wenn Programme überschrieben oder gelöscht werden, geschieht dies ohne Warnmeldung oder Sicherheitsabfrage!!! 3.1 Der Tape-ManagerDie Auswahl des Tapes und von Dateien erfolgt über den Tape-Manager. Dieser wird über einen Lade-/Speicherbefehl (ZX80, ZX81) oder mit der Funktionstaste F9 aufgerufen. In der obersten Zeile steht die aktuelle Funktion, ind der untersten Zeile die aktuell möglichen Aktionen. Die möglichen Aktionen hängen vom Emulationstyp ab und werden in den folgenden Abschnitten beschrieben. Weitere Tastenfunktionen sind:
Bei den Löschaktionen gibt es vor dem Ausführen noch eine Sicherheitsabfrage. Unterhalb der Programmliste gibt es noch das Namensfeld, hier kann der Programmname editiert werden. Die wird durch ein inverses "L" als Cursor signalisiert. 3.2 ZX81 Funktionen3.2.1 Laden von ProgrammenDas Laden von Programmen erfolgt über den Befehl LOAD "PROGNAME". Der Programmname darf dabei wie beim Original maximal 10 Zeichen lang sein. Bei leerem Dateinamen wird automatisch der Tape-Manager geöffnet. Mit ENTER wird das gewählte Programm geladen, mit der Taste ESC kann ohne zu Laden zum Emulator zurückgekehrt werden.3.2.2 Speichern von ProgrammenDas Speichern von Programmen erfolgt über den Befehl SAVE "PROGNAME". Der Programmname darf dabei wie beim Original maximal 10 Zeichen lang sein. Nach der Eingabe des SAVE-Befehles wird der Tape-Manager aufgerufen um den Speicherort festzulegen. Ein auf dem gewählten Speicherplatz befindliches Programm wird ohne Rückfrage überschrieben. Außerdem kann mit der Taste Shift+N der Programmname im unteren Feld editiert werden. Mit ENTER wird das Programm gespeichert, mit der Taste ESC kann ohne zu Speichern zum Emulator zurückgekehrt werden.3.3 ZX80 Funktionen3.3.1 Laden von ProgrammenDas Laden von Programmen erfolgt über den Befehl LOAD. Es wird automatisch der Tape-Manager geöffnet. Mit ENTER wird das gewählte Programm geladen, mit der Taste ESC kann ohne zu Laden zum Emulator zurückgekehrt werden.3.3.2 Speichern von ProgrammenDas Speichern von Programmen erfolgt über den Befehl SAVE. Nach der Eingabe des SAVE-Befehles wird der Tape-Manager aufgerufen um den Speicherort festzulegen. Ein auf dem gewählten Speicherplatz befindliches Programm wird ohne Rückfrage überschrieben. Nach betätigen der ENTER Taste muß noch der Name eingegeben werden, mit der Taste ESC kann ohne zu Speichern zum Emulator zurückgekehrt werden.3.4 Jupiter ACE und ZX Spectrum Funktionen3.4.1 Laden von ProgrammenDer Tape-Manager wird über F9 aufgerufen. Nach Auswahl des zu ladenden Programmes wird Shift+L gedrückt. Das Programm wird geladen und wieder zurück zum Emulator gesprungen. Mit der Taste ESC kann die Aktion abgebrochen werden. Jedes Programm hat im Image ein Markerbyte, anhand dem festgestellt wird, ob das Programm gültig ist. Wird versucht, ein Programm mit ungültigem Markerbyte zu laden (z.B. leerer Programmplatz) wird eine entsprechende Fehlermeldung angezeigt.3.4.2 Speichern von ProgrammenDer Tape-Manager wird über F9 aufgerufen. Nach Auswahl des zu speichernden Programmes wird Shift+S gedrückt. Nun wir automatisch das Namens-Editierfeld aktiviert, um den Dateinamen einzugeben / editieren. Nach dem Editieren des Programmnamens wird das Programm gespeichert und wieder zurück zum Emulator gesprungen. Mit der Taste ESC kann die Aktion abgebrochen werden.4 Der System-MonitorDer Monitor wird mit der Taste F12 aufgerufen. Dies kann nur aus dem Emulator heraus geschehen, aus dem Introscreen oder dem Tape-Manager ist der Aufruf nicht möglich. 4.1 Die AnzeigeIn der obersten Zeile wird die Überschrift sowie der aktuelle Modus des Emulators angezeigt. Darunter folgt die Anzeige des Befehlszählers (PC) sowie der aktuellen Daten auf die der Befehlszähler zeigt.In der nächsten Zeile findet sich die Anzeige des Stackpointers sowie die Anzeige der letzten Stackeinträge. Da die Stackoperationen jeweils 2 Bytes vom Stack lesen oder auf den Stack schreiben, ist die Anzeige der Stackeinträge auch 16-Bit weise organisiert. Darunter folgt die Anzeige der Prozessor-Register, wobei neben dem BC, DE und HL Register in Klammern der Inhalt der durch das Register adressierten Speicherzelle steht. Im nächsten Abschnitt folgt ein Hexdump, dessen Startadresse über den gesamten Adressbereich geändert werden kann. Näheres dazu im Abschnitt "Adress-Funktionen". In der letzten Zeile wird die Adresse des Breakpoints dargestellt, dieser ist nur aktiv, wenn das Monitorprogramm mit der Taste G verlassen wird. 4.2 Allgemeine SteuerungsfunktionenIn der folgenden Übersicht sind Funktionen wie das Beenden, Einzelschritt etc. aufgelistet.
Bei aktivem Breakpoint wird die Programmausführung etwas verlangsamt, als optische Rückmeldung blinkt in diesem Fall die Kontroll-LED schneller. 4.3 Adress-FunktionenIn der folgenden Übersicht befinden sich Funktionen zum Einstellen von Adressen. Bei aktiver Adresseingabe wird der betreffende Wert invertiert dargestellt. Gültige Hex-Ziffern werden von rechts "hineingeschoben", mit der ENTER-Taste wird die Eingabe abgeschlossen.
4.4 Snapshot-FunktionenIn der folgenden Übersicht sind alle Funktionen aufgelistet, die mit der Snapshot- und Transferfunktion zu tun haben. Ein vorhandener Snapshot wird immer dann gestartet, wenn der Introscreen ohne Tastendruck durchläuft. Diese "Autostart" Funktion lässt sich nur durch das Löschen des Snapshots abstellen.
Mit dem Snapshot wird der aktuelle Zustand des Emulators als auch die Art der Emulation gespeichert. Die im Introscreen festgelegte Art der Emulation wird durch das Laden eines Snapshots überschrieben. Dies geschieht aber nur temporär bis zum nächsten Systemstart. 4.5 Software-AufrufDer Monitor kann auch per Software aufgerufen werden, und zwar über den Code ED 17. Dieser Code, gefolgt von einem RET Befehl, findet sich auch an der Adresse 0x7f30. Mittels RANDOMIZE USR 32560 kann so der Monitor aus dem BASIC heraus gestartet werden. Das ist vor allem dann sinnvoll, wenn ein Snapshot an einer bestimmten Programmstelle angelegt oder übertragen werden soll.ACHTUNG! Der Zustand von eventuell vorhandenen IO-Ports wird bei einem Snapshot weder gespeichert noch übertragen. Beim Übertragen eines Snapshots werden vorhandene IO-PORTs zurückgesetzt. created with latex2web.pl v0.63 © 2006-2013 Joerg Wolfram |