Re: CP/M cartridge

From: Richard Atkinson (
Date: 2000-03-22 12:15:57

This is good stuff!!! Thanks, Bill.


---------- Forwarded message ----------
Date: Tue, 21 Mar 2000 22:51:14 -0500
From: Bil Herd <>
To: 'Richard Atkinson' <>
Subject: RE: Calling Bil Herd

The problem with the CPM cartridge is a design flaw with the thinking behind
the cartridge where the Z80's processor gets frozen for a memory cycle and
then runs for 2 clocks and then frozen again.  The problem is that if you
freeze it during a cycle (which will happen about 1/3 of the time)  when the
internal bus on the Z80 is in a "float" condition, the address multiplexorss
on the CPM cart are exposed to a voltage that is neither a "1" nor a "0"
(about 1.2-1.4 volts if memory servers).  This has the nasty effect of
causing the multiplexor (which cane be thought of as an amplifier for this
purpose) to oscillate since it has an "illegal" voltage on it's input.  Well
if the address lines oscillate or don't stand perfectly still during certain
parts of the DRAM cycle (particuarly the Row Address Setup and Hold and the
Column Address Setup and Hold) ALL bets are off.  Several rows (or columns)
of data get selected inside the DRAM all at once causing contention and
other nasty things to occur and there goes the DRAM data integrity.

I don't know of anyway to fix it shy of changing brands of  multiplexes on
the CPM cartridge or putting some strong pull-ups on the address lines to
fight the "amplified bus float" that comes out of the Z80.

This design flaw was so nasty that there was no question in my mind about
building a Z80 into the C128 to do CPM.... Relying on the design flaws in
the cart simply wasn't an option.

BTW, a year later I found an Apple schematic tucked in a drawer of the Z80
cartridge for the Apple II.  Turns out an early CBM engineer had copied the
design, flaw and all, from apple.

Bil Herd

 -----Original Message-----
From: 	Richard Atkinson [] 
Sent:	Monday, March 20, 2000 9:55 PM
To:	Bil Herd
Subject:	Re: Calling Bil Herd


Another topic that has recently cropped up on cbm-hackers is the Commodore
CP/M cartridge. Can you remember any of the specifics of why the cartridge
wouldn't work with later C64s, and maybe even what could be done to it to
correct this? We're trying to find a hack so that CP/M cartridges can be
made to run on all machines.



This message was sent through the cbm-hackers mailing list.
To unsubscribe: echo unsubscribe | mail

Archive generated by hypermail 2.1.1.