userport: C64, Plus4, others?

From: Gábor Lénárt <>
Date: Mon, 5 Mar 2012 23:10:17 +0100
Message-ID: <>

I'm thinking on starting to do some hw development. For some simple stuff, I
am thinking to use C64's user port to exchange data with a microcontroller.
As far as I can see, the bandwidth is quite OK, as CIA has some some
handshaking pin (which is also connected on the user port), so the uC know
if new data arrives or new data should be sent (previous byte is read by
C64). With this theory, I guess the maximal transfer rate can reach what the
CPU of C64 can do at all, and the handshaking is automatically done by the
CIA itself. It sounds cool, however I am not sure. Anyway, I guess it can
give the fastest availbale data transfer (faster only can be with some
external DMA logic which disables the CPU of the C64, etc - not my business
... yet at least).

First of all, since I don't have too much experience, what do you think, is
it such a simple task, or am I wrong? Is there any existing "example
project" where I can study a solution like this? For starting point I'd like
to have only the "data transfer part" via user port, and the uC would not do
too much useful things, just some "accelerator" mode, like running programs
and get/give input/output of that from/back the C64, later of course I'd
like something more useful with the uC.
I prefer user port, because it exists on other machines as well, not just
C64. Like Plus/4. And it's my another question: it's not so clear for me:
has the Plus/4 some similar handshaking possibilities via its user port as
the C64/CIA has?

I'd love to have something "for multiple machine" solution! Even if it means
different phisical connectors for the actual user ports of these machines :)

The last reason I would use user port (and not building a cartridge or so):
user port exists on C64 DTV too (though I am quite sure there is no
handshanking line there anyway ...), and there it's the only possibility to
interface with a DTV (other then IEC of course).

So in this way, some "userport" solution can be a quite fast, cross-CBM
machine solution with some minor differences though "of course" but
basically the same solution.

Any feedback is welcome about my first seriously thought hw project to be
started :-P

- Gábor

       Message was sent through the cbm-hackers mailing list
Received on 2012-03-05 23:00:04

Archive generated by hypermail 2.2.0.