Hallo Besucher, der Thread wurde 3,3k mal aufgerufen und enthält 13 Antworten

letzter Beitrag von Panther am

Commodore 3,5" Floppy Disk Imaging Benchmarks (d81, d2m, adf)

  • Hallo allerseits,


    es ist Benchmark-Zeit, holt die Stoppuhren raus! 8o


    Ich würde gern eine Übersicht anlegen und dafür Zeiten sammeln, um herauszufinden, wie lange das Lesen und Schreiben von kompletten Disk-Images unter Zuhilfenahme verschiedener Technologien dauert. Ich würde es schön finden, wenn es in einem Thread gesammelt würde, dann kann man vielleicht eine Tabelle/Schaubild draus bauen. Falls es das schon fertig gibt, würde ich mich über Links freuen. Danke!


    Es geht mir nur um Lesen und Schreiben unter Idealbedingungen. Das heißt, die Diskette ist nicht beschädigt und ggf. frisch formatiert oder beschrieben. Natürlich verlängert das mehrfache Lesen von (fehlerhaften) Sektoren die Benchmark-Zeiten. Das möchte ich hier ausklammern. Mehrfaches Rotieren über Tracks gehört hin und wieder dazu beim realen Disketten-Laufwerk, verändert aber die Gesamtzeit normal nur unwesentlich, wenn die Diskette nicht mit Cola übergossen wurde.


    Ich teile ein in zwei Kategorien: Double Density und High Density-Disketten.


    Dann möchte ich in mindestens vier verschiedene Host-Plattformen gruppieren:

    1. Retro-PC: Dies ist ein PC mit Mainboard-Baujahr wahrscheinlich vor 2005. Das Mainboard hat eine Buchse zum direkten Anschluss von 3,5" PC-Diskettenlaufwerken (Falls wir die Catweasel PCI-Karte mit reinnehmen in diese Übersicht, weiß ich noch nicht, ob ich sie hier reingruppieren würde. Da brauche ich Input von Euch, wenn Ihr Catweasel nutzt.)
    2. Standard-PC mit USB2.0-Schnittstelle oder neuer (hier geht es um USB-Lösungen), aber eben wegen der alten DD-Disketten nicht um fertige externe USB-Diskettenlaufwerke mit Plastikgehäuse, die meist ja keine DD-Disketten lesen können (Parallelport-Lösungen mit OpenCBM bekommen bei Bedarf eine eigene Kategorie). Hier wäre als Diskettenlaufwerk entweder ein über USB angebundenes Microcontroller-Hardware-Dongle (Liste folgt unten) denkbar, an dem ein 3,5" PC-Laufwerk hängt, oder aber eine über USB/OpenCBM angebundene 1581 oder CMD FD2000.
    3. Retro-Homecomputer: C64/C128/Amiga (ja, ich will Amiga als Vergleich mit reinnehmen - wenn es zu unübersichtlich wird, dann trenne ich das) mit Original-Retro-Diskettenlaufwerken (1581/FD2000), angebunden über den IEC-Bus. Hier wird es dann sehr sehr unübersichtlich, weil man die Jiffy-ROMs etc. und die Kopierprogramme berücksichtigen muss. Hier wären auch SD2IEC, 1541U, Pi1541 und andere Tools zu nennen, insofern sie die Benchmark-Zeiten beeinflussen. Und auf dem Amiga kann man mit Copy1581 oder C1581-Filesystem auch d81 lesen/schreiben.
    4. Future-Retro: Mega65 mit eingebautem 3,5" Floppy-Laufwerk

    Disketten möchte ich in zwei Gruppen einteilen:

    1. 3,5" Double Density Disketten - 1581-Format (d81 800KB) oder Amiga-Format (adf 880KB)
    2. 3,5" High Density Disketten / CMD FD2000-Format (d2m 1,6 MB)

    Dann geht es in der Host-Kategorie 1 (Retro-PC) weiter mit dem Operating System und den verfügbaren Imaging Tools: DOS, Windows, Linux (Mac? Hackintosh? Keinen Schimmer davon), fdutils+dd (Linux), SAMDISK + fdrawcmd.sys, OmniFlop, 1581copy.exe


    In Host-Kategorie 2 (Standard-PC) werden dann die USB-Hardware-Dongles interessant (Kryoflux, Fluxengine, ADFCopy, Arduino Amiga Floppy Disk Reader/Writer, Zoomfloppy/XUM1541+OpenCBM, Super Card Pro etc.)


    Das ganze hört sich nach einer riesigen, unübersichtlichen Tabelle an, die keiner lesen will. :evil: Seid Ihr dabei? :thumbsup:


    Hier ein paar von mir heute gemessene Zeiten:


    d81

    • Retro-PC mit HD-PC-Laufwerk (von 2002) > Linux (Debian Buster) > fdutils/dd > Double Density > d81: Lesen (Disk>d81) und Schreiben (d81>Disk) jeweils 44 Sekunden (Formatieren mit Validieren 1m47s)
    • Standard-PC > Linux (oder Windows) > Fluxengine via USB mit PC-Laufwerk > Double Density > d81: Lesen (Disk>d81): 96 Sekunden (Schreiben mit Fluxengine ist noch nicht implementiert für dieses Format)
    • Standard-PC > Windows 10 oder Linux > Eigene Python-Software mit Arduino Amiga Floppy Disk Reader/Writer via USB mit PC-Laufwerk > Double Density > d81: Lesen (Disk>d81): 90-110 Sekunden (Schreiben: nicht implementiert)

    d2m

    • Standard-PC > Linux (oder Windows) > Fluxengine via USB mit PC-Laufwerk > High Density > d2m: Lesen (Disk>d2m): 67 Sekunden (Schreiben mit Fluxengine ist noch nicht implementiert für dieses Format)

    adf

    • Standard-PC > Windows 10 > ArduinoFloppyReaderWin.exe + Arduino Amiga Floppy Disk Reader/Writer via USB mit PC-Laufwerk > Double Density > adf: Lesen (Disk>adf): 60 Sekunden , Schreiben inkl. vorheriges Löschen (adf>Disk): 2m24s

    Viele Grüße

    emulaThor

  • d81:Standard-PC > Windows 10 oder Linux > Python-Software pyAccess1581 mit Arduino Amiga Floppy Disk Reader/Writer via USB mit PC-Laufwerk > Double Density > Lesen (Disk>d81): Jetzt nur noch 63 Sekunden (Schreiben: nicht implementiert)


    Kann jemand von Euch sagen, wie lange es dauert, via OpenCBM mit einem realen 1581-Floppy-Laufwerk ein d81-Image zu erstellen? Ist bei der 1581 auch eine Parallel-Verkabelung an ein xum-Device möglich/sinnvoll?

  • Kann jemand von Euch sagen, wie lange es dauert, via OpenCBM mit einem realen 1581-Floppy-Laufwerk ein d81-Image zu erstellen? Ist bei der 1581 auch eine Parallel-Verkabelung an ein xum-Device möglich/sinnvoll?

    d81: VC1581 mit Standard-ROM (318045-01 $8E8B DOS) > Normales serielles IEC-Kabel > XUM1541 > OpenCBM 0.4.99.99 (auf Windows 10) > imgcopy > d81: Auslesen der kompletten DD-Disk mit 80 Tracks dauert ca. 29 Minuten.

  • d81: VC1581 mit Standard-ROM (318045-01 $8E8B DOS) > Normales serielles IEC-Kabel > XUM1541 > OpenCBM 0.4.99.99 (auf Windows 10) > imgcopy > d81: Auslesen der kompletten DD-Disk mit 80 Tracks dauert ca. 29 Minuten.

    Tja, das ist nicht falsch, was ich da gemessen habe, aber heute habe ich es nochmal probiert und bei imgcopy mit dem Parameter -t (transfer mode) gespielt. Setze ich den auf den Wert serial2 (oder abgekürzt s2), dann dauert das Auslesen einer DD-Disk nur noch 3 Minuten und 43 Sekunden (diesmal gemessen unter Linux). Es gibt für den Parameter -t noch andere Werte, damit versuche ich auch noch zu testen.


    Nebenbei habe ich gelernt, dass wohl Diddl hier Aktien hat im Tool imgcopy. Diddl, vielleicht hast Du hier noch Tipps zum bestmöglichen Wert? "burst" oder "s3" hört sich vielversprechend an, klappt aber bei mir nicht - es kommen nur Fehlermeldungen.


    EDIT: Die andere Richtung: Das Schreiben eines d81-Images auf eine reale DD-Diskette dauert via imgcopy mit -t s2 dann 4 Minuten und knapp 30 Sekunden.

  • Ja s1 ist der langsamste Turbo Mode.

    S2 ist wesentlich schneller aber inkompatible.


    S3 verwendet den Bürste Mode, der mit der 1571 eingeführt wurde.

    Sehr schnell wegen dem Hardware Schieberegister.

    Aber leider auch sehr empfindlich ...


    Es geht grundsätzlich nicht mit jeder Floppy.

    Das Kabel muss sehr gut sein, auch gut geschirmt.

    Das Kabel muss den SRQ Pin angeschlossen habe.

    Das Kabel sollte möglichst kurz sein.


    Bei mir funktioniert S3 tadellos.

    Sowohl mit der 1571 als auch 1581.

    Aber nur mit kurzem IEC Kabel.

  • Hmm, bin nicht sicher ob ich es richtig verstehe, aber wenn du 880kB Amiga Disks imagen möchtest (z.b. nach ADF, DMS, oder was auch immer), dann geht das mit einem PC (egal welchen Alters) nicht ohne Zusatzhardware (Floppy Controller), wie z.b. Kryoflux, Catweasel, ADF-Copy, etc.

    Es gab zwar auch mal Lösungen mit 2 Laufwerken oder welche wo man eine Leitung des Floppykabels verlegte usw. aber meines Wissens war davon nichts wirklich zuverlässig?


    Betrifft aber nur Amiga Disks, 1581 Disks kannst du am PC imagen.

  • dann geht das mit einem PC (egal welchen Alters) nicht ohne Zusatzhardware (Floppy Controller), wie z.b. Kryoflux, Catweasel, ADF-Copy, etc.

    Hallo Overdock, es geht mir um das Durchkonjugieren aller möglichen Kombinationen und dabei das Messen der zu reservierenden Wartezeit (mit dem Ziel, aus den gemessenen Zeiten am Ende evtl. Schlüsse ziehen zu können), siehe Eingangsposting. Das was Du schreibst, ist mir bewusst.


    Das Kabel muss sehr gut sein, auch gut geschirmt.

    Das Kabel muss den SRQ Pin angeschlossen habe.

    Das Kabel sollte möglichst kurz sein.

    Danke, das ist ein sehr guter Hinweis, ich habe ein selbst gelötetes Kabel an meiner selbst gebastelten Zoomfloppy, evtl. kann ich hier noch variieren bzw. ich muss checken, ob SRQ korrekt angelötet ist.

  • Ok, verstehe.

    Würde den Amiga dann aber mal weglassen, denn da hast du ja wiederum mehrere zusätzliche Hardware Möglichkeiten, und dann auch noch mehrere Tools (Transdisk, ADF2Disk, usw, usw.), oder auch noch die Möglichkeit über Crossdos, usw.?

    Sprengt dann alles irgendwo den Rahmen und wird dann glaube ich sehr unübersichtlich, oder?

  • Sprengt dann alles irgendwo den Rahmen und wird dann glaube ich sehr unübersichtlich, oder?

    Es hat das Potential, unübersichtlich zu werden, aber da das ganze bisher eh mehr ein Monolog meinerseits war, besteht aus meiner Sicht momentan keine Gefahr, dass zuviele Daten zusammenkommen. Zum Zeitpunkt, als ich den Thread gestartet habe, hatte ich noch keine 1581 im Besitz, die habe ich erst seit Dezember.


    Schon vorher hatte ich aber den "Arduino Amiga Floppy Disk Reader/Writer" von Rob Smith für das Lesen von 1581-Disks erweitert, das erklärt hoffentlich ein bisschen, warum ich nicht davor zurückschrecke, hier Amiga und 1581 zusammen zu diskutieren. (Siehe: Tester gesucht für Arduino-basiertes d81-Floppy-Imaging-Utility (Abbilder von realen 1581-Disketten erstellen))

  • Mir fällt da auch noch die Möglichkeit via Easyflash 3 und USB zum PC ein, da sind so viel ich weiß mit einer 1581 auch .d81 Images möglich?

    Für 1541/D64 Images ist das ja eine recht flott Methode (so irgendwas um die 50sec. für den Transfer?)


    Da zeigt sich allerdings das Problem deiner Kategorien:

    Ist das dann Kategorie 'Standard PC', oder 'Retrocomputer' ?

    Man benötigt für diese Methode ja beides ;)

  • Mir fällt da auch noch die Möglichkeit via Easyflash 3 und USB zum PC ein, da sind so viel ich weiß mit einer 1581 auch .d81 Images möglich?

    Danke für den Hinweis, die genialen Features von EasyFlash 3 habe ich gerade erst angefangen zu kapieren, seit ich mich mit der EasyFlash-CRT-Emulation in Sidekick64 beschäftige. Das wird dann wohl

    Das Software-Tool wird dann wohl "EasyFlash 3 USB Utilities" sein (https://csdb.dk/release/?id=150097).

    Da zeigt sich allerdings das Problem deiner Kategorien:

    Ist das dann Kategorie 'Standard PC', oder 'Retrocomputer' ?

    Hier gibt es eigentlich kein Problem aus meiner Sicht, weil der C64 (eigentlich Kategorie Retro-Homecomputer) hier zum Slave wird für die EasyFlash-Software auf dem PC. Da der Transfer des Disketteninhalts über USB zum PC geht, würde ich das in meine Kategorie "Standard PC" reinrechnen, weil das Kommando zum Image-Lesen oder -Schreiben vom PC aus per Kommandozeile gegeben wird, siehe auch Screenshots in diesem Tutorial. Aber Du hast Recht, es ist ein interessanter Grenzfall. Die Hardware-Kette könnte kaum noch länger sein: 1581 - IEC-Kabel - C64 - Easyflash3 - USB - PC.

  • Ich grabe diesen Faden mal aus, weil ich mich jetzt auch für die verschiedenen Möglichkeiten interessiere, ein D81-Image auf eine echte Diskette zu schreiben.


    Mein Test mit EasyFlash3 und "ef3usb write image.d81" hat ergeben, dass es schlappe 9 Minuten 50 Sekunden dauert, bis das Image geschrieben(und verifiziert?) ist. Das ist leider kein Vergleich zum flotten Schreiben eines D64-Images. :(