You cannot switch FROM an emulation mode on the LaserWriter IINTX using software. It is possible to change TO emulation modes from PostScript mode through software, but you must cycle the DIP switches to get back into PostScript.
If two Macintosh systems, one on AppleTalk and one on a serial connection, are connected to a LaserWriter IINTX, and if the switches are set for LocalTalk (all switches down), you can print from AppleTalk. The following PostScript program changes the printer mode to Diablo 630 and serial communications at 9600 baud:
%=========================================================
% Begin PostScript Code
%
serverdict begin 0 exitserver % exit server loop
statusdict begin % push statusdict on the stack
9 0 3 setsccbatch % turn off RS-422 channel
25 9600 3 setsccbatch % turn on serial channel
2 setsoftwareiomode % set software mode to Diablo 630
0 sethardwareiomode % set hardware to serial communications
end % end changes to status dictionary
%
% end PostScript Code
%=========================================================
This code is similar to that in part 1 of this article, except:
- the syntax on the setsoftwareiomode and sethardwareiomode commands are
corrected
- the sethardwareiomode command is outside the server loop
- secsccinteractive is changed to setsccbatch
This code, if downloaded from an AppleTalked Macintosh, changes the LaserWriter IINTX into Diablo emulation mode and set the serial channel on the DB-25 to 9600 baud. This was verified by sending more PostScript code from the AppleTalked Macintosh, which was ignored. If the printer is power cycled now, the test print will show Diablo mode at 9600, which verifies not only that the printer is in a different mode, but that the persistent parameters do remain after a power off, as they did on a LaserWriter Plus.
Now, a problem: there is a known, but undocumented, problem in the ROMs that does not allow switching the LaserWriter IINTX out of LaserJet mode via software. There is also a problem that does not allow switching out of Diablo emulation mode via software either.
The command sequence is Escape-Delete-0 followed by a Control (Command)-D. This is supposed to interrupt execution of an emulation mode and allow mode changing. When the first part of this code is sent to the printer in an emulation mode, the green light flashes, because the printer sees the code coming in, but the printer will do nothing without the Control (Command)-D. If you then send the Control (Command)-D, the green light stops flashing but the printer is still in emulation mode. This can be verified by sending another file over the serial connection. This problem is being addressed.
In order to get out of any emulation mode with the current version of the ROMs, it is necessary to cycle the DIP switches, to get the printer back into PostScript mode. Power cycling will not accomplish this, but changing the switches will.
To switch modes:
Step 1:
-------
Connect serial device to LaserWriter IINTX via DB-25.
Step 2:
-------
Connect Macintosh via Mini-8 LocalTalk connector.
Step 3:
-------
Set all switches to DOWN position (reversed from manual).
Step 4:
-------
On power-up, test print should show PostScript and AppleTalk on. The printer will now print from the Macintosh.
Step 5:
-------
From Macintosh via a PostScript downloader, send code to switch to serial. The printer is now accessible from the RS-232 device.
Step 6:
-------
Cycle DIP switches 1 & 2 up, wait 30 seconds, then down again. The printer is now back in PostScript Appletalk mode. If the power is now cycled off and on, the test print will show PostScript and AppleTalk once again.
Here is a code segment that may be of some value when attempting to software switch between modes. Adobe provided this short program that allows going into Diablo emulation mode without actually changing switch settings. This is an internal call to the emulation mode and the mode change persists only for the duration of the print job. Send the following code from PostScript serial mode or PostScript batch mode. Terminate the print job with a Control-D.
CAUTION:
--------
This code could hang the AppleTalk network if both LocalTalk and serial cables/devices are connected at the same time, and this mode is selected via software from the serial (RS-232) connector, and if the AppleTalk channel is not set to the 0-baud rate. This is an undocumented and unsupported feature and neither Adobe nor Apple will be responsible for any problems arising from the use of this code.
%=========================================================
% Begin PostScript Code
%
%%Title: Invoke Diablo Emulation
%%For: Apple Computer Inc.
%%End Comments
%%BeginProcSet: doDiablo
40 0 translate
\\doDiablo { printpageflag false def
{statusdict begin (Courier) (Courier-Bold) 10 0 \\diablo load end exec }
stopped pop printpageflag { showpage } if } def
%%EndProcSet
%% EndProlog
%% BeginSetup
%%EndSetup
doDiablo
%
% end PostScript Code
%=========================================================
Article Change History:
23 Feb 1995 - Added PostScript Caution and reformatted.
Support Information Services