MacQuadra PiSCSI | #MagPiMonday

Reviving a beloved Apple Mac with a view to retro gaming led one computing fan to embrace Raspberry Pi-based emulation, learns Rosie Hattersley. Happy #MagPiMonday!

 The Raspberry PiSCSI emulator brings old floppy disk and hard disk drives back 
into use
The Raspberry PiSCSI emulator brings old floppy disk and hard disk drives back
into use

Brian Jepson developed an interest in home computing and programming not long after receiving a Radio Shack 150-In-1 electronics kit from his parents. He went on to write about computing and making, culminating in his role as Publishing Director of The MagPi and Hackspace at Raspberry Pi. “When Raspberry Pi originally came out, it really tied both interests together in ways that no other development board had.”, he says. In his spare time, Brian volunteers at Rhode Island’s Computer Museum, restoring old computers. He had a couple of SCSI-based (Small Computer System Interface) computers – “a PowerPC ThinkPad and an Apple Macintosh Quadra, all of which used SCSI drives” – and was keen to bring them back to life, complete with their peripherals.

Mac revival

Getting an old Mac running can be a bit of a project, says Brian. You will almost certainly need to replace the Parameter RAM (PRAM) battery and you may find a leaky battery or capacitors, which can damage the motherboard requiring cleanup and repair. But it’s worth the effort. Macs are great for gaming, he says.

The RaSCSI interface board sits atop Raspberry Pi and can control multiple SCSI devices, including floppy discs, on all manner of retro computers
The RaSCSI interface board sits atop Raspberry Pi and can control multiple SCSI devices, including floppy discs, on all manner of retro computers

To revive his old Mac Quadra, Brian needed something that could present itself as a variety of SCSI devices. He was drawn to RaSCSI, “a fork of an earlier project” that has since been renamed to PiSCSI. The emulator was developed by GitHub user GIMONS (originally for his Sharp X68000 controller) and allows Raspberry Pi to function as emulated SCSI devices (hard disk, CD-ROM, and others) for vintage SCSI-based computers and devices. 

PiSCSI’s success on dozens of retro platforms won Brian over. “Raspberry Pi is going to run faster, more quietly, and be much more reliable than some old SCSI drive. You also have the full power of the hardware and operating system to do other cool things, such as run a vintage web proxy like macproxy. I’ve used Raspberry Pi 4 and also Raspberry Pi Zero 2 in a RaSCSI configuration.”

MacQuadra PiSCSI | #MagPiMonday
PiSCSI recognises and controls hardware just like Mac OS

Clever old computer kit

There is sufficient interest in SCSI peripherals to justify producing kits for them. Brian bought his first one from the now defunct Vintage Computer Centre, and a second from LandoGriffin on Tindie.

It was a challenge to source the correct parts, particularly the SCSI cable. “You’ll definitely want to make sure you understand what connector your computer uses; there are 25-, 50-, and 68-pin variants in different configurations, so make sure you have something that plugs into the PiSCSI on one end and something that plugs into your computer on the other,” he advises.

MacQuadra PiSCSI | #MagPiMonday
Brian enjoyed old style web browsing on his Quadra too

Setting up PiSCSI for his MacQuadra “worked pretty much out of the box”, says Brian, he tweaked it over time “configuring Raspberry Pi to serve up AFP [Apple Filing Protocol] using netatalk to let the Mac mount directories over the network,” as well as adding the proxy web browser “to allow older web browsers to make sense of the modern web”. 

Getting PiSCSI to work with an old ThinkPad was a little more tricky (as his blog details). “The PowerPC ThinkPad runs IBM’s AIX, and I was using PiSCSI to emulate a boot CD-ROM, so I could install AIX on the internal hard drive. I couldn’t get it to work until I realised I needed to tell PiSCSI to present the CD-ROM image with 512-byte blocks.” He also warns that RaSCSI/PiSCSI serves up disk images, which you can, in theory, mount from within Raspberry Pi OS. “I learned the hard way not to do this while the Mac has mounted the disk image. It will corrupt the image.”

MacQuadra PiSCSI | #MagPiMonday
The old Mac OS login screen

Having successfully revived a brace of computers using PiSCSI, Brian has learned there are “shelves and shelves of vintage computers at the Rhode Island Computer Museum that talk SCSI,” which should keep him busy for the next few months.

Print Friendly, PDF & Email

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Server Status

Aradippou Chat 1 Chat 2 Larnaca Limassol Nicosia

Chat Links

Official Links.

1. Chat 1.
2. Chat 2.

Alternative Mirror Links.

1. KiwiIRC 1.
2. KiwiIRC 2.

Other Web Clients.

1. IrcCloud.

Recent Posts

Related Posts:



Super Club Radio

Mighty Deals


CyIRC Tweets

Scroll Up
Fatal error: Uncaught WMAC\JSMin_UnterminatedStringException: WMAC\JSMin: Unterminated String at byte 1180: "+o.accessToken}}).then(e=>{if(!e.ok)throw e;return e});return a.catch(e=>{console.error(`Failed to logout chatrix session. deviceId: ${o.deviceId}`)}),a}})(); in /home/bszucbfe/public_html/wp-content/plugins/clearfy/components/minify-and-combine/includes/classes/ext/php/jsmin.php:215 Stack trace: #0 /home/bszucbfe/public_html/wp-content/plugins/clearfy/components/minify-and-combine/includes/classes/ext/php/jsmin.php(157): WMAC\JSMin->action(2) #1 /home/bszucbfe/public_html/wp-content/plugins/clearfy/components/minify-and-combine/includes/classes/ext/php/jsmin.php(96): WMAC\JSMin->min() #2 /home/bszucbfe/public_html/wp-content/plugins/clearfy/components/minify-and-combine/includes/classes/class-main.php(375): WMAC\JSMin::minify('(function(){"us...') #3 /home/bszucbfe/public_html/wp-includes/class-wp-hook.php(324): WMAC_PluginMain->jsSnippetcacher('(function(){"us...', '/home/bszucbfe/...') #4 /home/bszucbfe/public_h in /home/bszucbfe/public_html/wp-content/plugins/clearfy/components/minify-and-combine/includes/classes/ext/php/jsmin.php on line 215