Hello, Guest the thread was called2k times and contains 70 replays

last post from Pusti64 at the

WIP: cbmSCSIcopy64 - Neues Kopierprogramm für CMD-HD + SCSI-Geräte

  • Bevor hier aller Kritiker schreien "Das gibt es doch schon!" - Ja... ihr habt recht ;)

    Und dazu kommt: Das ganze Projekt brauch ich selbst nicht wirklich, ist ein reines Spaß-Projekt :)


    Das einzige mir bekannte Programm ist eine GEOS-Anwendung und nur für den 128er mit bestimmter Hardware... ich glaube ich wiederhole mich: Das geht gar nicht :rolleyes: Evtl gibt es auch noch andere Programme... keine Ahnung...


    Sinn und Zweck des Programms ist es Partitionen auf der CMD-HD zwischen verschiedenen SCSI-Geräten (am gleichen SCSI-Bus) zu kopieren. Das setzt voraus das die anderen SCSI-Geräte (bzw. die Medien) wie ein eigenständiges Laufwerk formatiert wurden (siehe cbmHDscsi64)


    Nach 6h Arbeit steht das Grundgerüst, die erste 1541-Partition wurde kopiert... die ersten Schritte sind also gemacht :)


    Man wählt die CMD-HD, danach die SCSI-ID für Quelle/Ziel und danach die Partitionen. Muss natürlich alles zusammenpassen.


    Das kopieren geht relativ schnell, da keine Daten zum C64 kopiert werden müssen: Es wird direkt über den SCSI-Bus kopiert. Selbst ein Parallel-Kabel bringt da nicht wirklich viel mehr an Geschwindigkeit.


    Hier ein erster Screenshot... braucht aber noch einiges an Arbeit bis es was zum "testen" gibt :whistling:

  • Das sieht ja schon sehr gut aus. Die Aufteilung (ähnlich den bekannten CMD Programmen), fand ich schon immer einfach zu bedienen. :)


    Einen Vorschlag/Bitte:

    Wenn möglich, Einbau einer “Dir“ Anzeige der ausgewählten

    Partitionen für Source + Target. :whistling:


    Wäre wirklich hilfreich, wenn man noch mal eben schauen kann, ob man auf “Source“ auch die richtigen Daten zum kopieren hat, oder, was noch wichtiger ist, bei “Target“ , wirklich auf eine leere Partition kopiert.


    Gruß Jojo

  • Ich hab eine einfache Verzeichnis-Routine eingebaut. Ohne SCPU/TC64 langsam, da ich die Daten direkt von den Sektoren auf dem SCSI-Gerät einlese. Aber wenn man nur sehen will was auf der Partition ist reicht es. Mit der Taste "x" kann man die Anzeige auch vorzeitig beenden. Siehe Screenshot.


    Ich hab jetzt eine erste Test-Version hochgeladen.


    Funktioniert hier mit SCSI2SD und IomegaZIP ganz gut. Auch kopieren auf dem gleichen Gerät funktioniert, wobei das wenig Sinn macht, müsste ja auch mit MCOPY funktionieren.


    Auch das Programm ist für den 64er... ob es am 128er funktioniert :nixwiss: (Das Menü wird im 80Z-Modus hier unter VICE aber korrekt angezeigt).


    Ich hab jetzt auch mal 16Mb Native kopiert: Rund 15min. Ohne TC64/SCPU bestimmt noch minimal langsamer.


    Wie auch bei cbmHDscsi64: Ein evtl. Programmfehler könnte dazu führen, das der Inhalt des Laufwerks falsch beschrieben wird -> Datenverlust!!! Wer testen will sollte sich ein Backup anlegen ;)

  • Nachdem das Programm ja reines BASIC 2.0/7.0 ist... ist es entsprechend langsam (ohne SCPU/TC64)


    Ich hab das Programm mal für den C64/C128 angepasst und durch einen Compiler gejagt (C64:AustroSpeed, C128:Blitz!). Am C64 geht es damit schon schneller.


    Ich hänge mal ein D64 an das die beiden compilierten Versionen (devel/v0.02) beinhaltet. Da der JiffyDOS-Befehl "@P0" kein Standard-BASIC-Befehl ist hab ich die Zeile mal gelöscht. Wer eine RAMLink mit PP-Kabel hat kann ja mal diese Version testen. Evtl. muss man das PP-Kabel nicht deaktivieren.


    Ist nach wie vor nur etwas für mutige ;)

  • Gestern auch noch kurz angetestet ........

    cbmscsicopy001 --> C128DR mit SCPU128, RAMLINK, Parrallelkabel gesteckt.


    Das Programm funktioniert soweit im 64er und im 128/80er Modus.:)


    Zum Kurztest:

    Alle Laufwerke sind mit Medien versehen, auf denen ein CMD System mit verschiedenen Partitionstypen erstellt ist.

    1541, 1571, 1581, Native 16 MB (65280 BL), Native (12800 BL), Foreign (65536 BL) sind vorhanden. Teilweise bespielt (für Source) und teilweise leer (für Destination).


    CMDHD 8


    ID“0“ SD LW (1GB)

    ID“1“ MO LW (512MB)

    ID“4“ JAZ LW (1GB)

    ID“5“ DVD ROM LW (512MB)

    ID“6“ ZIP LW (100MB)


    Habe gleich mehrfach hin und her kopiert, hat soweit alles geklappt. Die kopierten Partitionen wurden dann mit @V validiert und zeigten keine Fehler. :)Hier mal ein paar Kopierzeiten :


    ZIP100 (ID6) -----> JAZ (ID4) Native 12800 BL = 2,57 Minuten.

    DVD ROM (ID5) -----> JAZ (ID4) Foreign 65536 BL = <13 Minuten (siehe Bild im Anhang).

    DVD ROM (ID5) -----> ZIP (ID6) 1581 3200 BL = 44 Sekunden.

    DVD ROM (ID5) -----> ZIP (ID6) 1541 664 BL = 14 Sekunden.

    DVD ROM (ID5) -----> ZIP (ID6) Native 12800 BL = 2,35 Minuten.


    Fazit:

    Klappt schon mal Super und das in beiden Modi (64+128/80).:thumbsup:


    Anregungen und Wünsche:

    Die F- Tastenbelegung ist etwas gewöhnungsbedürftig.


    Mein Vorschlag:

    F1 = SCSI LW --> Auswahl Source

    F3 = SCSI LW --> Partition Source "vor", F4 "zurück" (mit SCPU superschnell)

    F5 = SCSI LW --> Auswahl Destination

    F7 = SCSI LW --> Partition Destination "vor", F8 "zurück" (mit SCPU superschnell)


    Auswahl CMD HD, jetzt F1, vielleicht auf F2 legen. Wird sicher so gut wie nie benötigt.

    Wie gesagt, nur eine Idee (abgeschaut bei den CMD Kopierprogrammen).:)



    Klasse ist die Intergration der Partitionsanzeige. Der "x" Abbruch funktioniert hier allerdings nicht so toll.

    Mit SCPU geht die Anzeige sehr schnell, so dass man kaum auf "x" drücken kann.

    Besser wäre nach gefülltem Fenster das "x" -->zurück zum Hauptprogramm, oder "Return" --> weiter.


    Schön wäre noch das kopieren von ungleichen Native Partitionen. Auf meiner SD (Hauptsystem), habe ich Native Partitionen mit einer Größe von 61184 BL.

    Warum ich die früher in der Größe angelegt habe, weiss ich nicht mehr. Leider kann ich mit cbmsdscsi diese Nativegröße nicht anlegen, bzw. somit auch nicht kopieren.

    Vielleicht gibt es da ja noch Lösungen.:whistling:



    Zu guter letzt .........

    cbmscsicopy002_128/80 auf die schnelle probiert.


    JAZ (ID4) -----> SD (ID0) Native 12800 BL = 2,23 Minuten.


    Teste in den nächsten Tagen natürlich weiter.:)


    Gruß Jojo

  • Schön wäre noch das kopieren von ungleichen Native Partitionen. Auf meiner SD (Hauptsystem), habe ich Native Partitionen mit einer Größe von 61184 BL.

    Warum ich die früher in der Größe angelegt habe, weiss ich nicht mehr. Leider kann ich mit cbmsdscsi diese Nativegröße nicht anlegen, bzw. somit auch nicht kopieren.

    Wieso kannst Du eine Partition mit 61184 Blocks nicht anlegen? Eben mit cbmHDscsi64 getestet, geht... Du must halt den Auto-Modus abschalten (Taste <A>) und dann kann man eine Native beliebiger Größe anlegen (in 256Block-Schritten).


    Das kopieren von kleineren auf Größe Partitionen wäre möglich, aber dazu müsste dann auch der Inhalt der Partition angepasst werden. Ist zwar nur ein Byte das die Anzahl der Tracks beinhaltet, aber es wäre dann keine 1:1 Kopie mehr... kann ich mir überlegen...

    Besser wäre nach gefülltem Fenster das "x" -->zurück zum Hauptprogramm, oder "Return" --> weiter.

    Gute Idee... Schau ich mir an, zusammen mit der Belegung der F-Tasten...

  • Wieso kannst Du eine Partition mit 61184 Blocks nicht anlegen? Eben mit cbmHDscsi64 getestet, geht... Du must halt den Auto-Modus abschalten (Taste <A>) und dann kann man eine Native beliebiger Größe anlegen (in 256Block-Schritten).

    Huch ......,

    muß ich nochmal schauen. Hatte ich probiert, aber bin irgendwie nicht auf die Größe gekommen.

    Aber da die Größe ja teilbar ist durch 256, hatte ich wahrscheinlich ein "Brett vor dem Kopf".:whistling:


    Gruß Jojo

  • Das kopieren von kleineren auf Größe Partitionen wäre möglich, aber dazu müsste dann auch der Inhalt der Partition angepasst werden. Ist zwar nur ein Byte das die Anzahl der Tracks beinhaltet, aber es wäre dann keine 1:1 Kopie mehr... kann ich mir überlegen...

    Da ich mir vorstellen kann, das viele CMD HD User, verschiedene Native Partitionsgrößen angelegt haben, nach welchen Kriterien auch immer, wäre ein kopieren von unterschiedlichen Größen echt wünschenswert. Natürlich nur, wenn umsetzbar.:)


    Gruß Jojo

  • Hallo Freunde, Ist jetzt etwas Off-Topic, aber (falls überhaupt noch etwas auf meiner HD lesbar ist) würde ich gern ganze Partitionen (alle?) von HD auf ein SD2IEC transferieren. Dann kann man es auf den PC übertragen als Backup und um es in VICE einzubinden. Gibt's da schon was passendes oder muss man das erst erfinden?

  • Ist jetzt etwas Off-Topic, aber (falls überhaupt noch etwas auf meiner HD lesbar ist) würde ich gern ganze Partitionen (alle?) von HD auf ein SD2IEC transferieren. Dann kann man es auf den PC übertragen als Backup und um es in VICE einzubinden. Gibt's da schon was passendes oder muss man das erst erfinden?

    Frag mal Skern, ich glaube der hatte mal ein Kopierprogramm in der Mache, welches alle Dateien überträgt, inklusive Verzeichnisbaum.

  • Da ich mir vorstellen kann, das viele CMD HD User, verschiedene Native Partitionsgrößen angelegt haben, nach welchen Kriterien auch immer, wäre ein kopieren von unterschiedlichen Größen echt wünschenswert. Natürlich nur, wenn umsetzbar. :)

    Ist umgesetzt ;)


    Das mit den F-Tasten hat sich für mich nicht so "gut" angefühlt... Ich hab jetzt:


    F1/F3 = Source/Target SCSI-Device

    Weil zuerst die Geräte auswählen... Also die F-Tasten von oben nach unten auswählen...


    F5/F7 = Source/Target Partition +1

    F6/F8 = Source/Target Partition +10

    Nachdem man die Laufwerke gewählt hat... die nächsten beiden F-Tasten F5/F7 wählen die Partition.

    Wenn ich 255 Partitionen auf der HD habe ist mir ein +10 wichtiger als ein -1.


    h = CMD-HD auswählen


    Braucht man wirklich relativ wenig.


    Besser wäre nach gefülltem Fenster das "x" -->zurück zum Hauptprogramm, oder "Return" --> weiter.

    Ich hab "x" durch "<-" ersetzt. Aber sonst... umgesetzt :thumbsup:


    würde ich gern ganze Partitionen (alle?) von HD auf ein SD2IEC transferieren.

    Für Dich sicherlich keine Lösung, aber der Vollständigkeit halber:

    Mit GEOS/MegaPatch und GeoDesk64 kann man auf dem SD2IEC DiskImages anlegen und dann die Partition in das DiskImage kopieren. Aber eben nur Partition für Partition.

    Wenn Du das Laufwerk irgendwie als Image gespeichert bekommst (z.B. unter Linux an den PC anschließen und dann mit dd importieren...), dann könnte man die Partitionen auch aus dem Image herausschneiden. Man muss nur wissen wo die Partition beginnt. Aber auch das ist nicht ohne...

  • Wenn Du das Laufwerk irgendwie als Image gespeichert bekommst (z.B. unter Linux an den PC anschließen und dann mit dd importieren...)............


    Unter Windows (bei mir W10), würde es dann auch mit RawCopy (ist ein Windowstool) gehen. Es entsteht eine Datei xxxx.img. Die braucht man dann nur umbenennen in xxxx.dhd und schon kann man mit Dirmaster (neueste Version übrigens 3.1.5) darauf zugreifen.


    Gruß Jojo

  • Kurztest cbmscsicopy64-002. (64er + 128/80er mit SCPU an)


    (Einstellung cbmSDscsi 61184 BL funktioniert.:thumbsup:)


    Geänderte F- Tasten Belegung funktioniert.:thumbup:

    Kopieren von SD 16184 BL auf JAZ 16280 BL funktioniert.:thumbup: (Habe ich bis jetzt aber nur 1x probiert).

    Abbruch Dir Anzeige funktioniert.:thumbup:



    Was mir aufgefallen ist:

    Die Partitionsuche war teilweise "hakelig". Mal wurde die nächste Partition sofort angezeigt, mal lief die Partitionssuche von 1 bis 254 durch, was dann natürlich länger dauerte. Vielleicht war ich auch nur verwöhnt von den kompilierten Versionen.:whistling:


    Wäre ein Abbruch beim kopieren, ohne Datenverlust, möglich?

    Wenn man z. B. beim kopieren einer 16MB Partition kurz nach Start merkt, das man doch falsch lag, mit seiner Auswahl, wäre eine solche Möglichkeit echt von Vorteil.:)




    Mal schauen, ob ich nächstes Wochenende weitertesten kann.:)


    Gruß Jojo

  • Wäre ein Abbruch beim kopieren, ohne Datenverlust, möglich?

    Wenn man z. B. beim kopieren einer 16MB Partition kurz nach Start merkt, das man doch falsch lag, mit seiner Auswahl, wäre eine solche Möglichkeit echt von Vorteil.:)

    Abbruch ohne Datenverlust... jein. Bereits nach dem ersten Durchlauf sind 32 Blocks kopiert, d.h. die NativeBAM passt schon nicht mehr zum Hauptverzeichnis, das noch nicht überschrieben wurde.

    Würde man die Partition "Rückwärts" kopieren, dann würden evtl. Daten überschrieben und das Hauptverzeichnis passt nicht mehr zu den Daten. Falls der Bereich ungenutzt ist wäre ein Abbruch möglich...

    Fazit: Abbruch möglich... aber ohne Datenverlust? Nicht in jedem Fall...

    Daher: Wer sich nicht sicher ist sollte von der Partition vorher ein Backup erstellen ;)

  • Mal wieder kurz probiert........


    Kleine Probleme (64er+128/80).:whistling:


    1. Geos 1581er Partition kopiert von SD auf JAZ. Diskerror wird angezeigt. DIR Anzeige mit S+T, zeigt bei 3 Dateien, ??? an (Geochart, Geofile, Testblock). Nach einlesen in Geodesk64 und Validate, kein Partitionsfehler zu erkennen.

    Danach habe festgestellt das die 3 Dateien unter Geos als schreibgeschützt markiert sind. Vielleicht liegt es daran (siehe Anhang)


    2. 64er/128/80er Modus: Bei F5/F7 (Einzelpart +1 weiterschalten) werden erst alle Native Partitionen angezeigt, danach alle 1581 und dann alle 1541. Bei Shift F5/Schift F7 (+10) geht es der Reihe nach, so wie die Partitionen angelegt sind. So sollte es glaube ich sein.


    3. 64er Modus: bei F5/F7, beim festhalten der Tasten, kein Dauer Scrollen. im 128er Modus funktionierts.


    So , für heute ist mal wieder Feierabend. Bis die Tage.:)


    Gruß Jojo

  • 1. Geos 1581er Partition kopiert von SD auf JAZ. Diskerror wird angezeigt. DIR Anzeige mit S+T, zeigt bei 3 Dateien, ??? an (Geochart, Geofile, Testblock). Nach einlesen in Geodesk64 und Validate, kein Partitionsfehler zu erkennen.

    Das mit dem DiskFehler muss ich mir mal anschauen, aber die Dateien werden als ??? angezeigt weil das Schreibschutz-Flag gesetzt ist. Ist für das kopieren aber kein Problem, da nicht Dateien kopiert werden, sondern nur einzelne Sektoren. Die Anzeige werde ich korrigieren.

    Das mit dem Kopierfehler. Es gibt da einen kleinen Tippfehler in der v0.02, der sollte eigentlich trotz Fehler richtig funktionieren. Du kannst mal die V0.03 (nicht kompilliert) testen, da ist das behoben.


    2. 64er/128/80er Modus: Bei F5/F7 (Einzelpart +1 weiterschalten) werden erst alle Native Partitionen angezeigt, danach alle 1581 und dann alle 1541. Bei Shift F5/Schift F7 (+10) geht es der Reihe nach, so wie die Partitionen angelegt sind. So sollte es glaube ich sein.

    F5/F7 geht immer eins weiter... und sucht die nächste gültige Partition. F6/F8 geht von der aktuellen Position 10 Partitionen weiter und sucht dann nach der nächsten Partition.

    F5/F6 nimmt dabei keine Rücksicht auf den Partitionstyp, F7/F8 sucht immer eine Partition passend zum Source-Laufwerk.

    3. 64er Modus: bei F5/F7, beim festhalten der Tasten, kein Dauer Scrollen. im 128er Modus funktionierts.

    Andersherum: Beim 64er funktionierts... kein Dauerfunktion. Ich hab nur wenige Partitionen und soll jetzt immer die Taste drücken? Das Programm sucht doch selber nach der nächsten Partition.

    Um größere Sprünge zu machen gibt es ja F6/F8.


    Wenn man das am 64er ändern will: POKE650,128


    Danke für die Rückmeldung. Das mit der Verzeichnisanzeige korrigiere ich in der V0.04...

  • ..

    Zu 2: F5/F7 bezieht sich hier auf Source. Hier wird bei mir (250 Partitionen),

    erst alle Native angezeigt, dann alle 1581, dann alle 1541. Die Reihenfolge ist aber bei meiner SD gemischt. Bei Source sollte zum besseren finden, der fortlaufenden Nummer nach durchlaufen werden und nicht nach Partitionstyp. :whistling:


    Eine Partitionsnummern Direkteingabe dazu, wäre natürlich echt Klasse, wenn machbar.:whistling::)


    Alles andere gen Wochenende.

    Gruß Jojo

  • Bei Source sollte zum besseren finden, der fortlaufenden Nummer nach durchlaufen werden und nicht nach Partitionstyp. :whistling:

    So... Fehler gefunden... und behoben. Es war auch so geplant das nach der Nummer durchsucht wird... aber ein kleiner Denkfehler... :whistling:

    Wird allerdings von Source=1581 auf Source=Native gewechselt... und als Target war 1581 eingestellt, dann wird Target zurückgesetzt, da 1581 nicht nach Native kopiert werden kann.


    Eine Partitionsnummern Direkteingabe dazu, wäre natürlich echt Klasse, wenn machbar. :whistling::)

    Ist jetzt über F2=Source und F4=Target möglich. Ist aber auch nur der Standard-Input-Befehl... also Vorsicht bei der Eingabe ;)


    V0.04 gibt es hier... die Quelltext-Dateien gibt es hier.