Printer Options for Commodore users
If you are working with real Commodore hardware and need to print, printer options can be pretty limited. One option that you might have missed is the Brother HL-5440D Laser.
Aside from being a nice little printer for general use anyway, the Brother has the two things a Commodore user needs. A parallel port and Epson FX emulation. With the simple addition of a Xetec SuperGraphix or similar interface, the Brother can be used with most Commodore 8 bit computers. It's other emulation modes mean that it works great with Amiga's too. And of course it already works great with your PC, Mac, or Linux box so it's a win all the way around for multi-platform hackers.
Brother makes solid printers that I've used in tough Enterprise and Industrial environments with excellent results and I have no problem recommending them to this community too.
So if you're a dedicated Commodore hacker that needs to print those code listings or ROM dumps from your Commodore and your PC, this is the printer to check out.
http://www.brother-usa.com/Printer/ModelDetail/1/HL5440D/Overview
This is interesting, I haven't thought about printing from the C64 for ages. I had a Citizen 120D back then - a 9-needle printer which had interchangeable interface cartridges for both Centronics and CBM. I had no idea about the Epson FX mode, I guess I need to read up on this!
ReplyDeleteAnd now I'm wondering if it would be possible to capture the printer output from the C64 serial port with a X1541 or similar cable, catch it over a PC's parallel port, save it and convert it into a viewable or re-printable format. I do have a XE-1541 (or is it a XA-1541? I can't remember, but I modified it so it works under Windows with OpenCBM) so this would be interesting to try out, but Google hasn't produced a definitive answer yet....
ReplyDeleteGuido Bibra anything is possible though I'm guessing an easier project would use an Arduino connected to the IEC port and passing the printer output to a PC via USB.
ReplyDeleteChristopher Gaul This is actually somewhat above my head... but given that the C64/128 itself is just basically another IEC device talking over the serial port, this could be possible. But there would have to be a program on the other side to act as the printer since the communication doesn't go only one way, I think! Someone needs to write a Commodore printer emulator :-).
ReplyDeleteGuido Bibra You're right, but I believe the communication is minimal and mostly consists of handshaking ack's or things like "OK, my buffer is empty, send the next batch" or "Buffer full hold it".
ReplyDeleteThanks for a simple hardware recommendation.
ReplyDeleteChristopher is right, an IEC printer doesn't send any bytes back to the computer. It simply releases the "ready to receive" line (/DATA?) when the buffer is full or you press the "offline button" of CBM printers.
Instead of building your own custom Arduino device, you could simply hack the firmware in something like Jim Brain's uIEC to recognize device 4/5 and save the data on its memory card in some systematic filename (like printer4/file0000.txt)
If the file was simple ASCII you could print the file directly; but if used PETSCII there are programs available to convert that on your PC. More troublesome would be anything involving graphics (like GEOS output).
I would try the uIEC hack right now, but with my new Windows box, I would need to get all the Atmel programming / debug stuff setup again.
Because of the graphics issue, I think the direct parallel port + Xetec adapter is the best method... but it's fun to discuss other possibilities.
I think that the ultimate solution might be something like a simple hardware converter* to connect the IEC port to a Raspberry Pi.
ReplyDeleteThe Pi then has custom software to read in the printed output and convert it to postscript. Once in postscript it can be dumped to any printer that CUPS supports under Linux.
This method would also allow you to setup a web based control panel for the Pi box to control the whole thing. That would let you change settings, setup which printer to output to, etc.
*The hardware might be as simple as a $1 eBay 5v <-> 3.3v I/O level converter connected to a Commodore serial IEC DIN plug. The level converter hooks right to the Pi's GPIO pins and it's all software from there.