
DISKAUX wurde mit volksFORTH 83 der FORTH-Gesellschaft e.V geschrieben.
Das Programm ist PUBLIC DOMAIN und darf in unvernderter Form weiter-
gegeben werden. Fr Verbesserungsvorschlge und Ideen sind wir dankbar.
Fr Schden, die durch die Anwendung des Programms entstehen bernehmen
wir keine Haftung.

                                       Klaus und Patrick Rogalski
                                       Harnackring 50 / 2050 Hamburg 80



            FORTH is the answer! ... What was the question???



            ------------- ANLEITUNG FR DISKAUX -------------

                         Version 1.00 - 26.03.89


DISKAUX ist ein Programm zum Experimentieren und Arbeiten mit Floppy-
Laufwerken und Disketten. DISKAUX greift direkt auf den Floppy-Disk-
Contoller zu und wird nicht durch das Betriebssystem kontrolliert. So
knnen auch fremde Formate, soweit sie der FDC verkraftet, bearbeitet
werden.

Eingelesene Daten werden in einem Puffer zwischengespeichert dessen
Gre sich, je nach vorhandenem Speicherplatz, dynamisch einstellt.
Dieser Puffer kann als Hexdump eingesehen und editiert, in einer
Floppydatei gesichert oder von ihr geladen werden.

Funktionen werden durch Anklicken der entsprechenden Box oder von der
Tastatur aufgerufen. Die dafr erforderlichen Parameter sind in die
grafische Benutzeroberflche eingebunden und knnen hier auch gendert
werden. Whrend einer Operation wird, wenn erforderlich, die Anzeige
aktualisiert. Fehler die der FDC erkennt, werden in der Boxenleiste
angezeigt.

Ein Kommando, da auf Diskette schreibt, (write/copy/format/diskname...)
tut das ohne Vorwarnung, nimmt keine Rcksicht auf wertvolle Disketten,
Wehklagen oder Aufschreie und ist nur zu bremsen durch Schreibschutz!!!
Ebenso wird auf Wunsch versucht Track 100 anzufahren auch wenn das
Laufwerk noch so meckert. ACHTUNG: F1 - F4 formatiert!

STARTEN:

        Nach dem Starten von DISKAUX.PRG stellen sich alle Parameter auf
        Atari DS Diskette, Track 0 Seite 1 und Laufwerk A ein.

DRIVE ANWHLEN  A  B

        A / B  oder anklicken von DRIVE A oder DRIVE B whlt das
        aktuelle Laufwerk an, auf das der nchste Zugriff erfolgen soll.

DISKDATEN  Parameter einstellen

        Die Diskparameter getrennt fr Drive A und B in den Boxen unten
        links und rechts angezeigt und eingestellt. Zum Abndern die
        vorgegebenen Ziffern anklicken und neu eingeben. Eingabe von der
        Tastatur nur fr das aktuelle Laufwerk.

        SEITEN          #
                        1 oder 2 , ein- oder zweiseitige Disk.

        TRACKS/SEITE    alt t
                        normal 80 je nach Drive und Format mehr oder weniger.

        SEKTOREN/TRACK  alt s
                        normal 9 abhngig von der Sektorgre, bei 512
                        passen nicht mehr als 11 auf eine Spur.

        1.SEKTORNR      alt 1
                        die niederwertigste Sektornummer  auf der Spur.

        SEKTORGRE     alt g
                        durch Anklicken von [+] im Raster 128 bis 1024
                        einstellbar. Atari hat 512.

        STEP            alt x
                        1 oder 2 , 2 = Doppelstep fr Disketten von 40 track
                        Laufwerken.


TRACKDATEN EINLESEN     alt l

        Liest die Vorspannfelder von der aktuellen Spur und Seite in den
        Puffer und stellt SEKTOREN/TRACK, 1.Sektornr. und Sektorgre
        ein.

VIEW ADRESSMARKS        v

        Es knnen die eingelesenen Vorspannfelder angesehen werden.
        Track #, Seite #, Sektor #, Sektorgre 0=128 1=256 2=512
        3=1024 und Prfsumme (word). Ausdrucken siehe EDITOR und
        aussteigen mit ESC.

DISKDATEN EINLESEN      alt d

        ermittelt physikalisch, durch Leseversuche Seitenanzahl, STEP und
        TRACKS/SEITE.
        1.Versuch: Spur 0 Seite 0, Vorspannfelder einlesen
        2.Versuch: Spur 0 Seite 1, bei Fehler = einseitige Disk (SEITEN=1)
        3.Versuch: Spur 1 Seite 0, bei Fehler = Doppelstep      ( STEP=2 )
        4.Versuch: Spur 39-43      bei Fehler = TRACKS/SEITE
        5.Versuch: Spur 79-83      bei Fehler = TRACKS/SEITE , RESET

        Gleichzeitig werden auch die Arbeitswerte in den oberen Feldern
        gesetzt.


ARBEITSWERTE

        werden in den oberen Feldern fr Drive A und B getrennt eingestellt.
        Rauf- und runterzhlen mit [+] [-] oder Eingabe durch Anklicken
        der Ziffern.

TRACK   t
        zeigt die aktuelle Spur an. Eine nderung des Wertes positioniert
        den Kopf beim nchsten Kommando der oberen beiden  READ WRITE COPY
        Funktionsblcke auf die gewhlte Spur.

SEKTOR  s
        wird nur von dem in gleicher Hhe liegendem READ WRITE COPY Block
        Benutzt und bestimmt den einzelnen Sektor der angesprochen werden
        soll.

SEKTOR n bis n     f    l
        stellt die Sektordistanz fr die Funktionen mit mehreren Sektoren
        ein. ( die unteren beiden READ WRITE COPY - Blcke )

TRACK  n bis n    ctrl f   ctrl l
        fr die Operationen ber mehrere Spuren ( ggf. Seiten bei SEITEN=2 )
        im unteren READ WRITE COPY Block.
        TRACK oben dient jetzt nur als Anzeige.

SEITE   x
        whlt Seite 0 oder 1 fr die Funktion oder Startseite fr Operationen
        ber mehrere Tracks.




READ WRITE COPY Funktionsblcke

        Diese Kommandos sind in drei Funktionsgruppen angeordnet. Bei
        allen spricht read und write das aktuelle Laufwerk an. Copy
        liest vom aktuellen Drive, schaltet zum Schreiben um und dann
        wieder zurck.

READ WRITE COPY oben   r  w  c

        fhrt das FDC-Kommando read-sector und write-sector aus.
        Eingestellt sein mssen:

        DRIVE , TRACK (oben) , SEKTOR (oben) , Sektorgre (Diskdaten)
        ggf. STEP (bei 40 Track Disks).

        READ liest die in Sektorgre vorgegebene Anzahl Bytes in den
        Puffer und WRITE schreibt 'Sektorgre' Bytes aus dem Puffer auf
        die Disk.

READ WRITE COPY mitte  ctrl r  ctrl w  ctrl c

        entspricht dem FDC-Kommando read/write-sektor mit gesetztem Bit
        fr mehrere Sektoren.  Die Voreinstellungen sind wie oben,
        allerdings der oben eingestellte einzelne Sektor ist
        bedeutungslos, dafr wird die Sektordistanz (von bis)
        einbezogen.

READ WRITE COPY unten   alt r   alt w   alt c

        ermglicht Operationen der oben eingestellten Sektordistanz ber
        beide Seiten und mehrere Spuren.

        Eingestellt sein mssen:
        Die gewnschte Trackdistanz ( von bis ) funktioniert auch
        rckwrts oder zwei gleiche Werte fr eine Spur. Die
        Sektordistanz, die Sektorgre, Anzahl der Seiten, bei 2 Seiten
        wird pro Track Seite 0 und 1 gelesen oder geschrieben, die Seite
        mit der begonnen wird ( normal 0 ) und ggf. Step.

        In der Grundeinstellung wird die Disk komplett in den Puffer
        (wenn der gro genug ist) gelesen oder aus ihm beschrieben.
        Kopieren funktioniert bei zuwenig Speicher automatisch
        aufgeteilt. Ist die Datenmenge (Tracks * Seiten * Sektoren/Track
        * Sektorgre) von Quell- und Zieldiskette ungleich, erscheint
        eine Fehlermeldung.

        40 track Doppelstepdisketten lassen sich hier in 40 track singlestep
        Disketten verwandeln.

        Zur Fehlerprfung Diskette komplett einlesen.
        Tritt whrend der Operation ein Fehler auf, so bleibt die Anzeige
        fr Track und Seite erhalten.
        Durch lesen der einzelnen Sektoren ist der fehlerhafte Sektor dann
        zu finden.

RESET   home
        fhrt das aktuelle Drive auf Spur 0, setzt TRACK auf 0 und SEKTOR
        auf 1. Sektornr.


EDITOR    E

        Mit dem Editor knnen die in den Puffer eingelesenen Daten durch-
        geblttert und verndert werden.
        Der Arbeitsbereich ist auf die Gre der eingelesenen Datenmenge
        eingestellt, wird jedoch nicht grer als 32k.
        Die Ausdruck-Startadresse wird mit  ctrl. A und die Endadresse mit
        ctrl. E eingegeben, ctrl. P druckt den gewhlten Speicherbereich aus.
        Die Cursorposition wird oben links (in dec/hex AUSGABE vorgewhlt)
        angezeigt. Bewegt wird er durch die Pfeiltasten..
        ctrl. Pfeil rechts  wechselt in den ASCII-Editblock und
        ctrl. Pfeil links zurck in den Nummern-Editblock.
        ESC  beendet den Editor.

MENUELEISTE

DATEI


LOAD  ctrl g     Laden einer Gemdosdatei in den Edit-Puffer.

SAVE  ctrl p     Sichern des Pufferinhaltes als Gemdosdatei auf Diskette.

BYE   ctrl q     Diskaux beenden.


FORMAT


SKEW 1 - SKEW 4   F1 - F4

        Formatiert die Diskette im aktuellen Laufwerk ber die eingestellte
        Spurdistanz (Track n bis n).
        Stimmt die eingestellte Spurdistanz mit Tracks/Seite (DISKDATEN)
        berein, wird anschlieend ein nicht ausfhrbarer Bootsektor
        geschrieben.
        Bei zu 'engem' Format werden die Gaps soweit wie mglich zusammen-
        gequetscht.
        Bentigte Werte sind:   Trackdistanz, SEITE, Seiten, Tracks/seite,
        Sektoren/Track, 1.Sektornr, Sektorgre und Step.
        SKEW 1 formatiert ohne Sektorversatz (die Sektoren der Spur in auf-
        steigender Reihenfolge).
        SKEW 2 erstellt den kleinsten, fr die gewhlte Anzahl von Sektoren
        mglichen Versatz.
        SKEW 3 und 4 dann den nchstmglichen.
        Anzusehen ist das Ganze nach dem Formatieren mit Trackdaten einlesen
        und view Adressmarks.

DISKNAME   ctrl n

        schreibt einen neuen oder ndert den alten Disknamen auf die aktu-
        elle Diskette.  Das Programm durchsucht ab logischem 11 Sektor das
        Inhaltsverzeichnis nach dem vorhandenem Disknamen oder einem freien
        Platz.
        WICHTIG ! Die Parameter in DISKDATEN mssen die der eingelegten
        Diskette sein.
        Zum Ausprobieren Diskette mit Schreibschutz nehmen.
        Wenn das Programm dann Abbricht ist nur der Puffer beschrieben und
        kann ber EDITOR angesehen werden.

READ-TRACK

        ist das read-track Kommando des Controllers mit seinen Lesefehlern.
        Es endet meist mit LOST DATA. Die Daten die in den Puffer geraten
        sind, werden mit EDITOR sichtbar.

AUSGABE

HEX  h  schaltet die Eingabe und Anzeige aller Werte auf Hex und

DEC  d  auf dezimal um.


STEP    Hier lt sich die Steprate des aktuellen Laufwerks getrennt
        einstellen.  Die Grundeinstellung ist fr beide Drives 3 ms.


SPEED u zeigt die Umdrehungen pro Minute des aktuellen Drives an.
        Wenn genauer gemessen wird dauert es auch lnger.


EINSTELLEN

        Grundeistellungen fr die Arbeitswerte und Parameter ( DISKDATEN )
        einiger Formate.

ATARI DS  ctrl home

        Stellt wieder die Anfangswerte fr doppelseitige 80 Spur 9 Sektor
        Disketten ein.

ATARI SS           wie oben fr einseitige Disketten.


82T 10S 828K      82 Tracks 10 Sektoren 2 Seiten, so formatiert passen dann
                  828 kilobytes auf die Disk.

82T 11S 912K      auch hierfr wird der passende Bootsektor erstellt.

40T DS 1 step     40 Track Format von/fr 80 Track-Drives.

40T DS 2 step     40 Track Format von/fr 40 Track-Drives.
