Zum Inhalt springen

Beta Disk Interface [Sinclair ZX Spectrum]

Beta Disk Interface
Beta Disk Interface

Ein weiteres Disk Interface für meine Sinclair Sammlung – das eher seltenere Beta Disk Interface. Das Interface war in gutem Zustand und kam mit Anleitung, Original Doppel-Diskettenlaufwerk und einem Stapel Disketten.

Geschichte
Das Beta Disk Interface ist ein Disk Interface für Sinclair ZX Spectrum Rechner. Es wurde von Technology Research Ltd. in England 1984 entwickelt und 1985 veröffentlicht. Der Preis war damals 110 Pfund (oder 250 Pfund mit einem Diskettenlaufwerk).

Beta Disk Interfaces wurden mit dem Betriebssystem TR-DOS (im ROM) vertrieben, das ebenfalls Technology Resaerch zugerechnet wird. Die letzte Firmware ist 5.03. Das Interface basierte auf dem WD1793 Chip.

Auf der rechten Seite ist ein Shugart kompatibler Anschluss zu finden – dort werden die Diskettenlaufwerke mit einem entsprechenden Flachbandkabel angeschlossen. An der Rückseite ist der Interfaceanschluß herausgeführt, sodass noch andere Interfaces verwendet werden können.
Es konnten single und doppelseitige Disketten mit 40 und 80 Spuren (double density) verwenden und mit bis zu vier Laufwerken umgehen.

Das Interface hat einen sogenannten Magic-Button, mit dem man Programme die im Speicher sind auf Diskette speichern kann. Außerdem gibt es noch einen Reset-Knopf.

Besonders im früheren Ostblock wurde das Interface sehr beliebt, wurde „zerlegt“ und in vielen Variationen nachgebaut – später wurde es dann direkt in die Hardware von Sinclair Nachbauten wie den Pentagon oder den Scorpion integriert. Daher gibt es besonders aus diesen Ländern viel Software für das Beta Interface.

Beta Disk Interface - Oberseite - Interface und Floppyanschluss
Beta Disk Interface – Oberseite – Interface und Floppyanschluss

TR-DOS Dateien kann es in zwei Formaten geben:
– Dateiendung *.TRD – dies ist ein Abbild einer kompletten TR-DOS Diskette mit einer Kapazität von 640 KB. Diese Disketten können dann natürlich mehrere Programme enthalten
– Dateiendung *.SCL – diese Dateien sind nur so groß wie das entsprechende wirklich ist

Im Original wurde das Interface zusammen mit einer Utility-Diskette und einem Handbuch ausgeliefert auf der Diskette waren folgende Programme enthalten (ab TRDOS Version 4 gab es Änderungen):
– FORMAT
– TAPECOPY
– BACKUP
– COPY
– SOOPY
Mit TRDOS 4 wurden die Programme BACKUP, COPY und SOOPY zu dem Programm FILER zusammengefasst, da die entsprechenden Funktionen auch als BASIC-Befehle zur Verfügung stehen.

Wenn man eine Version 4.12 von TRDOS hat, wie bei meinem Interface, sollte man sich unbedingt auch die Ergänzung des Handbuchs besorgen, damit man bzgl. der Änderungen nicht durcheinander kommt.

Beta Disk - Unterseite
Beta Disk – Unterseite

Schön ist auch, das die DOS-Befehle für das Interface relativ einfach zu verwenden sind:

*“a:“ – Standardlaufwerk A
*“b:“ – Standardlaufwerk B
*“c:“ – Standardlaufwerk C
*“d:“ – Standardlaufwerk A
40 – informiert TRDOS das das Standardlaufwerk 40 Tracks hat
80 – informiert TRDOS das das Standardlaufwerk 80 Tracks hat
CAT – zeigt den Inhalt der Diskette an
CAT# – druckt den Inhalt der Diskette aus
CLOSE# – schließt eine serielle/random Zugriffs-Datei
COPY – kopiert Dateien von einem Laufwerk auf ein anderes
COPY s – kopiert Dateien in einem System mit nur einem Laufwerk
COPY b – Backup einer Diskette in einem System mit nur einem Laufwerk
ERASE – löscht eine Datei
FORMAT – formatiert Diskette
LIST – zeigt Details des Disketteninhalts an
LIST# – druck Details des Disketteninhalts aus
LOAD – lädt ein Programm von Diskette
INPUT# – liest von seriellen/random Zugriffs-Datei
MERGE – kombiniert BASIC Programme auf Disk mit einem Programm im Speicher
MOVE – reorganisiere und komprimiere die Dateien auf der Disk
NEW – einen Dateinamen ändern
OPEN# – einen Stream für eine seriella/random Zugriffsdatei öffnen
PEEK – einen Sektor einer Datei von der Diskette in den Speicher lesen
POKE – Daten im Speicher in einen Sektor einer Datei speichern
PRINT# – ein serielle/random Zugriffs-Datei drucken
RETURN – zurück zu BASIC aus TRDOS
RUN – laden und starten eines Programms von Diskette
SAVE – speichern eines Programms auf Diskette
VERIFY – prüfen eines auf Diskette gespeicherten Programms
RANDOMIZE USR 15360 – von BASIC in TRDOS wechseln
RANDOMIZE USR 15363 – TRDOS Befehle aus BASIC aufrufen

Beta Disk - Diskettenlaufwerk Vorderseite
Beta Disk – Diskettenlaufwerk Vorderseite

Tipps und Hinweise
Man muss hier auf den Unterschied zum Beta 128 hinweisen. Im Gegensatz dazu funktioniert das erste Beta Disk Interface nur mit dem 48K Rechnern. (außer man ersetzt das ROM eines 128K mit dem des 48K)

Meine Version des Interface hat das TR-DOS in Version 4.12 zusammen mit der grafischen Oberfläche Vision 1.0 – folgendes kann beim Einschalten passieren:

Einschalten ohne Disk: Vision 1.0 wird gestartet
Einschalten mit Disk ohne „Boot“: Vision 1.0 wird gestartet
Einschalten mit Disk mit Boot: Boot wird gestartet

Magic Button
Durch Drücken des Magic Button wird das laufende Programm unterbrochen und das gesamte Abbild des Speichers wird auf die Diskette geschrieben. Das Abbild kann wieder von Diskette geladen werden und das Programm wird an der unterbrochenen Stelle fortgesetzt. Das bedeutet, dass man ein Spiel von Kassette laden kann und wenn die Ladesequenz abgeschlossen ist, kann das Programm auf Diskette gespeichert werden, ohne dass ein einziges Byte des Speichers so verändert wird, dass eine Fortsetzung des Spiels verhindern würde. Dies ermöglicht eine Kopie jedes Spiels, das auf einem Spectrum läuft – dies hätte ein Alptraum für jeden Softwarehersteller sein können, wenn die Diskettensysteme weiter verbreitet gewesen wären. Das System benötigt einen Buffer von 256 Bytes und verwendet den Drucker-Buffer des Spectrum. Bevor der Buffer verwendet wird, wird er auf der Systemspur der Disk gespeichert. Ist der Vorgang abgeschlossen, wird der ursprüngliche Drucker-Buffer wieder von der Disketten geladen. Der Speicherinhalt geht nur verloren, wenn die Diskette schreibgeschützt ist.

Beta Disk - Diskettenlaufwerk Unterseite
Beta Disk – Diskettenlaufwerk Unterseite

Beachten: Der „Snapshot“ wird immer in den Spuren 0-12 gespeichert und hat den Namen “ “ und der Dateityp ist CODE. Daher muss man nach dem Erstellen des Snapshots diesen auf eine andere Diskette kopieren oder umbenennen, sonst wird er vom nächsten Snapshot überschrieben. (einen neuen Dateinamen kann man mit dem Befehl „NEW“ vergeben.
Eine andere Voraussetzung ist eine SingleSided Diskette – diese muss vorher entsprechend formatiert werden. Formatieren Single Sided: FORMAT „$DISKNAME“
Die gespeicherte Datei kann dann mit GO TO „name“ CODE geladen werden.
Einige Spiele verwenden eine Tastatur-Routine, die nicht dem Standard entspricht, daher kann es sein das diese nach dem Laden nicht richtig funktionieren. Das kann umgangen werden, indem dem Dateinamen ein „$“ voranstellt wird. Bsp.: Umbenennen mit: NEW „$TEST“,“ „CODE – Laden mit: GO TO „$TEST“CODE

VISION
Vision ist wie schon erwähnt eine grafische Oberfläche der deutschen Softwarefirma Individual Software, mit einer Bedienung wie sie heute fast jedes Kind kennt – es gibt Icons für die Laufwerke, Papierkorb und Drucker. Man kann sich den Disketteninhalt anzeigen lassen, Dateien kopieren und löschen (per Drag&Drop in den Mülleimer). Nur dass man keine Maus hat – diese ersetzen die Tasten Q, A, O, P (für die Richtung in die sich der „Mauszeiger“ bewegt) und SPACE (als linke „Maustaste“). Wenn ein Joystick-Interface angeschlossen ist, kann man auch einen Sinclair-Joystick verwenden. Mit einmal „klicken“ wählt man ein Icon an – mit „Doppelklick“ startet man eine Aktion. Ich verwende dazu mein Angry Space Invaders Joystickinterface im Sinclair-Modus (DIP 2 auf OFF). Natürlich kann man auch direkt von der Diskette z. B. ein Spiel starten. Ich finde es immer wieder erstaunlich, was damals mit den eingeschränkten Möglichkeiten der Sinclair-Rechner möglich war 🙂
Aus TR-DOS kann man Vision mit . + Enter aufrufen!

Beta Disk - Vision Oberfläche
Beta Disk – Vision Oberfläche

Da ich einen großen Stapel Disketten bekommen hatte, habe ich getestet, ob ein Backup und Restore mit SAMdisk funktioniert. Auch das klappt ohne Probleme!

Das Multiface One sollte auch funktionieren, wurde aber von mir noch nicht getestet.

Außerdem habe ich das Beta 48 auch zusammen mit meinem HxC Emulator getestet – funktioniert ebenso. 🙂
Wenn man die SD-Karte für das HxC vorbereitet, sollte man den Interfacemode auf „Auto“ einstellen oder Generic Shugart auswählen. Dann noch das Config-File auf die SD-Karte schreiben und mit TRD-Images füllen.

Hier habe ich wieder ein „One Sheet Manual“ mit den wichtigsten TR-DOS Befehlen erstellt:

Foto von den Jumper-Settings!

http://zxdemo.org/
http://trd.speccy.cz/
http://www.worldofspectrum.org/trdos.html

6 Gedanken zu „Beta Disk Interface [Sinclair ZX Spectrum]“

  1. Hi Jungsi,

    kannst du in dein OneSheetManual bitte noch
    das Beispiel mit den Wildcards einfügen ?

    Also z.B.: COPY „B:*“, „A:*“

    Irgendwie vermisse ich das immer in meiner Hirnschale,
    wenn ich mal wieder ein wenig mit dem Beta oder ZX Evo / TR-DOS rumspiele…

    Danke!

  2. Hallo, ich habe noch ein paar Bilder und Hardware diesbezüglich.

    Ein DIY 3x 800 KB Floppy Tower und eine DIY ZX Spectrum Riser Card mit 3 Steckkarten für Floppy/Centronics Printer/BDISK 4.81 und Joystick Controller.
    Im ZX Spectrum oder auf der Riser Card ? war noch das KuB 64K custom ROM mit RAM Hex Editor. Ist ja doch schon fast 40 Jahre her…
    Auf jeden Fall kann ich mich gut an Magic Copy erinnern. 13 Images passten auf eine Floppy, das älteste wurde dann überschrieben.
    Suspend to Disk und quasi Time Machine „Backup“ anno 1985

    Ich dachte, es hätte CP/M oder speziell CP/A. Kann aber auch TR-DOS gewesen sein. Auf jeden Fall sehr einfach zu benutzen und das ganze OS war auf einem ROM, praktisch keine Startzeit nötig. Auch die Floppies waren wahnsinnig schnell, Programme m.E. alle in nur 1-3 s geladen.

    Bei Interesse kann ich die Bilder davon mal irgendwo uploaden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert