Josh Dersch wrote:
How does the "phantom" line work? I see
references to this in some of
my S-100 manuals but I'm not clear how it works (who raises/lowers it,
when, etc...)
It can be a little bit "implementation dependent" but usually there are
cards that assert phantom (it is active low, there has to be a pull up
on it somewhere (the CPU card I think)) and cards that "honor" phantom.
When an address is presented to the bus, any phantom asserting card that
whishes to override that address pulls the phantom line low. A phantom
honoring card that would normally respond to the address will instead
suppress any activity. Note that this system does not prevent multiple
phantom asserting or phantom honoring cards from stepping on each other.
Careful system configuration is still the responsibility of the builder.
In the case of the Cromemco FDC cards, the FDC becomes a phantom asserter.
Any RAM card that the system has that resides in the same address space
($C000-$CFFF in the case of a 4FDC) must honor phantom. The CPU presents
an address to the bus, the FDC card does an address decode, determines that
it is an address it wants to respond to and activates the ROM (the CE (chip
enable) pin on the ROM is also active low) asserting PHANTOM at the same
time, disabling the RAM card. When you deactivate the RDOS ROM with the
poke to the I/O address, then the FDC card will no longer activate the ROM,
PHANTOM will no longer be asserted and the RAM card will respond to the
address previously occupied by RDOS. I run CDOS in a full 64K
configuration this way.
Bill S.