FunFunFun with !Printers and RemotePrinterFS
Craig Lynch (1859) 33 posts |
Hi people, So, being ever curious I’ve been scouting round the intertubes for RISC OS software to play with on the Pi. :D A lot of resets later and discovering ADFFS and RemotePrinterFS it seems that not a lot still works but some gems do. I managed to get ADFFS setup and pulled out a couple of files from disk images (the likes of !Lander, which unfortunately keeled over with a data transfer error after switching the screen resolution but figured Aemulator may help – haven’t gone any further with this yet) RemotePrinterFS is quite fun! I set a standard PCL or PoScriptF or PoScript2F definition file (I even tried out just editing the PDF printer) and use File in the Connections pane of !Printers… Push a text file via StrongED and amazingly my HP Deskjet3070A leaps into life. Lots of Life… This was done just for experimentation. Craig (Also noticed that since I played with some old software too, namely !Notepad my checkboxes have gone back to the old blue asterisk in a box rather than the ticked checkbox – it goes back to normal after a reboot. Odd but cool.) …if you manage to get to the end of this post without pulling your hair out I applaud you. I haven’t had this much fun with computing in a long time, XD |
|
Ned Abell (394) 24 posts |
Craig, |
|
Craig Lynch (1859) 33 posts |
I did use host and the devices hostname on my first shot and unfortunately it couldn’t resolve it but I think that’s more a problem with my router than RemotePrinterFS. |
|
Steve Pampling (1551) 8170 posts |
Two aspects to this – RO doesn’t seem to provide the name registration that most routers(with DHCP) expect. I was planning to look at the DORA exchange when I have a moment to see what isn’t happening. My vM router is about as much use as a chocolate fireguard. Variable implementations on home routers: typical BT homehub WILL do a half decent local DNS (insistence on a .home suffix excepted) a typical older Linksys router doesn’t. Suffice to say that in many cases people need to maintain local hosts files for things to work by hostname – which is a pain in the …. |
|
Chris Johnson (125) 825 posts |
For RemotePrinterFS the keyword is host, not address, but you can still enter an ip address, e.g. host=192.168.9.99. I also find I need to add buffer=yes to the RemotePrinterFS command string to get correct functionality on my Lexmark laser printer and Epson inkjet. Does your HP understand postscript? From your original post, it looks as if it is being sent a postscript file, but is treating it as pure text. |
|
Dave Higton (1515) 3526 posts |
It’s not a PostScript printer. (I just checked HP’s docs.) |
|
nemo (145) 2546 posts |
Or more likely, PCL. |
|
Craig Lynch (1859) 33 posts |
Ok, so the address vs. host thing, either are accepted according the worked examples in the RPFS documentation. I’d love to be able to use host in case the router does happen to allocate its IP to something else but I’ll probably just start fixing IPs as my wireless network is fairly unchanging. Ok, so having fetched a copy of PDumperPCL from gag.de (seems PDumperPCL wasn’t installed but the PCL-Duplex definition file was) and installed that, I got the printer to print content! :D One step closer to using RISC OS as my daily driver (short of a couple of purchases, Messenger Pro and Fireworkz) – which is awesome! Thanks again people, |
|
Andrew Daniel (376) 76 posts |
I have to use HP-hostname.lan with my Technicolor router. Does your router have a local domain setting? |
|
rob andrews (112) 200 posts |
Fireworks is a free download at http://downloads.abacusline.me.uk/ but you have to buy fireworks pro from Rcomp |
|
nemo (145) 2546 posts |
Craig suggested:
Erm, no. It arguably could once have said to have been so (in that the original implementation ran in a Postscript interpreter) but those days are long gone. PDF and PostScript have diverged markedly, and systems implementing PDF within a PostScript environment are now very rare indeed, especially outside RIPs. It is somewhat easier to deal with PDF than PostScript, which is very important in devices with very limited resources such as printers, so you’ll often find PDF without PostScript. PCL, meanwhile, continues to lumber on – undead and unkillable – fed by and feeding the Japanese market in particular. All new devices need PCL compatibility because everyone uses PCL… and everyone uses PCL because all the devices support it. It helps that PCL’s incredibly simple font model makes it very easy for it to cope with the huge character sets of CJK writing systems. Weirdly, there is no real PCL specification – there’s as much unwritten as there is (sloppily and ambiguously) defined. Speaking as someone who has implemented and continues to develop all three of those PDLs, neither PCL nor PDF is as well defined as PostScript. The places where PDF wimps out with “implementation defined” are as infuriating as PCL’s wilfully obscure and inter-related undocumented black magic. At least PostScript tells you what it’s going to do and, mostly, how. |
|
EastLight (1893) 6 posts |
Craig wrote:
Assuming you have a Linux box with CUPS and an appropriate Linux printer driver installed, you could try printing from RISC OS via it. CUPS can act as a server for LPD, and will accept generic PostScript as its input, converting it to whatever language your printer understands. - install cups-bsd package on Debian, then add the following line (if not there already) to /etc/inetd.conf :
and reboot. - identify the name of your destination CUPS print queue (the names are listed in the /var/run/cups/printcap file – queue name is the first portion of text before the | ) - Then, in RISC OS, install the supplied PostScript2 driver into !Printers and enter the appropriate RemotePrinterFS code. For example, if the IP of your Debian box were 10.0.0.2 and the queue were called colourinkjet, you would enter:
You may also have to add a username to the above, depending on how your CUPS permissions are configured – see the RemotePrinterFS help files if so. If the above doesn’t work, take a look at Debian’s /var/log/lpr.log file for clues. Hope this helps. Disclaimer: Do the above at your own risk. If something goes wrong, it’s not my fault. :p |