From: Jim Brain (brain_at_jbrain.com)
Date: 2004-12-28 06:07:47
Greg Nacu asked me to design a circuit board for the Digimax circuit
used by modplay.
I've just finished the first version (subject to changes), and would
like to send to a prototype house for a few boards this week. I'd like
to know if hardware-minded folks can take a look at the board and offer
any suggestions. I'm not an audio person, so I tried my best to lay out
the audio portion of the board so there'd be little crosstalk and plenty
of surface area on the audio channel wires. However, more eyes might help.
Here are the features of the new board (which I am calling the DigiMAX
Dual):
Uses the MAX506 Rail-to-Rail DAC, which is cheaper than the original
MAX505, but offers the same 4 channels and should be electrically
equivalent to the 505.
Can be plugged into either the CBM user port (original design), or the
expansion port (new design). The expansion port option offers faster
access to the DACs.
Address space on expansion port can be set to DEXX or DFXX via jumper.
Additionally, jumper pads on bottom of unit can set address space to any
32 byte block in the address space (DX20,40,60,80,A0,C0,E0). This
allows technically 16 cartidges to be used at the same time (64
channels), though I suspect that's infeasible.
Minimum parts count (It was suggested I add some passives to the audio
output to mimic the SID audio output). As well, the expansion port
feature requires 1 74LS138 and 2 resistors.
Unlike the original Digimax circuit, all four channels are available as
outputs from the DigiMAX Dual board. You can replicate the original
circuit with a few resistors and 2 audio plugs (to mix the channels).
I'm breadboarding up the expansion port additions to test right now, but
my concern is over two items in the circuit.
Of minor concern is the pullup resitor R6 on the IO line. I wouldn't
think 10K to +5V would cause ill effects for the IO lines, but others
may know better.
Of more concern is the address decoding logic. The 74LS138 decodes
address lines A5,A6,A7 into 1 of 8 decodes. The jumper pads select
which decode is used. Then, R5 passes the output to the R/W line of the
MAX506.
Both of these resistors are added for the same reason. R6 is there to
make sure the 74LS138 is inactive when not plugged into the expansion
port. R5 is there to allow the user port PC2 line to drag the R/W line
low even while the 74LS138 is outputting a high value.
I *think* the idea works, but am breadboarding it to see. Still, if
there is a less risky solution, I'd love to hear it. I know I can add
more ICs to fix this, but I'd rather not go there unless I need to.
The schematic and layout are at:
http://www.jbrain.com/vicug/gallery/digimax
Jim
--
Jim Brain, Brain Innovations
brain@jbrain.com http://www.jbrain.com
Dabbling in WWW, Embedded Systems, Old CBM computers, and Good Times!
Message was sent through the cbm-hackers mailing list
Archive generated by hypermail pre-2.1.8.