==============================
Ultima 4 Atari ST File Formats
Last update: 18-March-2004
==============================

This text describes the Ultima 4 (Atari ST version) file formats.

---------------
LZW compression
---------------

The file extension indicates whether or not a file has been compressed:
.bin = not compressed
.lwz = compressed with the LZW algorithm

The compression method is the same used by the PC version of Ultima 4. A program that can decompress files from the PC version can also decompress files from the Atari version.

----------
Tech Notes
----------

Images and palettes are stored in native Atari ST format.
A description can be found here, in the file "Hardware.txt":
http://mysite.freeserve.com/antspants/st_info/io.zip

---------
Main Menu
---------

anim.lwz    demon and dragon animation frames, card borders and abacus
bgnd.lwz    main menu background (Ultima logo, etc.), virtue names

offset      length      purpose
0           32000       pixel data, 320x200 pixels

I have no idea where the palette is stored, probably somewhere in the executable.

------------------
Character Creation
------------------

tree.bin    river with tree
prtl.lwz    stone circle
look.lwz    fair from a distance
fair.lwz    close-up of the fair
wagn.bin    the gypsy's wagon
gyps.lwz    the gypsy

offset      length      purpose
0           24320       pixel data, 320x152 pixels
24320       32          palette


crds.lwz    the eight virtue cards

offset      length      purpose
0           4           zero bytes
4           32          palette (same for all cards)
36          92          ?
128         32000       pixel data, 320x200 pixels

The card borders and the abacus graphics are stored in anim.lwz.
The virtue names shown below the cards are stored in bgnd.lwz.

Note:
The character creation images from the Atari ST version look better than the ones in the PC version.
On the Atari ST, each character creation image has its own palette (16 out of 512 possible colors).
On the PC, all character creation images share the same palette. I have no idea why, because it's possible to change the EGA palette (the EGA only has 64 possible colors, however).

--------
Dungeons
--------

dngp.lwz    dungeon graphics (wall segments, doors, etc.), moon phases,
            game window borders

offset      length      purpose
0           32000       pixel data, 320x200 pixels

Again, I have no idea where the palette is stored.

-----
Links
-----

Steem
http://steem.atari.st/
Steem is a closed-source Atari ST emulator for Windows and Linux.
There's also a build with a debugger (Windows only).

    Source: geocities.com/nodling/ultima/text/ultima4

               ( geocities.com/nodling/ultima/text)                   ( geocities.com/nodling/ultima)                   ( geocities.com/nodling)