CP/M-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Memberlist || Home || Statistik || Kalender || Staff Willkommen Gast!
[ Unofficial CP/M Website ] [ Z80 Family Support Page ] [ Forum-Regeln ] [ Impressum/Kontakt ] [ Datenschutzerklärung ]

CP/M-Forum » CP/M 2.2 » CP/M nach Windows » Threadansicht

Autor Thread - Seiten: -1-
000
18.04.2014, 10:35 Uhr
Werner_8085



Moin, Moin,

mein Moppel möchte gerne mit der Windowswelt(XP) Kontakt aufnehmen ;-)
Die Datenübertragung per PEPS (Siehe Hardware) funktioniert nun einwandfrei.
Zusätzlich sollen die CP/M Disketten auf einem PC(XP) bearbeitet werden.

Hierzu habe ich die Tools aus
http://hc-ddr.hucki.net/wiki/doku.php/cpm:disketten_xp3
installiert - soweit so gut.

Meine Versuche die Diskettenparameter diesem Tool beizubringen werden leider
mit "Bad Format" quittiert.

Aus Stat a:dsk:
2432: 128 Byte Record Capacity
304: Kilobyte Drive Capacity
64: 32 Byte Directory Entries
64: Checked Directory Entries
128: Records / Extend
16: Records / Block
32: Sectors / Track
4: Reserved Tracks

daraus habe ich die Parameter für die Datei .libdskc
[Moppel]
Description = 304K Moppel Diskette
Sides = Alt
Cylinders = 80
Heads = 1
Sectors = 32
SecBase = 1
SecSize = 128
DataRate = DD
rwgap = 4
fmtgap = 5
fm = N
nomulti = N

und .libdsk.ini aufgebaut
[RCPMFS]
BlockSize=2048
DirBlocks=3
TotalBlocks=152
SysTracks=4
Version=2
Format=Moppel

leider ohne Erfolg :-((

Hat jemand eine Idee dazu ?

Mit den besten Grüßen vom Niederrhein
Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
001
19.04.2014, 10:43 Uhr
proof80



Hallo Werner,

da ich mich vor zig Jahren mal intensiver mit der Materie beschäftigt habe, mach' ich mal einen Versuch, all' die Parameter zu erläutern.

Haben die Disketten HD oder DD? Sind sie SS oder DS, d.h. kann man sie umdrehen und weiter beschreiben (das gab es mal)? Format 5,25" oder (eher wahrscheinlich und am PC lesbar) 3,5"?

Dem STAT nach hat Deine Diskette 304 kb Gesamt(Daten-)kapazität, die sich auf 2432 logische Sektoren (=records) á 128 byte verteilen.
Jede Spur besteht aus 32 logischen Sektoren = 4 kb. Die Diskette hat also 304/4 = 76 Spuren für Daten plus die ersten 4 Spuren = 16 kb für's Betriebssystem, macht zusammen 80 Spuren (HD oder Vorder- und Rückseite auf DD?).
Die 5. Spur beginnt mit dem Inhaltsverzeichnis, das 64 Einträge à 32 byte = 2 kb (also eine halbe Spur) beansprucht.
Danach geht es dann mit Daten weiter, die in Blöcken à 16 log. Sekt. = 2 kb organisiert sind. Mit einem byte kann man max. 256 Blöcke adressieren, also genug für das Format.

Es handelt sich aber um ein 320kb-Diskette, also eigentlich DD SS ? Auf HD passen ja schließlich 1,2Mb (5,25") oder 1,4Mb (3,5") drauf ...

Jetzt habe ich folgende Anregungen für Dich:

Nach meiner Rechnung hast Du zuviele DirBlocks angesetzt. Ein Block mit 2kb müsste der STAT-Ausgabe nach reichen.

Dann die Spurzahl: Es gibt die Möglichkeit, beim 40-Spur-Laufwerk auf beiden Seiten durchzuzählen, so dass man auf 80 kommt. Welcher Parameter ist dann einzutragen? Cylinders ist die Angabe der Spuren pro Seite, also 40 oder bei HD/SS (einseitig) dann doch 80. Du hast nur einen Kopf angegeben, was für SS spricht. Bei DS müssten es zwei Köpfe sein.

Davon hängt auch die Angabe Sektoren/Spur ab. Werden die Sektoren auf beiden Seiten durchgezählt, so hat eine Spur logisch doppelt soviele Sektoren wie physikalisch (auf einer Seite).

Dann zu den Total Blocks: Mit oder ohne Inhaltsverzeichnis? Also ev. nur 151 Total Blocks statt 152.

Wie sieht denn der bisherige Misserfolg aus? Kommt Schrott oder garnichts?

Um weitere Parameter herauszufinden (skew-Faktor bzw. die gaps), wäre eine Diskette hilfreich, die mit entsprechend einfachen Daten beschrieben ist.
Fang mit dem Inhaltsverzeichnis an und schreibe es mit fortlaufenden Namen voll: file0001.txt, file0002.txt, file0003.txt, ... file0064.txt - mehr geht nicht.
Test auf dem Moppel mit DIR ...

Dann später eine Diskette mit einer Datei, die fortlaufend durchnummerierte 128byte-Abschnitte enthält, um die Sektorfolge zu testen. Auch da gibt es Varianten.

Du solltest sowohl auf dem Moppel als auch auf dem PC sektorweise auf Disketten lesen und schreiben können. Hast Du die entsprechenden Programme dafür?

Viel Erfolg und Gruß, Wolfram
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
002
19.04.2014, 21:12 Uhr
Werner_8085



Hallo Wolfram,

danke für die ausführlichen Infos.
Habe noch alten Aufzeichnungen gefunden (ist ja Ostern ;-)) wo
der DPB fürs BIOS beschrieben ist:

40Spur / 80 Spur
Sec/Track : 20H 20H
BSH : 03H 04H
BLM : 07H 0FH
EXM : 00H 00H
DSM : 8EH 97H
DRM : 3FH 3FH
AL0 : C0H 00H
AL1 : 00H C0H
CKS : 10H 10H
OFFSET : 04H 04H

Nach den Unterlagen sieht es so aus, als ob die 2.Seite als eigenes Laufwerk deklariert ist, bin mir nicht sicher - ist ja auch schon verdammt lang her ...

Mit deinen Info's und dem DPB sollte ich es wohl hinkriegen.

Danke und ein schönes Osterfest
Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
003
19.04.2014, 22:05 Uhr
proof80



Hallo Werner,

eine gute Quelle für weitere Infos ist die c't aus den 80er Jahren. Als das PROF80/GRIP-Projekt vorgestellt wurde, gab es auch eine ausführliche Reihe zu CP/M und all' den Disk-Geschichten. Die DVD, auf der die alten Hefte drauf sind, ist eigentlich ein Muss :-))

Dir auch ein schönes Osterfest und auf dass Du noch viele interessante Ostereier findest ...

Gruß, Wolfram
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
004
21.04.2014, 19:57 Uhr
Werner_8085



Hallo Wolfram,

es funktioniert - bin nochmals umgestiegen auf das DOS-Tool 22Disk und dem oben gefundenen DPB.

BEGIN MOP8 Moppel (80*1* 16,256 4 OFS 4k DIR) 3.5"
DENSITY MFM,LOW CYLINDERS 80 SIDES 1 SECTORS 16,256 SKEW 1
SIDE1 0 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
ORDER SIDES
LABEL MOPPEL
BSH 4 BLM 15 EXM 0 DSM 151 DRM 63 AL0 192 AL1 0 OFS 4
END

Damit kann ich jetzt SSDD 80Track 3,5" Disketten auf CP/M- und DOS-Seite lesen und schreiben. Schon mal ein wichtiger Schritt.

Ermutigt habe ich direkt probiert ob die 5.25" Disketten von meinem PROF180
Format 4# lesbar sind.

BEGIN PROF Prof180 (80*2* 10,512 3 OFS) 5.25"
DENSITY MFM, LOW CYLINDERS 80 SIDES 2 SECTORS 10,512 SKEW 1
SIDE1 0 1,2,3,4,5,6,7,8,9,10
SIDE2 1 1,2,3,4,5,6,7,8,9,10
ORDER SIDES
LABEL PROF
BSH 4 BLM 15 EXM 0 DSM 384 DRM 127 AL0 192 AL1 0 OFS 3
END

das funktioniert leider nicht (Lesefehler) - Schade, den da sind einige Moppel-Quelldateien drauf, vorallem das BIOS und ein V24 Programm womit COM-Dateien übertragen werden können ;-((

Nochmals herzlichen Dank für Deine Unterstützung
LG Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
005
21.04.2014, 21:09 Uhr
proof80



Hallo Werner,

Kommt bei allen Disketten der Lesefehler? Dann stimmen die Parameter wohl noch nicht. Kein Grund schon gleich aufzugeben. Die Disk-Formate zu CP/M's Zeiten haben es einfach in sich.

Ich lese gerade in der c`t 10/1984 S.42 über das Format #4:
DD/DS "mini-Format" 10 Sektoren à 512 byte 80 Spuren davon 3 für System
128 DIR-Einträge, Blockgröße 2 kb 770 kb CP/M-Speicherkapazität Skew 1

Das stimmt soweit mit Deinen Angaben überein.

Du hast allerdings in der ersten Zeile in der Klammer (anders als beim Moppel-Format) keine Angabe für das DIR hinterlegt. Ich weiß allerdings nicht, ob das was ausmacht.

Wenn ich den c`t-Artikel über die Diskettenformate noch finde, kann ich Dir vielleicht noch mehr Tipps geben. Es müsste im Jahrgang 1985 noch was geben ...

Gruß, Wolfram
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
006
21.04.2014, 21:50 Uhr
Werner_8085



Hallo Wolfram,

laut Beschreibung ist alles hinter PROF nur Beschreibung ...

bevor ich 20 Seiten BIOS Quelltext neu eintippe lohnt sich natürlich eine weitere Analyse der Parameter - üben, üben üben ;-))

LG Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
007
24.04.2014, 18:59 Uhr
Werner_8085



Moin, Moin,

dank der Unterstüzung von Wolfram konnte ich einige Moppel-Disketten am PC lesbar machen. Somit sind schon mal wichtige Queldateien (BIOS, Video-Monitor) gesichern.

Mit dem 3,5" Laufwerk ist auch Datentransport zwischen den Welten möglich.

Nun kann ich das BIOS entsprechend anpassen und mal mit dem Gedanken spielen eine CF-/ SD-Karte an den Moppel zu häkeln. Dazu wird wohl ein Atmega als Dienstmädchen das FAT-Format dem Moppel schmakhaft machen - hierzu gibt es ja glücklicherweise einige Quellen ...

Vielen Dank
LG Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
008
24.04.2014, 21:46 Uhr
proof80



Hallo Werner,

es könnte Sinn machen, die SD-Lösungen mal übersichtlich zusammenzutragen :-)
Wenn's bei mir soweit ist, lege ich gern los.

Gruß, Wolfram
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
009
24.04.2014, 22:52 Uhr
Werner_8085



Hallo Wolfram,

hier meine ersten Gedanken zu dem CF-/SD-Karteninterface:
- die CF/SD- Seite wird durch den AVR abgedeckt (FAT16), das funktioniert
bei meinem Datenlogger von Thomas Held sehr gut.
www.it-wns.de

- auf der Moppel-Seite (8085/Z80) würde ich einen Port für den Datenaustausch
vorsehen, dazu gibt es auf der Seite: http://www.prof80.de/index.html
mit CF-Prof einen Lösungsansatz.

- das BIOS muss dann "nur" noch die Kommunikation mit dem AVR für
die DISK-Funktionen durchfüheren, dazu waren in der c't auch einige Info's

Im Netz gibt viele Lösungsansätze bis hin zum kompletten SD-Laufwerk,
aber auch das muss irgendwie ins BIOS.

Ich trag die Info's zusammen und bau ein Versuchsmuster damit aus der grauen Theorie was handfestes wird ;-))
- Atmega644
- CF-Karte da diese mit 5V auskommen
Anmerkung: SD-Kart Lösung über Widerstandsnetzwerke nur suboptimal)

LG Werner
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
Seiten: -1-     [ CP/M 2.2 ]  



gaby.de

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek