Atari LETA on a CPLD


Implementing this into a CPLD

Based on the features, at the very minimum it needs 

  • 4 x 8 bit registers for the storage of the counters
  • 8 x 3 bit registers for storing the last three states of the DIR & CLK inputs  at each clock pulse
  • 8 x 1 registers for storing the previous state of DIR & CLK

So it needs at least a 64 register device, and that is without any extra logic.

Anyway to cut a long story short... after including all the logic, the result is upto 72 gates plus a LOT of product terms. So alas it will not conveniently fit into a XC9572 CPLD, so next up is the XC95108 which fits but is, of course, a more expensive part.

This results in  bigger carrier board, seeing as I only had PLCC parts to hand. But does make routing easier with all those extra pins. It makes soldering easier too with a through-hole socket.

VHDL source

Just the VHDL source code for the LETA replacement

Click for the source


Notes about the implementation

The CPLD was fitted so unused pins were pulled to ground, macrocells were in low-power mode and programmable slew rate was slow.

It was built using Xilinx webpack ise 9.1 and no Xilinx specific features were used, so it should be portable to other architectures.

Xilinx Webpack ISE 9.1 Project File

Zipped package of the xilinx project file, including the JEDEC for programming the CPLD

Click to download project files  


Carrier PCB

Having programable pins on the CPLD allowed me to arrange the routing so it could be fitted easily onto a single sided PCB, with just two jumper wires.

The ZIP file contains the Eagle 4.16r1 format schematic and board.

  • leta_carrier_PCB_e4.sch - schematic
  • leta_carrier_PCB_e4.brd - board layout
  • leta_carrier_PCB_e4.bmp 
    600dpi printer template mask for making the PCB
    See MG Chemicals Prototyping Center


 Carrier PCB - board & schematic 
Click to download


Click for the BIG picture 

Testing !


For testing I did a quick check by plugging it into the test board on page 1. Then into a couple of different PCB.s.

Tested with success

  • Rampart - 3 player trackball
  • Rampart - 2 player joystick 
  • Off the Wall - with a spinner
  • Blasteroids

With Rampart an additional socket is required to lift the carrier board just above the 68000 that sits very tightly to the bottom of the Leta. Sockets.

And that's all there is too it !

Back to Page 1