|
The Memotech MTX Series |
|
Transferring Files Between
Memotech Disks and PC
I am in the process of going through my old Memotech CP/M
disks and as I am doing so, I am finding files that I would like to copy to my PC, as
there are no Windows applications that can read Memotech
formatted disks or images at file level, this is not
straightforward. I have made a few notes here on how I am doing
it - it may be useful too others. Alternatively, if you know of
a better way - please share it. All of this information is
already available elsewhere, I have just pulled some bits
together on one page.
Intuitively, you would think that option "B"
above would be easier than option "A" - surely, it is easier
to transfer files to a modern, all-singing-all-dancing-PC
than a vintage IBM? Actually, the reverse is true, modern PCs are no longer supplied with
floppy disk drives, and those that were, did not support
reading and writing CP/M formatted disks under Windows. In
the "old" days, when DOS was king!, things were actually a
little easier than they are now. Some DOS based tools, such
as
Teledisk, could do direct I/O with the PC floppy disk
controller, unfortunately, replacement of traditional floppy
disk controllers in PCs with USB devices has put and end to
that.
.Getting the file onto the PC
There are a few options for doing this, you
can even use RS232 - if your MTX and PC both have RS232
ports, but I bought an
HxC SD Card
Floppy Disk Emulator for use with my FDX and SDX, the
emulator behaves like another 1 or 2 floppy disk drives,
with floppy disk images stored on an SD Card. As well as
being faster and more reliable "disk drives",
the HxC makes it easy to copy the contents of my
old Memotech Type 03 and 07 (and others if I had any) disks
to PC. Using the FDX is slightly more convenient, as it
supports up to four floppy drives, whereas the SDX only
supports two, particularly if the original disks are on a
mixture of formats.
HxC Image Portability
The HxC uses a FAT32 formatted SD Card, so the emulated
floppy image(s) (".hfe" files) can easily be
copied off the SD card onto the PC. The default file format used by the HxC is ".hfe",
a custom file format written by Jeff (Jean-François
Del Nero) for the emulator, it is
openly available and details can be found in the
HxC file
format document. This format is only used by the HxC floppy disk drive
emulator so the image files are only directly useable by people
with HxC hardware. However, the
HxC PC software can be used to
convert images between various other formats, including
Teledisk and
ImageDisk. Teledisk was widely used to create floppy disk images
and some Memotech disk images are already available in Teledisk (.td0)
format, but Teledisk is not free software and its current status is a bit of a
grey area, in any event, the HxC software can import, but not export
disk images
in Teledisk format. It can though, import and export images in ImageDisk (.imd)
format, written by Dave Dunfield, ImageDisk is Freeware.
There are also advantages in using ImageDisk (or
Teledisk) format for archiving or exchanging files, the HxC
format does not use any form of compression, and even a Memotech
Type 07 (620kb) system disk image is almost 2 megabytes in size. The ImageDisk file format compresses the same image down to 213kb -
around 10% of the size of the .hfe file. Of
course, the .hfe image can also be compressed with WinZip etc.,
which brings the image size down to around 183kb.
The HxC Floppy Disk Emulator software can also
read/write files in RAW data format, i.e., the data bytes as they
are written on the disk, this means that it is also compatible
with Andy
Key's MFLOPPY format which other Memotech owners may already
be using. A RAW image is required for use with cpmtools
(described below).
Disk image file level access
The HxC is a great
add-on for my FDX (and SDX) disk systems, but the obvious
restriction is that the PC software can only create, read and
write complete disk images. For more common formats, such as for
the PC, the PC software can work with the "disk" at file level -
creating, browsing and exporting new "disks" as required.
Similar functionality for the Memotech disk
format is not available in the HxC software, and as there is
nothing like that available for Memotech users under Windows
so we need to use low level disk manipulation tools like
"dd" and "cpmtools",
you can obtain these tools from the links shown, or from my
MTX Tools page. The "cpmtools"
web page provides full instructions on the use of the tools.
Cpmtools
"Cpmtools is a suite of command line utilities
which allow access to CP/M file systems. It is available on many
platforms. This document is targeted at the use of the
cpmtools Win32 executables at the Windows command prompt
by Windows users who know how to use command line utilities and
disk images and who may not wish to create cpmtools executables
from source code... just to use them." (from
http://www.cpm8680.com/cpmtools/index.htm).
Cpmtools can work with images in a variety of
different CP/M disk formats, with the different formats being
described in a .def(inition) file. Andy has
created a disk definition file for various Memotech formats,
including Type 03 and Type 07, originally, for use with his
MFLOPPY program, you can find a copy in his MFLOPPY archive, or
on my Tools page. The contents of this file should be appended
to the default diskdefs file in the cpmtools
distribution, or you can just replace the original file if you
are only going to use Memotech format disks.
The most often used components of cpmtools are :- |
cpmchattr |
change file attributes on CP/M files
|
cpmchmod |
change file mode on CP/M files |
cpmcp |
copy files from and to CP/M disks |
cpmls |
list sorted contents of directory
|
cpmrm |
remove files on CP/M disks |
For help with usage of
these command, follow the links
cpmtools |
For copying individual files to and from
Memotech disk images, cpmcp is the tool to use,
assuming all the file are in the current directory, at its
simplest, cpmcp is executed as shown :-
cpmcp |
cpmcp -f [format] image user:file file |
Copy file from the
CP/M image
|
cpmcp -f [format] image file user:file |
Copy file to the CP/M
image |
where |
-f specifies the format of the disk
image, e.g.,
memotech-type07 (defined in diskdefs) |
|
image specifies the image file to
target, e.g., sys.raw |
|
user:file specifies the CP/M user area
and file, e.g., 0:source.txt (default
user is 0) |
|
file specifies the PC file, e.g.,
dest.txt |
e.g.,
cpmcp -f
memotech-type07 system.raw 0:contact.doc contact.doc
will copy
the file "contact.doc" from User area 0 of the
system.raw image to contact.doc on the PC |
e.g.,
cpmcp -f
memotech-type07 system.raw contact.doc 0:contact.doc
will copy
the file "contact.doc" from the PC to contact.doc to
User area 0 of the system.raw image |
For a complete
description, follow the link to
cpmcp on the
cpmtools web site |
That's it - single files can be copied too and
from Memotech formatted disks, it's obviously not as convenient
as a "drag & drop" user interface under Windows - but it works.
Cpmcbfs
To make it simpler to exchange files between a
PC running Microsoft Windows and a CP/M formatted removable
media card, Andy developed his CP/M Callback File
System (cpmcbfs).
Like its Linux counterpart (cpmfuse),
cpmcbfs is combined with cpmtools and allows a CP/M file system
to be mounted by the Operating System and used to easily
transfer files between them using GUI tools such as Drag and
Drop.
For detailed descriptions of cpmcbfs and cpmfuse,
refer to
Andy's Memotech site, some brief usage notes for cpmcbfs are
included below :
Installation
The
program requires the installation of a driver into
Windows with Administrator rights on the PC. Assuming
that cpmcbfs is installed in c:\cpmcbfs,
open an elevated privilege command prompt by "right
clicking" on the "Command Prompt" Start
menu item and select "Run as Administrator" |
Log on to the cpmcbfs
installation directory |
cd c:\cpmcbfs |
Install the Driver |
cpmcbfs --install |
Reboot the PC |
|
|
|
Usage :
cpmcbfs [flags] |
flags |
|
|
format (default %CPMTOOLSFMT%
or memotech-type18) |
-f,--format format |
image (must be specified)
|
-i,--image image |
CP/M user (default 0) |
-u,--user user |
toggle case to match what
CP/M uses |
-v,--invert-case |
mount as drive d:
(default Z:) |
-d,--drive d: |
read only access |
-r,--read-only |
install the cbfs driver
(requires Administrator rights) |
--install |
uninstall the cbfs driver
(requires Administrator rights) |
--uninstall |
is the driver installed and
running ? |
--status |
|
|
Examples |
|
cpmcbfs -f memotech-type18
-i sddisc.bin -v |
cpmcbfs -f
memotech-type18 -i sddisc.bin -v -d m: |
|
Using
Removable Media with cpmcbfs
There are a number modern disk
drive replacements for MTX computers, including Andy's
REMEMOrizer and Martin and I's
CFX, which use
SD
Card or
Compact
Flash memory cards. In most cases, the media must be
formatted in one of the Memotech or Andy's enhanced Memotech
formats, rather than
FAT or
FAT32 etc.
cpmcbfs allows you to read and write
the removable media installed in a card reader attached to
the PC
NB: The following procedures perform low level
writes to the target, be sure that you know that you are
writing to the correct device before you execute any of
these commands !!!
To identify the removable drive that
you are going to use, you can use the cpmcbfs -i
switch, specifying "?" as the
image name. If you do this before and after you connect your
removable media device, you will be able to tell which
device that you should target.
In this example, one physical drive has been identified,
along with the three logical drives (C:, E: and Q:) present on
it.
After the removable media drive has been connected, a new
physical and logical device are reported, you can use the
physical drive identifier when specifying the "image" name in
cpmcbfs.
e.g.
c:pmcbfs -i \\.\PhysicalDrive1 [-f
memotech-type18] -v -d m: to access the first partition
e.g. c:pmcbfs -i \\.\PhysicalDrive1 -f
memotech-type19 -v -d m: to access the
second partition, etc.
You can now read & write the
removable media using Windows Explorer etc.
|