Request from a reader! (Updated!)

I got this email about a week ago, and have been lax in posting it to the site here for community input.

Do you know where I might find technical information about how the tile shape data is stored/encoded on Commodore 64 disks? The graphics for the tiles for the C64 version of Ultima 4 are mono-coloured. i.e. a single coloured. Therefore, I suspect the characters do not follow the same encoding format as was is used for the DOS version in shapes.ega.

I recently discovered that the map data is actually stored as 256 chunks of 16×16 data. (the DOS EGA version uses 64 chunks of 32×32 data)

To be honest, I haven’t the first clue about how to answer this question. The C64 predates my first foray into computing by a few years, and I’ve no “hands on” experience with that system, nor with the Ultima 4 version released for it. I had perhaps thought that Nodling Dragon would be a good resource to ask, and have suggested that the reader try and contact him…but any input from the community at large would be much appreciated!

Update: I love this community. Thanks everyone for helping George out! (see the comments)

5 Responses

  1. MagerValp says:

    You can find a bunch of information about U4 on the C64 under Tech info on my U4 Gold site:

    http://www.paradroid.net/u4/

    The tiles are stored in file 41, which loads at $b000-$cfff. They are stored in two halves, with the upper half of each tile at $b000-$bfff, and the lower half in $c000-$cfff. The tiles are in normal C64 bitmap format (1bpp, 8 bytes per cell, 40 cells per line). Color data is in file 4c, at $e1b0-$e2af.

  2. wtf_dragon says:

    Thanks for that, Mager Valp! I hope the reader who made the request finds this information useful!

  3. MagerValp says:

    So, reader who made the request, did that help or did you need something else?

  4. George says:

    Hi MagerValp and Marc,

    I found this information very useful! It helped me understand how the data is stored. I wanted to figure out a way to read the original C64 disk images (in D64 format) and render the map using the C64 graphics/colours. All of the details you provided me were very helpful. I was able to find the tile information on the “program” disk. The first half of the tiles are at 0x16700 and the second are at 0x17700. The colours are at 0x130b0.

    I wrote a little Java application to read the C64 disks and generate the map. My goal now is to work towards replicating as much of the original C64 game as possible. 🙂

    Thanks!
    George

  5. MagerValp says:

    Excellent, glad to hear it got you going in the right direction.

    Good luck with the remake!