Daisy Wheel Diaries, part 2: out-of-the-box experience
This is the second part of the Daisy Wheel Diaries series. The first part can be found here.
The beast arrives
After several days of waiting (and enjoying USPS's parcel tracking, reading how my printer had hopped around the world!), the fateful day had come. Earlier in the week the step-down voltage converter had arrived, and this day I had gone to collect the package I had missed the previous day, which turned out to be the USB-to-Centronics adapter cable. Given it was well into the afternoon by now, I expected that the printer wouldn't be coming today, but perhaps tomorrow or the day after.
But that was not to be so! At just after 5pm, there was a knock on the door, and a package arrived. My brother remarked that it probably wasn't for me, but I held up hope, so I had a look.
Well, that certainly sounds like me! And given there was only one large item I'd ordered to this address recently, it could only be one thing. Though, the box was surprisingly light.
Time to open it up, and film an unboxing video! I don't usually do these, but I felt like I should. So I did! Everything went well...
...until that showed up. Hmm. Maybe I shouldn't have gone with the 8GB iPhone 5C.
Okay, so I don't have a video to show you. But I do have pictures! After cutting through the tape (with tweezers), I was greeted with this:
Packing peanuts. Everyone loves those. What's underneath?
Aha. A plastic wallet containing the manual, parts order form, warranty, unpacking instructions, and the power cable. The thing on the left in that picture isn't from the box, that's the package my USB-to-Centronics cable came in.
Then to the main attraction, below the plastic wallet...
The printer. Albeit covered in protective bubble wrap. Let's remove it.
The thing itself! Transported from Cleveland, Ohio to >redacted<, Scotland, and miraculously intact. Checking the unpacking instructions, you need to remove yellow protector things that you have to leave in during transport:
Then it was a simple matter of following the lovely instructions in the manual. Shout out to Royal, here, the manual is really well-done, covering everything you might care about: initial setup, maintenance, usage, and even the technical details of the product (including ASCII charts and details of escape sequences to command the printer!). It's mostly in monospace, too - was it printed using a LetterMaster? But I digress. Though, the manual does contain one gem which I must point out:
No printer cable included, and third-party cables will invalidate your warranty? I guess things haven't changed much in thirty years!
Luckily, this thing is so old that I am fairly certain I can't claim warranty on it anyway, and I wasn't the one who originally purchased it. I connected the USB-to-Centronics cable and it fit perfectly, much to my surprise. I was expecting it to be at least a little tight.
I followed the steps to adjust the manual margins, load paper, connect the power cable (via the step down converter), and so on. I crossed my fingers, and turned it on.
Instantly, the power light light up, and the print head moved to its leftmost position, making the sound that print heads do when they move. It worked. I was, quite frankly, amazed. Somehow I didn't expect the step-down converter would work. Somehow, I didn't think the printer would work. But it did. Huh.
I turned to the TEST PRINT section of the manual. With everything set, I hit the START PRINT button (which brings the printer online), and then TEST PRINT, crossing my fingers once more...
...and it started printing! Noisily, as you'd expect, but not too noisily. The print-out was faint, but there was a print out. The machine was successfully enumerating the set of characters in its typeface. The result looked like this:
Wait. Stop. Something's wrong. It's not keeping to a straight line. Oh no, the paper is screwing up.
I frantically rushed to stop the machine before the paper jammed. Oh dear. Was the printer broken? This side of the paper bail here didn't seem to go down as much as it was supposed to. Was I duped? Did I buy a faulty product?
Well, after spending some time panicking and trying to think of how I could possibly fix the paper bail, I considered that, perhaps, there was nothing wrong with the printer. Maybe I'd just done something wrong. I re-adjusted the rollers, loaded fresh paper, and...
Yep. The thing was fine. Much ado about nothing. I don't have a picture, but the second time round, the lines were straight. Thank goodness. With a bit of fiddling, I could fix the margins, too. Great!
So, I could power it up, and its built-in test printing worked. That's all well and good, but how about setting it up with my computer?
Daisy wheel printer setup on Mac OS X
Side note: It's just OS X these days, Apple dropped the "Mac" from the name a while back, but "Mac OS X" is probably more Googleable.
I'd bought that USB-to-Centronics cable in the nearly-blind hope it'd work with OS X (see the previous post). It wasn't advertised as being OS X-compatible, but I knew that at least some cables of its kind worked with OS X.
With the printer turned on, I plugged the USB end of the cable into the USB hub I have connected to my MacBook Air. Nothing happened on the machine, but that's to be expected. OS X doesn't really tell you when devices are connected unless it needs you to do some action. This is in contrast to Windows, which always plays a sound when something is connected or disconnected. Therefore I needed a way to see if OS X had recognised the cable. So I went to the System Information tool. Sure enough:
See that "USB2.0-Print" entry there, which I've highlighted in yellow? That's the cable. Seeing that, I figured I could just go on and set up the printer.
OS X's nice graphical printing setup interface in System Preferences has no support for ancient, non-plug-and-play printers. Which isn't terribly surprising, given no Macintosh has ever had a parallel port, and it was fast becoming obsolete by the time OS X was introduced. But that doesn't mean there's no way to do it. Here's why.
See, underneath that shiny Aqua GUI, OS X just uses CUPS, an open-source print system shared between various Unix-like operating systems. And CUPS, dating to 1999, supports such things as parallel ports and dot matrix printers. Since CUPS supports them, and OS X uses CUPS, these things are actually supported on OS X! What's more, you don't even need to dive into the terminal to use them. CUPS has a web interface you can use, and it's supported on OS X just like everything else (in fact, Apple will tell you how to get to it).
So, I did the usual thing. I browsed to http://localhost:631/admin, which gives you CUPS's web interface:
I clicked Add Printer, typed in my admin username and password (it's just your OS X credentials), and chose "USB2.0-Print", which was my printer cable:
I clicked Continue, and gave it a nice name:
I clicked Continue again, and seeing as there was no obvious daisy-wheel printer choice, went for a Raw make and Raw Queue model:
I clicked Add Printer, and then tried to print. Nothing happened. It would just think the printer was offline or idle. I tried printing from the command-line with lp and lpr, and that didn't work.
I Googled around a bit, and it looks like there may be some support in CUPS for generic text-only printers. But I don't know how to use it, and it's not really accessible from the web interface. So, at least for now, I have given up on OS X.
But I wasn't going to let OS X stop me. I wanted to get this thing working, and I knew that someone else had already gotten this thing working on Windows (okay, Windows XP, but good enough). So, to the Windows 8.1 x64 VM it was.
Daisy wheel printer setup on Windows 8.1
An incredibly useful feature of Oracle (ugh) VirtualBox is that it supports USB device filters. That is, you can connect a real USB device to a host machine, and "filter" it so instead of being used by the host OS (in this case, OS X), it is used by the guest OS in the virtual machine. This is handy in many situations - I've given a Linux gparted Live CD VM control of a USB stick before so I could partition it, for example. In this specific instance, the device to be filtered was my USB-to-Centronics cable. So I just booted up the Windows 8.1 VM, clicked on the little USB icon in the VirtualBox status bar, and chose the cable from the list of USB devices. Couldn't be simpler.
Windows helpfully recognised the device, as "USB Printing Support". Cool.
At first, I went down a dead end when I got confused. I tried to set up a printer on the port LPT1, assuming that was the virtual parallel port. Having done that, I printed a test page. Nothing happened. I assumed that maybe there was some intricate configuration aspect of the port I'd gotten wrong, so I faffed about with LPT1's settings... still nothing. Then I wondered if maybe Windows had chosen the wrong drivers, and I needed to install a USB-to-Parallel driver for the cable to make sure things worked. So I went and downloaded Prolific's drivers, and went on Update Driver in Device Manager to try and make the device have the correct driver. But oddly, even with "Only show compatible devices" unchecked, I couldn't find the Prolific entry. That's weird... it's a USB-to-parallel device, why wouldn't Windows see that Prolific's drivers are a correct possibility?
...then it clicked. Firstly, it turns out that USB-to-Centronics cables like this one aren't parallel cables to Windows, they're just a nondescript USB printer to Windows. You can't use drivers like Prolific's on them, because it's not an adapter for a parallel port generally, it's an adapter for printers.
Secondly, LPT1 wasn't my USB cable. I probably should have been ticked off by the fact it wasn't under USB in the Devices by connection view of Device Manager. Nope.
LPT1 was the virtual machine's parallel port, that VirtualBox emulated. A physical one, not an adapter. Oh. That might explain why it had interrupts, and Windows wanted to be restarted when I fiddled with its settings. I don't think it can actually do anything, at least, VirtualBox provides no way to "connect" to it that I can see. But the VM still sees a parallel port on the "motherboard".
Having figured out my mistake, I preceded to configure things properly. Here's how.
First step, open the "Devices and Printers" section of Control Panel.
Second, click "Add a printer".
Third, click "The printer that I want isn't listed".
Fourth, click "Add a local printer or network printer with manual settings" and click Next.
Fifth, choose the correct port (in this case USB001 as I'm using a USB adapter cable, but it'd be LPT1 if you'd connected to the first physical parallel port, say), and click Next.
Sixth, choose "Generic" as the Manufacturer and "Generic / Text Only" under Printers, and click Next.
Seventh, (though I don't know if you'll always see this) choose "Replace the current driver" and click Next - I'm not sure what driver is being replaced, but I think it's the "No Printer Attached" thing that shows up in Device Manager.
Eighth, name it something and click Next.
Ninth, Become mesmerised by the Windows 8.1 progress bar, and find true happiness.
Tenth, choose whether or not to share it, and click Next.
And at long last, we are done! We might want to print a test page. I did.
For the Royal LetterMaster, you have to press the physical START PRINT button on it before you print anything (this is separate to whether it is turned on), which brings it online. I did so, and clicked the "Print a test page" button. The printer sprung into action, and before too long, I had this:
So, the printer was set up with Windows! I could print things fron Notepad and such. Hooray!
Unfortunately, things aren't quite perfect. Windows doesn't handle margins properly (well, it does, but the way it does it doesn't go well with the LetterMaster), leading to it returning short before the ends of lines when printing. Windows doesn't support bold, or underline. And various other issues. Also, the ink on the LetterMaster's ink roller has mostly dried up, thus the very faint output.
But hey, at least we're able to print, right?
It is very, very late now, and I am tired of typing. So this concludes part 2.
Continued in part 3, where we try to solve the ink problem, and may end up writing a printer driver for Windows!