On 28 February 2002, Epson released an official Mac OS X driver for the Stylus Photo 750. We'll keep this page up for a historical reminder of what it took to get Epson to support an "obsolete" printer. Hopefully, it will serve as inspiration for owners of other unsupported printers.

Introduction

Almost immediately after releasing the SP750 Unofficial Epson Stylus Photo 750 Driver for Mac OS X, the emails started pouring in asking us to hack a driver for many other unsupported printers. A few people even offered payment, but being the nice guys we are (read: afraid of lawyers), we've had to politely decline. As for developing unofficial drivers for other printers, we'd really like to, but we just don't have any other unsupported printers laying around. And it's not that we're lazy, it's that the process of creating the hacked driver requires a bit of testing on the intended printer. So, we figure the least we could do is tell you all how to do it yourselves. Hey, if enough people create unsupported drivers, maybe the printer manufacturers (Epson) will take notice of the demand and the resentment they've created and perhaps do something about it!

Step 1: Update

You might as well work from the latest versions of the printer drivers, right? Download the latest Epson drivers from Apple through the Software Update program. If there are none listed, you're probably already up to date.

Step 2: Research

Learn which printers are supported by OS X by looking in the /Library/Printers/Epson directory. Create a table with model, number of nozzles, max resolution, other resolutions, language, and buffer size as columns. Then go to the epson web site and get the specs for your printer from the Product Brochure and the Product Information Guide. These can be found in the support section of the epson site under "Manuals" for your printer.

Now, here is the tedious part: get the same specs for some other printers and add them to your table. There's no absolute method to picking the printers; just try to pick printers that are close in model name and number.

Soon you should see a pattern as to which printers are closest to your printer. Pick the printer that has the closest specs to your printer, keeping in mind that the most important factor is the printer language.

Your printer and the printer you select as a close match both have a short name like SP750 for Stylus Photo 750 or SC777 for Stylus Color 777, etc. Take note of these short names too.

Step 3: Gather your tools

If you don't have them already, it's a good idea to have on hand a good plain text editor, like BBEdit, and a hex editor, like HexEdit. Free versions of both of these tools are at the indicated links.

Step 4: Copy

You can do a Sherlock search on your Mac OS X startup volume to find the files you will hack. Search for the short name of the matching printer from your research, i.e. SC740. You should see two files [printer_name].plugin and com.epson.printer.[printer_name].xml. The .plugin file should be in /Library/Printers/Epson, but the XML file is way down in the /System folder somewhere, so just use Sherlock. Make copies of these files in their respective directories and change the [printer_name] part of the file name to the short name of your unsupported printer.

Step 5: Search and Replace

Open the XML file in BBEdit and replace every instance of the name of the supported printer to the name of your unsupported printer. Sometimes this will be the long name ("Stylus Photo 750") or the short name ("SP750"). Yes, case matters. If the names aren't the same length.... Good question. You need to use the short name that the printer identifies itself as to the operating system, so try adding or removing extra bytes and whitespace where necessary.

Now the fun part, and if you're not too familiar with how OS X packages are laid out, it may be easier for you to do this part after booting into Classic. But if you don't want to do that, keep the following in mind: a package is like a directory. Control click on the .plugin package and choose "Show Package Contents" from the contextual menu that pops up. Do the same search and replace routine you did on the first file to every single file in the .plugin package. Go into each directory in the package and do the same. Keep in mind also that some of the files in the .plugin package may be packages too. I told you it would be fun!

Note: In some of the .icc files, the letters of the printer name are separated by a null (0x00) value, make sure that you don't inadvertently replace those nulls with spaces.

Step 6: Install

All you should have to do at this point is reset your printer (turn it off, wait a few seconds, and then turn it on again. You should at this point be hearing some extra disk activity coming from your mac. Wait a few seconds for the disk to stop before you proceed with your testing.

Alternately, if you want to absolutely sure that the latest version of your hacked driver is being loaded, leave your printer on and reboot your mac.

Step 7: Test

Open the Print Center application -- it's in /Applications/Utilities. If your see your printer, you're halfway there. If not, try rebooting with the printer on. If you still don't see your printer, then you probably chose the wrong printer driver to hack. Start over.

If you do see your printer, try printing something. If your first attempt comes out garbled, try a different resolution from the Print dialog. Depending on how close your printer is to the original driver, you may not get all resolutions working. Usually at least the Draft or Economy mode works if you were close at all.

If your printouts fail for all or most resolutions, you probably need to pick a different printer driver to start from. Do more research if necessary.

Finally, test the printer utilities -- they're in /Library/Printers/EPSON/Utilities. This is extremely nice to have so you can see ink levels and clean your jets.

Step 8: Publish your hack!

If you come out of all this with a working printer, it is your duty as a Macintosh citizen to release your hacked driver to the world! Write to MacFixit. Stuff the files into an archive and put them on your web site and tell VersionTracker. If you don't have a web site, put it on your iTools web site. If you don't have an iTools account, shame on you! Get one! As a last resort, you can even send it to us and we'll put it on our web site.

Copyright © 2003 Weird Kid Software LLC. All Rights Reserved.
The Weird Kid Software logo and "Software you need" are trademarks of Weird Kid Software LLC, registered in the U.S.A. and other countries.