Moin zusammen,
ich versuche gerade über selbstgebastelte Hardware einen Burst Sector Read über Fast Serial meiner 1570 anzuleiern und komme nicht wirklich weiter. Im 1541 Mode alles toll, aber natürlich leider ziemlich langsam. Ich habe zwar teils uralte Dokumentationen vorliegen, aber die Umsetzung der Informationen bringt mich auch nicht weiter. Ein C128 ist leider auch nicht vorhanden.
Faktisch reinitialisiere ich erst einmal die Floppy zurück auf den 1571 Mode und zwar direkt über eine Befehlskette. Klappt bis dahin (anstelle dessen erst einmal 8*[4/7 Mikrosekunden lange Impulse] auf SRQ rauzuschicken brachte bislang kein Erfolg. Warum, weiß ich nicht, laut Analyzer direkt auf dem Floppyboard kommen die Impulse an. In jedem Falle ist die Floppy nach Abarbeitung dieses Kommandos Akiv und dann Idle.
Danach mache ich ohne Fast-Request einen Befehls-und Datenkanal auf, schicke danach "U0"+[Command]+Track+Sektor+Anzahl Sektoren+nächster Sektor+Return, danach Unlisten, ziehe dann alle Leitungen nach oben. Diese Kommandostruktur scheint sich vom 1541 Sektor Transfer zu unterscheiden (bspw "U1: 2 0 18 0", alles in ASCII, bei der 1571 nur die ersten zwei Bytes Ascii, Rest "rohe" Bytes bis auf Return)
Floppy reagiert, Motor ist aktiv, Kopf bewegt sich aber nicht zum Zieltrack, blinkt anschließend, auf der SRQ-Leitung liegt kein Impuls an. Wie ich die Standard-Clock oder Datenleitung im Vorfeld setze spielt dabei keine Rolle.
Daher meine Fragen:
- Vertauscht sich ,wie im 1541-Mode die Standard-CLK-Leitung, die Rolle der SRQ-Leitung, d.h. wenn die Floppy senden will, taktet sie dann die SRQ-Leitung? Bislang gehe ich davon aus.
- muß für den schlussendlichen Fast Transfer Richtung Computer grundsätzlich vor -jedem- ATN die 8 Impulse über SRQ gesendet werden, auch wenn die nachfolgenden Kommandos im "Standardmode" gesendet werden?
- muß vor der Datenübertragung Richtung Computer bei ATN HIGH ebenfalls nochmals 8 mal gepulst werden?
- muß für einen Fast Transfer überhaupt ein separater Datenkanal geöffnet werden oder reicht der Kommandokanal (zwecks Umgehung des Floppybuffers) ?
- als Command im Befehlsstring "U0" wird für den Fast Serial Read eine GCR-Diskette "0" angegeben. Passt das?
- Für mich riecht das fast so, als würde idie Floppy das Kommando ansich fehlinterpretieren. Wenn ja, warum? Der Befehlsstring müsste laut Dokumentationen so passen.
Ich habe den gleichen Befehlsablauf spaßeshalber mal übers C64 Basic mit separaten Datenkanal versucht, was natürlich zwecks Datenübertragung nicht klappen würde. Nach Kommandoübermittlung ohne Daten per Get# zu ziehen, danach schließen von Kommando und Datenkanal geht die Floppy nach einem kurzen aufleiuchten der LED sofort ins Idle. Wird wohl auch so richtig sein; ich wäre aber davon ausgegangen, das die Floppy zumindest den Zieltrack anfährt. Macht sie aber auch hier nicht.
Liebe Grüsse & vielen Dank!