**   **   *****    *****   ******  **    **
**   **  **   **  **   **  **   **  **  **
*******  **       **   **  ******    ****
**   **  **   **  **   **  **         **
**   **   *****    *****   **         **


erstellt von Robert Wei,

unter Zuhilfenahme von...

...Diskettenroutinen aus dem Buch "Scheibenkleister II" von Claus Brod
...Jrgen Stessun's Hyperformat und zahlreichen Tips
...MyDials und Interface von Olaf Meisiek; Copyright  1991 by SHIFT, Flensburg
...Tastaturroutinen von Harald Siegmund


Benutzungshinweis:
------------------
Der Autor bernimmt keine Garantie fr die Fehlerfreiheit des Programmes und
kann fr Schden, die auf eine Fehlfunktion des Programmes zurckzufhren sind,
nicht haftbar gemacht werden.


Copyright:
----------
HCOPY ist Shareware!

Shareware-Version (x.xxs):
Die Versionen, die in der Versionsnummer ein 's' enthalten, drfen fr nicht-
kommerzielle Zwecke frei kopiert und weitergegeben werden. Es mssen aller-
dings alle Dateien des Ordners in unvernderter Form weitergegeben werden.
Unterschiede zur Vollversion:
- Luft nicht als Accessory
- Die Einstellungen lassen sich nicht abspeichern
- Keine Seriennummer
- Bei Programmstart erscheint eine Info-Box
- Bei Programmende erscheint eine Alertbox
- Keine Farb-RSC-Datei
- Kein Externer Bootsektor
Also wenn das keine 30,-DM wert ist, dann wei ich auch nicht mehr!?!
Wenn Sie HCOPY lnger als 2 Wochen benutzen, mssen Sie dem Autor einen Betrag
von DM 30,- zukommen lassen! Dafr erhalten Sie dann die aktuelle Vollversion,
werden registriert und erhalten im Falle eines Updates Bescheid.
Die Aufnahme von HCOPY in Public-Domain (PD) Listen und die Weitergabe durch
PD-Hndler/-Versender ist erst NACH RCKSPRACHE mit dem Autor und dessen
EINVERSTNDNIS gestattet!
Die Verbreitung ber Mailbox-Netze ist gestattet und erwnscht.

Voll-Version (mit Seriennummer):
Darf NICHT weitergegeben werden!


Hardware-Voraussetzungen:
-------------------------
Atari ST/STE/TT
Monochrom- oder Farb-Monitor (mindestens 600*200)
lauffhig unter Auflsungserweiterungen (z.B. Overscan)
TOS >=1.02
Ein High Density Laufwerk und ein HD-fhiger Rechner sind ntig, wenn man
mehr als 11 Sektoren pro Spur formatieren will.


Lieferumfang:
-------------
Folgende Dateien sollten sich auf der Diskette befinden!
   HCOPY.PRG         -       Das Programm
   HCOPY.RSC         -       Resourcen dazu, mu im gleichen Verzeichnis
                             wie das Programm liegen
   HCOPY.TXT         -       Dieser Text
   README.1ST        -       Aktuelle Mitteilungen

(Nur Vollversion)
   HCOPYCOL.RSC      -       Resourcen fr ST-Mittel und TT-Niedrig
   GETMAXTR.TOS      -       Ermittelt die maximal benutzbaren Spuren eines
                             Laufwerks
   DDCOOKIE.PRG      -       Autoordner-Programm, setzt den _FDC-Cookie auf
                             Double Density.
   HDCOOKIE.PRG      -       Autoordner-Programm, setzt den _FDC-Cookie auf
                             High Density.
   Ordner BOOTER:
      SAGROTAN.BOO   -       Von Sagrotan 4.17 erzeugter Bootsektor
      VIRENDET.BOO   -       dito Virendetektor 3.0
      TIMESET.BOO    -       ein Bootsektor, um die Systemzeit zu stellen
      RAMTEST.BOO    -       testet das RAM, wie TOS 2.06
      WAITKEY.BOO    -       wartet auf Tastendruck, fr Festplatten
      HZ60           -       schaltet im Farbmodus auf 60Hz

Was kann HCOPY:
---------------
- Bis zu 92 Spuren, 22 Sektoren (11 ohne High Density) und 2 Seiten kopier- und
  formatierbar
- Auf 3" HD-Disketten bis zu 1.8 MByte frei
- 18 Sektoren-Format auf 5" HD-Disketten
  => 1:1 Kopie von 3" nach 5" HD-Disketten
- Erzeugung von schnellen Disketten durch Interleave und Spiralisierung
- Schnelle Formatierroutine (z.B. 2seitige TOS-Diskette in 35 Sekunden)
- Automatische Erkennung des Diskettentyps
- Erzeugung MSDOS-Kompatibler Disketten
- Erzeugung eines Virenschutz-Bootsektors
- Erkennung und Markierung defekter Sektoren
- Umkopieren einer Disk auf anderes Format (z.B DD->HD)
- Kopieren ohne/mit Formatierung
- Kopieren nur der belegten Sektoren
- Erzeugung mehrerer Kopien
- Clustergre 1 oder 2 Sektoren einstellbar
- Steprate fr beide Laufwerke getrennt einstellbar, auch automatisch
- Testen einer Diskette
- Schnelles Lschen einer Diskette
- Ausfhrliches Disketten-Info
- Directory-Anzeige
- 8 Default-Einstellungen (editierbar, speicherbar)
- HCOPY luft als ACC und als PRG (einfach umbenennen)
- Lauffhig auf allen Grafik-Erweiterungen
- Alle Dialoge knnen fliegen
- Vollstndig ber Tastatur bediehnbar (Teilweise einstellbar)


Installation:
-------------
Kopieren Sie HCOPY.PRG und HCOPY.RSC in das selbe Verzeichnis.
Wenn Sie HCOPY als Accessory benutzen wollen, mssen Sie die 2 Dateien in das
Wurzelverzeichnis des Bootlaufwerkes kopieren und HCOPY.PRG in HCOPY.ACC
umbenennen und neu Booten.
Wenn Sie HCOPY in der Auflsung ST-Mittel oder TT-Niedrig starten wollen, mssen
Sie HCOPY.RSC durch HCOPYCOL.RSC ersetzen.
Im Ordner BOOTER befinden sich diverse Bootsektoren. Kopieren sie den
gewnschten Bootsektor in das Verzeichnis, in dem auch HCOPY.PRG liegt und
benennen sie diesen in HCOPY.BOO um. Von nun an knnen sie beim Formatieren
oder Lschen einer Diskette den neuen Bootsektor schreiben, sofern sie
'Extern Booter' aktiviert haben.


Etwas Disketten-Theorie:
------------------------
Innerhalb der Diskettenumhllung befindet sich eine runde magnetisierbare
Scheibe. So wie alles im Leben hat auch diese 2 Seiten, welche als Seite 0 und
Seite 1 bezeichnet werden. Auf frisch gekauften Disketten befinden sich
normalerweise noch keinerlei mit Daten fllbare Strukturen (Spuren, Sektoren).
Diese mssen erst aufgebracht werden, was man als Formatieren bezeichnet.
Hierbei wird die Diskette in mehrere Ringe (=Spuren, engl. Tracks) aufgeteilt,
wobei je nach Laufwerkstyp bis zu 87 Spuren mglich sind. Die Spuren werden
dann noch in Sektoren unterteilt, welche dann die eigentlichen Daten enthalten
werden.
Nun gibt es auf einer Diskette noch ein paar Sektoren, die nicht fr die
Speicherung, sondern fr die Verwaltung der Daten zur Verfgung stehen.
Dies sind der Bootsektor, die FAT (File Allocation Table) und das
Wurzel-Verzeichnis (Directory).
Im Bootsektor sind Daten ber den physikalischen Aufbau der Diskette (Sektoren
pro Spur, Spuren pro Seite, Seitenanzahl, Directory-Gre, FAT-Gre, ...)
gespeichert.
In den FAT-Sektoren existiert fr jeden Cluster (= normal 2 Sektoren) ein 12-
Bit-Feld, in dem eingetragen ist, welchen Status dieser Cluster besitzt (frei,
belegt, defekt oder Dateiende).
Im Directory werden die auf der Diskette befindlichen Ordner und Dateien mit
Name, Lnge, Datum, Uhrzeit, Satus, Startcluster in einem 32 Byte-Feld pro
Ordner/Datei gefhrt.

Was dann an Sektoren noch brigbleibt ist fr die Daten vorgesehen.

Wer noch mehr ber Laufwerke etc. wissen mchte, sei auf Claus Brod's hervor-
ragendes Werk "Scheibenkleister II" (Siehe Quellen) verwiesen.


Der HCOPY Bildschirm:
---------------------

1. Positions- und Ttigkeits-Anzeige
        Hier wird die aktuelle Diskette als Balken, unterteilt in 2 Seiten und
        92 Spuren, dargestellt. Anhand dieses Balkens kann man die aktuelle
        Position und Ttigkeit, die in der Status-Mitteilung als Text
        ausgegeben wird, erkennen.
        Wenn in der Status-Meldung 'Ready' steht, ist HCOPY bereit, von ihnen
        Eingaben anzunehmen.
        Ferner wird noch der zur Verfgung stehende Speicher angezeigt. Um
        vernnftig Kopieren zu knnen, ist ein Speicher von mindestens 500
        kByte oder aber 2 Laufwerke ntig! Alle anderen Funktionen brauchen
        ca. 20-50 kByte.

2. Parameter-Einstellungen
2.1.    In den Boxen SOURCE und DESTINATION kann das Quell- und das
        Ziel-Laufwerk eingestellt werden, darunter jeweils die vom Laufwerk
        bentigte Spurwechselzeit in Millisekunden:

                2ms:    manche schaffen es - ausprobieren!
                3ms:    3 Zoll, Double Density (normales ST/STE/TT-Laufwerk)
                6ms:    3 Zoll, High Density
                        5 Zoll, Double Density
               12ms:    5 Zoll, High Density

        Alle lesenden Funktionen (Scan, Directory, Disk-Info) benutzen
        die in SOURCE eingestellten Parameter!
        Alle schreibenden Funktionen (Format, Zero) benutzen die in DEST.
        eingestellten Parameter!

        Tastatur:
        SOURCE-DRIVE  [A][B]    SOURCE-STEP  [P]
        DEST.-DRIVE   wie oben, aber mit [Shift]


2.2.    In der nchsten Box ist es mglich, das Diskettenformat manuell
        einzustellen:

        Oben wird das erforderliche Diskettenformat aus der Sektorenanzahl
        berechnet und bei der Formatierung werden die auf Diskette schreibbaren
        Bytes erkannt und der daraus resultierend Typ angezeigt.
        Z.B. erkennt HCOPY beim Kopieren mit 18 Sektoren automatisch, ob es
        sich bei der Ziel-(DESTINATION)-Diskette um eine 5.25" oder 3.5" Disk
        handelt und setzt die Sektorlcken dementsprechend (Toll, was?).

        a) Sektoren ('SECTORS')                Tastatur:  [+][-]
        Um die maximal mgliche Sektorenanzahl pro Spur eines Laufwerks zu
        bestimmen, mu man wissen, mit welcher Dichte die Daten gelesen/
        geschrieben oder mit welcher Taktrate der FDC gespeist wird.

        Double Density ,     8 MHz:    9-11 Sektoren (normaler ST/STE)
        Hyper Density  , 10.24 MHz:   12-14 Sektoren (mit neuem Quarz)
        High Density   ,    16 MHz:   15-18 Sektoren (5 Zoll Laufwerk)
        High Density   ,    16 MHz:   18-22 Sektoren (3 Zoll  " , MegaSTE/TT)

        HCOPY ist aber so schlau und prft vor dem Formatieren einer Diskette,
        ob die maximal mgliche Sektorenanzahl berschritten ist.
        Ist dies der Fall, werden Sie darauf hingewiesen, das Laufwerk auf eine
        hhere Taktrate umzuschalten.
        Eine berprfung auf zu kleiner Sektorenanzahl findet NICHT statt!

        b) Spuren ('TRACKS')                   Tastatur:  [+][-] (mit Shift)
        Die maximal mgliche Anzahl der Spuren kann man mit dem beiliegenden
        Programm GETMAXTRK.TOS herausfinden. Dazu wird der Kopf solange nach
        innen bewegt, bis er anschlgt! Dieses Programm ist aber mit Vorsicht
        zu genieen, da sich der Kopf bei fteren Anschlagen verstellen kann.
        Also befolgen sie bitte genau die Anweisungen, dann kann auch nichts
        schiefgehen.

        c) Seiten ('SIDES')                    Tastatur:  [1][2]
        Dies hngt vom verwendeten Laufwerk ab. Mittlerweile werden aber meines
        Erachtens keine einseitigen Laufwerke mehr hergestellt.

        d) Clustergre ('Cl-Size')            Tastatur:  [1][2] (mit Shift)
        GEMDOS arbeitet nicht mit einzelnen Sektoren, sondern mit Clustern.
        Eingebrgert hat sich ein Wert von 2 Sektoren pro Cluster, da sich der
        Verwaltungsaufwand und der Speicherverbrauch auf ein Minimum reduziert.
        Da manche DOS-Versionen mit einer Clustergre von 2 Sektoren nicht
        zurecht kommen, kann man diese auf 1 Sektor pro Cluster setzen, und
        erreicht damit eine hhere Kompatibilitt zum MSDOS-Disketten-Format.
        Ihr Atari kommt mit beiden Gren zurecht. (Siehe auch Problemkind)

        e) Wenn 'READ DISK-TYPE' aktiv ist, werden die obigen 3 Einstellungen
        ignoriert und es wird stattdessen das Format der Quell-(SOURCE)-
        Diskette analysiert, angezeigt und verwendet.

        f) Ausnahmen:
        Bei 'FORMAT' und 'COPY NEW' werden die Einstellungen von a) - d)
        immer bernommen und 'READ DISK-TYPE' ignoriert.
        Ist 'USED ONLY' aktiv, wird immer der Diskettentyp analysiert und
        verwendet.

2.3.    Optionen:
	Tastatur: Alle unter 'Optionen' aufgefhrten Schalter lassen sich durch
        gleichzeitiges drcken von [Alt] und dem jeweils unterstrichenen
        Buchstaben bettigen.

     -  'Used Only' bewirkt in aktivem Zustand, da der Bootsektor und die FAT
        der Quell-Diskette analysiert und nur die belegten Sektoren eingelesen
        und geschrieben werden.

     -  Durch aktivieren von 'Multiple Copy' ist es mglich von einer Diskette
        mehrere Kopien zu erstellen. Die Quell-Diskette wird nur einmal ge-
        lesen, danach wird solange eine Kopie erzeugt, bis auf die Frage nach
        der Ziel-Diskette mit 'Cancel' geantwortet wird.

     -  'Format Dest.' wird nur ausgewertet, wenn Sie eine Diskette kopieren
        wollen. In aktivem Zustand wird die Ziel-Diskette gleichzeitig
        formatiert und beschrieben.

     -  Ist 'Format Needed' eingeschaltet, wird beim Kopieren die Ziel-Diskette
        nur formatiert, wenn HCOPY eine Formatierung fr ntig hlt.
        Die ausschlaggebenden Daten erhlt HCOPY aus dem Bootsektor der Ziel-
        Diskette.
        Formatiert wird, wenn:
        - der Bootsektor nicht vorhanden ist.
        - die Anzahl der Sektoren pro Track zu klein ist.
        - die Seitenanzahl zu klein ist.
        - die Trackanzahl zu klein ist.

     -  Ist 'Fast Format' aktiviert, wird der Formatierungs-Vorgang be-
        schleunigt, indem nur die ntigen Daten auf die Diskette gebracht
        werden. Sollte es sich jedoch um eine bereits vorher formatierte
        Diskette handeln, knnen noch Teile der alten Formatierung diesen
        Vorgang berleben, was dann unter Umstnden zu Fehlern (Doppelte
        Sektorennummern) beim Schreiben/Lesen fhren kann.
        Also lieber nur bei ganz neuen Disketten verwenden!
        Bei Disketten mit 9 oder 18 Sektoren wird ein etwas langsameres, dafr
        aber sehr schnell zu formatierendes Diskettenformat erzeugt.

     -  Bei selektiertem 'Verify Disk' werden gleich nach dem Formatieren oder
        Beschreiben eines Tracks alle Sektoren eingelesen, um so festzustellen,
        ob auch alle in Ordnung sind.

     -  Mit 'Auto Step' kann man HCOPY dazu bringen, die Steprate selbst zu
        bestimmen, die Einstellung in 'Source' bzw. 'Dest.' wird also ignoriert,
        und statt dessen nach dem Muster:
        Sektorenanzahl grer 11 => Steprate 6ms, sonst 3ms!

     -  Ist 'Virus-Protect' aktiv, so wird beim Formatieren oder Lschen einer
        Diskette ein ausfhrbarer Bootsektor erzeugt, der beim Booten einen
        Text ausgibt. Wenn dieser Text bei einer so formatierten Diskette
        einmal nicht erscheinen sollte, knnen Sie sicher sein, da der
        Bootsektor verndert wurde.
        Der Nachteil dieser Option ist, da diese Disketten nicht von
        MSDOS-Rechnern lesbar sind!

    (-) Konnte HCOPY beim Start eine Datei namens HCOPY.BOO finden, so wird
        der interne Virenschutz-Sektor durch die Datei ersetzt, und aus der
        Option 'Virus-Protect' wird 'Extern Booter'. So ist es z.B. mglich,
        den Sagrotan-Bootsektor beim Formatieren zu schreiben.
        Um einen eigenen Bootsektor zu benutzen braucht man einen Disk-Monitor,
        der Sektoren als Dateien abspeichern kann.
        Dann nimmt man die Disk, auf der der gewnschte Bootsektor drauf ist und
        speichert dann mit dem Monitor den Sektor 1/Track 0/Seite 0 (logischer
        Sektor 0) in der Datei *.BOO ab. Diese Datei msste, wenn alles geklappt
        hat, eine Lnge von genau 512 Bytes haben.
        Die Datei jetzt noch umbenennen in HCOPY.BOO, und in das gleiche
        Verzeichnis wie HCOPY.PRG (oder .ACC) kopieren.
        Beim nchsten Start kann man dann den neuen Bootsektor Formatieren.

     -  'No Add.Headers' schreibt beim Formatieren nur die normalen
        Sektoren und KEINE zustzlichen Header, da diese von einigen PCs
        nicht bergangen werden. Diese Disketten sind dann natrlich nicht mehr
        so schnell.

     -  Mit 'Settling Delay' wird nach jeder Lese/Schreib-Operation eine
        Wartezeit von 30ms eingelegt, welche bei stark nachschwingenden
        Floppys zur Fehlervermeidung beitrgt. Bei TEAC-Floppys sollte man
        diese Option jedoch nicht benutzen, habe ich mir sagen lassen.

     -  Bei 'Read/Write-Retrys' lt sich die Anzahl der Lese- und Schreib-
        versuche bei defekten Sektoren von 0 bis 99 einstellen. Je grer der
        Wert, desto lnger dauert auch die Idenitfizierung eines defekten
        Sektors. Stellt man den Wert auf 0-2, hlt sich die Zeit des Erkennens
        von Defekten in annehmbaren Grenzen.
        Grere Werte sind nur dann von Vorteil, wenn man eine uralte Disk mit
        lebensnotwendigen Daten retten will.
	Tastatur:  [<][>]

     -  Mit 'Set HD-Switch' kann man die Art der Umschaltung der benutzten
        Dichte einstellen:
        Diese Option hngt ganz vom verwendeten Modul ab!
        Es gibt welche (so wie meins) die die Dichte automatisch umschalten,
        sobald ein HD-Signal vom Pin 2 des Laufwerks kommt
        => 'Automatic'
        Alle TTs und einige MegaSTEs sind schon HD-fhig, und besitzen ein
        Hardwareregister, mit welchem man die Dichte umschalten kann. Nur
        leider hat Atari versumt, dieses Register zu dokumentieren, und ich
        habe keine andere Mglichkeit gefunden, dies zu lsen!
        => 'Mega STE/TT'
        Manche Module sind mit Pin 14 (PGM Bit 6) oder 15 (Bit 7) des Soundchips
        verbunden. Nun mssen sie wissen, ber welches Bit das Modul geschaltet
        wird, und wann das Modul im HD-Modus ist. Dieses stellen sie dann ein.


3. Let's Do It

COPY:        Kopiert die Daten der Quell-Diskette 1:1 auf die Ziel-Diskette.
             Bei Bedarf kann die Ziel-Diskette auch formatiert werden.
             Das einzige, was bei dieser Aktion auf der Ziel-Diskette ver-
             ndert wird, ist die Seriennummer im Bootsektor. Ein evtl. aus-
             fhrbarer Bootsektor und das auf ihm installierte Boot-Programm
             bleiben aber trotzdem erhalten.

             Bei 'Multiple Copy' wird das Schreiben der Ziel-Diskette solange
             wiederholt, bis auf die Frage nach der Ziel-Diskette mit
             'Cancel' geantwortet wird.

             Werden auf der Ziel-Diskette Fehler gefunden, fragt HCOPY nach
             dem Kopieren, ob die fehlerhaften Stellen in der FAT markiert
             werden sollen. Bei Einverstndnis werden aber nur freie Cluster
             als defekt markiert.

COPY NEW:    Arbeitet im Prinzip wie COPY, nur kann man hier ein von der
             Quell-Diskette abweichendes Ziel-Format eingeben.
             Die Quell-Diskette wird analysiert und nur die belegten Sektoren
             werden eingelesen.
             Dann werden die aus dem eingestellten Disketten-Format resul-
             tierenden Vernderungen des Bootsektors, der FAT- und Directory-
             Gre im Speicher ausgefhrt und wiederum werden nur die
             belegten Sektoren auf die Ziel-Diskette geschrieben.

             Vernderbar sind die Sektorenanzahl, die Trackanzahl und die
             Seitenanzahl.
             Die Clustergre kann nicht verndert werden und wird von
             der Quelle bernommen.

             Ist der letzte benutzte Sektor der Quelle grer als der letzte
             Sektor des Zieles, wird darauf hingewiesen und die Aktion be-
             endet.

FORMAT:      Die Ziel-Diskette wird von oben nach unten formatiert, um bei
             einem unbeabsichtigten Formatieren die Daten der eingelegten
             Diskette so lange wie mglich zu erhalten.

ZERO DISK:   Lscht alle Daten der Ziel-Diskette, wobei einfach das Directory
             und die FAT des Zieles gelscht werden. Eventuell vorhandene
             Defekt-Markierungen werden nur bei selektiertem 'Read Disk-Typ'
             beachtet und nicht gelscht.
             berhaupt sollten sie hierbei immer 'Read Disk-Typ' aktiviert
             haben, da dann die alten Einstellungen (Sektoren pro Track, etc.)
             bernommen werden.

DISK-INFO:   Analysiert die Quell-Diskette und gibt die erhaltenen Daten aus.
             Man kann dann entscheiden ob man die erhaltenen Daten bernimmt
             (=SET) oder nicht (=CANCEL).

   Label: Name der Diskette
   ID: Ein Kennwort (z.B. 'Loader')
       Steht im 1.Buchstaben ein unsinniges ASCII-Zeichen, kommt das daher,
       da auf MSDOS-Disketten eine ID nicht existiert und auf dem 1.Buch-
       staben ein Teil des IBM-Sprungbefehls (z.B. $EB3E90) liegt.
   Serial #: 24 Bit Seriennummer der Diskette (Hexadezimal)
   Media-Byte: Dies hat in frheren MSDOS-Versionen das Disketten-Format
               bestimmt. (Hexadezimal)

   Capacity: Gasamtanzahl der kBytes (= 1024 Bytes)
   Free: Freie kBytes
   Used: Belegte kBytes

   Defect Clusters: Anzahl der als Defekt markierten Cluster

   Sectors: Sektoren pro Track
   Tracks: Tracks pro Seite
   Sides: Seiten der Diskette

   Interleave-Factor: Interleave-Faktor bezeichnet die Zahl, die auf eine
                      Sektornummer aufaddiert wird, um auf die Nummer des
                      physikalisch nachfolgenden Sektors zu kommen.
                      (nicht Verwechseln mit Interleave)
                      z.B. 1-7-2-8-3-9-4-10-5-11-6  (>>Interleave-Faktor 6)
                                                    (aber Interleave 2)
   Spiral-Factor: Offset, der auf die Sektornummern des jeweiligen Tracks
                  aufaddiert wird.
                  z.B. Track 1: 1-2-3-4-5-6-7-8-9
                       Track 2: 8-9-1-2-3-4-5-6-7  (>>Spiralfaktor 2)
   Add. Headers: Sind zustzliche, nicht fr Daten benutzbare Addressfelder
                 auf dem Track, die zur Beschleunigung des Lesens/Schreibens
                 diehnen.
   Boot-Checksum: Zeigt die Prfsumme des Bootsektors.
                  Ist diese gleich $1234, dann handelt es sich um einen
                  ausfhrbaren Bootsektor und es erscheint die Meldung:
                  'EXECUTABLE BOOT-PROGRAMM'
   Command-Load: Zeigt, ob ein Programm Namens 'COMMAND.PRG' nach dem Booten
                 gestartet wird oder nicht.

   Total Sectors:  Gesamtanzahl der physikalisch vorhandenen Sektoren

   Sectorsize: Gre eines Sektors in Bytes
   Clustersize: Gre eines Clusters in Bytes

   FAT-Sectors: Anzahl der Sektoren pro FAT
   Number of FATs: Anzahl der FATs auf der Diskette (immer 2)

   Dir.-Sectors: Anzahl der Sektoren fr das Wurzelverzeichnis
   Dir.-Entrys: Anzahl der max. mglichen Eintrge (Dateien, Ordner) im
                Wurzelverzeichnis

   1st log.Datasec: Logische Sektornummer des ersten fr Daten benutzbaren
                    Sektors

   Reserved Sec: Reservierte Sektoren - Normalerweise 1 (=Bootsektor)
   Hidden Sectors: Versteckte Sektorten (wird nie benutzt)

SCAN DISK:   Liest alle Daten der Quell-Diskette ein.
             Werden hierbei defekte Sektoren entdeckt, kann man diese am
             Ende der Operation in der FAT markieren lassen.

DIRECTORY:   Zeigt das Inhaltsverzeichnis der Quell-Diskette an, was natrlich
             am einfachsten mit einem File-Selector geht! Da htte sich FCOPY
             einige Bytes sparen knnen ;-)

SAVE OPT.:   Speichert folgende Einstellung ab:
             - Alle Default-Button Einstellungen
             - Selektiertes Quell-Laufwerk
             - Selektiertes Ziel-Laufwerk
             - Steprate Laufwerk A (einstellen: A whlen, Step setzen)
             - Steprate Laufwerk B (     "    : B    "  ,   "     "  )
             - Aktuelle Disk-Format Einstellungen
             - Aktuelle Einstellung aller Optionen

INFO:        Information zu HCOPY (Version, Autor, Seriennummer,...)

EXIT:        HCOPY beenden (was sonst?!)


Einstellung der DEFAULTS:
-------------------------
Mit einem Default-Button lassen sich folgende Einstellungen verndern:
 - Anzahl der Sektoren pro Track: Sectors
 - Anzahl der Spuren pro Seite:   Tracks
 - Anzahl der Seiten:             Sides
 - Clustergre in Sektoren:      Cl-Size
Um einen Default-Button zu editieren gengt ein Doppel-Klick auf diesen.
Daraufhin erscheint eine Dialogbox, wobei die bisherige Einstellung in
den Boxen 'Old' und 'New' angezeigt werden. Die Parameter von 'New' knnen
jetzt editiert werden. Nach Anklicken von OK werden die in New eingetragenen
Parameter von nun an fr den jeweiligen Default-Button verwendet.
Um die neue Einstellung auch beim nchsten Programmstart wieder zu er-
halten, mu noch mittels 'Save Opt.' abgespeichert werden.
Tastatur:
    - Anwhlen = Einfachklick  [F1]-[F8]
    - Editieren = Doppelklick  [F1]-[F8] (mit Shift)


Fehlermeldungen
---------------
Beim Start:
- "Error while loading external Booter. Do not use the Option: Extern Booter "
  Die Datei HCOPY.BOO ist entweder zu klein (< 512 Byte), oder defekt.
  HCOPY wird aber trotzdem installiert, bzw. gestartet. Sie sollten aber dann
  NICHT die Option 'Extern Booter' bentzen!

- "HCOPY needs a minimal Resolution of 600 x 200"
  Die aktuelle Auflsung reicht nicht aus, um HCOPY zu benutzen.
  Ist z.B. bei ST-Niedrig der Fall. HCOPY terminiert.

- "Where are my Resources (HCOPY.RSC)"
  Die Datei 'HCOPY.RSC' konnte nicht gefunden, bzw. nachgeladen werden.
  HCOPY terminiert.

- "Not enough MEMORY free!"
  Es steht zu wenig freier Speicher zur Verfgung.
  Diese Meldung kann auch whrend der Arbeit mit HCOPY erscheinen.
  Kommt diese Meldung beim Start, so terminiert HCOPY. Whrend der Arbeit wird
  nur die im Moment laufende Aktion unterbrochen.

Whrend der Arbeit:
- "Incorrect Parameters!"
  Sie haben unmgliche Daten beim Editieren eines Default-Knopfes eingegeben.

- "Error while Saving Options"
  Die aktuellen Einstellungen konnte nicht korrekt gespeichert werden.
  Entweder konnte HCOPY.PRG/ACC nicht gefunden werden, oder die Datei ist
  defekt. Oder haben sie HCOPY.PRG/ACC gepackt

- "Defect Bootsector!"
  Der Bootsektor ist kaputt!
  'Retry' versucht es nochmal.
  'Ignore' ignoriert den Fehler (auf eigene Gefahr).
  'Cancel' bricht ab.

- "Defect in Management Sectors!"
  Ein Sektor der FAT oder des Directorys ist defekt.
  'Retry' versucht es nochmal.
  'Ignore' ignoriert den Fehler (auf eigene Gefahr).
  'Cancel' bricht ab.

- "ERROR in Management-Sectors!"
  Das selbe wie oben, nur kann man diese Fehlermeldung nicht ignorieren lassen.

- "Illegal Bootsector-Datas!"
  Der Bootsektor enthlt unlogische Daten (z.B. 100 Sektoren pro Track)
  'Retry' versucht es nochmal.
  'Ignore' ignoriert den Fehler (auf eigene Gefahr).
  'Cancel' bricht ab.

- "Your Drive does not access so many Sectors! Switch to higher Density."
  Auf dem Laufwerk kann eine so hohe Anzahl von Sektoren nicht benutzt werden.
  Bitte in auf andere Dichte (High Density) schalten.


- "I found ???? defect Sectors on this Disk!"
  Es wurden defekte Sektoren entdeckt.
  'Mark Bad' markiert die defekten Stellen in der FAT.
  'Cancel' bricht ab.

- "Sorry! But it's to hard for me to make THIS Disk SO small."
  HCOPY kann die Quell-Diskette nicht auf das gewhlte Format der Ziel-Diskette
  verkleinern.

Fehler whrend einer Schreib/Lese-Operation werden in einer eigenen Dialogbox
ausgegeben. Die erste Zeile enthlt die Fehlerart, die Zweite die aktuelle
Position und die dritte und vierte eine genauere Fehlerbeschreibung.
'Retry' wiederholt die letzte Operation.
Mit 'Notice' werden die defekten Sektoren gemerkt und knnen dann am Schluss in
der FAT markiert werden.
Durch 'Restart' ist es mglich, bei einem Defekt auf der Zieldiskette, eine neue
einzulegen, und von vorne zu beginnen, ohne die Quell-Diskette nochmals
einlesen zu men.
'Cancel' bricht die gesamte Operation ab.

- "Time Out - Drive is not Ready! - Please insert a Disk."
  Es liegt keine Diskette im Laufwerk.

- "DMA-Error - Drive is not Ready! - Please turn on the Drive or insert a Disk."
  Entweder existiert das angesprochene Laufwerk nicht, oder es liegt keine
  Diskette darin.

- "Lost Data - Defect Track found!"
  Es wurde eine fehlerhafte Spur gefunden.

- "Bad Data-CRC - Defect Sector-DATA found!"
  Ein Sektordaten-Feld ist defekt.

- "Bad Header-CRC - Defect Sector-Address found!"
  Ein Sektoraddressen-Feld ist defekt.

- "Record not Found - Track or Sector not found!"
  Spur oder Sektor nicht vorhanden.

- "Write Protect - Please Remove WRITE-PROTECTION!"
  Es wurde versucht auf ein schreibgeschtztes Medium zu schreiben.

- "Unknown Error - How did you do that? - Continuation could be Critical."
  Keine Ahnung, was nun wieder kaputt ist.

Dies sind eigentlich keine Fehler:
- "What's wrong..."
  Die laufende Operation wurde angehalten.
  'Stop' bricht ab.
  'Go On' fhrt fort.

- " Put Disk in Drive x
   ---------------------
       W A R N I N G
   All Data will be lost"
  Diskette in Laufwerk x einlegen. Es werden alle vorhandenen Daten dieser
  Diskette gelscht.

- "Insert Disk in Drive x"
  Diskette in Laufwerk x einlegen.

- "Put Disks in Drive:
   -------------------
    Source          x
    Destination     y"
  Quell-Diskette in Laufwerk x und Ziel-Diskette in Laufwerk y einlegen.

- "Insert Source Disk in Drive x"
  Quell-Diskette in Laufwerk x einlegen.

- "Insert Destination Disk zz in Drive x"
  Ziel-Diskette in Laufwerk x einlegen. zz zeigt nur bei 'Multiple Copy' an,
  um die wievielte Ziel-Diskette es sich handelt.


Das Riesen-Baby MSDOS
---------------------
Wenn Sie bei der Formatierung folgende Regeln beachten, sind die mit HCOPY
formatierten Disketten 100% MSDOS-Kompatibel!

1.) MSDOS-Formate:  Sectors | Tracks | Sides | Drive-Type | Computer
                   ---------+--------+-------+------------+----------
                     8/9    |   40   |  1/2  |  3"/5"   |    XT
                      9     |   80   |  1/2  |  3"/5"   |    AT/PS2
                     15     |   80   |   2   |    5"     |    AT
                     18     |   80   |   2   |    3"     |    PS2

2.) Clustergre:
Manche DOS-Rechner kommen mit einer Clustergre von 2 Sektoren nicht zurecht.
Stellen Sie einfach die Clustergre auf '1' und schon ist das Problem gelst.

3.) Die 'VIRUS PROTECT' oder 'Extern Booter'-Option darf nicht aktiv sein,
da ja sonst versucht werden wrde, ein Atari-Bootprogramm auf einem DOS-Rechner
zu starten. Und das geht beim besten Willen nicht!


HCOPY kann fliegen:
-------------------
Dank Olaf Meisiek's MyDials kann man HCOPY's Dialoge frei auf dem Bildschirm
bewegen, wenn man auf dem Eselsohr (Links oben) mit gedrckter Maustaste die
Maus bewegt. Hlt man zustzlich noch die ALTERNATE- oder die CONTROL-Taste
gedrckt, wird der Dialog durchsichtig. Beim Hauptdialog ist das Eselsohr
durch den schwarzen Balken (oben) ersetzt worden, dieser erfllt aber die
selbe Funktion.


Tastaturbediehnbarkeit:
-----------------------
HCOPY kann vollstndig ber die Tastatur bediehnt werden.
Einige Short-Cuts sind zu erkennen an einem unterstrichenen Buchstaben.
Also einfach ALTERNATE-Buchstabe und die Funktion wird ausgefhrt, als ob sie
mit der Maus angewhlt worden wre.
Darberhinaus gibt es noch andere Short-Cuts, welche alle in der 'HELP'-Seite
erklrt sind.
Durch Druck auf die [HELP]-Taste lt sich diese Dialogbox erreichen.


nderungen:
-----------
zu v1.1
- Bei einem Disketten-Fehler ertnt ein PLING!
- Aktuelle Position wird jetzt auch bei 'Used Only' ohne 'Format Dest.' gezeigt
- Bei 'Multiple Copy' werden die gelesenen Blocks nun neu gezeichnet
- Die laufende Operation kann jetzt mit ESC, HELP oder UNDO abgebrochen werden
- Step-Fehler bei WRITING ohne 'Format Dest.' behoben (Ratterndes Laufwerk)
- Bootsektor fr MSDOS verbessert
- Fehler bei ZERO DISK ohne 'Read Disk-Type' behoben
- Bessere Berechnung der bentigten Sektoren fr FAT (AT-Format)
- Medienwechsel-Routine entschrft
- Fehler bei 'Fast Format'ierten Disketten behoben
- Verify-Option eingebaut

zu v1.2
- Fehler bei Default-Button auf 'Empty' setzen behoben
- Jetzt 1 Default-Button mehr
- Density-Check beim Kopieren jetzt nicht mehr Source, sondern Destination
- Bei Schreib/Lesefehler wird 1mal wiederholt

zu v1.21
- Unbentigte Optionen werden grau dargestellt
- Fehler beim Kopieren mit Formatieren behoben
- Kopierbremse entfernt (jetzt 30% schneller)

zu v1.22
- Kopieren mit 'Used Only' verbessert
- HCopy bleibt jetzt bei Disk-Info nicht mehr hngen

zu v1.23
- Defekte Sektoren werden erkannt und in der FAT als solche gekennzeichnet
- DISK-INFO erweitert

zu v1.25
- Lese- und Schreibversuche bei Fehlern jetzt von 0 bis 99 einstellbar.
- 'Command Load' JA/NEIN korrigiert
- Die automatische Disktyp-Erkennung arbeitet perfekt, so das die Einstell-
  mglichkeiten per Maus und per HCOPY.INF entfallen sind.
  Dafr wird nun der erforderliche Diskettentyp angezeigt.
- Option 'Set' bei Disk-Info eingebaut

zu v1.3
- 'COPY' mit 'Used Only' spart mehr Speicher
- 'COPY NEW' eingebaut (das ist doch eine 1.3 wert, oder?!)

zu v1.4
- Die aktuellen Einstellungen knnen abgespeichert werden
- Der Bootsektor liegt jetzt immer als physikalisch 1. Sektor auf
  Track 0, Seite 0 (Manche Virenschtzer brauchen das)
- Fehler in DISK-INFO bei hher eingestellter Sektorzahl behoben
- Einstellen und Editieren der Defaults ins Programm aufgenommen
- HCOPY.INF wird nicht mehr bentigt

zu v1.42
- Markierung defekter Cluster verbessert
- Disk-Info: Interleave-Faktor wird jetzt korrekt berechnet
- Disk-Info: Additional Headers werden als solche erkannt

zu v1.43
- Nach SCAN DISK kann man nun evtl. gefundene Fehler markieren
- [HELP] und [UNDO] eingebaut

zu v1.5
- Speicherung der Einstellungen verbessert
- Neue Optionen:
   Automatische Steprate
   Add.Headers On/Off
   Settling Delay
- Defekte Cluster werden bei 'Zero Disk' beachtet
- Diskettenlabel nach dem Formatieren
- Vollstndige Tastaturbediehnbarkeit

zu v1.51
- Bug beim Speichern enfernt
- Redraw, wenn Hintergrund nicht gerettet werden konnte
- GETMAXTR.TOS

zu v1.56
- Alle Optionen im Hauptdialog einstellbar
- HD-Switch fr MegaSTEs und TTs eingebaut
- HCOPYCOL.RSC

zu 1.6
- Fehler beim Speichern der Optionen behoben
- RSC verbessert
- 'Read Management Sectors' verbessert - jetzt mit 'Retry'
- High-Density-Schaltungen ber Soundchip werden untersttzt
- Auflsung wird berprft
- Verify-Fehler behoben
- Diskettenwechsel bei Defekt auf Destination

zu 1.61:
- HCOPY.BOO ersetzt internen Virenschutz-Bootsektor

zu 1.62:
- Kritische Zeitschleife jetzt Cachefest (fr PAK/2)
- DDCOOKIE.PRG und HDCOOKIE.PRG
- Bei nachgeladenem Bootsektor wird der 'Virus Protect'-Eintrag ersetzt durch
  'Extern Booter'.

zu 1.63:
- Trackanzahl ber [+/-]-Zehnertastatur einstellbar
- Fehler bei Write-Protect -> Cancel beseitigt
- Einstellung der F-Tastenbelegung verbessert

zu 1.7:
- Bei Defekten in den Verwaltungssektoren kann nun trotzdem weitergearbeitet
  werde. Auf eigene Gefahr natrlich!
- Aus dem MSDOS-kompatible Bootsektor wurde der HCOPY-Info-Text entfernt, da
  manche Virenwarner diesen ASCII-Text als mglichen Virus interpretierten.
- Bei 'Multiple Copy' wird die Anzahl der geschriebenen Disketten angezeigt.
- Mausfehler bei 'Zero Disk' beseitigt.
- Interleave- und Spiralfaktor werden bei Cache-680x0ern richtig berechnet.


Bekannte Fehler:
----------------
- Ein Fehler des TOS 1.04 kann zum Absturz fhren, wenn mit HCOPY als Accessory
  gebootet wird. Es mu nhmlich im physikalisch ersten Accessory das FastLoad-
  Bit gelscht sein (brigens auch im ersten AUTO-Ordner Progi), damit TOS 1.04
  einen vollstndig gelschten Speicher vorfindet.
  Bei HCOPY ist das Fastload-Bit gesetzt!
  Sollte der Rechner beim Booten abstrzen, dann mssen Sie entweder die
  physikalische Reihenfolge der Accessories oder das Fastload-Bit ndern.
  Das Fastload-Bit ist Bit Nr.0 im Byte an der Addresse Pgmstart+25 ($19). Um
  den Fehler zu beheben mssen Sie an diese Addresse ein Byte mit dem Wert 0
  schreiben, was mit jedem Disk-Monitor zu bewerkstelligen ist.
- Der Spiralfaktor wird bei Disketten mit mehreren verschiedenen Spiralfaktoren
  (wie sie z.B. Hyperformat v3.29 erzeugt) nicht richtig erkannt.
- Ist ein Cluster belegt, wird er nicht als defekt markiert, da es sonst zu
  Leichenclustern kommen kann.


Quellen:
--------
"ATARI Profibuch ST-STE-TT",
Jankowski, Rabich, Reschke
10.Auflage 1991 SYBEX
ISBN: 3-88745-888-5

"Scheibenkleister II: Massenspeicher am ST"
Claus Brod, Anton Stepper
1991 MAXON
ISBN: 3-927065-00-5


Bezugsaddresse:
---------------
Robert Weiss
Dorfstr.5
W-8401 Gralfing

Tel. 09405/6185

Ktnr. 240 585 349
BLZ   750 500 00
Spk. Regensburg
(Bei berweisungen bitte immer mindestens den Vor- und Nachnamen mit angeben)

EMAIL: Robert Weiss @ R

