Skip to content

Help! I’ve forgotten how to boot!

February 23, 2012

I couldn’t resist this when it came up:

It’s a VIC-20 that appeared on eBay for £10 + £10 postage, in nice nick. “Too much!”, I hear you cry – but this one was boxed too. OK, the box is a bit ragged round the edges, but it’s acceptable. And the machine is nice. Now, obviously, it doesn’t work. Turn it on and the screen is black. That can be any number of things. So, let’s take a look inside, shall we, children?

Joy! A lot of the chips are socketed!

A quick check of the oscilloscope shows not a lot of activity, so the first thing to test is the CPU. Stick a new 6502 in that I have lying around, but no change. Put this one’s 6502 into a working VIC-20, and it works fine. OK, it’s not the CPU.

Next most obvious thing is the VIC chip – these things die fairly often. A quick switcheroo with the working machine, and it’s still working (the working one, that is, not the patient!). OK, it’s not that either.

In order of likelihood of morbidity of computer components, the order goes like this: RAM, custom chips, CPU, Gate Arrays, ROM. The CPU is good, we know that. The custom VIC chip is good… so what about RAM – the usual culprit?

Now from what I recall, the VIC-20 does a memory test when it boots up… so let’s have a look at the RAM. Ah heck, these guys aren’t soldered.

This is a later model VIC-20. It has the C64-style power supply, rather than the earlier two-prong PSU. Also, therefore, it has only 5 RAM chips – the older model has 11.

Now, anyone with a modicum of technical knowledge is probably now thinking I made a mistake in that sentence. Yes, I said 5. FIVE. That’s not exactly a nice round number in computer terms. Nor is eleven, incidentally. Far from it, in fact.

The VIC-20 is a curious beast. It has 5KB of main RAM, and an extra chunk of 4-bit RAM for the colour map for the screen. Hence there being an odd number of chips: the larger two on the left are 6116s, which are 2KBx8 (i.e. 2048 locations with 8 data bits), the smaller ones are 2114s, which are 1KBx4. That means 2 lots of 2KBx8 (= 4KBx8) and one pair of 1KBx4 (thus giving the equivalent of 1KBx8). 4+1=5 (usually) so we get 5KB RAM. Then you stick on the colour map chip (on the far right, I believe) and you get 5KB of RAM and 1KB of 4-bit RAM for the colour. Phew.

Still reading? Good.

Now, me having seen the oscilloscope readings, noticed that the CPU was starting up, executing for a bit, then freezing solid.

“Aha!”, think I in a fit of optimism, “This sounds like a memory error in the system memory!”.

So, I decide to switch out the main 4KB of RAM.

Now, it’s a little known fact that some PCBs are suicidal. If you so much as look at them with a soldering iron, a track will break. So, despite a lot of very careful soldering, one track lifted with the IC. D’oh! Annoyed now.

This is what the back now looks like:

It could be worse, but it’s still annoying.

Put in a new IC to see what happens… I don’t have a  socketed 6116 anywhere to test in, and I didn’t want to desolder my working VIC-20’s RAM. No change.

Out comes the other bit of RAM…. this one is fine, though, it pops out nicely.

In goes a new RAM chip, and ….

… no change whatsoever.

Hmm. So the RAM was good after all. I could change the other RAM chips, but they’re mostly for display – the machine would probably come up even if they were dead, it’d just look wrong.

Let’s take another look. The 6522 VIA chips? Let’s remove them and try… no, still nothing.

I guess it could be a ROM, let’s trying switching it with a working ROM, may as well…

Ping! Up comes a working VIC-20!

Hurray!

Which just leaves me annoyed because I damaged a track for nothing. D’oh!

Let’s have a look at the culprit:

That’s him there. Socketed all along. Should have checked him first. Thicky Ian Thicky.

The great thing about ROMs, is that you can replace them as long as you have a dump of their contents (which is easy to get). The really bad thing, is that the 2364 ROM chip is a 24-pin IC. Fine, except the 2764 EPROM chip is a 28-pin. So we need to be imaginitive.

So, grab the ROM from the CBM FTP site http://www.zimmers.net/anonftp/pub/cbm/vic20/ – there we go. Fire up the Pegasos II machine which has a Catweasel in it, and put the ROM file onto an Amiga floppy. Boot up the A500 with the EPROM burner, and burn a nice new VIC-20 ROM. A new ROM is born!

But of course it needs to be operated on now. As it stands it has too many pins, some of which are in the wrong places.

Here’s a useful site: http://www.faime.demon.co.uk/retro/2364.html

To copy his info:

2364 Pinout:

8K * 8 NMOS ROM, 24 Pin DIP (various manufacturers).
2364
+—–\/—-+
A7 | 1 24| Vcc
A6 | 2 23| A8
A5 | 3 22| A9
A4 | 4 21| A12
A3 | 5 20| /CS
A2 | 6 19| A10
A1 | 7 18| A11
A0 | 8 17| D7
D0 | 9 16| D6
D1 |10 15| D5
D2 |11 14| D4
Vss |12 13| D3
+———–+

A0-A12 Address Lines. 2^13 = 8192 (8KB).
D0-D7 Data Lines.
Vcc = +5V.
/CS = Chip Select (Active Low).

2764
+—–\/—–+
1 -|Vpp Vcc|- 28
2 -|A12 /pgm|- 27
3 -|A7 nc|- 26
4 -|A6 A8|- 25
5 -|A5 A9|- 24
6 -|A4 A11|- 23
7 -|A3 /OE|- 22
8 -|A2 A10|- 21
9 -|A1 /CE|- 20
10 -|A0 D7|- 19
11 -|D0 D6|- 18
12 -|D1 D5|- 17
13 -|D2 D4|- 16
14 -|gnd D3|- 15
+————+

That probably looks better in a monospaced font. Oh well, you get the idea.

From that info, we can wire up the 2764 to pretend to be a 2364.

And here it is! My new baby:

Lovely eh? Just looks like it’s starring in The Silence of the Lambs or something. But it works. For reference, here’s the back….

Stick it in and see what happens:

It still works! A little bit of insulating tape….

and it’s safe to use!

I know, I know, I could have just used wires. But I’m actually using the cut-off parts of capacitors for this, so I’m recycling. Plus I’m going for the whole tortured-ROM effect, and it looks cool.

Stick it all back together and….

Ladies and Gentlemen, we have a winner. And very smart it is too.

Now, here’s a picture of a lizard.

He was sitting outside the office and I nearly trod on him. Failing to find Mr. Attenborough anywhere around, I took a few photos (looking a complete idiot in the process), and put him safely on the grass.

Now I’ve just received a mountain of parcels from Nice Mr. Postie. Hurrah again!

3 Comments
  1. Fascinating as usual,and interesting to read you burned the EPROM on the a500.

  2. Fascinating read – I feel your pain about the lifting tracks, on some boards it happens a lot – particularly my CPC 6128 which I’m currently resurrecting. The previous owner managed to break three tracks from the OS/Basic rom then I managed to break one myself desoldering said ROM just for good measure!

    I’m in the process of putting my own blog together with some repair tales not dissimilar to yours. My favourite machines are currently classic CPC and Archimedes A3000s which are remarkably robust certainly more so than the Amiga 500!

    With a bit of research it’s amazing how many of these 8 and 16 bit machines are repairable. My next challenge after the CPC is an Acorn Electron though sadly its single ASIC is probably the failing component – though you never know I might get lucky!

Leave a comment