Sie sind nicht angemeldet.

Toshi

Vereinsmitglied

  • »Toshi« ist männlich
  • »Toshi« ist der Autor dieses Themas

Beiträge: 3 359

Wohnort: Oedheim/BaWü

Lieblingscomputer: Sage II

  • Nachricht senden

1

Samstag, 19. August 2017, 20:52

CP/M-68k Harddisk image unter Linux mounten

Hallo!

Hier gibts einen CP/M Simulator:
http://home.earthlink.net/~schultdw/cpm68/simulator.html

und auch ein fertiges Disk image. Ich hab die Dateien mal hochgeschoben, weil die in ein paar Jahren sicher verschwunden sein werden.
CPMSIM.ZIP enthält die Datei diskc.cpm.fs.

Ich hatte gehofft, diese mounten zu können unter linux mit

sudo mount -o loop diskc.cpm.fs /mnt/tempdisk

aber er beklagt sich, daß er das filesystem nicht kennt. Weiss jemand Rat, wie ich an die Datein im Image herankommen kann?

Ziel ist das unvollständige CP/M-68k V1.2 für meine Sage zu komplettieren.

Andere interessante Sachen, wie cc, c libraries und header, make, whereis, uemacs sind auch dabei....

Gruß
Stephan
»Toshi« hat folgende Dateien angehängt:
  • musashi331.zip (83,17 kB - 8 mal heruntergeladen - zuletzt: 10. September 2017, 14:06)
  • cpmsim.zip (924,89 kB - 12 mal heruntergeladen - zuletzt: 30. August 2017, 12:41)
Link arms, don't make them

rfka01

Vereinsmitglied

  • »rfka01« ist männlich

Beiträge: 145

Wohnort: auf'm Lechfeld

Lieblingscomputer: NCR DMV

  • Nachricht senden

2

Samstag, 19. August 2017, 23:07

Hallo Toshi,

hast Du cpmtools schon probiert?

http://www.moria.de/~michael/cpmtools/
NCR DMV/Olivetti M20/ITT 3030/DEC Rainbow 100/Siemens PC-D/OlyPeople/MFA 8085/Siemens PG-675 u. 685

Toshi

Vereinsmitglied

  • »Toshi« ist männlich
  • »Toshi« ist der Autor dieses Themas

Beiträge: 3 359

Wohnort: Oedheim/BaWü

Lieblingscomputer: Sage II

  • Nachricht senden

3

Samstag, 19. August 2017, 23:54

Hallo Toshi,

hast Du cpmtools schon probiert?

http://www.moria.de/~michael/cpmtools/


Danke für den Hinweis. Habe ich gemacht, leider gehts nicht, weil ich die Disk-Definition des Images nicht kenne.
Link arms, don't make them

E. Dresen

Vereinsmitglied

  • »E. Dresen« ist männlich

Beiträge: 1 111

Wohnort: Werne

Lieblingscomputer: C64, IBM PC-kompatible Rechner, Apple IIe

  • Nachricht senden

4

Sonntag, 20. August 2017, 00:33

Disk-Definition des Images
Habe das Image nicht gefunden ... könntest du es vielleicht bitte mal als PN schicken oder hier einstellen?

rfka01

Vereinsmitglied

  • »rfka01« ist männlich

Beiträge: 145

Wohnort: auf'm Lechfeld

Lieblingscomputer: NCR DMV

  • Nachricht senden

5

Sonntag, 20. August 2017, 00:38

Ich hab nicht wirklich Ahnung, was ich da tue ... aber füg mal diese Zeilen in die "diskdefs" vom cpmemu ein:

Quellcode

1
2
3
4
5
6
7
8
9
10
diskdef cpmemu
  seclen 128
  tracks 4096
  sectrk 32
  blocksize 4096
  maxdir 1024
  skew 0
  boottrk 1
  os 3
end


Wenn Du im Quellcode von cpmsim nachschaust, dann ist das ganze kein richtiges Diskimage, sondern einfach eine Ansammlung von 128-Byte-Sektoren in einer Datei von genau 16.777.216 Byte Größe ... das sind also 131072 solcher Sektoren. cpmtools will sie jetzt Trackweise sortiert haben ... eine gängige Sektorenanzahl ist 32, das ergibt dann 4096 tracks, davon ist laut Quellcode einer ein Bootsektor.

Wenn ich das ganze über das Diskimage rattern lasse (cpmls -f cpmemu diskc.cpm) ... dann ist zumindest lesbares dabei, auch wenn ich mir nicht sicher bin, ob es alles ist, da zwischen der 0: und dem Beginn der Dateien eine ganze Menge Leerzeilen sind - kannst ja selber mal noch mit den Parametern spielen.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
0:
...
ar68.68k
arc.68k
as68.68k
as68init
as68symb.dat
autost.sub
bbye.68k
c068.68k
c168.68k
cc.68k
cc.rel
config.68k
copy.sub
cp68.68k
cpm.sys
ddt.68k
ddt68000.68k
dump.68k
ed.68k
emacs.68k
emacs.hlp
emacs.rc
eraq.68k
f83.68k
f83.bin
green.68k
init.rel
link68.68k
lo68.68k
make.68k
make.rel
more.68k
nm68.68k
pip.68k
pip.rel
putboot.68k
reloc.68k
robots21.68k
sendc68.68k
sid.68k
sid68k.68k
size68.68k
split.68k
stat.68k
tail.68k
uemacs.68k
whereis.68k

1:
assert.h
basepa.h
bdos.h
bios.h
byteswap.h
byteswap.s
ctype.h
endian.h
errno.h
getargs.h
option.h
osif.h
osiferr.h
portab.h
setjmp.h
sgtty.h
signal.h
stdint.h
stdio.h

2:
byteswap.o
clib
libe.a
libf.a
s.o

3:
bdosdef.h
bdosif.s
bdosinc.h
bdosmain.c
bdosmisc.c
bdosrw.c
biosdef.h
ccp.c
ccpbdos.s
makefile
newcon.c
NCR DMV/Olivetti M20/ITT 3030/DEC Rainbow 100/Siemens PC-D/OlyPeople/MFA 8085/Siemens PG-675 u. 685

E. Dresen

Vereinsmitglied

  • »E. Dresen« ist männlich

Beiträge: 1 111

Wohnort: Werne

Lieblingscomputer: C64, IBM PC-kompatible Rechner, Apple IIe

  • Nachricht senden

6

Sonntag, 20. August 2017, 01:16

Also ... ich denke (wie du schon sagtest), dass die diskc.cpm.fs ein Filesystem ist, das unter Linux gemounted werden muss.

Vielleicht muss ein Parameter anders gesetzt werden ... oder vorher noch etwas per Befehl konfiguriert werden.

Da müssten mal die Linuxprofis ran ... :grübel:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »E. Dresen« (20. August 2017, 01:22)


ktf

Lochmacher

  • »ktf« ist männlich

Beiträge: 407

Wohnort: Düsseldorf

Lieblingscomputer: Apple //e & OKI IF-800 Model 30

  • Nachricht senden

7

Sonntag, 20. August 2017, 11:21

Da müssten mal die Linuxprofis ran ... :grübel:
Da fuehle ich mich doch mal angesprochen...

Also mir ist keine Moeglichkeit bekannt, CP/M Images direkt unter Linux zu mounten. Wobei es natürlich nicht ausgeschlossen ist, dass es durchaus mal das eine oder andere Projekt gegeben hat, so etwas zu realisieren (es gibt einfach zuviele derartige Projekte, wobei viele im Sand verlaufen, sobald die Leute merken, wie komplex und arbeitsaufwendig so etwas wird).

Das Kommando cpmcp von den cpmtools wäre auch das Mittel meiner Wahl, Dateien aus solchen Images zu extrahieren.

-- Klaus
[ ... to boldly code where no byte has gone before ... ]

Toshi

Vereinsmitglied

  • »Toshi« ist männlich
  • »Toshi« ist der Autor dieses Themas

Beiträge: 3 359

Wohnort: Oedheim/BaWü

Lieblingscomputer: Sage II

  • Nachricht senden

8

Sonntag, 20. August 2017, 11:26

Nun, ich hab mir das noch nicht im Detail angesehen, aber womöglich ist das gar kein CPM-Image Format.
Link arms, don't make them

rfka01

Vereinsmitglied

  • »rfka01« ist männlich

Beiträge: 145

Wohnort: auf'm Lechfeld

Lieblingscomputer: NCR DMV

  • Nachricht senden

9

Sonntag, 20. August 2017, 11:32

So steht's im Quellcode von cpmsim.c, dem Emulator, den Du an den ersten Post drangehängt hast:

" Simulated disk system:

I was going to just read a file system image into memory and map it into
the unusable (in a MC68000) address space above the 16MB physical limit.
Alas, the simulator is simulating that physical limit and a quick check of
the code hasn't revealed a simple way to defeat that. So plan B.

Since the intent is to support CP/M-68K and it does disk I/O in 128 byte
chunks, so will this. Control is via several registers mapped into memory:

Offset function
0 DMA address to read/write data to
4 drive select disk drive
8 read sector sector (128 byte) offset on disk
12 write sector sector (128 byte) offset on disk
16 status read status of operation

Operation is simple: set the drive and DMA address and then write the
sector number to the sector register. This write triggers the requested
operation. The status of the operation can be determined by reading the
status register.
A zero indicates that no error occured.

Note that these operations invoke read() and write() system calls directly
so that they will alter the image on the hard disk. KEEP BACKUPS!

In addition Linux will buffer the writes so they may note be really complete
for a while. The BIOS flush function invokes a fsync on all open files."

Es ist also m.E. weder ein Linux-Dateisystem noch ein echtes CP/M-Disk-Image, sondern was handgeklöppeltes für genau diesen Emulator.
NCR DMV/Olivetti M20/ITT 3030/DEC Rainbow 100/Siemens PC-D/OlyPeople/MFA 8085/Siemens PG-675 u. 685

Toshi

Vereinsmitglied

  • »Toshi« ist männlich
  • »Toshi« ist der Autor dieses Themas

Beiträge: 3 359

Wohnort: Oedheim/BaWü

Lieblingscomputer: Sage II

  • Nachricht senden

10

Sonntag, 20. August 2017, 11:44

Antwort vom Entwickler bekommen auf meine Frage:

You aren't going to be able to mount a CP/M file system on any modern OS.

I am away from home chasing the eclipse so don't have my references at hand. The way that I move files around is via a vanilla IBM 8" file image using cpmtools. I then mount that as drive A in the sim. If you worked up something to describe the format of my file system to cpmtools you could do it directly.

It may be the case that someone has already done that but I can't be recall for sure.


*************

Das werde ich auch mal probieren. Aber erst mal den Simulator zum laufen bringen (das wird leider nichts mehr heute weil ich noch arbeiten muss)
Link arms, don't make them

Thema bewerten