• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Anyone have an AppleTalk ImageWriter and a TashTalk or AirTalk?

tashtari

PIC Whisperer
If so, I wonder if you might be willing to do me a small favor... I'm seeking a trace of the AppleTalk network activity between Mac and ImageWriter when a print job is being sent. There are a few different ways to collect such a trace:

If you have an AirTalk and Mini vMac v37 with LToUDP, you could connect the ImageWriter to the AirTalk's LocalTalk network and print to it from Mini vMac, collecting the trace using Wireshark.

If you have a TashTalk Hat, you could connect the ImageWriter to the TashTalk's LocalTalk network, run tashtalkd, and print to it from either Mini vMac (collecting the trace using Wireshark on the machine running Mini vMac) or a physical Mac on the LocalTalk network (collecting the trace using tcpdump on the RPi with the hat). Alternatively, you could run TashRouter and print to the ImageWriter using a Mac on the EtherTalk network, collecting the trace in the form of TashRouter's log output.

All possibilities (that I'm aware of) require having an AirTalk or a TashTalk in some form, and if you're willing but the above approaches don't work for you, I'm more than happy to work with you to find one that does.

The printer doesn't have to work perfectly, if it thinks it's printing properly, that should be good enough for my purposes.

Thanks in advance! =)
 

Phipli

Well-known member
If you have an AirTalk and Mini vMac v37 with LToUDP, you could connect the ImageWriter to the AirTalk's LocalTalk network and print to it from Mini vMac, collecting the trace using Wireshark.
Just a warning - I don't know why, but for me Mini vMac to AirTalk absolutely crawls. Using ethernet to my laptop on a dedicated Router/AP results in speeds that peak at about 20kB/s. I suspect it is something about my Linux laptop, but... I think keeping it out of the equation would be better for any testing.
 

tashtari

PIC Whisperer
Just a warning - I don't know why, but for me Mini vMac to AirTalk absolutely crawls. Using ethernet to my laptop on a dedicated Router/AP results in speeds that peak at about 20kB/s.
Hm, odd. AirTalk on the same AP works fine with other devices, though?

I think this is my best option. It's new to me so I'll have to investigate.
Assuming your Linux distro has support for macvtap devices, you should be able to use the setup detailed here and just delete the two lines that mention TashTalkPort. Then you can send the print job using a Mac on the EtherTalk network and TashRouter will route between the EtherTalk network and the LToUDP network that AirTalk and the ImageWriter are connected to.
 

Andy

Well-known member
I can help too. I have a LocalTalk ImageWriter II and a TashTalk and I can try and get something setup this week.

Also, I have a couple old LocalTalk captures taken with NetMinder from a failed project trying to understand the IW protocol. Would those be useful? There is also a text file export so it might be possible to convert to a form that Wireshark can use.
IMG_5085 Large.jpeg
 

tashtari

PIC Whisperer
Also, I have a couple old LocalTalk captures taken with NetMinder from a failed project trying to understand the IW protocol. Would those be useful?
They might well be! I'd be much obliged if you'd share them, I have NetMinder though I haven't used it before, we'll see how I get on...
 

Andy

Well-known member
Ah cool. Well I got the files off my PowerBook and uploaded here in case you're interested. There's a capture of printing plain text, a print with "failed formatting" that i don't remember the context of, and renaming the printer. I have the text exported file format and the netminder capture files. They only have dataforks so I just stuck them in a zip. Type / Creator codes are NMEF NMED.

May I ask what the project is? I'm curious! I had thought it'd be cool if I could print from my modern computers to the ImageWriter, but I couldn't find any information on what was contained in the PAP packets, other then the status info from the above link. I suspect it's the raw data that would be sent over serial with a direct connected ImageWriter.
 

Attachments

  • ImageWriter NetMinder Captures.zip
    27.7 KB · Views: 4

NJRoadfan

Well-known member
The escape code for renaming a LocalTalk ImageWriter is not documented in the technical manuals. It should be:
Code:
ESC b (0x1B 0x62)
followed by the new name and a trailing zero byte. The rest of the communication should be just raw data in PAP packets.
 

tashtari

PIC Whisperer
Thanks @NJRoadfan for the information, and @Andy for the files!

May I ask what the project is? I'm curious!
Well, the idea is to make sort of a version of inetd for AppleTalk - a foundation on which implementations of end-user services such as AFP can be built. So far, it contains implementations of the basic services that an AppleTalk node is supposed to implement (DDP, RTMP, AEP, NBP), plus ATP.

It's hard to know exactly where to draw the line, whether PAP should ultimately be part of this project or a separate component, but making an implementation of PAP was at least a good way to test the ATP implementation and the rest of the stack built thus far. I intend, at the very least, to implement ASP before I'm done, possibly also ADSP, but there are unanswered questions such as how to connect to the implementations of end-user services. inetd did this by using stdin/stdout, which is nice in a way but may not have flexibility enough for any protocol other than PAP since they don't have a built-in way to designate the ends of messages...

In any case, if I accomplish my goals here, an ImageWriter emulator that plugs into this project should be well within reach.
 

NJRoadfan

Well-known member
A bit biased, but if you need an ImageWriter LQ emulator, there is one in GSport that works pretty well. The code is ugly, but documented. It provides a good guidance on what escape code is supposed to do as well. I have copies of both the ImageWriter II and LQ tech refs if needed.

Note that if you plan on actually using the Macintosh ImageWriter II/LQ AppleTalk drivers, they do seem to send ESC-? to the printer and expect a response with the Self ID string even though the PAPStatus packet contains that information AND the Technical Manual saying the printer doesn't respond to self ID requests over AppleTalk.

The GS/OS drivers don't send ESC-? ever, and rely on the PAPStatus packets for job control and printer configuration as needed. The NBP types broadcasted are "ImageWriter" for the ImageWriter II, and "LQ" for the ImageWriter LQ.
 

NJRoadfan

Well-known member
Yes they do.

See for reasonable emulation defaults: https://github.com/david-schmidt/gsport/blob/master/src/scc_imagewriter.c

ImageWriter II ID string: https://archive.org/details/AppleImageWriterIITechnicalReferenceManual/page/n109/mode/2up
ImageWriter LQ Reference isn't online, see attached. In addition, the ImageWriter LQ Reference does state that all commands work over AppleTalk, which implies the Self ID works. Which makes sense since the PAPStatus packet doesn't return all the bin information.
 

Attachments

  • LQ Self ID.pdf
    1.9 MB · Views: 3
Top