Sunday, November 08, 2020

Fix it 'til it's broke...

Having had a little dry spell on the retro front I went back to fiddling with the A500+ Rev8 board I repaired a while ago. All I was going to do was plug it in with a floppy drive and boot up some games and generally mess about - as long as no keyboard required though since I don't actually have a spare..


A500+ Goodness.

Anyway, after setting it all up, I found a bit of a problem. The floppy drive didn't work. Or, at least, the drive would try to boot but then declare that the inserted disk was not a DOS disk. Hmmm. After several other disks displaying the same behaviour I realised I had a genuine fault somewhere which wasn't there when the board was first repaired about a year or so ago. Marvellous.


Not a DOS disk? Oh, really?


First thing to try, a different floppy disk drive. Well, I currently have three so I thought it would be just a case of a dodgy drive, dirty heads or whatever. But to my surprise, all three drives gave me the same results. So it's not the drive then.

Hmmm. Next thing. Could it be the CIA chips aren't in right? Re-seated them. No difference. In fact I reseated all of the chips but it still made no difference. Even though the Agnus socket was broken I was fairly confident she was still making good contact with all her pins.

Next. 

A close examination of the floppy connector revealed a couple of suspect looking joints, so I broke out the soldering iron and reflowed all the pins, just in case. But no change.

Next.

Could it be that a CIA is actually faulty? They come in pairs so swapping them over is a good way to see if the fault moves to a different part of the board. So I swapped them over but the fault stayed on the floppy drive and did not move to the keyboard or anywhere else.

Next.

Time to break out DiagROM. This should tell me if there was a problem with the CIAs and the floppy drive. The tests on the CIAs did seem to be telling me there was a problem. The timing tests were failing and it was repeatable. And, more importantly, it changed when I swapped the chips.


DiagROM Test 1 - Slow and Fast CIAs..

DiagROM Test 2 - CIAs swapped
but there's still an issue

There are two CIA tests in DiagROM so I swapped the chips back and tried again:


DiagROM Test 3 - Failed

DiagROM Test 4 - Failed again..

But then I put the two CIAs from this machine into a Revision 6 board that I have and also put in the DiagROM. Both CIAs passed without problem. Hmmmm. This was annoying as it meant that both CIAs were probably OK and that there must be something else wrong.


CIAs in a Rev 6A - They pass. WTH?


Back to the A500+ board and time to look at the DiagROM drive diagnostic section. This actually didn't tell me very much either. I could see the floppy drive but it would not access it properly. The author of DiagROM kindly responded to a query I put on the Amiga Facebook group that the floppy drive parts of DiagROM aren't the best and he was looking to re-write and improve them at some point.

In desparation I got the schematics out and looked at the lines running to the floppy connector in the hope that there could be something there to give me a clue but to no avail. I also did try swapping out the logic IC that deals with the selection of the internal and external drive.. But the original chip actually tested OK on my slightly Heath-Robinson tester board contraption and the replacement made no difference either.


The logic chip 74LS05 was OK. :(


Swapping out Paula and Denise with known working spares made no difference either.

Then I de-soldered the two transistors in the circuit to see if one of those had failed. But they came up fine too on my el-cheapo component tester.


Transistors within normal parameters..


So, finally I had to go and get my precious hard disk from in the house and bring it out to my workspace. The reason for this was that I knew it had Kier's test disk on it. I could boot to Workbench, run the test app and maybe see what the heck was going on.

Initially, I was fairly successful but it was obvious something was not right. The app crashed (never done that before) and when it actually worked many of the drive test functions didn't seem to work properly. 


GURU! GURU! GURU!

Crash! A-aaar!


I was ready to put this board on 'broken for spares' pile at this point but then I came across someone on the Facebook group who had had a similar issue on an A600. It turned out that he had a missing line on the data bus. Could this be the same on my board? 

A quick blast on Excel generated a data line test sheet. The idea is simple, just check continuity from and to the points on the spreadsheet. If there's no continuity then that's most likely the source of the problem. 


Finally. A use for Excel!


And would you believe it, I was missing data line D9. A bodge wire to restore D9 was implemented...


Coated copper wire. Saviour?


It works!


And it worked. Perfectly. So, there are a couple of takeaways here. Firstly, always check your data lines. And secondly, just because you think you've cleaned all the battery spillage off a board, don't assume you have. I can only assume this was the cause of the break in D9. But it's back to working properly. 

No comments: