Discussion:
archiving floppy disks, natively on CP/M
(too old to reply)
Jeff Jonas
2024-11-18 16:23:33 UTC
Permalink
I still have a Z80 CP/M SBC (single board computer).
When I decommissioned it, I used the modem/file transfer program
to xmodem-batch send all the files to PROCOMM on a MS-DOS PC.

I plan to reconstruct that setup
but this time to Linux using rz:
rx, rb, rz - XMODEM, YMODEM, ZMODEM (Batch) file receive

What of the boot tracks?
Is there any CP/M equivalent to Unix/Linux "dd"
or hex dump?

I have a greaseweazle but have not set up the toolchain.
Most of my CP/M floppies are NOT bootable
so archiving the files is fine.

thanks
--
David Schultz
2024-11-18 18:19:10 UTC
Permalink
Post by Jeff Jonas
What of the boot tracks?
Is there any CP/M equivalent to Unix/Linux "dd"
or hex dump?
I don't know about the other versions, but CP/M-68K included:


"COPY is a track-by-track disk copying program that can copy the
operating system loader and utility programs from your system disk. COPY
creates a complete and exact copy of your system disk."

The C source for this is available.

-
http://davesrocketworks.com
David Schultz
Jacob Nevins
2024-11-18 20:54:57 UTC
Permalink
Post by Jeff Jonas
I still have a Z80 CP/M SBC (single board computer).
When I decommissioned it, I used the modem/file transfer program
to xmodem-batch send all the files to PROCOMM on a MS-DOS PC.
I plan to reconstruct that setup
rx, rb, rz - XMODEM, YMODEM, ZMODEM (Batch) file receive
What of the boot tracks?
Is there any CP/M equivalent to Unix/Linux "dd"
or hex dump?
I have a greaseweazle but have not set up the toolchain.
I use 'auxd', the serial port server from John Elliott's libdsk suite,
to let libdsk tools running on a Linux PC to pull full disc images over
a serial link from the CP/M machine.
https://www.seasip.info/Unix/LibDsk/index.html#auxd
(On an Amstrad PCW, so I've not tried the generic CP/M version
AUXDCPM.COM.)

(Obviously this won't be as high-fidelity as a flux image from something
like a Greaseweazle.)
Tony Nicholson
2024-11-18 21:07:15 UTC
Permalink
Post by Jeff Jonas
Is there any CP/M equivalent to Unix/Linux "dd"
or hex dump?
Back when I wanted to make images of my eight-inch floppies (in Dave
Dunfield's Image Disk format - or .IMD files) I adapted the disk copy
program for a Compupro/Godbout Disk-1 controller to produce a program
called D2IMD. It is able to read a disk image from one drive and write
an .IMD disk image file to the other drive. Usually the image fits due
to detection of adjacent identical content sectors (e.g. those that
contain 0xE5 bytes from formatting) which are stored a "Compressed" in
the IMD file - but in the event that the IMD file fills the output disk,
it closes the file and prompts for a second "continuation" volume. When
you transfer the multivolume files to your Linux/macOS system - just
concatenate them to get a complete .IMD image file. I've used these
images successfully to boot floppy images under a suitably configured
SIMH AltairZ80 simulator running on my Mac and Linux computers.

D2IMD is system specific and embeds a copy of the disk controller
portion of the CP/M-Plus BIOS into the program. If you have the sources
to the CP/M-Plus BIOS for your single-board computer you should be able
to adapt it to be used by D2IMD. The source-code is up on GitHub in the
d2imd folder at -


https://github.com/agn453/CPM-UG-Disks

Tony
Douglas Miller
2024-11-18 22:47:40 UTC
Permalink
Post by Jeff Jonas
I still have a Z80 CP/M SBC (single board computer).
When I decommissioned it, I used the modem/file transfer program to
xmodem-batch send all the files to PROCOMM on a MS-DOS PC.
rx, rb, rz - XMODEM, YMODEM, ZMODEM (Batch) file receive
What of the boot tracks?
Is there any CP/M equivalent to Unix/Linux "dd"
or hex dump?
I have a greaseweazle but have not set up the toolchain.
Most of my CP/M floppies are NOT bootable so archiving the files is
fine.
thanks
Digital Research did not provide any such utility, the closest being
SYSGEN.COM which is actually something vendors were expected to customize.
But the general code to do a raw read of a disk is pretty boiler-plate.

What I did way back when was to write a simple program to read the entire
disk (raw) and dump in HEX out a serial port. I then captured that output
on Linux, after which it was a fairly simple matter to turn that HEX dump
into a binary file that cpmtools can use (or potentially anything like an
IMD image). I don't know if I can locate any of that (from 25 years ago),
but it is not too difficult to reconstruct.
--
- Doug
Loading...