Table of Contents
A few days ago I got 2 boards of revision C soldered.
What is changed since revision B?
What has been changed since revision B? This was also the first I tested for real regarding the electronics. Revision A was mostly mechanical.
- A different version of the 9V AC isolated power supply for the userport.
- A really stupid misstake with the isolating buffers between CPU and VIC side. More on that below.
- Updated how the GreenPAK is configured for power managament, as well as how we entere Mia Mode for Maintenance.
- Added some more pins for easy access to the logic analyzer.
- Modified the firmware update of Meatloaf.
- Meatloaf is powered up when the rest of the system is. Previously it was powered up when the USB power was applied. This caused some back flow of current through the IEC driver.
- Added some more LEDs for the development.
The stupid error!
There is always something you miss. In this case I was a bit quick when I transfered the old schematic to Altium designer.
On the original schematic the buffers was done with 3 74LS245 Octal bus transceiver. These are bi-directional buffers with an OE (Output Enable) signals as well as a DIR (Direction).
When the DIR signal is high data passes from A-side to B-side. When low the other way around.
When the OE signals is high the A-side and B-side are in high impedance and isolated.
They where drawn in the original schematic almost identical. The address and some controll signals where drawn with A-side to the left, but the databus was drawn the opposite. I gues this is to save an inverter for the direction.

I didnt notice, but placed the 3 buffers (and I also changed the address buffers to one way) with A-side on the left and B-sidce on the right. Which obviouslyt will not work at all.

When the CPU now tries to read from memory the data flow is from CPU to memory and vice verse.
What has been tested?
I did a quick test around the GreenPAK, the regulators, and similair. Basically a smoke test.
A bit much at work right now, so more testing has to wait until next week.
What is Next?
Testing
Hopefully this version will eventually boot up. Since the CHARROM is in SRAM (a feature) the characters will be totally garbled. That is ok.
First it actually simplifies the design and removes one more non-volitale memory.
Secondly it is a feature. We can now load any font as standard. The font is stored in the excess amount of FLASH memory we have for bank 6/7.
This is loaded during booting. A very short amount of time after reset the system boots into a hidden partition of the FLASH memory to do various set-ups, including loading the CHARROM.
Other than that there is a few things to test. These tests are done with a very basic function of the CPLD memory management.
- Mechanically that it fits in the bread-bin case.
- The S-Video output through the connector that C64C is using (which caries both Y/C as well as composite video.
- Read/write and access of all memories and peripherals.
- Testing switching in the true UART.
- Testing access to the cartridge port.
- Testing the PAM4 encoder.
- Testing the IEC port.
- Booting into the standard Ready prompt.
I will also test the Meatloaf with latest firmware, and see if that fires up correctly.
What do I already know will change?
- I will move Meatloaf a bit. The screw for mounting the PCB in the bread-bin case is a bit unnecessary tight around components.
- Today the only video option available is Y/S or S-Video. I will probably add the composite also. The C64C connector support both.
What is the jurry still contemplating around?
I am thinking about replacing both 6522 with surface mounted 65C22. I am just a bit concerned around compatibility. The keyboard is probably not an issue, but the slight difference between 6522 and 65C22 could be an issue with the userport.
I might also change the module I use for meatloaf into a chip-down design, and with an u.FL antenna.
There is also some thoguhts around power management. Today I have 5V directly from USB Type-C with a booster for the Datasette motor. Abother way would be 9V (via PD) and then a buck for 5V and anoither for the Datasette motor.
Also. A big issue is firmware updating. Today it is not very user-friendly. You will need to open the case and.
- Attach a TAG Connect cable and update through JTAG (and possibly Microchips proprietary dongle) the CPLD. It is less likely to need many changes, but you never know.
- Attach a USB-TTL serial cable to the Meatloaf and update that firmware. This is probably quite frequent.
A more user friendly way would be to add a USB to JTAG/UART/GPIO chip. With this you could, with custom software, upgrade both the CPLD, Meatloaf as well as the FLASH memory. And without opening the case.
However, it comes with some additional cost.