Re: Build your own REU

From: Hársfalvi, Levente (
Date: 2001-04-13 14:07:45


> I know some of you are (very) familiar with micro-controllers (PIC, ATMEL
> etc.). I ain't. What about a micrcontroller and two 8237's to emulate a REU?

I'm just a little bit familiar with microcontrollers. ...But am not
familiar with the REU at all.

With emulating a REU, did you mean using some DMA controllers (8237) +
TTL chips + the like, and using a microcontroller to 'organize' this
bunch? If so, it should be possible. ...At least, as long as you can
make these components work together.

Something that is against it: looots of TTLs, wires, = a big and
complicated board, I'm sure. It'd be neccessary do decode the C64
address lines first, use small data latches for for the REU register
map, that could be accessed by the microcontroller. Two other problems:
the unit would still be responsible for ram refresh, and second, it
would probably not be fully compatible with the REU (in the 'timing', so
it'd start/finish operations later than the original unit, and the
like). Otherwise, it should be possible to build a more or less REU
(function) compatible board with such a bunch of components.

For such a board, most common microcontrollers would do the trick,
provided that they have lots of port pins (maybe the Intel 805x clones
from Atmel, since they're cheap and they're equipped with reprogrammable
Flash code memory).

Another possibility: forget about all the 8237, the TTL bunch and
everything the like, and think in a 'single chip' solution (as seen in
the original REU). For such a task, I think an FPGA would be much more
suitable (lots of pins, fast operation). As I remember, the IDE64 card
is also based on such a chip from Lattice. For a microcontroller, a task
like this is a bit on the 'barrier', at least for the microcontrollers
that I know of. The PICs are clearly out of question (the master clock
is divided by 4 inside, so a 20Mhz PIC performs instructions at 5Mhz
effectively). The Atmels are a bit more promising, they're fast so it
would even be possible to sync with them to the C64 bus cycles, and
sometimes perform bus operations by software ;-), but it would need very
tight code, if it is possible at all.

Still, there must be some tech that would be of use for you - I know
there are some microcontrollers that can be clocked at up to 50Mhz :-O -
if they're based on RISC cores, it would be possible to make them
perform C64 bus actions in realtime while maintaining all other tasks
(dram cycles, memory refresh etc.).

(BTW: I think microcontroller programming is easy for people who grew up
on Commodore programming - it's just the same kind of thinking.
Programming on the (8-bit) bare metal is just the same whether the hw
manufacturer is called CSG or Microchip - well at least until Intel is
not involved).

Best regards,


This message was sent through the cbm-hackers mailing list.
To unsubscribe: echo unsubscribe | mail

Archive generated by hypermail 2.1.1.