
.H 1 "Memory ACD"

The purpose of this write up is to point out a couple of problems that
Firefox has with meeting the Memory Modules section of the Spectrum I/O
ACD.  It also makes a proposal for changing the I/O ACD to solve these
problems.

.H 2 "Error Correction Strategy"

The error correction strategy for Firefox allows RAM chips to fail without
significantly degrading the performance or reliability.  To support this
there are two things that need to be standardized:

.AL
.LI
A status bit needs to be created that indicates that this feature is present.
This could be in the status returned when the ENTRY_ECC is executed.
.LI
A third IO_DC entry point needs to be supported that allows the syndrome
register corresponding to a hard error to be set.  The hard physical address
and the syndrome word would be passed and a status bit indicating that
a hard error already exists for that word would be returned.
.LE

.H 2 "IO_DC ROM"

The current ACD does not seem to allow the IO_DC to be part of the PDC.
Firefox does not want to have a ROM on every RAM board (or a ROM on the
CA chip).  The architecture should allow this.

One way to do this would be to define an entry point index that means that
the IO_DC is in the PDC.  The address given in the entry point would be
a unique number corresponding to the code.  This number would be passed
to an entry point in the PDC that would return the starting address in the
PDC area of the corresponding IODC entry points.  If the code is not supported
by the particular system then -1 is returned (It may be Optional).

This would allow all of the system dependent code to be in one place and would
require only one special entry point in the PDC and allows the IODC to be
put anywhere in the PDC ROM.

