Using Older Peripherals with Newer Macs
Adam Rosen - 2007.11.02
Using Older Peripherals with Newer Macs
A recurring issue that users of all platforms face is how to useolder peripherals with newer computers. Printers, scanners, harddrives, and various specialty equipment have long life spans and oftenremain in use longer than the computers they were originally used with.But as operating systems evolve and new computers lose ports andhardware interfaces they once had, continuing to use those peripheralscan present challenges.
On the Mac hardware front, there are several ways to tackle theproblem. USB adapters are available for a wide variety of legacyconnectors, including ADB, serial (DIN-8 and DB-9), PS/2, and parallelports (which can be useful with Macs - see below). These types ofadapters are particularly useful for printers and input devices(keyboards, mice, tablets, etc.).
Expansion cards are another popular option. Desktop Macs with PCIslots (PCI, PCI-X, or PCIe) and laptops with expansion card slots (PCCard for PowerBooks, ExpressCard for MacBook Pros) have options to addUSB, FireWire, SCSI, IDE/ATA, serial ports (RS-422), etc. Manufacturersof USB adapters and expansion cards include Keyspan, Belkin, and Griffin, among others.
If you're lucky, just having the expansion card or adapter with theright connector for your legacy device will be enough - the drive willmount on the desktop, the printer can be added as a USB device, etc.For example, you can use ADB mice and keyboards via the Griffin iMateadapter, just plug and play.
More often than not, however - particularly with devices more than afew years old - additional software is required that may not becompatible with your current operating system. Old printer and scannerdrivers, software for the expansion card or adapter itself, and evensome USB devices may only work in Mac OS 9 or earlier.
Another solution is required.
To bridge the Operating System Gap, you can use virtualization torun old hardware and drivers on newer systems. Virtualization is thepractice of running a "guest" operating system inside a host operatingsystem: The host OS runs the computer, and the guest or virtualized OSruns as a process, fooling the older software into thinking it'srunning on an actual computer. The older peripheral runs inside thevirtual machine, which will have a mechanism to share data with thehost OS.
On PowerPC Macs, examples of virtualization include running MacOS 9 in Classic Modewithin Mac OS X and running Windows within VirtualPC.On Intel Macs, Parallelsand VMWare can runWindows side by side with Mac OS X, and SheepShaverprovides the ability to run Mac OS 9 on current machines (withsome limitations).
To illustrate how virtualization can help, and the challenges ofgetting it to work, consider the tale of an inkjet printer: I have a Primera SignatureII CD printer, which is an old professional workhorse. It's slow butreliable, and I can still get ink from the manufacturer. The printerincludes a Mac DIN-8 serial port and a PC parallel port, and it hasdrivers for Mac OS 9 and Windows 98/2K. With the printer I use alabel database created in FileMakerPro v4 (Mac and Win compatible)that contains templates with my business logo and fields for disccontent information.
The printer was originally used in a commercial recording studio.After several upgrades to faster CD printers, the old Sig II gotrelegated to a shelf in the basement. I claimed it during a subsequentequipment purge - "take it now or it's trash" - and decided toput it to use in my home office.
Using Classic Mode on PowerPC Macs
By the time the printer was ready for it's second career at my home,Mac OS X was the current Operating System, and I was running10.3.9 on a Power Mac G4 that didn't have DIN-8 serial ports. I decidedto try using Classic Mode with a USB-to-Serial adapter.
I already had Classic running on my Power Mac, so the first step wasto install the Mac OS 9 printer drivers for the Primera; nothingmore complicated here than running the installer. In order to provide aDIN-8 serial port, I purchased a Keyspan USA28XUSB Twin Serial Adapter. This adapter was released back in theClassic Mac OS days and is still supported in Mac OS X, withdrivers for both operating systems.
One problem with sharing USB devices in a virtualized setting isthat both operating systems may try to claim the devicesimultaneously - this was a big problem in early versions of MacOS X with Classic. Since the Keyspan adapter requires drivers towork correctly in both operating systems, I avoided the problem by onlyinstalling the OS 9 drivers in Classic and skipping the OS Xinstallation. The final step was to install FileMaker Pro v4 intoClassic and copy my label template database.
To print a CD I would start Classic first, then turn on the printerand plug it the Keyspan USB adapter; I found that to be the mostreliable way to connect the printer. Once connected, go to Chooser,select the Primera, and choose which serial port is being used on theadapter (#1 or #2). As with all printer changes in Mac OS 9, youthen have to visit Page Setup... in FileMaker Pro (or your current app)to ensure that page format settings are correct.
This worked beautifully, and I used this setup for several years,eventually swapping the Power Mac G4 for a Power Mac G5 and upgradingfrom Mac OS X 10.3.x to 10.4.x.
All was well in the world (at least on this front) until I bought anIntel-based Mac Pro earlier thissummer.
Using SheepShaver on Intel Macs
Apple's switch to Intel-based Macs has been a major success, but onedrawback for longtime Mac users is their inability run Mac OS 9 inClassic mode. My printing solution was no longer viable.
I could have kept the Primera connected to a PowerPC Mac runningClassic - or even one booted into Mac OS 9, since I have dozens ofold Macs around as part of my Vintage Mac Museum - but that'sless convenient then having the printer connected to my primarymachine. I decided to try SheepShaver, an open source project that runsMac OS 9 (and Mac OS 8) on Intel Macs.
SheepShaver requires a Mac OS ROM file and a CD installer for Mac OS9.0.x to get started (the program does not support 9.1 or 9.2 due toconflicts with virtual memory). These may be trivial or significanthurdles, depending on what items you have on hand. It took me about twodays to get SheepShaver working on my system, and I have moreexperience and old software lying around than the average user.
I had a Mac OS 9.0 install CD handy, but extracting a Mac OS ROMfrom several of my older Macs per the documentation was unsuccessful;the extracted files were not recognized by SheepShaver. After a bit ofGoogling I learned that the Mac OS 8.6 install CD contained a "Mac OSROM" file that would work, and I had this disc handy.
I created a SheepShaver disk image file and installed Mac OS 9.0. Inext wanted to run the 9.0.4 updater, but first had to figure out howto get the installer onto the OS 9 disk image (the program runs ina window with a virtual disk image, unlike Classic which shares thescreen and primary drive with Mac OS X). SheepShaver creates a"UNIX" drive on the OS 9 desktop linked to the OS X filesystem, but I found that to be flaky and often unable to copy files.After more trial and error I found that I could mount AppleSharevolumes by IP address and use the network drive as a transfer medium.FTP and Web access also worked.
After the 9.0.4 update, I installed the Primera printer driver, theKeyspan USB adapter driver for Mac OS 9, and FileMaker Pro 4. Irebooted, opened my label database, went to Chooser and . . .no luck. The Sig II was listed and selectable, but no serial ports wereavailable to choose from. A bit more investigation revealed thatemulation of the serial port is as-yet unavailable in the Mac versionof SheepShaver; currently only the Linux version appears to supportserial ports.
The USB adapter was probably working, but it emulates another portwhich does not. Stymied. SheepShaver is able to access networkedTCP/IP printers (lasers and the like), so I was able to use the AppleDesktop Printer Utility to create a desktop printer for my networked HPLaserJet (create an LPR printer and add by IP address). However, thisdidn't help with my CD printing needs.
Hopefully SheepShaver will evolve into a capable replacement forClassic on Intel Macs, but at the moment it has several majorlimitations. Just for kicks, however, I made a second disk image andinstalled Mac OS 8.6 on that one - Mac OS 8 running on Intel,who'da thunk it?
Running Windows with Parallels on Intel Macs
The primary virtualization use for Intel Macs is running Windows,not Mac OS 9, and two strong solutions exist for this task:Parallels and VMWare. I already had a copy of Parallels on my Mac Pro,so I went down this road.
The Primera Signature II has drivers written for Windows 98 and2000; these drivers are listed as not XP compatible. They are parallelport drivers, so I needed to purchase a USB-to-Parallel adapter. TheKeyspan UP6CParallel Printer Adapter fit the bill.
First step: Set up the virtual disk image. Parallels has the abilityto install Windows from scratch, migrate a VirtualPC disk image, ormigrate from an actual PC with Windows installed. I had several Win2KVirtualPC disk images available and an old PC running Win2K on theshelf, so I started with those.
Unfortunately the Parallels Transporter migration utility is not theprogram's most reliable feature, and I had no success migrating myVirtualPC disk images. Searches of the Parallels support forumsrevealed this was not an isolated problem, and several workarounds thatwere posted (and subsequently suggested to me by the Parallels techsupport team) did not work for me. After a few attempts I gave up andtried my physical PC.
A small Migration Agent app runs on the PC, and the migration occursvia ethernet. This did work for me, but it was very slow and had to beleft running overnight. Once migrated, I ran the Parallels Toolsinstaller on the virtual machine to help integrate the system with MacOS X.
...I finally got the printer installed andremembered why I prefer Macs.
Next came a bit of typical Windows hell: I tried to install thePrimera printer driver and got all sorts of permissions errors. Aftermore Googling, help via an expert PC colleague, forcing permissions,editing secpol.msc, etc., I finally got the printer installed andremembered why I prefer Macs. Another several days had passed.
Last came the USB-to-Parallel adapter. This was recognized byWindows when I plugged it in and needed to have it's own driversinstalled - please insert the Windows 2000 CD. Installation began - andthen bombed out with another error; the installer couldn't writesomething it needed. I moved the file there manually and ran theinstaller again - still no dice. I tried to install in Safe Mode - USBdoesn't work in Safe Mode. Aarrgghh! I swore again at Microsoft andBill Gates.
I suspect the problems stemmed from converting my physical PC to avirtual machine. I should probably just reinstall Win2K from scratch,but unlike XP this requires about 40 reboots to update itself onlineand will likely bring more headaches. Stymied again.
When All Else Fails...
It was now about a week into my printer project, and I needed toprint some CDs for clients. I hauled out my PowerBook G4, installed theprinter and adapter in Classic, copied over FileMaker Pro 4, and hadthings up and running in about 5 minutes. CDs printed no sweat. Hmmm,maybe I should just leave the PowerBook next to my Mac Pro whenever I'mhome....
But I'm stubborn! With nothing left to lose, I decided to see if Icould get the printer working in Parallels with Windows XP before Ireinstalled Windows 2000. I booted up an XP image and installed the(non-qualified) Signature II printer driver. No problem, it wentwithout a hitch. I then plugged in the Keyspan USB-Parallel adapter,the system made the typical Windows device-attached "ka-blink" soundand said "Primera Signature II printer found." XP automaticallyinstalled the necessary drivers in a few seconds. Not bad.
I installed FileMaker Pro v4 for Windows, which still runs fine inXP (wish I could do that in Mac OS X - score one for Microsoft, Itake back a few curses). Open my label database, print to the Primeraprinter, and bingo! A labeled CD gets printed immediately, requiringonly a few minor formatting tweaks to the template.
Victory! The solution that shouldn't work, does. The solutions thatshould work, don't. Welcome to computers. But hey, my goal wasattained.
Persistence is the name of the game with a project like this. Butbesides virtualization, one more suggestion for using old peripheralswith newer computers is to directly network devices and/or shareperipherals via other computers over the network.
For printers, many adapters exist to connect DIN-8 serial(AppleTalk), USB, or parallel port devices to wired ethernet or WiFinetworks. I recommend wired adapters when possible; these are morereliable than wireless devices (fewer dropouts). If you can enable theadapter or device for TCP/IP connectivity do so, this will be morewidely useable than AppleTalk or Windows Sharing. Use a fixed IPaddress on the adapter so you can add by address rather than having toscan the network. FYI, HP JetDirect adapters are great for HP laserprinters, but they don't work with inkjet models.
For printers and hard drives, another solution may be to keep theold peripheral connected to an older Mac and enable printer or filesharing. You may then be able to add the shared printer or drive toyour Mac OS X system and access the device via the keyboard andsoftware of your current machine.
Scanners and other specialized peripherals were usually not sharablein Classic Mac OS versions, but you may wish to explore remote desktopcontrol of your old Mac to access the peripherals over a network.Methods for Mac remote desktop control will be covered in a futureAdam's Apple column.
This article was originally published on Adam'sOakbog website. It has beenadapted and reprinted here with his permission.
- Mac of the Day: Performa 575, introduced 1994.02.01. The first all-in-one Mac with 68040 power supports 136 MB of RAM.
- Support Low End Mac
Cult of Mac
Shrine of Apple
The Mac Observer
Accelerate Your Mac
The Vintage Mac Museum
Mac Driver Museum
System 6 Heaven
System 7 Today
the pickle's Low-End Mac FAQ