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