UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > General Vintage Technology > Success Stories

Notices

Success Stories If you have successfully repaired or restored a piece of equipment, why not write up what you did and post details here. Particularly if it was interesting, unusual or challenging. PLEASE DO NOT POST REQUESTS FOR HELP HERE!

Closed Thread
 
Thread Tools
Old 12th Oct 2011, 11:18 pm   #1
cmjones01
Nonode
 
Join Date: Oct 2008
Location: Warsaw, Poland and Cambridge, UK
Posts: 2,681
Default Shugart SA455 floppy disc drive

OK, so this might be an unusual success story, but I'm very interested to hear what people make of it!

Like many people in the 1980s, I cut my computing teeth on a BBC Micro. After starting with only cassette data storage, the machine was eventually upgraded with a disc drive - a Shugart SA455, one of the first half-height 5 1/5" floppy disc drives. Its half-height nature meant that there was always space in its housing for a second drive, but finances and opportunities at the time never ran to the purchase of a second one.

Move on 25 years or so and the internet makes it possible to find obscure bits of computing hardware. Eyes aglow with the spirit of childhood dreams finally realised, I picked up a second almost identical drive in an online auction, advertised as working. The trouble was, it didn't work. The seller was very nice about it, and refunded the purchase price but didn't want the drive back. The first photo shows the drive.

This left me with a duff drive. The service manual for the SA455 is available on line, so I started some detective work. It soon became clear that the main controller chip, a CFD8201, wasn't doing anything - its clock wasn't running and the drive's motors were permanently on (and getting hot). I did the obvious checks: replace the clock crystal and loading capacitors, test the reset pulse, and so on, but there was simply no life there.

So, where to get a CFD8201? Nowhere, as far as I can see. Not even a data sheet to be found online. This is the much-feared problem with vintage computing hardware: a dead, custom, unobtainable chip. I've written on the forum before about the possibilities of using modern programmable logic to replace such devices, so it was time to put my money (or at least time) where my mouth is, and try it.

What does this chip to? As far as I could make out from the service manual, it:
  • drives all four phases of the head positioning stepper motor
  • detects when the drive is 'ready' by the presence of index pulses 200ms apart
  • allows the spindle motor to run for a couple of seconds after the last access, for quicker acceleration on the next operation
  • generates timing for the erase head
  • produces sundry outputs such as a 'track 0' indicator
Fortunately I had a working drive to compare with. The two drives are not quite the same: the original one used a lot of discrete logic and corresponded exactly to the service manual. The broken one had another mystery chip on it (a CF37212N - no, I haven't a clue either), less logic, and wasn't quite the same as the service manual. I figured that the CFD8201 was probably doing more or less the same job in both drives.

It became clear that there were some subtleties to the CFD8201's operation: for example, it double-stepped the head positioning stepper motor, with two steps 3ms apart for each pulse on the STEP input. These things were ironed out with patient use of a scope, notebook and service manual.

But what to replace the chip with? A microcontroller such as a PIC would be the obvious choice, but I didn't like that solution. Performing the various mostly-independent functions required of the chip would be a bit of a pain to program, and the code generated would only run on that particular microcontroller and be little use as documentation for future reference, by me or anyone else.

No. I wanted to do it with with programmable logic, in a CPLD (Complex Programmable Logic Device). VHDL is the language I'm familiar with for this task. Doing it this way has the advantage that it creates a model of the hardware which can be understood by other people, as documentation if you like, comprehensively simulated (for testing) and, crucially, can be synthesized to fit into the devices from multiple manufacturers (Xilinx, Altera and Lattice, for example). It can even be used as a component in a larger design in future.

I found that http://www.trenz-electronic.de/ sells handy boards with a CPLD on them, with pins which can easily be soldered into Veroboard or similar. All the power supply niceties are taken care of by the Trenz board, and it has the standard connector on to hook up the Xilinx programming tool, and there's even a clock source on there. Perfect.

I picked a module based on the Xilinx XCR9572 chip (second picture) because:
  • It had about enough pins
  • The XCR9572, though a 3.3V device, is tolerant of 5V logic. The disc drive is all 5V.
  • I'm already familiar with the foibles of the Xilinx programming tools. Oh, and they're free.
  • I estimated that it probably had about enough logic space. Probably.

I set to and wrote the various VHDL modules, testing them on the simulator as I went. There's nothing very complex in there - just counters for timing, state machines and a bit of logic, but it took some time to get right. Then the moment of truth: would it fit in the chip? No. Compiler reports an error: chip has 72 macrocells, design needs 74. Doh! A bit of fiddling around, compromising the accuracy of a couple of timers, squeezed it on.

Then the soldering (third and fourth pictures). Remove dead chip, wire up substitute on a bit of Veroboard with ribbon cables. Will it work? No, of course not! Well, a little bit. The motor control and 'ready' signals seemed to work, but the head wouldn't move. Looking with a scope, I saw the step input to the chip stuck high. That won't work. Why, though? Where does it come from? Ah...the other big chip, which doesn't feature in the service manual. Humph. Is that dead too? Will I have to recreate that?

Some desperate prodding with the scope revealed that the CFD8201 produces a 500kHz clock on pin 40. This was unused in the older drive, but fed into the mystery chip on the newer one. It was worth a try. A quick modification to the VHDL (programmable logic is great!) to produce a 500kHz clock output (well, 400ish, but near enough). Bingo! We have stepping! The mystery chip was now working. Phew.

Some fiddling with the stepper motor phasing was required to get the head correctly positioned on track 0, and there were some timing wrinkles to sort out, but now it works. I made a quick video of it in operation:

http://www.youtube.com/watch?v=Kg5sHVGW65I

Extra bonus points for anyone who can tell me what the game it loads is

So - it's really possible. Take a dead piece of vintage computing hardware which depends on an undocumented and unobtainable chip which has failed. Re-create the chip with modern technology and the machine works again, and the world gets documentation to boot. I can post the VHDL if anyone's interested.
Attached Thumbnails
Click image for larger version

Name:	sDscn7147.jpg
Views:	289
Size:	113.9 KB
ID:	57319   Click image for larger version

Name:	sDscn7154.jpg
Views:	282
Size:	101.6 KB
ID:	57320   Click image for larger version

Name:	sDscn7160.jpg
Views:	287
Size:	152.4 KB
ID:	57321   Click image for larger version

Name:	sDscn7163.jpg
Views:	277
Size:	127.0 KB
ID:	57322  
cmjones01 is online now  
Old 13th Oct 2011, 12:31 am   #2
paulsherwin
Moderator
 
paulsherwin's Avatar
 
Join Date: Jun 2003
Location: Oxford, UK
Posts: 27,970
Default Re: Shugart SA455 floppy disc drive

A very impressive example of real hardware hacking. Congratulations
paulsherwin is online now  
Old 13th Oct 2011, 11:38 am   #3
greasylox
Retired Dormant Member
 
Join Date: Nov 2009
Location: Carmarthen, Wales, UK.
Posts: 79
Default Re: Shugart SA455 floppy disc drive

I'm in awe, brilliant result.
greasylox is offline  
Old 13th Oct 2011, 1:17 pm   #4
julie_m
Dekatron
 
Join Date: May 2008
Location: Derby, UK.
Posts: 7,735
Default Re: Shugart SA455 floppy disc drive

Nicely nicely, Sporty Spicely That's real dedication, and well worthy of a

Whenever I hear anyone complain about the direction the human race is taking, I will direct them to this story.
__________________
If I have seen further than others, it is because I was standing on a pile of failed experiments.
julie_m is offline  
Old 13th Oct 2011, 11:27 pm   #5
bobbyball
Octode
 
bobbyball's Avatar
 
Join Date: Jul 2011
Location: Stockport, Greater Manchester
Posts: 1,217
Default Re: Shugart SA455 floppy disc drive

Now that is clever!!

Well done, happy memories of my BBC Micro and the disc drive I had that cost a fortune at the time!
bobbyball is online now  
Old 14th Oct 2011, 12:10 pm   #6
AlanC
Hexode
 
AlanC's Avatar
 
Join Date: Jul 2006
Location: Sheffield, South Yorkshire, UK.
Posts: 312
Default Re: Shugart SA455 floppy disc drive

Excellent result. I'm familiar with the PIC and probably (well that is, in the unlikely event I would have attempted this!) would have gone down that route but I accept what you say about the difficulty of documenting the software. At 53 years of age, I come back to projects I tackled a year ago and have to spend a while sussing out how it works- and I thoroughly comment my source code!
__________________
Always expect the unexpected...
AlanC is offline  
Old 14th Oct 2011, 2:26 pm   #7
ScopeMonkey
Pentode
 
ScopeMonkey's Avatar
 
Join Date: May 2008
Location: Leeds, West Yorkshire, UK.
Posts: 236
Default Re: Shugart SA455 floppy disc drive

A fantastic result - well done!

Ed.
ScopeMonkey is offline  
Old 14th Oct 2011, 4:54 pm   #8
davegsm82
Heptode
 
davegsm82's Avatar
 
Join Date: Jan 2004
Location: Blyth, Northumberland, UK.
Posts: 858
Default Re: Shugart SA455 floppy disc drive

My hat goes off to you. While I know I *could* do this, I just wouldn't have the patience.

Well done!

Dave.
davegsm82 is offline  
Old 14th Oct 2011, 5:23 pm   #9
ppppenguin
Retired Dormant Member
 
ppppenguin's Avatar
 
Join Date: Dec 2003
Location: North London, UK.
Posts: 6,168
Default Re: Shugart SA455 floppy disc drive

Impressive result. From my point of view writing the VHDL to perform the required functions is the easy bit. The hard part is reverse engineering a faulty drive to work out what you need to implement.
ppppenguin is offline  
Old 14th Oct 2011, 6:21 pm   #10
cmjones01
Nonode
 
Join Date: Oct 2008
Location: Warsaw, Poland and Cambridge, UK
Posts: 2,681
Default Re: Shugart SA455 floppy disc drive

This has generated more interest than I expected! Thank you to everyone for the kind words. I hope my experiences inspire others to try similar things.

The repaired drive is now, after a little more debugging, reassembled in a housing with its twin and ready for another 25 years of service, with any luck.
cmjones01 is online now  
Old 16th Oct 2011, 10:39 am   #11
Paul Stenning
Administrator
 
Paul Stenning's Avatar
 
Join Date: Dec 2002
Location: Cardiff
Posts: 9,073
Default Re: Shugart SA455 floppy disc drive

Where have you mounted the modification board? Is it attached to the drive or elsewhere inside the case?
__________________

Paul Stenning
Forum Admin/Owner and BVWS Webmaster
Paul Stenning is online now  
Old 16th Oct 2011, 11:49 am   #12
cmjones01
Nonode
 
Join Date: Oct 2008
Location: Warsaw, Poland and Cambridge, UK
Posts: 2,681
Default Re: Shugart SA455 floppy disc drive

It's inside the drive, but tucked in underneath the PCB at the back. There's a space there opposite the stepper motor which is big enough for the bit of board and even has a handy pair of M3 tapped holes to mount it with. That's why the ribbon cables are so long: they run under the main PCB, round the insulator and screening plate at the back, and to my little board. No cutting or drilling required, which I like.
cmjones01 is online now  
Old 16th Oct 2011, 11:09 pm   #13
Paul Stenning
Administrator
 
Paul Stenning's Avatar
 
Join Date: Dec 2002
Location: Cardiff
Posts: 9,073
Default Re: Shugart SA455 floppy disc drive

That sounds like a neat conclusion to an excellent repair/reverse engineering job. Any chance of a photo of the finished unit with the mod board in place?
__________________

Paul Stenning
Forum Admin/Owner and BVWS Webmaster
Paul Stenning is online now  
Old 18th Oct 2011, 8:38 am   #14
mhennessy
Dekatron
 
Join Date: Jul 2007
Location: Evesham, Worcestershire, UK.
Posts: 4,244
Default Re: Shugart SA455 floppy disc drive

Firetrak!

Brilliant game; brilliant job
mhennessy is offline  
Old 18th Oct 2011, 4:36 pm   #15
cmjones01
Nonode
 
Join Date: Oct 2008
Location: Warsaw, Poland and Cambridge, UK
Posts: 2,681
Default Re: Shugart SA455 floppy disc drive

Well done to mhennessy for guessing the game! The prize is to see photos of how the finished article goes together.

A lesson to myself and others: having unboxed it all again to take the photos, now it doesn't work any more. The head positioning stepper just shudders instead of moving. In this drive, the power to the stepper coils is normally at 5V to hold the head in place, but increases to 12V during movement. My suspicion is that something's gone wrong with the electronics for that, probably something fallen off or damaged during handling. There's always one more thing! Anyway, on with the pictures...
Attached Thumbnails
Click image for larger version

Name:	DSCN7204.jpg
Views:	155
Size:	118.9 KB
ID:	57473   Click image for larger version

Name:	DSCN7206.jpg
Views:	172
Size:	99.1 KB
ID:	57474   Click image for larger version

Name:	DSCN7210.jpg
Views:	185
Size:	90.9 KB
ID:	57475   Click image for larger version

Name:	DSCN7211.jpg
Views:	171
Size:	74.7 KB
ID:	57476   Click image for larger version

Name:	DSCN7203.jpg
Views:	153
Size:	56.7 KB
ID:	57477  

cmjones01 is online now  
Old 18th Oct 2011, 6:29 pm   #16
cmjones01
Nonode
 
Join Date: Oct 2008
Location: Warsaw, Poland and Cambridge, UK
Posts: 2,681
Default Re: Shugart SA455 floppy disc drive

Fixed it (again). The failure was down to my ham-fistedness in getting the drive in and out of its case. There was no electrical problem: the failure to step was because the head assembly wasn't free to move on its runners. I couldn't see or feel any obstructions, but inspection revealed that the stepper motor wasn't straight! That meant that the stainless steel band drive to the head assembly didn't work properly. I'd bent the pressed steel sheet motor mountings by clumsy handling, so I bent them back. Now it works happily and is back in its case.
cmjones01 is online now  
Closed Thread




All times are GMT +1. The time now is 3:04 pm.


All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at https://www.vintage-radio.net/rules.html.
Failure to heed this warning may result in death or serious injury to yourself and/or others.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright ©2002 - 2023, Paul Stenning.