SingleTalk is an AppleTalk device driver (‘adev’) that allows you to keep AppleTalk turned on without actually needing any real physical network interface.
There are a number of reasons that you might want to do this.
Most people think of networking as a mechanism for computers to communicate with each other, and this is true, but what's more important is that networking is a mechanism for computer programs to communicate with each other. If two computer programs can use the system’s networking software to communicate with each other when they are running on different computers thousands of miles apart, shouldn’t it also work if they are running on the same computer? Back when Macintosh computers could only run one program at a time this subtle issue didn’t arise, but in spite of all the claims that cooperative multitasking is not ‘real’ multitasking, today’s Macs will quite happily run many programs at the same time.
One well-known program that uses networking calls to communicate with other programs is Peter Lewis’s FTPd. FTPd communicates with the file system by using the Apple Filing Protocol, as provided by AppleShare and by System 7’s Personal File Sharing. The file server that FTPd communicates with can be anywhere on the AppleTalk network, but most people run FTPd and Personal File Sharing on the same Mac. If you turn the AppleTalk software off in the Chooser just because your (Internet-connected) Mac is not connected to any AppleTalk network, then Personal File Sharing and FTPd won’t be able to work — they won't be able to communicate with each other. If you turn AppleTalk on in the Chooser, then Apple’s networking software requires you to have some network interface (usually LocalTalk) active.
There are a number of reasons that requiring LocalTalk is a bad idea. For a start, it ties up the Printer port on your Mac. A lot of new Macs (like Duos and the 500 series PowerBooks) only have one serial port, making this especially undesirable. If your Internet connection is through a modem (using SLIP or PPP), then turning on LocalTalk on the Printer port leaves you nowhere to plug in your modem. Also, on PowerBooks, powering the LocalTalk hardware consumes battery power, which is pointless if you not actually connected to anyone else.
Another program that uses AppleTalk for communication is Bolo. You can run two copies of Bolo on the same Mac to play against a “Brain”, but you need AppleTalk on.
Instead of a switch in the Chooser to turn the network software on and off, Apple should have made the AppleTalk software always on, and provided controls to turn each network interface on and off.
That’s the idea behind SingleTalk. It allows you to keep AppleTalk turned on without needing to have your LocalTalk interface (or any other physical interface) active.
Even if you don’t want to run any of these network programs when your Mac’s not hooked up to the network, there is another reason why turning AppleTalk on and off in the Chooser can be irritating. If you boot your machine with AppleTalk off and then want to connect to a network later, when you try to turn AppleTalk back on in the Chooser it will tell you that you have to restart your Mac. Instead of turning AppleTalk off when you unplug from the network, just open the Network Control Panel and switch your connection to SingleTalk. When you want to plug into the network again you can instantly switch back to LocalTalk or EtherTalk (or whatever appropriate interface), and you won’t need to restart.
SingleTalk is freeware. You may distribute it freely by electronic and/or physical means and you may develop derivative works from it. Full source code is available at: ftp://Bolo.Stanford.EDU/Public/Stuart's tech notes/Sample AppleTalk adev/
You should never have any reason to turn AppleTalk off again.
System Requirements
SingleTalk should run on any model of Macintosh with any version of the System Software.
Even if you still use System 6 (or System 7.0) I strongly recommend that you keep up to date with Apple's latest networking software, because networking is an area where Apple is continuously fixing bugs. As of November 1995, the latest version of Apple’s Network Software Installer is 1.5.1, and this is what SingleTalk has been tested with.
Quick Start Instructions, for those in a hurry.
To use SingleTalk, just drop it into your Extensions Folder. No need to restart. Just open the Network Control Panel and click on the SingleTalk icon (the Mac with the circular arrow pointing back at itself).
Full Detailed Installation Instructions.
To use SingleTalk, just drop it into your Extensions Folder. No need to restart. Just open the Network Control Panel and click on the SingleTalk icon (the Mac with the circular arrow pointing back at itself).
Now edit your DLLX86E.INI configuration file to alter the your WINSICK.DLL parameters to toggle your DMA interrupt expand your extended memory compact your expanded memory rotate your extruded memory and… Oops. Sorry. That’s the other Operating System.
Frequently Asked Questions
“How is SingleTalk different to Dummy adev from University of Melbourne?”
Dummy adev was designed to solve the same problems as SingleTalk, but there are two main differences:
1. If you have “Dummy adev” selected on your PowerBook, then when you put it to sleep it forgets that “Dummy adev” was selected, and when it wakes up again it will revert back to LocalTalk. (At least it does on my Duo 270c running 7.5.1.) SingleTalk does not have this limitation, and stays selected, even through sleeps and restarts, until you decide to explicitly select something else in the Network Control Panel.
2. According to its documentation, Dummy adev:
“may NOT be publicly redistributed (for example via anonymous FTP), sold, or the source used for any other purpose without the permission of the copyright owner.”
SingleTalk has no such limitations on its use or distribution.
“Why did you write this? I just set my Network Control Panel to ‘EtherTalk built-in’ and don’t plug any transceiver into the on-board Ethernet socket. What’s wrong with that?”
1. Not everyone has built-in Ethernet on their Mac.
2. Powering the built-in Ethernet interface unnecessarily takes extra power from your batteries.
3. People have reported strange behaviour and even crashes from running their Mac with EtherTalk active when there’s no transceiver plugged in.
4. Why use some clumsy workaround when there is a tool specially designed for the job?
Version History
0.1 Wednesday 19th October 1994. First attempt. I couldn't work out how to make it survive being put to sleep, and I got so sick of having to manually reselect SingleTalk every time I woke up my Duo that I decided it wasn't worth releasing it.
1.0 Sunday 29th October 1995. Finally, one year later, I get word from Apple about how to make it survive being put to sleep. Time to release it, I think.
1.1 Wednesday 27th March 1996. Apple accidentally assigned the same adev id (173) to both SingleTalk and “IP Remote A/Talk”! Anyone who had both SingleTalk and IP Remote A/Talk installed on the same machine would experience problems at startup. I've now got Apple to assign me a new id (180) and this time they promise that no one else is using it.
1.2 Friday 29th March 1996. Found that if you clicked on SingleTalk twice, it wouldn’t stay selected the next time you opened the Network Control Panel! This is because I was handling the “Select” event properly, but not the “Reselect” event.
(Note: SingleTalk was briefly released under the name NoTalk. If you are using it, you should upgrade to SingleTalk 1.2)