Micro Computer Comparison – Part 3

I’ve been investigating the differences between the ZX Spectrum and the Commodore 64, and I’ve found previously that the ZX Spectrum is fortunate to have a slightly better processor and more memory bandwidth. You can read about those parts here and here.

Today in the final part I’ll be looking at the hardware external to the processor and memory. In the case of the Spectrum that will be the ULA, and the VIC and SID chips within the C64. This is one of the areas in which these two machines are the most different and also what makes a big difference to the user experience of both machines.

The Spectrum is perhaps the easiest to talk about because the ULA does very little other than managing the input and output of the spectrum. There is certainly no useful hardware to speed up graphics, you draw simply by writing to the video memory. Data storage is facilitated by the ULA, but ultimately the CPU does most of the work, sound works basically the same way having only one simple channel for audio output. The ULA does have lots of logic in it to drive the graphics, and manage the contended memory, which if you write anything for the spectrum is best to avoid. The trouble is it does little else.

The C64 has two wonderful custom chips that take all the work out of graphics and sound. The VIC II and the famous SID chips do much more than most chip sets in other micros do. The VIC II has some of the best processor time saving features in having hardware sprites, and from what I’ve also read it support scrolling which I didn’t think it did. It allows for more colour on the screen, and isn’t really prone to the attribute clash problems that the spectrum has.

The VIC II chip makes a large difference in the capabilities of the machine. The processor doesn’t need to copy large amounts of memory in order to draw sprites or to scroll the background. Not having this capability is a huge disadvantage for the spectrum even with its special instructions for copying and moving memory. Consider a sprite of 32 pixels by 32 pixels. On the C64 the processor simply changes the sprites location registers in memory to move it, something like 2-4 bytes. The spectrum needs to erase the sprite from the screen and redraw it, this will be a minimum of 4 x 32 x 2 = 256 bytes per sprite and that doesn’t count the changes to the colour attributes. The VIC II chip has the ability to speed up scrolling as well which is a much larger job to accomplish. This is the reason that flick screen or single screen games are very common on the spectrum and the C64 has smooth scrolling in games.

The SID chip is legendary for the exceptional music that it is capable of generating. The ZX Spectrum has no analog audio chip, with the exception of an add-on you could buy or build that added the same yamaha chip that was in the Spectrum+ 128. For the sake of this comparison however, the spectrum only has a single channel tone generator as the add-on was not widely used or known about. For the Spectrum to generate any amount of detailed sound it needs to use the CPU to drive the speaker, using many more cycles than the C64 and sounding much worse in the process.

Both the VIC II and SID chips are custom chips that would have been expensive to produce at the time. This is the reason that the Spectrum has much simpler hardware, basically to keep the cost down. So how was Commodore able to include expensive custom chips in a cheap home micro computer?

The answer is simple, Commodore owned a chip design and manufacture company. In fact the company they owned was MosChip, the company that made the 6502 and its descendants. Commodore designed the VIC II and SID chips specifically for the system after looking at what other micro computers in the market had in the way of features. They are both descendants of the chips originally used in the VIC-20 which whilst having the same CPU was significantly less capable. Because they owned the chip fabrication plants they could make the chips and not pay a marku-up when they “bought” them. This made the three main chips of the C64 significantly cheaper than what could be put into other machine such as the Spectrum.

So which micro computer is “better”? Well that all depends on how you look at it. The ZX Spectrum has a good processor and simple hardware that makes it easy to program for. The C64 whilst much more complicated, is much more capable graphically and has the legendary sound hardware. On the software side there are many good games for both platforms. The C64 is great with arcade conversions and the Spectrum has many more inventive Brittish games often written by “bedroom programmers”. Both computers have a dedicated fan following and are still used, modified, and have new software created today. Personally I don’t think either computer is really “better” than the other, and I’ve had fun playing with both of them, isn’t that all that matters?

0 Responses to “Micro Computer Comparison – Part 3”

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Enter your email address to follow this blog and receive notifications of new posts by email.

Mister G Kids

A daily comic about real stuff little kids say in school. By Matt Gajdoš

Random Battles: my life long level grind

completing every RPG, ever.

Gough's Tech Zone

Reversing the mindless enslavement of humans by technology.

Retrocosm's Vintage Computing, Tech & Scale RC Blog

Random mutterings on retro computing, old technology, some new, plus radio controlled scale modelling.


retro computing and gaming plus a little more

Retrocomputing with 90's SPARC

21st-Century computing, the hard way

%d bloggers like this: