MAE 2.0: Technical Note 3 of 3

This article is the Macintosh Application Environment (MAE) 2.0 technical note.
Table Of Contents
-----------------
Printing
Keyboard and Display
Other

See Also
------
MAE 2.0 FAQ (Frequently-Asked Questions), available on: <http://www.mae.apple.com>
- or -
via anonymous ftp from: <ftp.support.apple.com>, in directory /pub/mae/info/FAQ/2.0.

MAE 2.0 README.TXT (on MAE 2.0 product CD-ROM)

Printing
========
MAE's support for UNIX printers is very general; it is designed to work on a wide variety of workstations and system types. This flexibility makes it impossible for MAE to troubleshoot every possible printing configuration. Chapter 4 of the MAE USER'S GUIDE, "Printing in MAE," gives a comprehensive description of techniques related to printing. This section lists some commonly-encountered printing errors. If you encounter a printing problem that is not covered, your system administrator should be able to help you.

How to Cancel Printing (Sun and HP)
-----------------------------------
When you print a Macintosh file on MAE, a printing status dialog box appears for several seconds (depending on the size of the file). While the status dialog box is on the screen, you can cancel printing by holding down the Command key and pressing the period (.) key until the "canceling printing" dialog box appears. To cancel printing after the status dialog box has disappeared, use UNIX commands, such as lprm(1) or cancel(1). For more information, see the appropriate manual pages (man pages) that came with your workstation or consult your system administrator.

If the Printer Does Not Print Anything
--------------------------------------
Check the X window in which you started MAE. MAE will display any error or status messages in the window. The error messages can provide useful information about why printing isn't working. Also check the following:

1) Verify that the printer is turned on and properly connected to the network. (For example, check for loose connections.)

2) Verify that UNIX printing has been configured correctly on your workstation.

3) Verify that you have correctly set up a print command by using the Chooser (available in the Apple menu on the MAE desktop). For example, make sure that you did not accidentally type the wrong printer name in the Setup Print Command dialog box. For information about setting up a print command, see Chapter 4 in the MAE USER'S GUIDE.

4) Be sure you are looking for the printout at the correct printer. You may have recently changed the print command to print to a different printer, or the default UNIX printer may have changed. Some workstations use a UNIX environment variable to specify the default printer. If the environment variable has been changed, or if you are running MAE on a different workstation, you may be printing to a different printer without knowing it. (For this reason, the "MAE USER'S GUIDE" recommends that you specify a particular printer when you set up a print command.)

5) Verify that the print queue contains your print request. Use lpstat or lpq to check status. Also make sure that the print spooling system isn't jammed.

6) Verify that the print command that you specified in the Chooser actually works if you type it directly into a UNIX command window. This step lets you know whether your UNIX printing is working correctly.

7) Try printing the same file to another printer. This step helps you determine whether the problem resides with the spooling system or with a particular printer.

8) Try printing the file a second time, but this time click the Options button in the Print dialog box and choose "Print detailed report" in the PostScript Errors pop-up menu. This option prints any PostScript errors that may have occurred. You can also print a cover page before printing the file. (Select the "Before" radio button in the dialog box.) If the cover page prints, you will know that the file is making it to the printer.

The Printed Page Contains "%!PS-Adobe-3.0" and Other Miscellaneous Text
-----------------------------------------------------------------------
Sometimes when you print a file, the page contains "%!PS-Adobe3.0" followed by other miscellaneous text. This means that the PostScript program is being printed as text, instead of being executed as code. This situation may occur if you are trying to print your file on a non-PostScript printer. (If this is the case, try printing your file on a PostScript printer.) The situation also may occur if your UNIX printing does not recognize the PostScript identifier "%!PS-Adobe-3.0," which appears on the first line. See your system administrator for help.

Only part of your document was printed
--------------------------------------
Printing can generate large PostScript files. If you do not have enough free disk space, only a portion of your document may be printed.


Keyboard and Display
====================

Dynamic Screen Resizing and Application Windows
-----------------------------------------------
A popular feature of MAE is the ability to dynamically resize the X11 window (and thus, the Macintosh Desktop) while it is active. When resizing occurs, MAE sends an AppleEvent to all active applications indicating that the Desktop size has changed. Some older applications do not support this AppleEvent and will continue to behave as though the Desktop were the same size as when the application was launched. Apple DocViewer, which is supplied with MAE v2.0, is an example of an application that does not presently handle this AppleEvent.

Colormap Sharing Between MAE and X Applications
-----------------------------------------------
If "Map X Windows to MAE palette" is enabled from within the "MAE General" Control Panel, MAE will try and share as many colors as possible with other X applications. If an X application modifies an entry in the colormap that is being shared with MAE, you may see a temporary change in how that color displays within MAE. To prevent this from happening, change the selection in the "MAE General" Control Panel to "Allow colormap flash" and reboot. This will cause a color "flash" when changing focus between MAE and other X windows but preserves the colormaps for each environment.

Modifier Map Sharing Between MAE and X Applications
---------------------------------------------------
Every keystroke that occurs in an X environment is inspected by X so that it can catch the keystrokes that invoke X operations. To accomplish this, the X enivonment uses a "modifier map" -- a keyboard translation table.

While the X window containing MAE is the active window, MAE modifies this keyboard map, so that keystrokes meaningful to MAE are passed to MAE by the X environment for processing, even if they would normally have meaning to the X environment itself. This means that while MAE is active, keystrokes are processed as specified in the 'MAE Keyboard' Control Panel. For example, if the <META> key is mapped to the MAE <Command> key, the X environment will pass on to MAE those <META> keystrokes that occur MAE has focus. Typing Meta-Q in the MAE environment will therefore quit a Macintosh application even though Meta-Q would normally be interpreted by the X environment as a CLIENT_KILL (which would terminate MAE).

As soon as MAE is no longer the active window, the original modifier map is restored and all keystrokes function as defined for the X environment. This restoration, however, is not reliable under all circumstances. For example, pushing an MAE session over the network to a server running X11R6 can result in unpredictable results.

One solution to this problem is to disable MAE's ability to change the modifier keys. This can be done either by setting an environment variable

set TBNOMODMAP=1

or by starting MAE with the -nomodmap option.

IMPORTANT: Be careful if you choose to disable the modifier mapping; keystrokes intended for MAE may be trapped by the X Window Manager with unexpected results.

Full-screen MAE displays
------------------------
To arrange for full-screen MAE display without a window manager running, use the -geometry command line option specifying the screen size. Under a window manager, this may not produce the desired effect because of borders, titlebars, etc. For this case, it is best to not specify a geometry and let the window manager do its stuff by using the Maximize button or window menu option. To get the full Macintosh experience under HP VUE, set the X resource Vuewm*mae*clientDecoration to none and start MAE with the geometry set to the full screen size.

Question: If I have a small MAE window and I press the mwm Maximize/Restore button twice, why doesn't it restore the size?

Answer: Due to optimizations, MAE resizes only to widths of 32-pixel multiples. The maximized size is probably not the correct size, so MAE downsizes slightly. When the Maximize/Restore button is next pressed, the window manager correctly notes that the window is not full size, and Maximizes it. To get a smaller size, resize manually.


Question: If I resize my MAE window a little wider, why is there a gray strip on the right side?

Answer: Due to optimizations, MAE only resizes to widths of 32-pixel multiples. If the window is resized less than 32-pixels, MAE doesn't recognize the size change, doesn't inform the window manager, and doesn't change its internal size. Any resize beyond this point will correct the appearance. This will be corrected in a later version.

Improper toolbar selections while launching from an off-line disk hang MAE
--------------------------------------------------------------------------
When you launch from an off-line volume -- for example, when you double-click on an icon from a floppy that has been ejected, an insert-media dialog is displayed. If you Inadvertently select the wrong button on the MAE Toolbar, (that is, if you click Super Select, X import, or X export instead of the Mount Floppy/CD button), MAE hangs and must be killed. This bug in MAE 2.0 is under investigation.


Other
=====

(HP only) MAE and asecure
-------------------------
In order to use sound with MAE under HP-UX, HP's audio server (Aserver) must be authorized for each user. This is usually performed with the HP utility `asecure'. If a user is not properly authorized to use the audio server, MAE will issue an error message at startup. Although sound will not be possible, MAE will otherwise continue to function normally. Under some circumstances, it may be desired that MAE bypass its normal check for the presence of Aserver. To do this, set the environment variable `TB_SOUND_OVERRIDE_CHECK=1' to allow sound to be produced. Although the error messages will still be produced at startup, MAE will ignore them and produce sound. Note that this will not override the security features of the server, but will override MAE's check to see if the asecure feature is installed. For more information on Aserver and asecure, reference your HP documentation.

Usage of `TZ' Environment Variable
----------------------------------
Several routines within MAE use the value specified by the environment variable `TZ', which declares the time zone for a particular workstation. Failure to define and assign a value to this variable prior to executing MAE may result in an error.

As an example for ksh, you can set this variable with the command

export TZ=PST8PDT

if you are located in the Pacific time zone. For more information, reference the appropriate man pages for your OS.

MAE and Globetrotter's FLEXwrap Utility
---------------------------------------
If you wish to use MAE with the FLEXwrap utility from Globetrotter, you must use a feature of FLEXwrap that is not enabled by default. Failure to enable this feature will result in the inability to execute a Macintosh `Restart' from the Finder.

To enable the feature, perform the following steps:

1) In the apple/bin directory, rename `mae' to `mae.orig'.
2) Create a symlink named `mae' to FLEXwrap's fwrapper program in the apple/bin directory.
3) When the installer for FLEXwrap is run, there is an option to specify a value for `argv[0]'. Give it the full path name to `mae.orig' (as created in Step 1, above).
4) If you had previously run the FLEXwrap installer, you can edit the license manager file (default `license.dat') and replace the `w_binary=' entry with `w_argv=' and point it to the full path of `mae.orig'.

Example: MAE is installed into /opt/apple and FLEXwrap is installed into /opt/flex/flexwrap. apple/bin/mae is renamed to apple/bin/mae.orig and a symbolic link named mae is created that points to the location of the fwrapper program, which is /opt/flex/flexwrap/sun4_u5/fwrapper. Since an entry for MAE already exists in the license.dat file for FLEXwrap, the entry specifying f_binary=/opt/apple/bin/mae is replaced with f_argv=/opt/apple/bin/mae.orig. For more information on FLEXwrap, refer to that product's documentation or contact Globetrotter for assistance.

MAE users wishing to utilize FLEXwrap must contact their Apple sales representative for licensing issues prior to implementing FLEXwrap.

(HP only) HP-UX 9.0.1 and STREAMS/UX
------------------------------------
On HP-UX, MAE requires that STREAMS/UX be installed if you are planning to run AppleTalk. The v2.0 CD contains packages for both 9.0.3 and 9.0.5 of HP-UX. If you are running 9.0.1, you can use the STREAMS/UX package for 9.0.3. Please note that MAE does not support sound if used with 9.0.1.

Applications and Processor Performance
--------------------------------------
MacOS applications, whether they are running on MAE or on a Macintosh, normally dispatch each `event' as it occurs from a main program loop. Examples of events are mouse movement, screen update, etc. To await the next event, Macintosh programs normally use WaitNextEvent, which waits for an event or the expiration of a timeout while yielding processing time to other Macintosh programs. While WaitNextEvent is waiting and provided no events need attention, MAE will sleep, imposing a negligible load on the processor.

Some applications (SimpleText is among the popular examples) increase responsiveness, at the cost of higher processor load, by using very short timeouts while waiting for events. Running under MAE, such programs use the processor heavily. Programs with longer timeout values, such as MacWrite II, operate nicely in the MAE environment.

MAE and Meeting Maker XP
------------------------
If you install Meeting Maker XP for use with MAE, you should remove the extension titled `Meeting Maker XP Extension' from the Extensions folder. It is not compatible with MAE and will be disabled when MAE is started. The extension is used to alert a user of a message when Meeting Maker XP is not active. To receive such messages, leave Meeting Maker XP running.

Using FETCH (an FTP Utility)
----------------------------
Using Fetch to "get" and "put" non-text Macintosh files from or to UNIX filesystems requires special care to ensure the files are transferred in a usable state by MAE (that is preserving their AppleSingle format).

When doing a GET of a non-text Macintosh file, always select "binary" transfer mode. When doing a PUT of a non-text Macintosh file, always select "AppleSingle" as the file format when prompted by the dialog. Macintosh and UNIX text files should always be transferred by selecting "text" (ASCII) transfer mode.

For complete instructions about using Fetch, read the online "Fetch Help".

If you use Fetch, please honor its license by paying the shareware fee.

Using SOFTWAREFPU (Floating Point Unit Extension)
-------------------------------------------------
This extension simulates the FPU co-processor chip found in some Macintoshes and integrated into certain 68K CPU's. It is only useful for (the very few) Macintosh applications that require this FPU.

Complete instructions about using SoftwareFPU are included with the utility.

If you use SoftwareFPU, please honor its license by paying the shareware fee.

Using DISINFECTANT (Virus Utility)
----------------------------------
MAE is susceptible to the same viruses that plague the Macintosh. However, there is no need to scan your entire UNIX filesystem for Macintosh viruses. When scanning with Disinfectant, hold down the Option key and press the "Scan" button, this will display a dialog that will allow you to limit the scope of the search.

For complete instructions about using Disinfectant, please read the online "Disinfectant Help".


For information on downloading the latest version of Disinfectant refer to:
TIL aritcle 30487: "Disinfectant: Macintosh Anit-Viral Utility"

The Tech Info Library article#17159: "Locating Vendor Information", can help you search for a particular vendor's address and phone number.


*The following information is for Apple Internal & Support Providers Only*
Published Date: Feb 19, 2012