DISKAUX wurde mit volksFORTH 83 der FORTH-Gesellschaft e.V gescrieben. Das Programm ist PUBLIC DOMAIN und darf in unver„nderter Form weiter- gegeben werden. Fr Verbesserungsvorschl„ge und Ideen sind wir dankbar. Fr Sch„den, 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 FšR DISKAUX ------------- Version 1.00 - 26.03.89 DISKAUX ist ein Gem-Programm zum Experimentieren und Arbeiten mit Floppy-disk Laufwerken und Disketten. DISKAUX greift dierekt auf den Floppy-Disk-Contoller zu und wird nicht durch das Betriebssystem kontrolliert. So k”nnen auch fremde Formate , soweit sie der FDC verkraftet , bearbeitet werden. Eingelesene Daten werden in einem Puffer zwischengespeichert dessen Gr”že 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 Benutzeroberfl„che eingebunden und k”nnen hier auch ge„ndert werden. W„hrend 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 auch 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 ANWŽHLEN a b a / b oder anklicken von DRIVE A oder DRIVE B w„hlt das aktuelle Laufwerk an, auf das der n„chste Zugriff erfolgen soll. DISKDATEN Parameter einstellen Die Diskparameter gertennt fr Drive A und B in den Boxen unten links und rechts angezeigt und eingestellt. Zum Ab„ndern 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 abh„ngig von der Sektorgr”že, bei 512 passen nicht mehr als 11 auf eine Spur. 1.SEKTORNR alt 1 die niederwertigste Sektornummer auf der Spur. SEKTORGR™žE 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 Sektorgr”že ein. VIEW ADRESSMARKS v k”nnen die eingelesenen Vorspannfelder angesehen werden. Track # , Seite # , Sektor # , Sektorgr”že 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 runterz„hlen mit [+] [-] oder Eingabe durch Anklicken der Ziffern. TRACK t zeigt die aktuelle Spur an. Eine Žnderung des Wertes positioniert den Kopf beim n„chsten Kommando der oberen beiden READ WRITE COPY Funktionsbl”cke auf die gew„hlte Spur. SEKTOR s wird nur von dem in gleicher H”he 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 - Bl”cke ) 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 w„hlt Seite 0 oder 1 fr die Funktion oder Startseite fr Operationen ber mehrere Tracks. READ WRITE COPY Funktionsbl”cke 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) , Sektorgr”že (Diskdaten) ggf. STEP (bei 40 Track Disks). READ liest die in Sektorgr”že vorgegebene Anzahl Bytes in den Puffer und WRITE schreibt 'Sektorgr”že' 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 bedeutungs- los, dafr wird die Sektordistanz ( von bis ) einbezogen. READ WRITE COPY unten alt r alt w alt c erm”glicht Operationen der oben eingestellten Sektordistanz ber beide Seiten und mehrere Spuren. Eingestellt sein mssen: Die gewnschte Trackdistanz ( von bis ) funktioniert auch rckw„rts oder zwei gleiche Werte fr eine Spur. Die Sektordistanz, die Sektorgr”že, 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 funtioniert bei zuwenig Speicher automatisch aufgeteilt. Ist die Datenmenge ( Tracks * Seiten * Sektoren/Track * Sektorgr”že ) 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 w„hrend 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 f„hrt das aktuelle Drive auf Spur 0, setzt TRACK auf 0 und SEKTOR auf 1. Sektornr. EDITOR E Mit dem Editor k”nnen die in den Puffer eingelesenen Daten durch- gebl„ttert und ver„ndert werden. Der Arbeitsbereich ist auf die Gr”že der eingelesenen Datenmenge eingestellt, wird jedoch nicht gr”žer als 32k. Die Ausdruck-Startadresse wird mit ctrl. A und die Endadresse mit ctrl. E eingegeben, ctrl. P druckt den gew„hlten Speicherbereich aus. Die Cursorposition wird oben links (in dec/hex AUSGABE vorgew„hlt) angezeigt. Bewegt wird er durch die Pfeitasten. 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 anschliežend ein nicht ausfhrbarer Bootsektor geschrieben. Bei zu 'engem' Format werden die Gaps soweit wie m”glich zusammen- geqetscht. Ben”tigte Werte sind: Trackdistanz, SEITE, Seiten, Tracks/seite, Sektoren/Track, 1.Sektornr, Sektorgr”že und Step. SKEW 1 formatiert ohne Sektorversatz (die Sektoren der Spur in auf- steigender Reihenfolge). SKEW 2 erstellt den kleinsten, fr die gew„hlte Anzahl von Sektoren m”glichen Versatz. SKEW 3 und 4 dann den n„chstm”glichen. 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 nehmem. 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 l„žt 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 l„nger. 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.