开云体育

ctrl + shift + ? for shortcuts
© 2025 开云体育

Re: Captain Video


 

There are two forms of CP/M experience:
? Small, slow and cramped typical of early floppies of 120 and 241K size.
? High performance using fast large media (hard disks, IDE, CF, SD).

The bulk of CP/M systems I've done are:
Z80
64K ram with eprom overlay for boot, system load, hidden bios,? and utility (256K).
IO as needed to get to the world, dual serial is usual? (SIO or DART, or 8251A)
Maybe a PIO or 8255 PPI
A few include either a timer (8253, or similar) or periodic interrupt.
? Time keeping is not required by CP/M but is useful for applications.
Mass storage
? Over time that was floppy,?
? IDE hard disk? (its not that hard especially if you skip the high byte)?
? Later CF? (does 8bit memory mode nicely still can be found often faer bigger than needed)
? and finally SD? (programming for it is a PITA).

Other storage can be EEprom really slow write but fine for read more
than write and Eprom (read only media) or large RAM (Ram disks).
These can be be ports or part of the main address and mapped in
and out.? Ports using 8255 PPI or LS273 are easier, adding a small
counter (7 bits) can make it easier still.

CP/M wants based on experience larger disks in the 1M to 8MB range.
IF the disk used is larger you partition it in the BIOS (there are other ways)
But a hint do not do all 16 possible devices as you are wasting ram 4 logical
drives is a good working number.? NOTE: CP/M 2 can only address a logical
drive of 128x65536 or 8MB (internal math limit).? Any of the CP/M replacements
P2DOS and later can take that to 1GB however with a flat directory stay at 8mb
and partition for 4 working drives.

Serial or simulated serial IO makes it easier for supporting ported apps to
a system.? Memory mapped video adds parts as it hen has to be mapped
in and out and applications need to stick to standard interfaces and that
can complicate software design.? Its easier if the IO looks like the nominal
console of the day terminal (ADM-3 or VT52, Vt100, H19) or something
that has the feel of TTY (yech!).

FYI if you have larger storage you can remap any drives partition.? Hint?leave
the boot drive as boot drive.? CPM can handle any format but for modern
non floppy that means translating to LBA and then doing sector deblocking
as CP/M assumes 128bytes as logical sector and most modern media is 512.
For that I use 16384 tracks and 4 logical sectors per track (for an 8mb "disk").
That helps with the deblocking code and the "track" is then the LBA address
(Plus any offset for partitioning).? CP/M BIOS math is rather archaine in its
explanation for the disk parameter tables.

As a convenience the system can be loaded from Eprom.? I do that all the time
as it makes the system less dependant on getting it initially on media.? The latter
can be a pain with current system with no support or difficult for that.? CP/M
does not care how it gets in ram (its the job of the bios!).? Even loaded from Eprom
its easy to allow for soft loading from disk as a file.

There is enough free and useful software to fill a large disk!? I have about 18mb
of software I use on the AmproLB+(45MB)? and NS Horizon (32mb) hard disks.

Allison

Join [email protected] to automatically receive all group messages.