Sunday 22 April 2018

Oric-1 Repair Part 2 - Power and Video

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

A slightly belated follow up to my previous Oric 1 Repair post, which covered replacing some faulty parts and fixing the reset circuitry.
That Oric-1 had arrived with the power supply regulator bypassed, so the input was 5V DC only.
The arrangement on the Oric is unusual, in that to take 9V DC down to 5V DC it uses a 7905 regulator, rather than the usual 7805. The 7905 is a negative regulator, so is inserted in the 0V line.

Other than maybe an economic reason, there doesn't seem to be a good technical reason for this. Indeed, there are several against it. This arrangement means that with 9V DC input, the ground rail of the Oric is around 4V DC relative to the input, and if the power supply used happened to be grounded to mains earth, and you plugged it into a TV or cassette recorder which was also grounded, you would be shorting out the regulator and feeding the logic with 9V. The same could happen if you used a power supply splitter to split your 9V supply to drive a cassette recorder or small TV as well as the Oric. Not an unreasonable thing to do, but again it would be shorting out the ground rail.
Normally, the 7905 (or a 2905 which is the same thing) is mounted with a small heatsink. This runs very warm, so it is a good idea to add more metalwork to help dissipate the heat, or replace it with a DC-DC converter.
There are many 7805 replacements to choose from, and on things like the ZX Spectrum, these are a worth while upgrade. Here using the Traco Power TSR-1-2450. The Oric is a little more complicated, as it needs the 7905 version. There aren't as many to choose from, so I got a TSN 1-2450, the N being the import part of the name, meaning negative.
When I ordered those (which was a year or two ago), I couldn't get one with right angled legs, but I think they are available now. Being less common, these were about three times the price of the positive version, but I wanted to avoid cutting tracks and messing up the board to try to fit a positive version.
To fit that, I soldered it to some 0.1" header and laid it flat on the board. With that fitted, I could remove the '5V DC' warning stickers I had placed on the Oric and connect a 9V DC centre positive supply to it. That's not ideal, as I use a lot of centre negative supplies, for the ZX Spectrum, Commodore 16, Minstrel ZX80 clone etc.
Next to be addressed was the video output. I had been using a temporary composite video modification, but I wanted to use the RGB output. As usual in these cases, rather than mess around trying to work out pinouts and if resistors are required etc. I ordered a lead from Retro Computer Shack.
This one handled the SCART RGB switching voltage required by tapping into the Oric power, the power supply plugging into a short cable connected to the DIN plug, and another short cable going off to power the Oric.
I took the opportunity to make a small change to the lead. Since the power supply was connected to this lead, I swapped the wires around on the DIN plug, and made the input jack 9V DC centre negative. I updated the label on the DC input jack to make it clear.
This meant that without having to modify the Oric, I could use my normal 9V DC centre negative supplies, such as the ones I get from The Future Was 8 Bit.
I did a similar thing to use these power supplies with ZX81s and Atari 2600s, I made a short 3.5mm jack to 2.1mm DC jack socket lead, wired centre negative.
OK, that the power and video side sorted. Time for some testing. Firstly with the test ROM I used last time.
That's looking very nice, now to try some games out. The Oric uses the same 7 pin DIN cassette connector as the BBC and the Acorn Electron, so I wired that up to an Acorn cassette deck.
Time to try loading, fingers crossed....
Surprisingly for an Oric, it loaded first time. Time to do some testing on Rodmän.

Saturday 14 April 2018

VIC20 Diagnostics Harness and Cartridge Kits

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

I have been making VIC20 diagnostics cartridges and test harnesses for a while, and I have decided to change things up a bit, and offer these as a kit.
The test harness is a series of loopback plugs which plug into the VIC20 ports.
A cartridge is then installed which runs Commdore's VIC20 diagnostic software.
The kit version of this requires you to assemble these from the parts provided.
Accompanying the harness is a choice of cartridges. There is a dedicate diagnostics cartridge.
The kit for this comes with a pre-programmed ROM.
The other choice is a ROM/RAM board. This is a simple DIP switch controlled card that can provide 27K or 32K of RAM, or a selection of a few games to test out you VIC, along with the diagnostics ROM.
The kit comes with pre-programmed ROM and GAL.
These cartridges can be fitted into an original Commodore cartridge case.
The smaller board is held in place by the inverted T shaped pillars (which are sometimes removed in brown utility cartridges).
Or one of the new ones from TheFutureWas8Bit.
As well as the kit, you can just order the PCBs.
Or fully built and tested sets, all available from my Tindie store.

Sunday 8 April 2018

ZX Spectrum "4 Out of Memory" Error Repair

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

Here is a ZX Spectrum issue 3B board with a bit of an unusual error.
It is displaying an error message, "4 Out of Memory Error, 0".
You see that on Commodore PETs and C64's with RAM faults, but I have never seen it on a Spectrum before. The fact the characters are readable would tend to point to am upper RAM fault. Lower RAM faults don't usually result in readable text.
This is one of those boards I would rather not work on. It has been repaired several times before, and has been recapped and this repair has already been started. It's not as bad as some others I have been sent for repair (those of a nervous disposition, look away now).
This other board is one I have been putting off for a while. Some tracks have been damaged and through hole plating removed. It has been recapped with radial capacitors rather than axial ones. I'm not a fan of recapping in general, but I really don't like it when it's done with bent over leads like that (even though those are Nichicon caps, so are better than the ones used on the other board).
I also noticed one of the decoupling capacitors is missing, presumably damaged whilst levering the chip off. Please don't lever chips of a board. If they don't fall out, they aren't desoldered properly. If you have to resort to levering the chip out, you're likely to pull tracks and through hole plating off with the chip.
Back to the board I'm working on today. I didn't want to power on at this point, to test it as one of the RAM chips had been partially desoldered and there was lots of debris around the pins. I also noticed that a couple of the capacitors had been fitted the wrong way around.
I checked several boards to make sure, but all four capacitors on the side should be the same way around, and the second from bottom was reversed. The extra caps I have seen before, I think this is the result of a previous repair to power supply section, which has been recreated with new capacitors. The reset capacitor next to the ULA was also in backwards.
One reason I don't like working on boards like this is I can't trust the previous work. Two of the lower RAM chips have been removed in the past and replaced, one in a socket, one not. Pin 1 had also been cut and repaired on all the original chips. This is the -5V rail, I guess there had been a short on that in the past, and someone had cut the legs to identify the culprit.
With the damage, and the mix of three different makes and speeds, this wasn't ideal. The owner had purchased a new set of 4116 chips, so it seemed the best option was the remove all the suspect chips and check the board out below.
With all that removed and cleaned up, the board was in surprisingly good condition. I checked continuity and all was as it should be, so I fitted a bank of sockets.
I repeated the continuity checks again, and then powered up the board to test all the voltages were present, and all was correct and within spec.
I fitted the new 4116 chips (well, new old stock 4116 chips) and powered on.
4 Out of Memory, 0 just as I had been told. As I expected, the fault wasn't the lower RAM, but at least that is in a more presentable state now. So, after quite a bit of work, the damage from the previous repairs fixed, the board is now back how it was with the original fault, .
Running the Spectrum test ROMs show the lower RAM is fine and the first highlights a problem with the addressing of the upper RAM. A5 is switched by IC25, a 74LS157 which happens to be in a socket here. I did try replacing that, but it made no difference (and neither did the other 157 in a socket).
If not the external multiplexing, then the address decoding in one of the RAM chips. But which one? The other test ROM was more specific, and pointed the finger at IC21.
That seemed a reasonable bet, so I swapped it out.
With a new (again, new-ish) 4532 RAM fitted, repeating the test yielded success, the tests passed. (I'll replace that with a -15 speed one to match the rest later).
Back to the original ROM and we have a clean copyright screen.
I loaded some programs via the divMMC future and everything was fine. I'll test further when it's all back together.
The other thing I was asked to do was to fit a switching regulator, which was supplied. This isn't the type I normally use, but should do the job.
It looked like it would fit as intended, but it was a bit too tall and hit the top of the case, so I removed the pins and remounted it horizontally with a 0.1" header to space it off the board.
It fitted fine that way, so that's it finished.
I ran the ZX diagnostics in soak test mode for a while and ran various games without a problem.
Just whilst I have this on the bench, I was asked recently about composite video conversions on the Spectrum, do I really need a capacitor? Yes, you do. Why?
The capacitor here blocks DC offset from the output of the Spectrum. With the capacitor, the signal is as it should be, the second trace is showing 0V.
Without the capacitor, this rises to over 2V. This voltage offset is applied across the input resistance of the TV, and is turned into heat. The input resistance is meant to be 75Ω, so 2V into 75Ω, is 26mA. It's not quite that in practice, I found adding the capacitor dropped the current consumption of the Spectrum by 15mA. That 15mA would have been flowing through the video cable into the TV, and that extra load on the 5V rail, means extra heat in the 5V regulator.
So yes, you do need a capacitor. It does work without one, but it's not good for the TV or the Spectrum.