Dolphin DOS

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Dolphin DOS
Bild
Typ Kernal-ROM-Ersatz, Floppy-Hardware-Erweiterung
Hersteller Jan Bubela und Gunther Jilg (aka Dolphin Software, Dolphin DOS-Vertrieb), Conrad Electronic
Neupreis 198 DM (ca. 100 €)
Erscheinungsjahr 1986
Produktionsende 1990
Sonstiges Verschiedene Version erschienen; aktuell: 3.0


Dolphin DOS ist ein bekannter Schnelllader, den es in verschiedenen Versionen für den C64 und C128 gibt. Er wurde von Jan Bubela und Gunther Jilg entwickelt und in Deutschland im Eigenvertrieb unter dem Firmennamen Dolphin DOS-Vertrieb und einigen Zwischenhändlern wie z.B. Conrad Electronic vertrieben.
Durch die Übertragung mittels Parallelkabel am Userport (SpeedDOS-kompatibel) und mit neuem ROM (EPROM) für C64/C128 (ev. auch als Steckmodul) sowie der Erweiterung der 1541 (später auch 1571) mit Hilfe eines 32 KByte großen EPROMs und einem 8 KByte großen Zusatz-RAM bekommt das Laden und Speichern, sowie andere Floppy-Operationen, einen erheblichen Geschwindigkeitsvorteil. Er beschleunigt die normalen Floppy-Operationen um das bis zu 27fache.

Hinweis: Bei der Benutzung von Dolphin DOS ist eine Nutzung der Datasette- sowie der RS232-Routinen, nicht möglich!

Features[Bearbeiten | Quelltext bearbeiten]

  • Beschleunigung:
  • Vereinfachte und erweiterte Floppy-Kommandos (DOS-Befehle) mit @.
  • Fehlerfreies REPLACE.
  • Kein Rattern bzw. Anschlagen des Schreibe-Lese-Kopfes beim Formatieren oder bei Fehlern.
  • Maschinensprachemonitor
  • 12 frei programmierbare, abspeicherbare und vorbelegte Funktionstasten (F9  bis F12  in Kombination mit C= )
  • Unterstützung von Centronics-Schnittstelle und -Druckern und Hardcopy-Funktion.
  • Vereinfachte Umrechnung von hexadezimalen, dezimalen und binären Zahlen untereinander
  • Stark verbesserte und verschiedene Reset-Routinen.
  • Verbesserte Cursor-Steuerung.
  • BASIC-Erweiterung:
    • Erweiterter SYS-Befehl: Nutzung von hexadezimalen Speicheradressen (SYS $0800) oder Aufruf des Monitors mit SYS 0. Ein SYS mit einer hexdezimalen Zahl von kleiner 16 ($F) führt dazu, dass ein SYS 4096*($Zahl) ausgeführt wird. Ein SYS ohne Speicheradresse startete ein Programm an der zuletzt geladenen Adresse.
    • UNNEW-Funktion für die Wiederherstellung von gelöschten BASIC-Programmen mit &*
    • Vereinfachte Umrechnung von hexadezimalen oder dezimalen Zahlen untereinander mit &zahl; Beispiele: &$c000 oder &2049

Versionen[Bearbeiten | Quelltext bearbeiten]

  • Dolphin DOS 1.0 (Januar 1986) im Testpersonenkreis.
  • Dolphin DOS 2.x (1986) mit 1541 für 198 DM, hier erhielt die Floppy-Erweiterung einen weiteren 6522 VIA.
  • Weitere Floppy für DM 165,-.
  • Dolphin DOS 128 (1987) mit 1570/71 für DM 228,-, wobei der C128 zwei Chips benötigt (einen für den C64-Modus)!
  • Dolphin DOS 3.0 (Nov.1987 bis 1992) für DM 249,-

Alle Versionen sind untereinander kompatibel!

Technik[Bearbeiten | Quelltext bearbeiten]

Kern der Erweiterung ist die 8 KByte große Erweiterung des Floppy-RAMs. Dieses ermöglicht das schnellstmögliche Einlesen eines Tracks während einer Umdrehung und zusammen mit einer verbesserten GCR-Decodierung ist der Grundstein für die besondere Beschleunigung, speziell bei track-orientierten Vorgängen, wie das sequentielle Laden oder Speichern von Programmen oder Kopieren von ganzer Disketten, gegeben. Mit dem parallelen Kabel wird generell die Kommunikation mit der Floppy beschleunigt, auch für nicht track-orientierte Zugriffe, ist aber auch die Voraussetzung, um z.B. einen dekodierten Track innerhalb einer Umdrehung zum Computer übertragen zu können.

Funktionstastenbelegung[Bearbeiten | Quelltext bearbeiten]

  • F1  CHR$(147)+LIST+CHR$(13) BASIC-Programmlisting anzeigen.
  • F2  SYS$0 Maschinensprachemonitor starten.
  • F3  CHR$(147)+RUN+CHR$(13).
  • F4  VERIFY+CHR$(13) führt VERIFY aus.
  • F5  LOAD"0:*",8,1+CHR$(13) Laden des ersten Programms einer Diskette.
  • F6  SAVE"@: Abspeichern mit REPLACE-Funktion bei Eingabe eines gültigen Dateinamens.
  • F7  @$ Anzeigen eines Directorys.
  • F8  @X+CHR$(13) Floppyfehlerkanal anzeigen. Beispiel: 02,:R+:F+:V+:P+:,00,08
  • F9 = C= +F1  OPEN4,4:CMD4:LIST Ausgabe eines BASIC-Programmlistings auf den Drucker mit Geräteadresse 4.
  • F10 = C= +F3  Vorwärts-Scrollen im Monitor oder aktuelle logische Bildschirmzeile löschen.
  • F11 = C= +F5  Rückwärts-Scrollen im Monitor oder aktuelle logische Bildschirmzeile löschen.
  • F12 = C= +F7  LOAD ,8,2 Laden eines Programms aus einem Directory im Kompatibilitätsmodus.

Folgende zusätzlichen Funktionen zu den Funktionstasten gibt es noch:

  • CTRL +X  Funktionstasten- und CTRL -Belegung abschalten.
  • CTRL +&  Funktionstasten- und CTRL -Belegung einschalten.
  • & kann die Standard-Funktionstastenbelegung wiederhergestellt und aktiviert werden.
  • &"dateiname" lädt eine abgespeicherte Funktionstastenbelegung von Diskette.

Die Funktionstastenbelegung liegt in den Speicherbereichen $0293 bis $0299 und $0334 bis $03FF und kann dort entsprechend geändert werden. Mit dem dazugehörigen Monitor können diese Speicherbereiche abgespeichert werden.

Reset-Funktionen[Bearbeiten | Quelltext bearbeiten]

In Kombination mit einem Druck auf den Reset-Taster oder der Taste RESTORE  haben einige Tasten eine besondere Bedeutung:

  • SPACE  Abbruch von Programmen und zurück in den BASIC-Eingabemodus bzw. Modulstart
  • RUN/STOP  Warmstart, ein BASIC-Programm bleibt erhalten.
  • Q  Warmstart/Reset ohne Veränderung der Hardware-Vektoren.
  • 1 +  RAM mit Nullen überschreiben.
  • CTRL  springt zum aktiven Monitor (in Kombination mit RESTORE  statt Reset auch mit korrektem PC-Register).

Die Kombinationen mit RESTORE  funktionieren nicht in jedem Programm.

Tastenbelegung Bildschirmeditor & Hotkeys[Bearbeiten | Quelltext bearbeiten]

  • CTRL +@  Floppyfehlerkanal auslesen und anzeigen.
  • CTRL +*  Bildschirm ausdrucken (Hardcopy).
  • CTRL +A  Tastenwiederholung an-/ausschalten.
  • CTRL +D  Directory anzeigen.
  • CTRL +B  Cursor an Anfang der letzten Zeile.
  • CTRL +G  Cursor 20 Spalten nach rechts.
  • CTRL +L  Löscht Zeilentext links vom Cursor.
  • CTRL +K  Löscht Zeilentext rechts vom Cursor.
  • CTRL +*  Bildschirm ausdrucken (Hardcopy).
  • CTRL +V  Videocontroller initialisieren (Grundeinstellung im Textmodus).
  • CTRL +X  Funktionstastenbelegung abschalten.
  • CTRL +&  Funktionstastenbelegung einschalten.
  • CTRL +RETURN  Programm anhalten.
  • CTRL +DEL  kopiert Text in den Puffer und löscht ihn auf dem Bildschirm.
  • C= +DEL  kopiert Text aus dem Puffer und zeigt ihn auf dem Bildschirm an; mit RETURN  können Änderungen im Speicherbereich übernommen werden.
  • C=  Anzeige des Programmlistings anhalten bzw. weiter ausführen.
  • CTRL  Anzeige des Programmlistings verlangsamen bzw. kurzzeitig anhalten.
  • SHIFT +RUN/STOP  Laden und Starten eines Programm aus einem Directory.
  • RUN/STOP  Deaktivieren des Steuerzeichen-/Insert-Modus.

Diskettenbefehle[Bearbeiten | Quelltext bearbeiten]

Floppy-Befehle ähnlich wie beim DOS-Wedge 5.1 und weitere DolphinDOS-spezifische Befehle:

Floppy 1541[Bearbeiten | Quelltext bearbeiten]

  • @$ oder @"$ Anzeigen des Directorys.
  • @befehl",geräteadresse Eine bestimmte Floppy ansprechen (Standard ist immer 8!).
  • @N:Name, ID New bzw. Formatieren einer Diskette.
  • @N:Name, ID+ New bzw. Formatieren einer Diskette.
  • @C:Neu=Alt Copy bzw. Kopieren einer Datei Alt auf eine neue Datei Neu.
  • @R:Neuer Name = Alter Name Rename bzw. Umbenennen einer Datei.
  • @S:Name Scratch bzw. Löschen der angegebenen Datei.
  • @I Diskettenlaufwerk initialisieren.
  • @V Diskette validieren.
  • @XL:Name Datei vor dem Überschreiben schützen (Schreibschutz).
  • @XU:Name Den Schreibschutz einer geschützten Datei wieder aufheben .
  • @X+/- Softwareseitige Ein-/Abschaltung von Dolphin DOS und 35-Track-Modus fixieren
  • @XR+/- Dolphin DOS RAM aktivieren/deaktivieren. Bei abgeschaltetem RAM verdoppelt sich die Geschwindigkeit.
  • @XF+/- Schnelle Datenübertragung aktivieren/deaktivieren, Kompatibilitätsmodus.
  • @XV+/- VERIFY nach Schreibzugriff aktivieren/deaktivieren.
  • @XP+/- Parallel-Bus-Übertragungsmodus aktivieren/deaktivieren.
  • @XT+/- 40-Track-Modus ein-/ausschalten.
  • @XT Automodus zur Trackerkennung einer Diskette.
  • @XgeräteadresseNeu",geräteadresseAlt; Beispiel: @X9",8; Ändern der Adresse eines Laufwerks (hier: Laufwerk 8 auf Geräteadresse 9 umschalten). Es werden die Adressen 4-15 unterstützt.
  • @geräteadresse; Beispiel: @9; Festlegen der Standard-Geräteadresse (normalerweise 8). Achtung: es werden nur Geräteadressen 1-9 unterstützt (nicht 10 und 11. Quelle).
  • @X Floppyfehlerkanal anzeigen: 02,R+:F+:V+:P+:,35,08 (Standardwerte)

Floppy 1570/71[Bearbeiten | Quelltext bearbeiten]

  • 0:@X Anzeige des erweiterten Floppystatus 02,R+:F+:V+:+:,0,35,08.
  • @XM+/- Zweiseitigen Schreib-/Lesemodus ein-/ausschalten.
  • @X-/+ Schaltet in den 1- oder 2-MHz-Modus und de-/aktiviert die DOS-Befehle außer @X und @X+.

Kompatibilität beim Laden[Bearbeiten | Quelltext bearbeiten]

Folgende Tipps können bei Ladeproblemen mit sensibler Software Abhilfe schaffen. Diese Tipps können der Reihe nach angewandt werden, bevor der LOAD-Befehl ausgeführt wird.

  1. Laden eines Programms mit LOAD "name",8,2.
  2. Eingabe des Befehls @XF-, um die LOAD-/SAVE-Beschleunigung auszuschalten.
  3. Mit CTRL +X  die Funktionstastenbelegung abschalten.
  4. Eingabe des Befehls @XR-, um das Dolphin DOS RAM zu deaktivieren.
  5. Eingabe des Befehls @XP-, um Parallelbus abzuschalten.
  6. Dolphin DOS an der 1541 ausschalten.
  7. Dolphin DOS am C64/128 ausschalten.

Maschinensprachemonitor[Bearbeiten | Quelltext bearbeiten]

Beim Aufruf des Maschinensprachemonitors mit SYS 0 erfolgt die Anzeige des CPU-Status als Register-Dump in folgender Form:

SR AC XR YR SP  PC  NV-BDIZC
32 00 FF 00 F9 F2BC 00110010

Dabei bedeutet (Anzeige als zwei- oder vierstellige hexadezimale Zahl):

  • SR: Statusregister/-flags
  • AC: Inhalt des Akkumulatorregisters (engl. accumulator counter)
  • XR: Inhalt des X-Indexregisters
  • YR: Inhalt des Y-Indexregisters
  • SP: Inhalt des Stapelzeigers (engl. stack pointer)
  • PC: Nicht veränderbarer Programmzähler (engl. programm counter) mit der Speicheradresse des nächsten auszuführenden Befehls
  • NV-BDIZC: Statusregister als Binärzahl (8-stellig)


Folgende Monitor-Befehle gibt es:

  • M ADRESSE - Zeigt 8 Bytes als hexadezimale Zahl und ASCII-Code mit angegebener Startadresse an.
  • A ADRESSE - Zeigt 32 Bytes als ASCII-Code mit angegebener Startadresse an.
  • W ADRESSE TEXT - Schreibt einen ASCII-Text an die angegebene Speicheradresse.
  • @ KOMMANDO - Sendete DOS-Befehle und nutzt so die Floppy.
  • L DATEI"2000 - Lädt "DATEI" an die Speicheradresse $2000.
  • L DATEI". - Lädt "DATEI" automatisch an die abgespeicherte Speicheradresse.
  • V DATEI"2000 - Verifiziert "DATEI" an der Speicheradresse $2000.
  • S FILE"2000 - Speichert "DATEI" von Speicheradresse $2000 bis $BFFF. Bei der Benutzung der Floppy mit Geräteadresse 9, zuvor den Befehl @9 eingeben.
  • G ADRESSE - Springt zur angegebenen Speicheradresse.
  • X - Beenden des Monitors und kehrt zum BASIC zurück.

Das Scrollen im Monitor erfolgt mit den Tasten Taste +F3  vor und Taste +F5  zurück. Durch Drücken der Tasten A  und M  kann zwischen der hexadezimalen und der ASCII-Darstellung gewechselt werden.

Weblinks[Bearbeiten | Quelltext bearbeiten]