Benutzer:Tale-X/CPM-Diskformat
Shoutbox: 20.7.16, 11:xxUhr
syshack :CPM2.2 hat einfach ab Track3, Sektor 0...7 die Directory-Einträge. Danach kommen die Daten.
Tale-X :syshack: mehr Felder pro Eintrag?
Tale-X :sys: du bist auf der bios-ebene unterwegs
syshack :Ich habe die CPM3 Systemdiskette noch nicht mit Mirkos Webinfos verglichen, aber dort hast du mehr als 64 Einträge bzw. auch mehr als nur Track 3 und S 0...7
syshack :Ich bin auf der D64 Ebene unterwegs, das ist es doch was wir machen müssen?
Tale-X :sys: letztendlich ja, aber ne zusätzliche saubere Abstraktionsebene, die mit den CP/M-Dokus abgleichbar ist, wäre von Vorteil
syshack :Hier ist die Dir Struktur beschrieben: cpm8680.com/cpmtools/cpm.htm das kann man schön mit DirMaster 3.1.1 und der Beispiel D64 von DB vergleichen.
Tale-X :sys: und da ist der unterschied zu CP/M+ allein das Password?
Tale-X :aber das meinte ich damit - es wäre gut, eine Schicht im Programm zu haben, die diese Struktur abbildet
syshack :Nein. Du hast im CPM PLus auch Disc Labels, siehe Link oben. Aber soweit mit dem CPM3 bin ich noch nicht.
Tale-X :und dann eine Schicht, die das Abbild in D64 (CP/M2.2, 3.0 SS, 3.0 DS) umrechnet
syshack :TX: Ja, hast schon recht. Wir wollen ja eine "Datei" kopieren/löschen/umbenennen. Nur will ich die Struktur auf der Disk verstehen.
Tale-X :sys: ja, das auch... ich bin top-down unterwegs und Du bottom-up :)
Tale-X :letztendlich wollen wir alles davon verstehen ;)
syshack :Mir geht es ja auch darum zu verstehen, wenn ich ein Stück C / Java etc. Code sehe, dass z.B. eine Datei kopiert, was da mit den Tracks/Sektoren/Bytes darunter passiert. Dann kann ich sagen: "Aha, da holt er sich das Directory aus T3/S0 und das ist so lang und da holt er sich die Datei Bytes, und kopiert sie unter einem neuen Datibereich."
daybyter :Schreibt sowas ruhig auch mal als Kommentar in den Thread.
daybyter :Sonst geht es verlustig
daybyter :M.J. sollte man evtl. auch mal fragen.
syshack :Ich habe es professionell mit meinem neuen Füllfederhalter auf der Rückseite eines PC-Ausdrucks gekritzelt.... :bgdev
daybyter :Oder den Peter
daybyter :Ham beide viel Ahnung
syshack :"dokumentiert" :D
syshack :DB: Deshalb die Idee mit dem Wiki als WIP.
syshack :Beim Thread wächst das schnell und alte, ungültige / aktualisierte Infos muss man finden.
Tale-X :syshack: ich sehe es halt so, dass cp/m bdos das erst mal in ne sektorenliste packt und bios dass dann umrechnet. Ich versuche beides getrennt zu betrachten
syshack :Ich habe mir zuerst mal ein Word erstellt.
daybyter :sys: ich will ja aber gerade eine saubere Abstraktionsschicht über einem d64/cpm Image haben
daybyter :Damit ich _eine_ Kopierroutine schreiben kann.
daybyter :Die von a nach b kopiert
Tale-X :d64-Sektoren|cp/m-directory+Blockliste|Dateihandling
daybyter :Egal was für Images das sind.
syshack :Ja, das ist mir ja klar. Ich weiss aber nicht was "Datei" kopieren auf CPM Ebene bedeutet. Ich wollte es halt zuerst unten verstehen. Aber so wie du Deine Klassen aufgebaut hast, hast du ja genau das , was du willst. Ob es ein Normal-D64 oder CPM22-D64 ist, du hast die Kopier Aktion ja vererbt.
daybyter :Meine geplante Reihenfolge ging so:
daybyter :App will test.dat mit 1000 Bytes auf das Image schreiben
daybyter :Zuerst checken, ob genug Platz ist. Falls nicht => Fehler
daybyter :Dann entsprechend viel Sektoren reservieren
daybyter :Directory Eintrag mit diesen Sektoren erstellen
daybyter :Output Stream zurückgeben, der in diese Sektoren schreibt
daybyter :App schreibt 1000 Bytes in den Stream
daybyter :Der Stream kümmert sich um die Verteilung auf Sektoren