Zoom Manual - Troubleshooting

Home | Previous | Next

# Troubleshooting

- General
  - Version 6 images
  - Fonts
  - Issues with specific games
- Mac OS X
  - Infocom data files
  - Making Zoom the default interpreter
  - Fonts
  - 'Erroneous entry in .zoomrc' messages
  - Images (while compiling)
- X-Windows
  - Images
  - Fonts
- Older versions

## General

### Version 6 images

In order to see images for version 6 games, you will requires the resources in Blorb format: Zoom does not support any other format for images. All new games should come with images in this format. For the old infocom games, Blorb versions of the game resources are available from the IF-Archive, at http://www.ifarchive.org/indexes/if-archiveXinfocomXmedia.html. See the sections on configuration for information on how to get Zoom to load these resources.

Zoom does not support JPEG images: there are currently patent issues with this format.

### Fonts

Some version 6 games may not deal with proportional fonts adequately: if you find a game is drawing text in the wrong place, try using a fixed pitch font for the 'roman' style.

### Issues with specific games

This section details some general problems that exist within specific games.

'Black on black' problem (Varicella, Only After Dark)

It seems that some games expect a white-on-black default colour scheme. Zoom uses black-on-white by default (and as of 1.0.1 has no way to change this), which is default in some interpreters. This problem is not a bug in Zoom, rather the game: Varicella, for instance, asks for a black background with the default foreground, which is to say black on black.

To fix this in Varicella, you have to play without colour. In Only After Dark, you can save the game after the colours make the game illegible, then restart and restore to produce a legible game.

Future versions of Zoom will contain options to fix these problems.

## Mac OS X

### Infocom data files

The Macintosh version of the Infocom games are distributed as a package containing both the interpreter and the data. In order to run these games under Zoom, you will need to seperate the data from the program. Fortunately, that isn't hard. To do the conversion, copy the game to the desktop, then fire up a Terminal session and use the following commands:

    cp "~/Desktop/GAME" "~/Desktop/GAME.z5"

(Substituting the name of the game for GAME). The file 'GAME.z5' will now just contain the data, and you should be able to double-click it to load it into Zoom. This technique may also work for other files that you know are Z-Code files, but that you are unable to open in Zoom for some reason.

### Making Zoom the default interpreter

If you have another interpreter installed, it may be set as the default editor for Infocom files: this means that when you open a game in the finder, that other interpreter loads instead of Zoom. If you want Zoom to be the default interpreter for a game (or for all games), select that game in the finder, choose 'Show Info' (Command-I, or from the File menu), and choose Zoom from the 'Open with Application' dialog. Click 'Change All' to set Zoom as the default interpreter for all games of this type.

### Fonts

Zoom offers both QuickDraw and Quartz font rendering. Unicode is supported in both systems. The Quartz system is, however, somewhat slower than its QuickDraw equivalent (partly due to the lack of adequate functions for measuring text dimensions).

### 'Erroneous entry' messaegs

Certain 'cracked' copies of the Infocom games have garbage in the serial number field. With the 1.0.1beta series of releases, Zoom would write a corrupted preferences file for these games (meaning Zoom would not start up). The current version of Zoom can read these corrupted files, but will display 'Erroneous entry' messages while loading. These messages will go away next time Zoom saves the configuration file: open and close the preferences dialog to force this to happen.

If Zoom fails to start due to a configuration file problem (much less likely these days), type the following into a terminal window:

      $ mv ~/.zoomrc ~/broken-zoomrc.txt

This is always a bug. Email me at andrew@logicalshift.demon.co.uk, attaching the 'broken-zoomrc.txt' file.

### Images

(This only applies to people compiling Zoom)

If image quality is low, this may be because your version of Zoom was compiled using QuickTime to draw its images. This happens if Zoom was compiled without libpng available: it is highly recommended to install libpng if you are compiling under Mac OS X (binary releases have libpng built-in, so this won't be an issue).

## X-Windows

### Images

When you compile Zoom, make sure that libpng is available, or image support will be disabled.

If you find image rendering is slow, make sure that optimisation was turned on when you compiled Zoom. `./configure CFLAGS=-O9` will always do the trick. If you find images are still too slow, you may find that undefining QUALITY_HIGH at the start of image_libpng.c has some effect on the speed.

### Fonts

Note that the default setting for anti-aliasing has changed with the release version of 1.0.1. Because of the potential for problems, the default setting has been changed to 'no'. You won't notice this if you've created your own .zoomrc file. You can change the default setting by editting /usr/local/share/zoom/zoomrc (look for the line 'antialias no').

The font situation under X-Windows is slightly confused. The standard X font system (which Zoom prefers to use as a last resort) does not support anti-aliasing or Unicode. Xft is the preferred rendering system: it has full support for Unicode, it's fast and it's flexible. Unfortunately, it might require some configuration on your system. If games render strangely, it may be that Xft is not set up, and is using daft defaults for the fixed pitch fonts.

If you have problems with the font rendering, it might well be Xft. To check this, set 'antialias' to 'no' in the .zoomrc file and see if that solves the problem. If it does, it may be worth taking the time to set up Xft properly (if you use KDE, this will also allow you to use the antialiased fonts there).

Xft is set up through the configuration file 'XftConfig'. If you have X installed under /usr/X11R6/, this should be in /usr/X11R6/lib/X11/ by default. A minimal file might be:

    dir "/usr/X11R6/lib/X11/fonts/TrueType"
    dir "/usr/X11R6/lib/X11/fonts/Type1"

Remove the first line if you don't have a TrueType font directory in your installation. See http://keithp.com/~keithp/fonts/XftConfig for a larger example of an XftConfig file. Most X11 distributions should have a courier font in the Type1 directory.

Zoom sometimes has trouble calculating the screen metrics for a T1Lib font. This is not usually noticable, but it does mean that you should not use T1Lib for the fixed pitch fonts, and it creates a glitch on the status bar in Infocom's Arthur (T1Lib fonts are specified by filename rather than by their X font specifier).

## Older versions

This section lists some problems with older versions of Zoom.

### 1.0.1

- Scroll bar was being set incorrectly under certain circumstances (disabling scrollback)
- @restart didn't work on Mac OS X. This bug also affected a rarely-used form of @read.
- Xft2 causes a crash
- Setting the graphics file to be a directory causes a crash (not fixed yet)
- The lower display for taipan.z5 is hidden by the upper (not fixed yet)

### 1.0.1beta3

- Compilation problem when Xft was not present (fixed in 3a)
- Slow screen update under certain circumstances (fixed in 3b)
- Some memory corruption problems
- .Zx (as opposed to .zx) games weren't recognised as such under Mac OS X.
- Segmentation fault when playing taipan.z5
- Certain 'cracked' copies of the old Infocom games could cause Zoom to write a bad configuration file.

### 1.0.1beta2

- Text rendered as gobbledegook when Quartz was turned on (only certain fonts)
- Font preview in preferences rendered in the wrong colours (OS X)
- Rendering with fonts of different sizes leaves 'gaps' (OS X)
- Alphabet table ignored in version 6 games
- Alphabet table ignored when caching abbreviations
- ZSCII-to-Zcharacter table not always set up properly (breaks command parsing in Shogun, or the german version of Zork)
- Occasional crash if a gamedir was set without a savedir
- X Displays with Xft but without XDBE fail to draw input text
- 'Please enter filename' messages displayed after the save/open dialog has completed (Mac OS X)
- Various problems with promptless file saving under Mac OS X
- You can load resources by dragging, but not savefiles
- No drag highlights shown
- Under Mac OS X 10.2, some modal loops are never exitted (those initiated by carbon_display_message and carbon_ask_question. I *think* this bug never occurs in OS X 10.1)
- Under Mac OS X and v6, the display sometimes isn't updated
- @print_char doesn't convert from ZSCII to unicode. Breaks And the Waves Choke the Wind.

### 1.0.1beta1

- Spec 1.1 errors:
  - New header extension words not implemented
  - @save/@restore always prompt
  - @sound_data is not a branch instruction (will crash the game)
  - Unicode strings sometimes cut out some characters
  - Truecolour in the upper window is a bit kronky (Z-Machine versions other than 6)
  - Unicode string decoder sometimes returns negative values, leading to occasional missing characters when plotting to the upper window (not v6)
- @set_font doesn't update v6 structures correctly
- @read_mouse doesn't store coordinates correctly
- @erase_picture always erases to white, and not the background colour
- APal blorb extension ignored
- `antialias` option does not disable Xft. (Comment out `#define HAVE_XFT` in config.h and recompile to disable Xft in this revision).
- Display drivers not reporting that they support pictures
- X-Windows version blinks cursor even when it doesn't have focus
- Quartz renderer renders with common ligatures - 'fi' ligature often makes a mess of the upper window in version 5 games.

Zoom written by Andrew Hunter. Mail any suggestions, bug reports or abuse to andrew@logicalshift.demon.co.uk