Beiträge von HobbyProgrammer

    Ok, war vielleicht nicht ganz korrekt formuliert. Ich kompiliere unter KUbuntu 20.04 LTS und für Windows unter Windows 10 64bit Professional.

    Die daraus resultierenden Binarys habe ich dann unter den genannten Systemen getested.

    Dietrich Ich hatte heute kurz Zeit und habe mir den CIFE nochmals angesehen. Bei mir wird der Pfad des aktuell bearbeiteten Image wie gewollt gespeichert und beim nächsten Start wieder hergestellt. Hab das auch unter Windows mit einem User der nur Benutzerrechte hat nochmals getestet.


    Der Patch und das Makefile funktionieren wunderbar. Wenn das mit in das github-repository rein käme, dass man nur noch "make" tippen muss, wäre das prima!

    Wie gesagt, ich versuche das die nächsten Tage in einer Debian 11 VM nochmals nachzuvollziehen.

    So wie der Quellcode in Github steht kompiliert CIFE sauber, und die Binarys laufen einwandfrei. Getested in Ubuntu 22.04 mit Gnome Desktop, Linux Mint 21 mit Cinnamon Desktop, Windows XP 32bit, Windows 7 32 und 64bit sowie Windows 10 64bit.

    Habe das natürlich auch in der Datei CpmTools.cpp gemacht ...

    Ok. Dann habe ich nichts gesagt. :)



    meine Vermutung war, dass es an der Definition in edid.h (Paket xserver-xorg-dev) liegt ... der C++-Compiler verlangt hier auch nach #include <cstring>, #include <cstdarg>, #include <climits> ... Patch dafür erwünscht? :)

    Dann werden diese Makrodefinitionen von KUbuntu wohl nicht oder anders includiert. :/

    Wenn Du schon nen fertigen Patch hast, würde ich nicht nein sagen. ;)

    Allgemein muß ich dazusagen, das ich eigentlich eher auf der Free Pascal Lazarus Schiene unterwegs bin. Dort treffe ich mich auch mehr oder weniger regelmäßig mit gleichgesinnten zum Austausch.

    Das ich CIFE in C/C++ schreibe ist der Tatsache geschuldet, das der Quellcode der CP/M-Tools in C vorliegt und ich seinerzeit keine große Lust hatte das alles nach Pascal zu portieren.

    Ich hatte zwischenzeitlich aber schon darüber nachgedacht doch alles in Lazarus Free Pascal neu aufzurollen, als mich das IDE gefrickel mit CodeLite, CodeBlocks sehr genervt hat. Mittlerweile habe ich mit Eclipse CDT ein System gefunden welches einigermaßen gut läuft.

    An den Komfort und die Geschmeidigkeit der Lazarus Free Pascal IDE kommt das ganze aber nicht heran.

    Schön, dass es weitergeht.

    Leider merkt sich Cife den Pfad zum Imagefile nicht. Das ist etwas lästig.

    Weiterhin bekomme ich die einzelnen files zwar in das Image rein, aber nicht mehr heraus - mache ich da was falsch?


    Dietrich

    CIFE sollte eigentlich den Pfad beim Beenden speichern und beim nächsten Start wieder herstellen. Falls die gespeicherte Datei jedoch nichtmehr existiert, wird keine Imagedatei angezeigt und geladen. Ich werde mir das in den nächsten Tagen aber gerne nochmal anschauen.

    Das herausholen von Dateien aus einem Image habe ich noch nicht implementiert. Ist aber fix auf der TODO Liste.


    Mit der Xorg Header-Datei hat der CIFE doch nichts zu tun. :/

    Beim Compilieren unter Devuan Chimaera 4.0 (= Debian Bullseye 11.1) wird dieser Fehler ausgegeben:

    Code
    In file included from CIFE/Sources/CpmTools.cpp:18:
    CIFE/Sources/CpmDefs.h:66:12: error: expected nested-name-specifier before 'E'
       66 | #define T1 'E'
          |            ^~~

    ... vielleicht hat das aber eine andere Ursache ... Umbenennen der T-Macros in CIFE hat jedenfalls geholfen ...

    Ok. Ich entwickle und kompiliere in einer Virtualbox VM. Als System habe ich dort KUbuntu 20.04 LTS am laufen. Dort hatte ich solch einen Fehler noch nie. Das Umbenennen des Makros kann bei der Funktion 'check CP/M Filesystem' zu Problemen bei Passwort geschützten Dateisystem führen.

    Hallo,


    ich habe heute eine neue Version des CP/M Image-File Explorers bei Github Online gestellt.


    In dieser habe ich die Menüaufteilung entsprechend dem Vorschlag von JenGun abgeändert.

    Weiters können nun auch völlig neue leere Images angelegt werden.

    Auch können nun per Drag and Drop Dateien in ein Image kopiert werden.

    Falls ein Ordner kopiert werden soll, so werden die in diesem Ordner befindlichen Dateien in das Image kopiert.

    In den Kopieroptionen kann nun eingestellt werden ob das 'LastUpdated' Datum von der zu kopierenden Datei, oder vom aktuellen Datum übernommen werden soll.

    Die Auflistung der in der diskdefs Datei gefundenen Image-Typen ist nun alphabetisch sortiert.


    Zu finden ist die Version 0.0.7 wie immer unter:

    GitHub - ProgrammingHobby/CPM_Image-File_Explorer
    Contribute to ProgrammingHobby/CPM_Image-File_Explorer development by creating an account on GitHub.
    github.com


    Viele Grüße

    Hobbyprogrammer

    Ja, CIFE verwendet die gleichen diskdefs wie die CP/M Commandline-Tools. Die diskdefs Datei muß im selben Verzeichnis (Ordner) liegen wie die CIFE Programmdatei. Den Inhalt der diskdefs musst Du Dir natürlich entsprechend Deiner CP/M-Systeme selbst schreiben. Oder Du findest eine schon fertige diskdefs Datei mit für Dich passenden Disk-Definitionen.


    Systemvorraussetzung? Weil ich mit SuperCopy direkt meine KC85-Disketten am DOS-PC lesen kann.

    Systemvorraussetzungen in dem Sin9ne gibt es keine. Der CIFE behandelt nur binäre Image Dateien. Er kann nicht von Disketten lesen oder auf Diskette schreiben.

    Die 32bit Windows Version läuft auf WinXP, Win7 und Win10.

    Die 64bit Windows Version läuft auf Win7 64bit und Win10 64bit.

    Die Linux Versionen sind beide 64bit.

    Die wx3.0 kann verwendet werden wenn auf den Linux System passende wxWidgets 3.0.x Librarys installiert sind.

    Die wx3.1 Version sollte auf nahezu allen Linux-Systemen laufen, da hier die wxWidgets 3.1.x schon in die Programmdatei hineingelinkt sind.

    Hallo zusammen,


    lange hat es gedauert, aber nun gibt es etwas neues von meinem CP/M Image-File Explorer. :)

    In der Version 0.0.6 können nun endlich einzelne oder mehrere Dateien per Copy&Paste von außen in ein Image-File hineinkopiert werden. Das Überschreiben von bereits vorhandenen Dateien funktioniert derzeit leider noch nicht, diese müssen zuvor manuel per Delete gelöscht werden. Cut&Paste funktioniert leider noch nicht. Dafür scheint es keine allgemein funktionierende Cross-Platform Lösung zu geben. Auch Drag&Drop muß ich noch einbauen.

    Für das Kopieren gibt es nun einen 'Options' Menüeintrag. Dort kann die standard Usernummer angegeben werden, mit welcher eine kopierte Datei im CP/M-Filesystem angelegt wird. Ebenso können dort durch Leerzeichen getrennt Dateiendungen für Textdateien angegeben werden. Bei diesen werden dann beim Kopieren die enthaltenen Steuerzeichen in das CP/M Format konvertiert.

    Auch speichert der CP/M Image-File Explorer nun beim beenden die Größe und Position des Fensters sowie die Einstellungen für Image-Typ, Image-File und die Kopieroptionen und stellt diese beim nächsten Start wieder her.

    Und, bei Größenänderungen des Fensters werden die Spalten der Verzeichnisansicht entsprechend angepasst.


    Zu finden in die Version 0.0.6 wie immer unter:

    https://github.com/ProgrammingHobby/CPM_Image-File_Explorer



    Grüße

    HobbyProgrammer

    Da muß ich Dir recht geben, das ist etwas verwirrend. Aber dadurch das ich die Releases in Versionstags ausgelagert habe wurde der bisherige Releases Ordner überflüssig und ich habe diesen entfernt.

    Ich hoffe das ich morgen dran denke und einen Verweis auf die Releases auf der Startseite des Projekts einfüge.

    Hallo,


    es hat sich etwas getan. Ich hoffe nun das die neue Version von CodeLite stabiler läuft. Im Hintergrund habe ich das wxWidgets Framework umgebaut und kann nun auch direkt Windows 32bit Versionen des CP/M Image-File Explorers generieren. Die derzeit aktuelle Version 0.0.5 habe ich auf der Github Seite nun auch als Windows 32bit Version eingestellt. Diese läuft bei mir auch in einer 'alten' Windows XP 32bit VM.

    Die Github Projektseite habe ich auch etwas modernisiert.


    Grüße

    HobbyProgrammer

    Danke, das freut mich.

    Allerdings stockt das Projekt gerade ein wenig. Meine Zeitfenster sind leider sehr klein geworden. Zudem kämpfe ich mit mit der CodeLite IDE, welche in der Virtualbox VM scheinbar mit zunehmender Größe des Projekts zu immer mehr Freezes neigt und dann alles was seit dem letzten Speichern geschrieben wurde weg ist.

    KDevelop funktioniert unter Linux richtig gut, aber für Windoof wird es dann wieder etwas komisch.

    Qt habe ich verworfen, da sich die Lizenzpolitik sehr oft ändert und ich nicht sicher bin ob ich die Programme damit einfach so weitergeben kann. Auch würde es dann nichtmehr nur eine Exe Datei sein, sondern es müssten noch zahlreiche Librarys mitgeliefert werden damit das Programm läuft -> Thema dynamisches Linken.

    Letzte Möglichkeit wäre das Projekt nach Lazarus/Free Pascal zu portieren. Damit habe ich das Z180SoftSystem geschrieben.

    Das ist das einzigste System welches ich kenne und welches Out of the Box unter Linux und Windows ohne viel Gefrickel funktioniert.

    Wird mit Sicherheit noch etwas Zeit vergehen, aber ich bleibe dran.


    Grüße

    HobbyProgrammer

    Hallo,


    ich habe gerade eben die Version 0.0.5 hochgeladen. Diese beinhaltet keine neuen Funktionen, sondern ich habe lediglich diverse fixe Datenstrukturen innerhalb der CpmTools Klasse für viele Funktionsaufrufe als Member Strukturen eingesetzt. Dadurch konnte ich die Parameterübergabe an die diversen Methoden in der Klasse vereinfachen. Auch diverse Variablen wurden entsprechend der Bedeutung umbenannt und diverse interne Datentypen angepasst.


    Zu finden wie üblich unter: https://github.com/ProgrammingHobby/CPM_Image-File_Explorer


    Viele Grüße

    HobbyProgrammer

    Hallo zusammen,


    ich habe soeben die Version 0.0.4 des CP/M Image-File Explorers hochgeladen.

    Mir dieser können nun neue leere Image-Files erstellt, oder bestehende Image-Files 'neu Formattiert' werden (cpm.mkfs).

    Dabei kann angegeben werden ob ein Boot-Track-File geladen und in das Image kopiert werden soll (nur bei Formaten

    welche Boot-Tracks angegeben haben), das Disklabel kann angegeben werden und ob Timestamps benutzt werden sollen.

    Für ein neues Image-File muß dieses unter Linux leider ausserhalb z.B. als neues Textfile angelegt werden,

    damit der Name dann im CIFE sichtbar ist. Unter Windows kann ein neues File interaktiv im Image-File Dialog

    erstellt werden.


    Ebenso können die Image-Files nun geprüft werden (cpm.fsck).


    Zu finden wie üblich unter: https://github.com/ProgrammingHobby/CPM_Image-File_Explorer


    Viele Grüße

    HobbyProgrammer

    Hallo,


    es gibt was neues beim CP/M Image-File Explorer. Ich habe soeben die Version 0.0.3 hochgeladen.

    Wieder als 64bit Linux sowie 64bit Windows Version.


    In dieser können nun die Datei-Attribute geändert werden. Auch ist es möglich den Datei-Schutz einzustellen.


    Die Verzeichnis-Spalte 'Permissions' wurde entfernt, da diese keine direkte Verankerung im CP/M-Dateisystem hatte, und somit auch nicht direkt geändert werden kann. Neu ist die Spalte 'Protections' für den Datei-Schutz. Diese Protections können auch geändert werden.


    Zu finden wie üblich unter: https://github.com/ProgrammingHobby/CPM_Image-File_Explorer


    Viele Grüße

    HobbyProgrammer

    Hallo,

    zuerstmal vielen Dank für die Tests. 😀👍

    In der Tat sollen natürlich auch cut copy paste später funktionieren. In Grunde alle Funktionen welche im (Kontext) Menü schon angelegt sind.

    Grüße

    Hobbyprogrammer

    Hallo zusammen,


    leider habe ich es nicht geschafft bis jetzt nochmal eine Vorschauversion fertig zu stellen.

    Aber vor allem die letzte Arbeitswoche war sehr kräftezehrend und jetzt sind wir erstmal im Urlaub. Im Oktober geht es dann mit dem CP/M Image File Explorer weiter. 🙂


    Grüße

    HobbyProgrammer

    Alles gut. Habs nicht in den Falschen Hals gekriegt. 😉


    Aber Deine Beispiele sind für mich sehr wertvoll. Werde mir diese speichern und für weiterführende Tests dann benutzen. Wenn das Projekt sinnvoll ergänzt werden kann habe ich kein Problem damit. 🙂👍

    In erster Linie ist der CP/M Image File Explorer dazu gedacht die CP/M Tools bequem über ein GUI bedienen zu können. Entstanden ist die Idee durch diesen Thread: Lösung für DSK-Images...


    Die Libdsk unterstützung habe ich aus dem Source-Code der CP/M-Tools erstmal weg gelassen. Zum einen weil ich die Tools selbst bis jetzt ohne Libdsk benutzt habe, und zum anderen weil ich mich mit Libdsk bis jetzt noch nicht auseinandergesetzt habe.


    Libdsk kann ich, wenn das Gerüst an sich funktioniert dann später noch nachrüsten. Allerdings wirds es mit dem Testen dann schwierig da ich keine so Sonderformate habe und auch keinen Zugriff auf ein evtl. physisches Diskettenlaufwerk. Da wäre ich dann auf eure Hilfe angewiesen.

    Hi,

    entschuldigt die ketzerische Frage, aber sollte man nicht auf Grund der Unzulänglichkeiten der cpmtools gleich anfangs auch die libdsk einbeziehen?

    Bei doppelseitigen Disks auf Images angewiesen zu sein welche die logische (anstatt der physikalischen) Trackreihenfolge bereithalten sehe ich als problematisch. Ich denke nicht, dass es viele Imager gibt die das anbieten - besonders wenn sie auch Kopierschutz berücksichtigen.

    Oder habe ich da etwas grundlegendes bzgl. DS Disks in cpmtools (ohne libdsk) übersehen?

    Was meinst Du mit Unzulänglichkeiten?


    Die Libdsk unterstützung habe ich bis jetzt mal aussen vor gelassen. Ich will erst die eigentliche Funktionalität fertigstellen. Dann kommt evtl. Libdsk noch dazu.


    Wobei Libdsk ist doch eher um vorhandene physikalische Diskettenlaufwerke mit Sonderformaten ansprechen zu können?

    Ok, hab grad mal schnell mit dem Handy in mein Github geschaut. Die 'utf8_string()' sollten eigentlich nichtmehr nötig sein, da die Methoden die damit versorgt werden ihrerseits einen wxString Parameter haben. Ich habs mir notiert.


    Grüße HobbyProgrammee