DigiMAX Dual

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.