9

I currently live in Japan and use PAL C64 from Europe, here the line voltage is 100V at 50Hz (Tokyo).

I will be moving to the US in about 2 months. The US uses 110-120V (power supplies are usually for 117V) at 60Hz.

Aside from PAL vs NTSC (which I have handled via XRGB-Mini Framemeister), will PAL C64 work on 60Hz ?

This is mostly a question on whether the line frequency matters at all - I think the 9VAC is rectified to 12V or 5V for SID, but is the actual sine signal used in any way in C64 ? (by other chips perhaps?)

The same question applies to C128 and conversely NTSC C64 in 50Hz side of the world.

1 Answer 1

9

Yes, your C64 will work with a 60Hz mains, but programs may behave differently.

The 9VAC supply is indeed used as a timebase. This is the part of the circuit that does the job:

enter image description here As you can see, it is used to clock the TOD (Time Of Day) realtime clock inside both CIAs (CIA2 depicted here). The CIA can be clocked with 50 or 60Hz and it has a bit inside a register (bit 7 of CONTROL TIMER A) to tell it whether the input frequency is set to 50 or 60Hz. This is used to keep some counters that track tenths of a second, seconds, minutes and hours.

It is the ROM which is different for PAL and NTSC systems, which actually set or reset this bit accordingly. C64s with a PAL ROM will set this bit. NTSC ROMs will reset it.

If you plug your PAL-aware C64 into a 60Hz mains, you will notice that applications that use the realtime clock will show the wrong time, updating it too fast. So any application that uses this to time events will trigger them at wrong intervals, which may or may not be problematic.

This timer is not the same as the VBlank. VBlank will keep updating at the vertical sync frequency your VIC-II is designed for (that is, 50Hz PAL in your system) so I expect games and demos won't tell any difference.

According to C64-Wiki, the TIME system variable doesn't depend on this TOD (???)

There is a great article at CODEBASE 64 which explains how you can figure out if your TOD is running at 50 or 60Hz, and configure it the right way.

3
  • Thanks, this is very useful. Followup question - can I hack the said PAL ROM and modify it to reset the bit ? (or simply whether such ROM's already exist), it goes without saying that such hack would have to only affect CIA register and nothing else. Jun 5, 2016 at 21:58
  • 1
    Yes, you can hack the ROM and get one that acts like a PAL C64 ROM, but it resets the bit 7 of CONTROL A. Or you could derive a 50Hz signal from the VBlank interrupt and feed the CIAs with it. Or you can use a simple 555-based astable circuit tuned for 50Hz. Or you can run the program featured in the CODEBASE 64 weblink I provided to adjust your TOD accordingly. Jun 5, 2016 at 23:18
  • 1
    If "TIME system variable doesn't depend on this TOD (???)" meant to be a question: To provide compatibility coming from a VIC-20 which has a simple VIA 6522 without a real-time clock, the interval timer based implementation has been copied. Beside this, the TOD provides only a resolution of 1/10 sec instead 1/60 TIMER has. Jun 20, 2016 at 16:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .