Sunday 3 September 2017

Camputers Lynx 48K Repair

This is an old post, preserved for reference.
The products and services mentioned within are no longer available.

Here we have an Camputers Lynx 48K in for repair.
This is not a very common machine, and one of three almost identical models produced by Cambridge based Camputers (see what they did there?).
This model is 48K, other options were the same machine, but with 96K or 128K. Inside, there is quite a lot going on.
The plug in model is 8x4116 chips, giving 16K RAM.
Under the first 16K RAM board, there are another 8x4116 chips giving another 16K of RAM.
Finally, under the keyboard lead, there are another 8x4116 chips giving the last of the three banks of 16K, making 48K.
Presumably the other models had different combinations, 96K would probably be the two onboard banks of 16K and a 64K plug in module. Not sure about the 128K version, maybe two banks of 64K on board? The maximum would be 192K with two banks of 64K on board and a 64K module.
Driving all this RAM, is a Z80 running at 4MHz, with BASIC in two 8K EPROMs.
Video output is via a 6845 (same as the CPC464, BBC Micro, Commodore PET etc.). The COM8017 is a UART for the serial IO. The rest of the board is full of TTL glue logic.
Powering it on, there is nothing on the screen. Checking the power supply, all voltages are present. The reset line has pulsed correctly, and the clock is running, but there is no activity on the data or address busses.
One dead Z80 replaced with a new one. As was pointed out on twitter recently, isn't it great that the Z80 CPU is still in production.
Powering on, we now have a screen, a nice Lynx logo and a cursor. The cursor flashed a few times, then stopped, and wouldn't respond to the keyboard. I cycled the power a few times, and got the same thing. On the forth go, it beeped and the cursor kept flashing.
It then ran long enough to type this in, but locked up before I could type run. My first thought for intermittent problems like this would be the RAM. The 4116 isn't known for it's reliability, and there's an awful lot of them in there.
I fired up my '4116 tester' and we through all the socketed chips on board. and all seemed fine. The ones on the plug in module were soldered in, so it didn't want to test those until I had rulled out everything else. I tried running it with that module removed, but I got a green screen on power on, and no beep.
The next thing to test was the EPROMs. One read correctly, but the other didn't match the image I had from the internet (Russell Davis archive of Lynx related info).
I then wasted a lot of time trying to work out what the few byte differences were. The 48K/96K/128K versions had slight differences, so I thought this might have been the wrong one of those, or an earlier / later version of the archived one.
What I should have done and didn't do until much later, was retest it several times, and observe that it kept changing.
I dug out a similar EPROM and burned a new copy of the correct ROM image, and it was back up and running.
This time it kept running, and I didn't see any further problems.
I have received some photos from the owner when they got their Lynx back.
Include some games he wrote for the Lynx 34 years ago.
He is now going through all his old tapes archiving all the software. That's great to hear as there doesn't seem to be much around for the Lynx.
Read more about that on his blog.