Tuesday 6 June 2017

Building lab-prototype MEGA65, and remembering the thrill of my first C65

After getting the MEGA65 prototype PCB up and running last night, today was time to build up the prototype in the lab.

First, with Ben's help, get the SD card adapter working correctly, and give it a bit more physical support to stop it getting broken again. We still need a bit taller legs:

Second, make sure that it boots fine:

 Third, get my Commodore 65 keyboard that I bought ages back on ebay, and one of the plastic laser-cut outlines I made when I was starting to work on the laptop concept for the MEGA65:

Work out how I was going to hold it in place. There are three hole-throughs on the keyboard:
 Looking closer at one of them:

Unfortunately, one of them is behind the space bar (which is possibly the widest space bar I have ever seen on a keyboard -- a point which is causing us some fun in getting our own production in order for our own MEGA65 keyboards.)  So I resorted to drilling some holes in my acrylic outside, and screwing a retainer strip on the back. It isn't perfect, but it works enough for now:

You can also see that I have screwed the C65 prototype motherboard down to another panel, and then added a home-made friction hinge (although it isn't strong enough to hold the keyboard open in position), so that I can open it up to get to the SD card.  We might yet extend the SD card to a better location, so that we don't need to open the "lid" all the time.

Putting it altogether and powering it up, it still looks very, very rough -- but the point is we now have a working and usable bench-top prototype, from which to progress.

Here is it is from a couple of other angles, so you can see the power connector, joystick ports and reset button:

And looking in the side, where you can really see that the temporary physical construction is indeed a gross hack.

So, now I have it working.  One of the really unexpected things was a wave of emotion and nostalgia as I started interacting with a C65 via a real feeling keyboard for the first time in close to ten years.  I didn't get this when using a keyrah and Commodore 64 keyboard on it, and certainly not using a USB PC keyboard.

But suddenly with a real C65 keyboard, it felt like I was 19 again, and using the prototype C65 again.  It's hard to explain. It might be the tactile feel of the keyboard, or even the subtle timing of where in the key press the computer registers the input, or some combination of the two. But whatever the trigger, it was like smelling a familiar smell for the first time in years, and having that rush of memory and recollection, including evoking the emotion of the moment, not just the cerebral memory of it.

It is this thrill and experience that I hope we can share as we continue with making new C65s through the MEGA65 project.  That wonder of discovering a new heir in a noble lineage of computers.  We might not be Commodore, but I am convinced that we will be able to bring the C65 to completion, and finally bring the last chapter of the 8-bit dynasty to life.

Powering up the MEGA65 prototype PCB at home

Just another quick post to say that I have the prototype PCB at home now, and with the help of a student got a power supply for it, and now I have it powering up at home:

As you can see, I have my genuine C65 keyboard (complete with missing top-printing of the keys) connected.

The C65 keyboard connector is a bit tight to move on the power-supply switch side, which we will re-work on the rev2 PCB:

Unfortunately the SD card adapter has developed a couple of dry-joints in transit from Germany, so I will need to take it back into work tomorrow and re-touch those.  Hopefully it will then work fine.

After I have that all working, I'll start looking at the cartridge port and floppy connectors to verify that they function fine.  Apart from a known signal direction wrinkle on the cartridge port, I am not expecting any particular problems there.

Then I will try to debug the problems with the keyboard interface that Falk discovered. I think it is ghosting due to the relatively weak pull-ups in the FPGA causing ghosted rows or columns on the keyboard interface. The solution there will probably be to have the real keyboard scanner in VHDL, populating an internal matrix representation that is actually scanned by the C64/C65 ROM.  The internal matrix representation is already there, because it was required for the PS/2 keyboard interface.

Monday 5 June 2017

My MEGA65 Prototype PCB has emerged from the postal system

After a tense month of waiting, one of the only three MEGA65 prototype PCBs finally arrived here today.  This is both a great relief, and also very exciting.  Unpacking photos follow:

Now my main challenge is to find enough time to test the various ports that we still need to confirm the function of.  Lesser challenge is wiring up a 12V power supply for it, but that is really not a problem.