[comp.sys.amiga] LUCAS + 68000 MODIFICATION

evan@csri.toronto.edu (Evan Sidoriak) (12/06/88)

LUCAS BOARD MODIFICATION TO ALLOW THE 68000 TO REMAIN IN THE AMIGA

DESCRIPTION:

     This article describes a modification to the LUCAS 68020 accelerator board
that allows the 68000 processor to physically remain on the Amiga bus along
with the 68020.  By keeping the 68000 in the system, the Amiga can still be
used with software (usually copy-protected games) that will not run on a 68020.
Only one processor can be used at a time and that processor is selected with
a toggle switch before the system is powered up.  The unused processor is
tristated from the bus.  That's the main idea behind this circuit: tristate all
outputs from the unused processor.
     For most of the output signals from both the 68020/LUCAS_GLUE_LOGIC
and the 68000, tristating can be achieved by asserting Bus Request (*BR).
*BR tristates the address and data buses, as well as most of the control
outputs.  On the 68000, the only signals that are NOT tristated are Bus Grant
*BG (pin 11), and E clock (pin 20).  On the 68020/LUCAS board, the outputs
which are NOT tristated include R/*W (U11, pin 9), *VMA (U5, pin 17), E clock
(U4, pin 19), and *BG (U1, pin 11).  These few signals must be tristated
"manually" from their respective processor to the Amiga 64 pin socket using
tristate buffers to prevent bus contention.  The other pins from both
processors can be safely connected together because they are either inputs,
or they are tristated when *BR is asserted.
     The Bus Request (*BR) input to each processor is driven by a separate
tristate buffer whose input is tied to ground.  The toggle switch is used to
enable the buffer to the *BR of the processor that is NOT being used.
I arbitrarily decided for the sake of simplicity (keeping the extra chip count
down to one), and to avoid having to cut traces on the LUCAS board, that only
the 68020 will be able to receive a real *BR from the Amiga bus.  This is a
reasonable decision if the 68000 will only be used to run
copy-protected games and hardware that does not require DMA.  This decision
allows the existing *BR and *BG from the 68020 to remain connected to the
64 pin socket leading to the Amiga.  The *BR (pin 13) and *BG (pin 11) pins
on the 68000 must be physically separated from the 64 pin socket leading to
the Amiga by bending them outward.


BUILDING IT:

     The modification requires no cut traces, no soldering to chips, and
could ideally be done without any soldering to the LUCAS board (except for
power), however I did solder to 4 signals on the LUCAS board for convenience.
The actual finished modification doesn't look too pretty because of all the
aerial wiring between the small perfboard that holds the tristate buffer and
the LUCAS board, but who looks inside the case anyway. :-)  The schematic for
the circuit is given below.
     IC pins U4-19, U5-17, U10-8, U10-9, and U11-9 are carefully bent
outwards from their sockets on the LUCAS board, both to isolate them from their
sockets and to provide connection points.  Single pin sockets taken from
a machine socket terminal strip are attached to these pins and wired to a small
perfboard holding the 74ACT244.  Using single pin machine sockets eliminates
having to solder directly to the bent pins of the chips.  The machine sockets
I actually used were taken from an Augat 510-AG90F-32 32 pin wirewrap socket
terminal strip which I broke into individual sockets.
     The same technique is used to attach the bent 68000 pins 13 and 20
to the perfboard.  Pin 11 on the 68000 (*BG) is bent and left unconnected.
     There are four signals from the 74ACT244 that must connect directly to
the 64 pin socket leading to the Amiga.  These I soldered to four points on the
LUCAS board.  The signals are *BR20 (pin 13), E (pin 20), *VMA (pin 19) and
R/*W (pin 9) on the socket leading to the Amiga.  R/*W is actually soldered
to the side of the 30 ohm resistor on the LUCAS board not leading to pin 9 of
the 64 pin socket.
     In the circuit I make use of an inverter from the 74F04 on the LUCAS
board (U10 pins 8 and 9) to control which tristate buffers are enabled.  For
the tristate buffer chip I used a 74ACT244 since it is as fast as
an 'F244, requires less power, and I had one on hand.  I would think a 74F244
would work just as well.  Extra decoupling capacitors should be used both on
the perfboard holding the buffer chip and on the LUCAS board since there is
a 68000 as well as a 74ACT244 drawing power and making noise on the power bus.
     Power for the tristate buffer can be obtained by soldering to the leads
of a capacitor on the LUCAS board.  The square solderpad is positive.
     I used two 4.7K pullup resistors on the perfboard, although there are
spare pullup resistors on one of the SIPs on the LUCAS board that could also
be used.
     The toggle switch can be mounted on the rear of the Amiga's case above
the keyboard connector.  When the switch is open, the 68020 is selected.  When
the switch is closed, the 68000 is selected.  The switch should be toggled
only when the power is off, since you get a nice guru otherwise.
     In making the 64 pin connection from LUCAS to the Amiga's 68000 socket
I used two 32 pin gold wirewrap machine socket terminal strips.  These strips
act as both a socket for the 68000 and as extender pins to the 64 pin socket
in the Amiga.  It was a tight fit since the holes on LUCAS are less than
0.025".  But gentle rocking back and forth while pressing down allowed the
posts to go through the board without damage.  To avoid having those
"tree trunks" damage the Amiga's 64 pin socket, I soldered a soldertail
machine socket to the bottom of the wirewrap posts.  Since this wasn't quite
high enough to make LUCAS sit above the Kickstart daughter board in the Amiga,
I plugged another 64 pin soldertail socket onto the bottom as an extension.
The following sketch shows an end view of the LUCAS board with the above
assembly.

     If the LUCAS board has already been built, it should still be possible
to somehow solder a 64 pin soldertail socket to the top of the LUCAS Board,
where the 64 pins extend down to the Amiga's 68000 socket.  Remember to
remove any IC's from the LUCAS board before doing any soldering.


    xxxxx      <--- 68000 microprocessor
   /     \
   V     V     <--- 32 pin gold wirewrap machine socket terminal strips
---|-----|---- <--- LUCAS PC board
   |     |
   |     |
   |     |
   V     V     <--- 64 pin soldertail machine socket
   |     |
   V     V     <--- 64 pin soldertail machine socket - used as extension
   |     |

___V_____V____ <--- 64 pin socket on the Amiga motherboard



PARTSLIST:

68000  (U1)                     - removed from the Amiga
74ACT244  (U12)                 - tristate buffer
20 pin dip socket               - to hold buffer chip
small perfboard
4.7K resistors (2)
SPST toggle switch
single pin machine sockets (7)  - can be taken from a 510-AG90F-32 terminal
                                    strip or a socket terminal carrier
decoupling capacitors

Socket assembly:
64 pin gold soldertail machine socket (2)
32 pin gold wirewrap machine socket terminal strip (2)
                (e.g. Augat 510-AG90F-32)



SCHEMATIC:                                    Evan Sidoriak  November 20, 1988.


            U12  74ACT244

              17 |\  3   30ohms
R/*W20    -------| >-----/\/\/----- R/*W  socket pin 9  (solder pin 3 to
U11 pin 9        |/                                         existing resistor)
                  |
              13 |\  7
E20       -------| >--------------- E     socket pin 20 (solder to board)
U4 pin 19        |/
                  |
              15 |\  5
*VMA20    -------| >--------------- *VMA  socket pin 19 (solder to board)
U5 pin 17        |/
                  |
              11 |\  9
      |----------| >------o-------- *BR00 68000 pin 13
      |          |/       |
    -----         | 19    >
     ---          |       > 4.7K   Vcc
      -           |       >         |
          Vcc     |       |_________|
           |      |_____
Switch     <           |
1=68020    < 4.7K      |
0=68000    <           |
      /    |  9 |\  8  |
  |-o/  o--o----| >O----
  |        |    |/
  |        |    U10 1/4 74F04
_____      |
 ---       |------|
  -               | 1
                  |
               6 |\  14
E00       -------| >--------------- E     socket pin 20 (solder to board)
68000 pin 20     |/
                  |
               8 |\  12
      |-----o----| >--------------- *BR20 socket pin 13 (solder to board)
      |     |    |/
    -----   |     |
     ---    |  2 |\  18
      -     o----| >---- NC
            |    |/
            |     |
            |  4 |\  16
            |----| >---- NC
                 |/

NOTES:
Pins U4-19, U5-17, U10-8, U10-9, U11-9 are bent outwards from their sockets
on the LUCAS board and attached to the 74ACT244 using single pin machine
sockets.
"Socket" in the schematic refers to the 64 pin socket that leads to the Amiga.
Only pins 11, 13 and 20 are bent on the 68000 (U1).  All other 68000 pins
plug into the 64 pin socket.  Pin 11 (*BG00) on the 68000 is left unconnected.
Pins 13 and 20 of the 68000 are attached to the 74ACT244 using single pin
machine sockets.
*BR20 and *BG20 are already connected to the 64 pin socket (pins 13 and 11).
Pins 2 and 4 on the 74ACT244 are unused inputs and should be grounded.  Pins
16 and 18 are unused outputs and are left unconnected.  Vcc=pin 20, Gnd=pin 10.
The 30 ohm resistor is already on the LUCAS board, so you really only need to
solder a line from the 74ACT244 pin 3 to the side of the 30ohm resistor not
leading to pin 9 of the 64 pin socket.

If only the 68020 will be used with devices that assert *BR (a reasonable
assumption if the 68000 is only used for copy protected games) then
*BG on the 68000 can be ignored (left unconnected) and the *BR and *BG signals
to and from LUCAS can be left connected to the 64 pin socket.


FINAL NOTES:

     If you do want to use DMA devices with the 68020, R/*W20 will have to
be tristated when *BG20 is asserted.  This will mean a nand gate and another
buffer chip.  I don't have any DMA devices, so I haven't worried about it yet.
There are obviously other changes you can make to simplify the circuit or
add functionality. (e.g. Use a SPDT switch and omit the inverter, or buffer
*BR and *BG from both 68020 and 68000 to allow both to do DMA.)
     The above circuit can be drastically trivialized by using a 5- or
6-pole double-throw switch.  But that would be far too easy! :-):-):-):-)  You
will still need some kind of circuit to tristate R/*W20 if you want to do DMA.
     I designed and built this modification to the LUCAS board to provide
compatibility with specific hardware and software I had that depended on having
a 68000 in the Amiga.  I am making the results of my hack available in the
event there are others with similar needs.  I make NO guarantees as to whether
this modification will work with any specific LUCAS board/Amiga configuration
and I disclaim any responsibility for what anyone does to their Amiga or
their LUCAS board using the above information.  This modification does require
some hardware experience and should not be attempted by anyone not reasonably
experienced with a soldering iron.  Almost anyone who can put together LUCAS
in the first place should be able to do this modification.  Now that I've
scared you off, I can assure you that I have made the circuit work in my
own Amiga.   Several other people in the Toronto area either have made or are
going to make this modification to their LUCAS boards, so compatibility
problems, if any, should show up shortly.  As long as you don't solder to any
chips or cut any traces, you can always rip out the modifications to restore
LUCAS back to its original form.:-)  Anyone is free to use the above
information as he or she sees fit.
     Any comments, bugs and suggestions will reach me at the addresses below.
Happy hardware hacking...


                                     Evan Sidoriak
                                     November 28, 1988.

---
Evan Sidoriak                      evan@power.ele.toronto.edu
UofT Dept of Elec Eng
10 King's College Rd                            OR
Toronto, Ontario                   {uunet,pyramid}!utai!utcsri!utpower!evan
M5S 1A4
CANADA                             Phone: (416) 978-6392