Posts Tagged ‘ZX Spectrum


ZX Spectrum Update

ZX Spectrum mainboard

ZX Spectrum mainboard

Some time ago my ZX spectrum had another failing in the video RAM department, but at the time I couldn’t easily diagnose the problem. Some parts of the machine still appeared to work such as the display circuit which could still manage to display the usual pattern when video RAM isn’t working. I put it aside to work on other projects until I could build up some knowledge.

Recently reading around the internet I came across a youtube channel with a nice guide for the basics of repairing ZX Spectrums. His name is JoulesperCoulomb, he has a number of good videos about repairing Spectrums and some other electronics such as amplifiers. He also sells some replacement memory modules for spectrums from his website. I watched the first video and decided I should check the power circuits on my unit.

Following his instructions I found a few problems with the power circuitry. Firstly the resistance through the 7805 was low by his standards at 22K ohms and the inductor seems to have a resistance value between windings that it shouldn’t. So there’s two issues to look at straight away. Further testing revealed that two transistors TR4 and TR5 have failed, which are a part of the power supply circuit. Apparently these are all common problems.

Luckily important components like the Z80 CPU and ULA seems to be working from what I can tell with my scope.

So my Spectrum is one sick puppy. The faulty power circuitry explains the problem completely, as I found out later that the -5V line to the video memory is not getting power whilst the 12V and 5V lines appear to be working. I’ll have to replace the two transistors and do some more testing. I may also replace all the electrolytic capacitors as they are all old with a few having been replaced by a previous owner. The inductor and voltage regulator I will have to investigate as measurements could have been affected by other components.


More Hardware Shenanigans

This weekend I was rather busy catching up on housework and replacing some parts on my motorbike after going on a short holiday. So I was unable to really find any time to play a game for writing about. I did however find some time to do a little bit of hardware tinkering with some new bit and pieces I’ve recently acquired.

Compensating the probes

Compensating the probes

Firstly I recently bought myself a decent oscilloscope for the purposes of fixing old computer hardware and to help with hardware projects. I bought a Rigol 2000 series 70Mhz scope which was about 900 Australian Dollars (inc GST). So far I’ve found it pretty easy to use and have been able to probe points all over my poor ZX Spectrum which seems to have destroyed another video chip. Using it I have located a capacitor that looks like there is no voltage reaching it so the board may have power issues or that cap may be bad. In any case the scope I got seems quite good, and even though I only ever used an old school analog scope back at Uni I’ve found this one easy to do what I want with it.

The second thing I brought back from a holiday to see my parents recently. It is the original 5 inch floppy drive from our old Twinhead 386sx computer we got when I was a kid. It is a Canon MD 5501 drive that unfortunately has seen better days, it originally had a problem when my well meaning Dad tried cleaning it. After he cleaned it reading disks became basically impossible, and the eject mechanism eventually began to stick. We thought the drive was dead, but it probably just needed proper lubrication and alignment after Dad messed with it. Not knowing this I removed the power connecter from it some years later for connecting up some fans I was wiring up for my then computer chassis.

Floppy drive minus shield

Floppy drive minus shield

So the drive requires heaps of attention to try to restore it. But so far I’ve been quite successful in freeing up and lubricating the eject and head mechanism with some simple silicon spray. It now looks pretty good mechanically! I’ve soldered on a power connecter cannibalizing a Molex to dual SATA power converter. It’s not as tidy as the original connector but it seems to work. I have yet to work out how to go about re-aligning the heads but that is the next challenge!

Because the original main board for our 386sx is still functional I am entertaining the thought of re-building our old machine. The main problem being I don’t have the original chassis as it got rusted when the external CMOS battery leaked. Fortunately the main board survived this, but being what it is, it doesn’t fit any chassis I have laying around. I guess that’s not an issue until I get to putting it in a pretty case!


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.

Continue reading ‘Micro Computer Comparison – Part 3’


Micro Computer Comparison – Part 2

In the first part of this series I compared the memory bandwidth of the Commodore 64 (know as the C64 for short) and the ZX Spectrum. If you haven’t read the first part you will find it here.

Today I will compare the two microprocessors used by the systems, that is the Moschip 6502 and the Zilog Z80 processors. In the last part I found that memory bandwidth wise, both processors have roughly the same ability at the speeds used and that the difference in memory performance was up to the physical architecture of the systems in which they are operating in. To understand how much work each processor is capable of doing I will be looking at the impact of the internal structure and instruction sets.

This will most likely be another very long post!

Continue reading ‘Micro Computer Comparison – Part 2’


Micro Computer comparison – Part 1

Recently I ran into the rantings of fan boys about the Commodore 64 and the Sinclair ZX Spectrum. I wasn’t very satisfied with the arguments of either side, as they were both filled with bias and ignorance, just like pretty much any flaming on the internet. One C64 fan even claimed the 6502 was faster than the IBM PC (an 8088 @ 4.77Mhz). So I decided to do some reading of data sheets myself to get a more balanced and accurate view of the real potential of the machines. Just to clarify, whilst I own one of each kind of machine, I didn’t have either as a kid and thus don’t have childhood memories to bias my opinion one way of the other.

This is an incredibly long article so read on if you dare!

Continue reading ‘Micro Computer comparison – Part 1’


ZX Spectrum repair

Image clearer - but corrupted

Image clearer – but corrupted

A couple of weeks ago I went to use my spectrum. I modded the circuit to output composite video instead of RF to make connecting it easier, and to clean up the displayed image. The mod was a great success but I discovered bad video ram was causing my machine to not boot up and only display garbage.The garbage had a pattern to it that looked to me like a single bit in the video ram was faulty. Two chips in the video memory were already socketed, probably from a previous repair, and after swapping them I suspected one of them was faulty. The video ram on a spectrum is organised into a bank of 8 4116 memory chips, each one responsible for one bit out of a byte word of video RAM. The original chips are increasingly difficult to find, this makes it difficult to repair them without buying a sacrificial machine to take parts from.



I searched high and low for some replacement chips and found some AMD equivalent plug-in replacements that I thought would do the job. They are AM9016FPC chips that are 150μs in speed. They are pretty much identical to the original 4116 chips that were originally in the spectrum, so I bought a number of them as spares, in fact enough to replace the entire video memory bank if required.

It's working!

It’s working!

Just this weekend gone the chips arrived and I had time to try them out. So  I dismantled my spectrum, removed one of the Texas Instrument chips in the sockets and replaced it with the new AMD chip. It wasn’t long before I had my spectrum back in working order! The fact that one of the chips had failed concerned me, so I decided to write a simple basic program to test all the memory I could in a simple way, to ensure that no others had died.

So after reading a memory map for the spectrum I banged out a short program to do some simple tests of the ram. Here is some of the code.

Test Program

Test Program

10 LET l=0
20 LET s=25001
30 LET e=65535
40 FOR i=s to e
50 LET c=INT (i/255)
60 IF c=l THEN GO TO 80
65 LET l=c
70 PRINT AT 1,1;"mem addr ";i
80 POKE i,0
90 IF PEEK i=0 THEN GO TO 110
100 PRINT "error ";i;" ";PEEK i
110 POKE i,255
120 IF PEEK i=255 THEN GO TO 140
130 PRINT "error 2 ";i;" ";PEEK i
140 NEXT i

You can adjust this code to test other areas of memory by changing the s and e variables. To run this code you should type CLEAR 25000 first so none of the memory used for basic is overwritten. It tests the upper portion of the contended memory and all of the 32K bank. Progress is printed every 255 bytes. It’s not a very thorough test of the memory as it doesn’t check for cross-links or other memory faults. It could of course be adapted for that, but would take significantly longer to perform the test, unless programmed in assembly.

I ran this on my spectrum and everything appeared fine, I even left the machine on over night and tested again in the morning, so I’m satisfied that the memory is now in good condition.


Hardware Weekend – Modding a Spectrum

This weekend rather than fiddling around with software of some sort I decided to get the old soldering iron out and have a go at a job I’ve been meaning to do for ages. I have a sinclair ZX Spectrum which of course under normal circumstances uses a RF signal with my TV. This works ok, but is often fuzzy and has interference. So I decided to perform a simple mod in order to bypass the RF modulator on board. I had previously replaced the keyboard membrane because the old one had failed.

ZX Spectrum mainboard

ZX Spectrum mainboard

Fortunately there are many websites around the web that tell you exactly how to do this. So after dismantling my speccy, and reading up about what to do I began by desoldering the wires of the RF modulator. These seemed to be harder to get out than I had anticipated partly because they seemed to be soldered in from both sides of the board and my solder sucker didn’t seem to be very effective.

RF Modulator

RF Modulator

I did however eventually get the wires disconnected and the board ready. I soldered in the new wire and prepared to test it out. The TV display was wonderful and clear, but unfortunately it seems my poor speccy has acquired a new problem since I last used it.

Mod Complete!

Mod Complete!

The display appears to be corrupted and I believe the CPU is hanging, after a bit of cleaning of the socketed chips I think I’ve narrowed down the problem to the display ram chips that are socketed. The ULA and other parts of the board all appear to work fine within the limitations of what I can test, and swaping the socketed ram chips seems to merely change where the corruption is on screen.

Image clearer - but corrupted

Image clearer – but corrupted

The main problem is sourcing the replacement chips! Video memory on the speccy is in the form of some 4116-n2 chips that are notorious for failure. Looking around online in Australia has turned up no obvious source of getting new chips. I may have to find a similar chip (say a 4164 or something similar) to replace it, but that also will be a difficult task of comparing data sheets. My best hope at the moment is to find another speccy for parts (or working) in order to repair this one.

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