Simple DJ2D Relocation
Morrow Designs' old DJ2D floppy
controller boards can get a new lease
on life from this information sent to
me by Ken Piggott, a long-time S-100
enthusiast:
"The problem with most DJ2Ds is
that they require address space from
0E000H to 0E800H, which limits the
size of the operating system (usually
CP/M) to 56K. It would be nice to
relocate the board to the top of
memory (0F800H), but there are two
obstacles, an EPROM and a PROM,
that must be reprogrammed to do
this. Burning a new EPROM is no real
problem, since Morrow Designs sup-
plied the source for the EPROM. But
the PROM programming information
is not provided, and PROM updates
are no longer available from Morrow
Designs for this board.
"The solution is to burn a new
EPROM and move a couple of traces
to trick the PROM into thinking that
the 0E000H page is being addressed
when actually the F800H page is
selected. Fortunately, there is an un-
used NAND gate available in the
DJ2D's vectored interrupt circuit
(which is not used by the DJ2D
software), which can be used to trick
the PROM. Here is how to do the
relocation on a DJ2D model B, rev 2.:
"Assemble the EPROM source code
for 0F800H, burn it into an EPROM,
and install it into the DJ2D to take
care of relocating the DJ2D's I/O
routines and boot loader software.
"Then lift out pins 12 and 13 of the
74LS38 NAND IC at position 8B.
This gate was used to drive a vectored
interrupt line, but was never used in
any Morrow Designs software. Simi-
larly, lift out pins 6 and 7 of the 6301
PROM IC at position 8C. Connect a
wire from board position J1A (the
output of the 74LS38 NAND gate at
8B) to the 6301 PROM's pins 6 and 7.
"Finally, connect the inputs of the
74LS38 NAND gate to S-100 bus lines
All and A12 (one wire from S-100
edge connector pin 85 to IC 8B pin 12,
and one wire from edge connector pin
33 to IC 8B pin 13). That's all there is
to it!"
I have used this modification myself
on several DJ2Ds and have had no
problems at all. However, this modifi-
cation only works for DJ2Ds origined
at 0E000H, and it disables the DJ2Ds
vectored interrupt output (which I
don't use either), so use it with some
caution if you are not a software
wizard.