der dunkle Hive...
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: der dunkle Hive...
Um den Datenaustausch CP/M – PC besser zu gestalten, bieten sich die cpmtools an. Für ganz „faule“ kann sogar ein Plugin des Total Commanders verwendet werden.
http://www.moria.de/~michael/cpmtools/
http://hc-ddr.hucki.net/wiki/doku.php/cpm:disketten_xp2
Damit kann dann ganz einfach auf die CP/M Disketten zugegriffen werden. Zur korrekten Installation sowohl der Tools als auch des Plugins sind die korrekten Disc Definitionen notwendig. Anbei die notwendigen Einstellungen für das von Micha verwendete Format.
# Z180 Bootformat
diskdef Z180b
seclen 512
tracks 64
sectrk 32
blocksize 2048
maxdir 128
skew 0
boottrk 1
os 2.2
end
# Z180 Disk Format
diskdef Z180
seclen 512
tracks 64
sectrk 32
blocksize 2048
maxdir 128
skew 0
boottrk 0
os 2.2
end
Weiterhin habe ich mal ZSDOS portiert. Dieses System ist konsequent auf Z80 Befehle optimiert und enthält viele nützliche Erweiterungen. Allerdings musste ich das BIOS etwas anpassen. Das Bootsystem sowie die Quellen unter dem Pfad /ZSDOS. Für die Freude von Turbo Pascal, Wordstar oder C habe ich auch gleich einige Images erzeugt. Bei der Konfiguration der Programme habe ich die Terminaleinstellung VT100 freundlich angepasst.
http://www.mikrocontroller.net/svnbrows ... amp/image/
Viel Spaß damit und ein schönes Osterfest!
Joe
http://www.moria.de/~michael/cpmtools/
http://hc-ddr.hucki.net/wiki/doku.php/cpm:disketten_xp2
Damit kann dann ganz einfach auf die CP/M Disketten zugegriffen werden. Zur korrekten Installation sowohl der Tools als auch des Plugins sind die korrekten Disc Definitionen notwendig. Anbei die notwendigen Einstellungen für das von Micha verwendete Format.
# Z180 Bootformat
diskdef Z180b
seclen 512
tracks 64
sectrk 32
blocksize 2048
maxdir 128
skew 0
boottrk 1
os 2.2
end
# Z180 Disk Format
diskdef Z180
seclen 512
tracks 64
sectrk 32
blocksize 2048
maxdir 128
skew 0
boottrk 0
os 2.2
end
Weiterhin habe ich mal ZSDOS portiert. Dieses System ist konsequent auf Z80 Befehle optimiert und enthält viele nützliche Erweiterungen. Allerdings musste ich das BIOS etwas anpassen. Das Bootsystem sowie die Quellen unter dem Pfad /ZSDOS. Für die Freude von Turbo Pascal, Wordstar oder C habe ich auch gleich einige Images erzeugt. Bei der Konfiguration der Programme habe ich die Terminaleinstellung VT100 freundlich angepasst.
http://www.mikrocontroller.net/svnbrows ... amp/image/
Viel Spaß damit und ein schönes Osterfest!
Joe
Re: der dunkle Hive...
Danke für die zusätztlichen Infos!
Hoffe es ist noch nicht zu spät, die Dinge in einem Punkt etwas einfacher zu machen:
Ich hab die Tage über das Disk-Format nachgedacht: bisher beginnt das DIR bei der System-Disk A: in der Spur 1, bei allen anderen Disks ab Spur 0.
Ich möchte das gern vereinfachen (um den Preis, paar Kilobyte bei den Laufwerken ab B: zu verlieren) und den DIR Bereich bei allen Laufwerken ab dem gleichen Offset beginnen lassen.
Ich meld mich wieder zu dem Thema
Hoffe es ist noch nicht zu spät, die Dinge in einem Punkt etwas einfacher zu machen:
Ich hab die Tage über das Disk-Format nachgedacht: bisher beginnt das DIR bei der System-Disk A: in der Spur 1, bei allen anderen Disks ab Spur 0.
Ich möchte das gern vereinfachen (um den Preis, paar Kilobyte bei den Laufwerken ab B: zu verlieren) und den DIR Bereich bei allen Laufwerken ab dem gleichen Offset beginnen lassen.
Ich meld mich wieder zu dem Thema
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: der dunkle Hive...
Hallo Micha,
das wollte ich dir schon in einer separaten Mail vorschlagen![Lächeln :-)](./images/smilies/icon_e_smile.gif)
Ich halte es auch für sinnvoll, beide Formate nicht mehr zu unterscheiden. Den Verlust an Speicher kann man verschmerzen. Interessant ist auch das HD Format von SIMH. Ein dort erzeugtes Image könnte dann sofort auf die SD gespielt werden.
das wollte ich dir schon in einer separaten Mail vorschlagen
![Lächeln :-)](./images/smilies/icon_e_smile.gif)
Ich halte es auch für sinnvoll, beide Formate nicht mehr zu unterscheiden. Den Verlust an Speicher kann man verschmerzen. Interessant ist auch das HD Format von SIMH. Ein dort erzeugtes Image könnte dann sofort auf die SD gespielt werden.
Re: der dunkle Hive...
das mit dem einheitlichen Format für alle Disk-Images ist gebongt - vereinfacht ein paar Sachen.
Das SIMH-Format direkt zu übernehmen wär noch feiner, dann könnte man die Images von schorn.ch direkt so wie sie sind aufspielen und verwenden. Ein erster Blick mit HxD in so eine Imagedatei war allerdings nicht besonders ermutigend - das sieht da drin nicht so "straightforward" aus wie ich gehofft hatte.
Werde das Image noch ein wenig erforschen und ggf. mal eine email an Christian Schron senden mit der Frage ob es zur Struktur des Image Doku gibt...
Das SIMH-Format direkt zu übernehmen wär noch feiner, dann könnte man die Images von schorn.ch direkt so wie sie sind aufspielen und verwenden. Ein erster Blick mit HxD in so eine Imagedatei war allerdings nicht besonders ermutigend - das sieht da drin nicht so "straightforward" aus wie ich gehofft hatte.
Werde das Image noch ein wenig erforschen und ggf. mal eine email an Christian Schron senden mit der Frage ob es zur Struktur des Image Doku gibt...
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: der dunkle Hive...
Das HD-Format von SIMH ist eigentlich sehr einfach aufgebaut. Zunächst musst du beim Start von SIMH zusätzlich noch ein HD-Laufwerk anlegen. Das geht so:
attach hdsk i.dsk
Damit legt SIMH ein HD-Image mit dem Namen I.DSK an. Die Struktur ist folgendermaßen:
# SIMH AltairZ80 Harddisk
diskdef simhd
seclen 128
tracks 2048
sectrk 32
blocksize 4096
maxdir 1024
skew 0
boottrk 6
os 2.2
end
Dieses Format könnte man dann z.B. fest für das 16 Laufwerk vergeben – also für „P“. Nun muss man nur doch I.DSK vom PC auf die SD mit dem Namen P.CPM kopieren und schon kann das Z180 CP/M die HD lesen.
attach hdsk i.dsk
Damit legt SIMH ein HD-Image mit dem Namen I.DSK an. Die Struktur ist folgendermaßen:
# SIMH AltairZ80 Harddisk
diskdef simhd
seclen 128
tracks 2048
sectrk 32
blocksize 4096
maxdir 1024
skew 0
boottrk 6
os 2.2
end
Dieses Format könnte man dann z.B. fest für das 16 Laufwerk vergeben – also für „P“. Nun muss man nur doch I.DSK vom PC auf die SD mit dem Namen P.CPM kopieren und schon kann das Z180 CP/M die HD lesen.
Re: der dunkle Hive...
hab inzwischen mal meine "Geheimwaffe" ausgegraben - ein BASIC Programm, mit dem unter CP/M die Parameter der aktuellen Disk ausgelesen werden können (Anhang).
Und da hab ich dann begriffen, dass das Standard-Diskettenformat für dem SIMH Altair ein ziemlich wirres Interleave-Muster hat. Was mir überhaupt nicht sympathisch ist. Interleave muss nicht sein, wenn es keinen zwingenden Grund dafür gibt, finde ich...
Die virtuelle 8MB Festplatte I: kommt dagegen ohne Interleave, was ich schon mal prinzipiell gut finde. Die Idee, so einen 8MB großen Container zum Datenaustausch zu verwenden ist prinzipiell nicht verkehrt.
Allerdings kommen die auf schorn.ch bereitgestellten Anwendungen als Downloads eben nicht in so einer Harddisk, sondern in den ca. 1MB großen Disk-Images mit Interleave. Müsste man dann also so oder so im SIMH Altair-Emu Daten hin und her schieben.
Deshalb geht meine Denke derzeit eher dahin, ein kleines Tool zu schreiben, mit dem ich so eine 1088KB grosse SIMH-Disk direkt in mein Format konvertieren kann.
Edit: weshalb ich schorn.ch hier so oft erwähne: es ist eine kleine aber feine Sammlung von CP/M Applikationen, die bereits jemand für VT100 angepasst hat,
Und da hab ich dann begriffen, dass das Standard-Diskettenformat für dem SIMH Altair ein ziemlich wirres Interleave-Muster hat. Was mir überhaupt nicht sympathisch ist. Interleave muss nicht sein, wenn es keinen zwingenden Grund dafür gibt, finde ich...
Die virtuelle 8MB Festplatte I: kommt dagegen ohne Interleave, was ich schon mal prinzipiell gut finde. Die Idee, so einen 8MB großen Container zum Datenaustausch zu verwenden ist prinzipiell nicht verkehrt.
Allerdings kommen die auf schorn.ch bereitgestellten Anwendungen als Downloads eben nicht in so einer Harddisk, sondern in den ca. 1MB großen Disk-Images mit Interleave. Müsste man dann also so oder so im SIMH Altair-Emu Daten hin und her schieben.
Deshalb geht meine Denke derzeit eher dahin, ein kleines Tool zu schreiben, mit dem ich so eine 1088KB grosse SIMH-Disk direkt in mein Format konvertieren kann.
Edit: weshalb ich schorn.ch hier so oft erwähne: es ist eine kleine aber feine Sammlung von CP/M Applikationen, die bereits jemand für VT100 angepasst hat,
- Dateianhänge
-
- get-dpb.txt
- (2.16 KiB) 692-mal heruntergeladen
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
Re: der dunkle Hive...
Ich hab mich inzwischen doch noch mit der Idee angefreundet, als Laufwerk P: so ein Image im SIMH HD-Format zu verwenden. Hab heute Abend mehrere Stunden damit experimentiert, die Atmega-Firmware (Fileserver) sowie das CBIOS für den Z180 entsprechend zu modifizieren. Inzwischen funktioniert das sogar alles, aber gefällt mir noch nicht so richtig, wegen folgender Erkenntnis:Feinmechaniker hat geschrieben:Interessant ist auch das HD Format von SIMH. Ein dort erzeugtes Image könnte dann sofort auf die SD gespielt werden.
Wenn man Laufwerke mit unterschiedlichen Blockgrößen:
SIMH HD verwendet 4KByte, mein Disk-Format verwendet 2KByte
sowie mit unterschiedlichen Datenmengen pro Track:
bei der SIMH HD sind es 4KByte, bei meinem Format 16KByte pro Track
dann macht das den BIOS-Code (Z180) sowie auch den Fileserver-Code (Atmega) unnötig kompliziert.
Werd mich dann wohl morgen ransetzten und die Sache ent-komplizieren, indem ich mein Diskettenformat ebenfalls auf 4K Blockgröße und 4K pro Track umstelle.
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: der dunkle Hive...
Super!Ich hab mich inzwischen doch noch mit der Idee angefreundet, als Laufwerk P: so ein Image im SIMH HD-Format zu verwenden.
Noch eine andere Baustelle. Ist dir schon aufgefallen, dass manchmal die serielle Schnittstelle hängt? Ich glaube es gibt im AVR Code an einer Stelle eine Pointerunverträglichkeit. Ich sende meine Änderung heute Abend mal per Mail zu.
Re: der dunkle Hive...
Ist mir bisher trotz rel. häufiger Verwendung noch nie passiert. Hast Du den Widerstand R6 eingebaut? Der gibt, falls nicht wirklich Hardware-Handshake beschaltet und verwendet wird, das /RTS Ausgang der SIO auf ihren /CTS Eingang zurück. Das war eine meiner frühen Erkenntnisse, dass die SIO des Z180 zickig reagiert, wenn deren /CTS Eingang nicht definiert auf low gehalten wird.Feinmechaniker hat geschrieben:Ist dir schon aufgefallen, dass manchmal die serielle Schnittstelle hängt?
Eigentlich hab ich kein Hardware-Handshake in Verwendung, aber /CTS muss trotzdem definiert auf low bleiben.
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
Re: der dunkle Hive...
Das mit den Hängern der ser. Schnittstelle konnte ich bisher noch nicht provozieren, trotz rel. intensiver Experimente mit dem Gerät. Wär da für konkrete Hinweise dankbar.
Aktuell hab ich die Firmware soweit modifiziert, dass das Image für Laufwerk P: identisch ist mit dem 8MB Harddisk-Laufwerk I: des SIMH basierten Emulators "AltairZ80" von Christian Schorn http://www.schorn.ch
Damit ist eine sehr einfache Möglichkeit des Imports von CP/M Software gegeben.
Die Performance der SD-Card ist mit der Verwendung von FAT allerdings alles andere als toll. Das wird jetzt, mit dem vorhanden 8MB-Laufwerk P: so richtig deutlich. Da jeder Zugriff ein seek ab Dateianfang auslöst, nimt bei großen Images der Overhead deutlich zu. Das ist der Preis dafür, dass ich "zerclusterte" Laufwerks-Container zulasse. Muss mir da jetzt überlegen wie weiter. Entweder ich akzeptier die mäßige Geschwindigkeit, oder ich greif auf einen Vorschlag von Drohne 235 zurück (den ich unabhängig auch von Grant Searle bekommen hatte), einfach sicherzustellen dass die Dateien unzerclustert sind. Dann wird die Adressrechnung trivial - und schnell!!!
Oder ich muss mich eben tiefer in die Interna von FAT hineinknien. Bin da ehrlich gesagt schon dran. Da ich ziemlich schlampig bin im Umgang mit Dateien und Datenträgern, ist mir die Idee, unzerclusterte Dateien vorauszusetzen im Grunde sehr sehr suspekt...
Aktuell hab ich die Firmware soweit modifiziert, dass das Image für Laufwerk P: identisch ist mit dem 8MB Harddisk-Laufwerk I: des SIMH basierten Emulators "AltairZ80" von Christian Schorn http://www.schorn.ch
Damit ist eine sehr einfache Möglichkeit des Imports von CP/M Software gegeben.
Die Performance der SD-Card ist mit der Verwendung von FAT allerdings alles andere als toll. Das wird jetzt, mit dem vorhanden 8MB-Laufwerk P: so richtig deutlich. Da jeder Zugriff ein seek ab Dateianfang auslöst, nimt bei großen Images der Overhead deutlich zu. Das ist der Preis dafür, dass ich "zerclusterte" Laufwerks-Container zulasse. Muss mir da jetzt überlegen wie weiter. Entweder ich akzeptier die mäßige Geschwindigkeit, oder ich greif auf einen Vorschlag von Drohne 235 zurück (den ich unabhängig auch von Grant Searle bekommen hatte), einfach sicherzustellen dass die Dateien unzerclustert sind. Dann wird die Adressrechnung trivial - und schnell!!!
Oder ich muss mich eben tiefer in die Interna von FAT hineinknien. Bin da ehrlich gesagt schon dran. Da ich ziemlich schlampig bin im Umgang mit Dateien und Datenträgern, ist mir die Idee, unzerclusterte Dateien vorauszusetzen im Grunde sehr sehr suspekt...
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...