Final Fantasy IV Research & Development / Re: What information is known about the overworld?
« on: April 22, 2016, 04:09:13 PM »I didn't keep direct notes, but reviewing the scripts I used, it looks like each block of 0x80 bytes defines a set of corners, as in one corner of each 16x16 tile. Top left, top right, bottom left, bottom right.
Is this read differently from the graphics for, say, the ship/airship tileset?Very different. Those are planar graphics, where the bits are spread across bytes. Here, the bits are consecutive in one byte. Each nybble (4 bits) is one pixel.
Then two bytes per tile for the palette assignment table?It's one palette byte for each 8x8 tile. You can't palette-swap mode7 tiles with map data. By the time they're sent to VRAM, they've already been assigned colors on the pixel level.
avalanche also looked into this in the past, and wrote about it in the FF4kster thread.
This probably deserves a longer tech post, but the crux is that each 8x8 graphics tile is stored in the special 4 bpp format and has 1 byte in this "palette pointers" section that you just add (or 'or', either way) to each pixel's value. That's the final color index for each pixel, which happens to be effectively only 6-bit color index because those bytes only have certain values. And that matches with the fact that the palettes for each world have 64 entries in them.