Jump to content
Bolacore

SSD for a HyperDrive: A Mini Guide

Recommended Posts

A while ago I picked up this Macintosh 128K (Original repair thread above), and it turned out to be a HyperDrive 20 equipped system with a 512Ke board. After repairs the board was functional, but mine was missing both the hard drive and the power supply, and trying to find an original compatible drive was incredibly difficult. I instead decided to get this working with an MFM emulator, and it works brilliantly. I wanted to post this here, so if anyone else in the future has a need for a replacement drive (or even power supply) they can use this :)

 

Firstly, the power supply: I replaced this with a bog standard AC to 4 pin molex adapter wired into the same AC spots the original supply were. There's nothing really special about the original GCC one, and I'm assuming it was incredibly noisy as the kit included a number of ferrite chokes. The HyperDrive board itself expects 5V from an external power supply, and ground - the 12V side is not connected as far as I know. It will not work without this connected, or even be detected by the software. The fan inside can be hooked straight up to 12V from the power supply, nothing special about it either. If you still have your original power supply, you can of course just use it to power the SSD. 

 

For the drive emulator, I used one of these: https://www.pdp8.net/mfm/mfm.shtml - it's a little board that slots into a BeagleBone and allows it to emulate up to two MFM drives, and even read from real MFM drives (So you could clone your existing hard drive onto it). I got the DIY version and soldered it up myself with the super capacitor option. Hardware was super simple - to test it I had it sitting outside the Mac:

 

IMG_20200705_121221.thumb.jpg.d9b357690a5b8517e9d4c3e02ae33fc8.jpg

 

Then I SSH'ed into the BeagleBone and started up the emulator software. You can get a premade image from the same site, or compile it yourself from GitHub of course. The command I used for my drive was:

 

./mfm_emu  --drive 1 --file ../emufile_a --initialize --cylinders 615 --heads 4

 

This matches the cylinders + heads from the MiniScribe 8425 that would have been in my system. Once I started this, I could watch the log output on my laptop and see what the Mac was trying to read and write to. From here, it was just simply launching the HyperDrive software. I used the HyperDrive V3R1 disks from Macintosh Garden, and launched Manager, which then prompted me to initialise the drive. After starting that, I could see all the writes working correctly on the BeagleBone logs. It took a few minutes, and afterwards I was ready to start. I created a new drawer as HFS in Manager, and called it Startup, then quit back to the desktop.

 

Then back on the desktop, I could see the Startup drawer, so I copied System + Finder onto the drawer, then restarted the Mac. 

 

IMG_20200711_170153.thumb.jpg.592304dfa10d8d3455b8e499615ec63e.jpg

 

It fired right up, and booted faster than any other compact Mac I own (And even my 2019 Mac :P ). The only thing left was to tidy up the cabling a bit, and 3D print a little bracket to hold the board in place:

 

IMG_20200705_151716.thumb.jpg.59fa90c6b92a40fa7ffdf83b8caae4bd.jpg

 

To make sure the software always launches at boot on the BeagleBone, the emu service should be enabled:

 

systemctl enable mfm_emu.service

 

The nice thing about the software on there is that it detects the power being shut off. Since there's super capacitors on the board, it'll keep the board running long enough to save the virtual drive file and power off gracefully. 

 

All back together, and with a reproduction of the original sticker:

 

IMG_20200712_122059.thumb.jpg.dbc1556fac36e177f76c25b5279d513f.jpg

 

It works fantastic - from cold start to desktop is under 10 seconds every time, and is faster than my SE/30 with a SCSI2SD. Really stoked to have this thing running. Hope this mini guide helps someone get their's working too :)

Share this post


Link to post
Share on other sites

This is a great!   I have a HyperDrive and am very cognizant that it will eventually fail - great knowing this is an option. Would you consider sharing your 3D printed bracket?

Share this post


Link to post
Share on other sites
8 hours ago, Crutch said:

This is a great!   I have a HyperDrive and am very cognizant that it will eventually fail - great knowing this is an option. Would you consider sharing your 3D printed bracket?

Here it is: hyperdrive-mount.stl. Mines currently stuck down with some strong double sided tape since I didn't want to drill any more holes. I'm sure you could extend it a bit to hook into where the power supply mounts. It's a tight fit, but it holds the board very snugly in place. 

Share this post


Link to post
Share on other sites

@Bolacore Great work!

 

What is the drive capacity in megabytes that you assigned? And did you experiment to see what the maximum drive size can be with the hyperdrive controller and software?

Share this post


Link to post
Share on other sites

Right now it's the original 21-ish MiB of the original drive, which gives 18MiB formatted. The size is hard coded in the ROMs, and there's no option to specify the number of cylinders/heads in the HyperDrive software. AFAIK there was no way to discover the size of a drive with the ST-506 interface either, so, you'd be stuck with whatever size the board was made for. 

Share this post


Link to post
Share on other sites
11 hours ago, Bolacore said:

Then I SSH'ed into the BeagleBone and started up the emulator software. You can get a premade image from the same site, or compile it yourself from GitHub of course. The command I used for my drive was:

 

./mfm_emu  --drive 1 --file ../emufile_a --initialize --cylinders 615 --heads 4

Can you explain a bit more what you did here?

 

Can you do all that with the BeagleBone connected via USB to a modern MacOS X computer?

Share this post


Link to post
Share on other sites
8 hours ago, JDW said:

Can you explain a bit more what you did here?

 

Can you do all that with the BeagleBone connected via USB to a modern MacOS X computer?

Of course - on the premade BeagleBone image, this software is all installed on it already. To run this command, you'd plug a USB cable into the BeagleBone, and then SSH to it by doing "ssh debian@192.168.7.2" (It always has this IP) in a Terminal on macOS. Then you'd switch to root with "sudo su", and then "cd ~/mfm", then you can run the command above.

 

This command just creates the virtual hard disk with the size specified - once you've run this once, you don't need to do it again. You can also run this again to create a fresh image, or to have multiple virtual hard drives if you wanted to that you can swap out. 

Share this post


Link to post
Share on other sites

Thank you for the explanation.

 

The main issue with the setup at this point would seem to be price.  It would cost well over US$200 for the total setup (especially when you factor in shipping charges), and you still need the HyperDrive controller.  I have one of those (and a working 10MB drive too), but the price for all this glorious SSD replacement goodness is high.  Maybe when someone donates that dual board setup to my YouTube channel some day I can do a video on it. :-) 

Share this post


Link to post
Share on other sites

Right, I wasn't fussed about the costs myself, it was purely to get my own system going again - compatible drives in the Netherlands seemed to be going for €150-300 with no real guarantee they worked. I think this whole setup cost me maybe €110 in total. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×