Disketten mit einem Logikanalyzer archivieren - Aus de.alt.folklore.computer

  • Betreff: [NMZ] Disketten mit einem Logikanalyzer archivieren

    Datum: Sat, 5 Jan 2019 17:12:02 +0100

    Von: Christian Zietz <newsgroup.1001@chz.xyz>

    Newsgruppen: de.alt.folklore.computer


    Hallo,


    vielleicht auch hier interessant: Ich habe bei mir schon vorhandene

    Hardware (USB-Logikanalyzer und USB-Seriell-Kabel) zusammengefügt, um

    damit Disketten auf "unterster Ebene", d.h. auf Ebene der wechselnden

    Magnetfelder zu archivieren:

    <https://www.chzsoft.de/site/ha…sk-with-a-logic-analyzer/>


    Grüße

    Christian

    --

    Christian Zietz - CHZ-Soft - czietz (at) gmx.net

    WWW: http://www.chzsoft.de/

    PGP/GnuPG-Key-ID: 0x52CB97F66DA025CA / 0x6DA025CA

  • fritzeflink

    Changed the title of the thread from “Disketten mit einem Logikanalyzer archivieren Aus de.alt.folklore.computer” to “Disketten mit einem Logikanalyzer archivieren - Aus de.alt.folklore.computer”.
  • Die "Logikanalyzer-Methode" scheint aber nicht mit GCR (Apple, Commodore) klarzukommen ... zumindest was ich auf der verlinkten Seite gelesen habe, oder?


    fritzeflink ... ist das richtig?


    Das gibts auch fertig - nennt sich Kryoflux!

    Kryoflux scheint da aber viel mehr zu können ... oder? Beides mag zwar ähnlich sein, ist meiner Meinung nach aber nicht 1:1 vergleichbar.

  • Was für ein Gerät kauft man denn da so?

    Also ich habe unter anderem den hier im Einsatz:

    https://www.ebay.de/itm/USB-24…r-fur-ARM-DE/223270208463


    Das dürfte so das unterste Preis- und Qualitätsniveau sein. Funktioniert aber einwandfrei und reicht vollkommen aus.

    Und wenn der mangels Schutzbeschaltung stirbt, kauft man einfach einen neuen. 8o


    Direkt aus China gibt's die noch mal 2 Euro günstiger. :mrgreen:

  • Die "Logikanalyzer-Methode" scheint aber nicht mit GCR (Apple, Commodore) klarzukommen ...

    Die Methode dürfte mit allen Formaten klar kommen, da ja direkt das ReadData-Signal aufgezeichnet wird. Die Software zum Auswerten muss angepasst werden, klar, aber die Methode geht mit allen.


    Ich will das mit meinen 8-Zoll Disketten für den Dietz 621 ausprobieren - da werden sicher andere Werte rauskommen, aber das Prinzip sollte trotzdem funktionieren.


    Gruß, Jochen

  • Das ist ja mal wieder ein spannendes Projekt (und wieder eins mehr, mit dem ich mich am liebsten sofort beschäftigen würde).


    Ich habe mich nie mit der Ansteuerung von Diskettenlaufwerken befasst. Also alles was da rauskommt ist digital und wenn ich da einen Arduino (oder vielleicht besser einen Teensy) dranhänge, dann kann ich das ansteuern und lesen? Ich dachte immer, das wäre komplizierter.


    Ich denke da jetzt nicht weiter darüber nach, sonst fange ich gleich an, das aufzubauen. Habe noch zuviele andere Projekte in der Pipeline. ;)

  • hat jemand noch einen Stapel rumliegen?

    Ich habe noch welche, die ich am PC nicht zum Laufen bringe...keine Ahnung, was denen genau fehlt. Mit dem LA-Ansatz vielleicht noch zu nutzen und man kann u, U, sogar den Fehler finden. Die Diskette dreht sich und der Kopf bewegt sich auch...also kein völliger Schrott, deswegen habe ich sie noch.


    Gruß, Jochen

  • So, ich konnte es dann doch nicht lassen und habe Arduino und Logic Analyzer ausgepackt und an ein Diskettenlauf angeschlossen.

    Die Ansteuerung des Laufwerks ist ja relativ einfach. Das war nach 30 Minuten erledigt (Selektieren, Motor einschalten, Kopf positionieren).



    Unten sieht man die 40 Sync-Signale vor einem Header bzw. Datenblock einer GCR-kodierten Diskette (1541). Der Arduino ist aber zu langsam, um die Daten mitzulesen. Da muss jetzt ein Teensy ran.


  • Kurzes Update: Ich habe jetzt den Arduino gegen ein Teensy 3.2 getauscht und kann das Read-Signal jetzt prima mitlesen.

    Der Teensy ist schnell genau, um die Signal beim Lesen zu analysieren.


    Das Lesen klappt aber noch nicht 100%ig. Wenn ich von einer 1541-Diskette die Spur 18 lese, finde ich jedesmal nur 35-36 Sync-Pakete. Es sollten aber genau 38 sein (für jeden Sektor jeweils Header und Datenblock). Da muss ich wohl noch an der Taktsynchronisation arbeiten.


    Ich baue jetzt erst mal die GCR-Dekodierung ein, damit ich sehe, was ich da überhaupt lese.


    Das ist mein erstes Teensy-Projekt und mit dem Ding muss ich auch erst mal klarkommen. Die Timer- und Interrupt-Register sind anderes und auch sonst verhält der sich teilweise etwas anders als ein Arduino mit ATmega.

  • Daß Du jetzt mit einem Teensy werkelst, hat mich daran erinnert: ADF-Copy

    Habe ich mir vor längerem mal aufgebaut, allerdings noch nicht viel mit gemacht.


    Interessant ist bei sowas ja, ob es auch noch bei Disketten mit schwachem Signal funktioniert.

    Ich hatte mal für jemanden ein paar Amiga-Disketten eingelesen, der seine alten Daten noch retten wollte, aber keinen Amiga mehr hatte,

    Zuerst habe ich's direkt am Amiga probiert, da waren die Disketten teilweise nicht mehr lesbar.

    Dann habe ich das mit dem Kryoflux gemacht, damit liessen sich die Disketten alle einlesen.

    Das ADF-Copy hatte ich da noch nicht.

  • Ja, das ist im Prinzip die Hardware-Lösung, die mir vorschwebt. Nur dass ich mehr an 5 1/4 Zoll Formaten interessiert bin (GCR, MFM und FM).

    Das ADF-Copy kannte ich vorher nicht, aber die Lösung mit dem Teensy ist ja naheliegen - zumindest wenn man wie ich vom Arduino her kommt.


    Wenn ich CBM und PC-Disketten lesen kann (das sind die Formate, die ich selber erzeugen und testen kann), kann man ja mal schauen, wie sich das weiterentwickelt und ob allgemeines Interesse an weiteren Formaten besteht.


    Gerade bei schwer lesbaren Disketten interessiert mich die Analyse des Lesesignals.

  • Wo ich mich gerade mit Diskettenformaten beschäftige: Welche Disketten Image-Formate zum Archivieren gibt es eigentlich.

    Bei PET und CBM wird ja hauptsächlich D64 und G64 verwendet.

    Bei Amiga habe ich was von ADF gelesen.

    Kryoflux hat vermutlich seine eigenen Formate.

    Meine DOS-Disketten habe ich seinerzeit mal mit Teledisk archiviert. Keine Ahnung ob Teledisk noch unter Windows 7 aufwärts funktioniert. :nixwiss:


    Was gibt es sonst noch an gängigen Image-Formaten oder Programmen, die möglichst auf aktuellen Windows-Versionen funktionieren?

    In welchem Image-Format werden denn z.B. ältere CP/M-Diskettenformate archiviert.

  • Ich hatte in den letzten Tagen nicht viel Zeit, aber ein kleines Stückchen bin ich weitergekommen.

    Ich habe jetzt anhand der gefunden Sync-Pakete die Sektor-Header ausgelesen. Das klappt ganz gut und ich bekomme die Sektornummer.

    Jetzt muss ich erst mal eine SD-Karte an den Teensy anschließen, damit ich die Daten als G64- und D64-Image wegschreiben kann.

  • Meine DOS-Disketten habe ich seinerzeit mal mit Teledisk archiviert. Keine Ahnung ob Teledisk noch unter Windows 7 aufwärts funktioniert. :nixwiss:


    Was gibt es sonst noch an gängigen Image-Formaten oder Programmen, die möglichst auf aktuellen Windows-Versionen funktionieren?

    In welchem Image-Format werden denn z.B. ältere CP/M-Diskettenformate archiviert.

    Teledisk ist sinnvoll mit CPU <= 486 zu nutzen.


    Aktuell ist IMD das universelle Imageprogramm für nicht GCR Disketten und DOS auf allen Maschinen mit nutzbarem Diskettenkontroller.

    Selber nutze ich parallel dazu DMK mit dem catweasel Kontroller.

  • Ok, ich schaue mal, ob das IMD-Format irgendwo beschrieben ist. Ich brauche irgend ein Standardformat, in dem ich MFM-Disketten speichern kann. Wenn ich sie dann mal lesen kann. ;)


    Catweasel - interessant. Das Teil kannte ich auch noch nicht.


    EDIT: Habe die IMD-Beschreibung gefunden.

    https://gitlab.com/NF6X_Retroc…/docs/imd_file_format.txt

  • Ein 100 TPI Laufwerk halte ich für das kleinere Problem, das kann man sich aus der entsprechenden CBM Floppy ausleihen.

    Was ich für schwieriger halte, ist zum einen der Anschluß so eine Laufwerks, da die sozusagen 'nackig' sind, und zum anderen die deutlich höhere Bitrate. Da ist dann die Frage, ob der verwendete Prozessor noch genug Reserve mitbringt.

  • Kenne ich natürlich.

    Das ist von den aktuell verfügbaren Lösungen eine der schlechtesten, wenn es um Disketten mit schwachem Signal geht.

    Da sind wir inzwischen dank x1541 und for(;;) deutlich weiter.

    Leider sind wir aber nach wie vor auf die Original CBM Flopys angewiesen.

    Das ganze ist damit extrem langsam und bei schwachem Signal ziemlich Fehleranfällig.

  • Die Bitrate bekommt man gebändigt. Es gibt ja Arduino-Lösungen für DD-Laufwerke, also wird man mit dem Teensy auch HD-Laufwerke lesen können.

    Aktuell ist in meinen Leseroutinen noch viel Luft.

    Bei den Laufwerken müsste man die Schrittmotoren direkt ansteuern. Und dann braucht man die Lese- und Schreiblogik. Man müsste die komplette Analogplatine der Commodore-Floppy nachbauen.

    Ich würde dann eher ein Standard-Laufwerk modifizieren und den Schrittmotor direkt ansteuern. Das ist dann aber laufwerkspezifisch.


    Aber besteht denn ein Mangel an lauffähigen 8050/8250 Laufwerken? Zumindest die 8050 gibt es bei ebay immer mal wieder ab 80-100 Euro.

  • Das ist von den aktuell verfügbaren Lösungen eine der schlechtesten, wenn es Disketten mit schwachem Signal geht.

    Achso, dir geht es um eine forensische Lösung, um schlecht lesbare Disketten zu retten. Dafür könnte man natürlich was bauen (behaupte ich mal, ohne das weiter geprüft zu haben :tüdeldü:)


    Da sind wir inzwischen dank x1541 und for(;;) deutlich weiter.

    Welche Lösung gibt es da?