Poll

Does the post below sound cool to you?

Yes - Finally, Printing!
2 (66.7%)
Yes - but I could think of a better way to do it
0 (0%)
No - This sounds dumb
0 (0%)
No - I don't need prinitng
1 (33.3%)
There's already a better way to do this
0 (0%)

Total Members Voted: 3

Author Topic: Printing from Mac OS 9 thru a Networked Intel Mac over TCP/IP - My Project  (Read 7708 times)

Offline InsectorX

  • Enthusiast Member
  • ***
  • Posts: 34
  • new to the forums
My First Post!   8)

Print PDF, TXT, JPG, GIF, & PNG in Mac OS 9, using a networked Mac OS X Computer.  Applescript in development now!

My test setup uses Mac OS 9 and Snow Leopard on 2 different machines.  But, I'm sure it will work even with a Mac Plus  running 7.1+ (with SharewayIP) networked to a new Mac running El Capitan, through an ethernet router.  The older mac is always the server.

Appleshare was removed from Mac OS X starting with 10.6*, making standard forms of Networking and printer sharing not work anymore.  Snow Leopard (10.6) and newer versions of Mac OS can connect to Mac OS 9 as a client through tcp/ip.  I wanted to automate the Mac OS X client machine to check the Networked folder (on OS 9) periodically and print what was inside, then delete that file.

I have been writing an applescript to do this, since Mac OS X's folder actions weren't working properly since the folder was on a server.

My Test Setup:

Power Macintosh 8600 w/ Powerlogix 350Mhz upgrade
     running Mac OS 9.2.2
Mac Mini 2006 2.0Ghz Core2Duo
     running Mac OS X Snow Leopard 10.6.8 (fresh install)
A router  (not completely necessary, but nice to have one for this)

I don't have any programming experience, but I've been on another forum perfecting this script with the help on someone else.  I haven't ironed out all the bugs yet, but it's already working and printing automatically.  It may not be the most elegant solution, and it only prints one file per minute.  But I'm always open to help making this better, because I'm not an expert at all.  But I am determined to make my Power Macintosh print on my modern work printer, and to share the results.

I'll post the full tutorial and download when I'm finally done. 

Please let me know if this sounds cool, or if there is already a way to do this that I didn't know about.  Also any input would be awesome about how to improve my script.

Once I'm done testing this with Mac OS 9, then I will begin testing with System 7.5.3

*10.5 had appleshare, but only for talking to some printers (from my research)

Thanks   8)

If this post is in the wrong spot please move it, or tell me how/where to put it somewhere else.
Power Macintosh 8600/300
w/ PowerLogix 350Mhz G3 upgrade
Running Mac OS 9.2.2  &  8.6

Offline Mat

  • Platinum Member
  • *****
  • Posts: 644
I don´t exactly get what this script should be for?

And let me tell you, I print a lot, even to many huge copiers, RIPS and such stuff.

So is your plan to have some USB printer that cannot talk Appletalk attached to some X machine, where no 9.x driver exists? And then let the X machine look for spooled print jobs in some folder, and print them?

If so, how do you like to get some "printing dialouge" at the 9 machine? Or do you just plan to print some documents that are put into a folder once? If so I don´t see any advantages over any lpd/lpr server that gets text or PDF-direct jobs from any Mac that can talk TCP/IP, ...

Or am I totally wrong and the idea was something completely differently?

But be sure, we appreciate every development or idea that helps our MAc OS 9.2.2 to stay tuned to the present!

Offline mrhappy

  • Platinum Member
  • *****
  • Posts: 1152
  • new to the forums

But be sure, we appreciate every development or idea that helps our MAc OS 9.2.2 to stay tuned to the present!

Yes for sure! ;D

Offline InsectorX

  • Enthusiast Member
  • ***
  • Posts: 34
  • new to the forums
So is your plan to have some USB printer that cannot talk Appletalk attached to some X machine, where no 9.x driver exists? And then let the X machine look for spooled print jobs in some folder, and print them?

If so, how do you like to get some "printing dialouge" at the 9 machine? Or do you just plan to print some documents that are put into a folder once? If so I don´t see any advantages over any lpd/lpr server that gets text or PDF-direct jobs from any Mac that can talk TCP/IP, ...

That's exactly what I'm trying to do.  Just have a folder to drop stuff into.  But the only reason that I started to do this was to setup printing on my hp laserjet pro mfp m127fw at work.  It only supports Mac OS 10.6 or higher.  And It prints using wifi.

I've been scouring google and forums trying to find a Mac OS 9 print solution, to no avail.  So I tried to come up with a solution myself.  I don't know anything about lpd/lpr.  Could someone please point me in the right direction to get this working on my Macintosh 8600?   I connect to a hp laserjet pro mfp m127fw using a wifi router (that's the work printer).  Does lpd/lpr work with any printer?  There is another printer at work, a Sharp laser printer.  But it requires an expansion card (that I don't believe is in it) to use the PPD for Mac OS 9.

Any help would be appreciated, I would much rather print like a normal person, than do all these back flips.  Thank you  :)  Although, now I am getting excited about learning more about applescript.  It's been fun and easy.

BTW, this is awesome news, that there is some kind of better way!

EDIT:  I've been googleing and can't find the PPD file for my printer.  I think this is necessary.  Although the manual for the printer says that there is TCP/IP, and LPD support.  I'll keep looking, maybe it's part of the installer somehow.  hmmm
« Last Edit: June 16, 2016, 12:00:32 AM by InsectorX »
Power Macintosh 8600/300
w/ PowerLogix 350Mhz G3 upgrade
Running Mac OS 9.2.2  &  8.6

Offline InsectorX

  • Enthusiast Member
  • ***
  • Posts: 34
  • new to the forums
If so I don´t see any advantages over any lpd/lpr server that gets text or PDF-direct jobs from any Mac that can talk TCP/IP,

Could you please elaborate a little on how this is done?  Neither of my printers at work have PPD files available for them, I don't know if this matters.

Until then I can print with my ghetto script on the X machine.  But I'd rather do it right.

EDIT:  The users manual of my printer says this:

Supported network protocols Via built-in networking solution: TCP/IP, IPv4, IPv6; Print: LPD (raw queue support only); Discovery: SLP, Bonjour, Web
Services Discovery; IP Config: IPv4 (BootP, DHCP, AutoIP, Manual), IPv6 (Stateless Link-Local and via Router, Statefull via
DHCPv6); Management: SNMPv1, HTTP; HP ePrint

Does this mean that my printer can act as it's own LPD server?  Or do i need to set up another computer as a server?
Power Macintosh 8600/300
w/ PowerLogix 350Mhz G3 upgrade
Running Mac OS 9.2.2  &  8.6

Offline InsectorX

  • Enthusiast Member
  • ***
  • Posts: 34
  • new to the forums
Since this solution has turned into a help question I'm going to Start a different post in the help section.  I hope this is ok, I just don't want to bug the wrong section with questions.
Power Macintosh 8600/300
w/ PowerLogix 350Mhz G3 upgrade
Running Mac OS 9.2.2  &  8.6

Offline InsectorX

  • Enthusiast Member
  • ***
  • Posts: 34
  • new to the forums
This supports printing one file at a time.  I've only tested it with up to a few pages tho.  If you try to put too much in the mac os 9 folder at once it will error.

This applescript goes on a Mac OS X machine.  Connect your Mac OS X machine to the Mac OS 9 server (must have shareway ip enabled to connect over tcp/ip under file sharing control panel). 
Make a folder called "Network_Printer_ƒ" on "Macintosh_HD" (replace these names with your preferred drive and folder name, although I needed to add the underscores to make this work for me)

Save this applescript as a stay open application, after changing the directory names to match your computer setup:

Code: [Select]
property printThisFolder : POSIX file "/Volumes/Macintosh_HD/Network_Printer_ƒ"
on idle
delay 15
tell application "Finder"
print every item of (printThisFolder as alias)
delay 2
delete every item of (printThisFolder as alias)
end tell
tell application "Preview"
quit
end tell
tell application "TextEdit"
quit
end tell
return 50
end idle

Then I tell the Mac OS X machine to connect to the Mac OS 9 Server during startup.  And also, to open the applescript at startup as well.

The only problem is that it reports an error when the Mac OS 9 server can't be found.  So you have to make sure the mac os 9 machine is ON at all times that the X machine is doing it's job. 

It's pretty rough around the edges, but it's getting me prints for the time being.  :)
Power Macintosh 8600/300
w/ PowerLogix 350Mhz G3 upgrade
Running Mac OS 9.2.2  &  8.6