

An example of this is the very first level segment in SC4 where you jump on the drawbridge which rotates up. But when I go into snes9x and toggle on/off the backgrounds it still behaves like there are 3 (foreground tiles, background tiles, status bar) like it does in mode 1. there's a lot of stuff that is still a mystery.ĮDIT: Has anyone worked with mode 7 before? I read up on it and the non-extended version of it has just one 256 color background. Collisions, events, sprite display, more details on the level segments are constructed. I need to figure out the various graphics mode code (mode 7 levels crash right now) and get more of the levels displayed correctly. The editor probably won't be capable of any actual editing for a while.

Someone could probably dump uncompressed data in the 1+ MB area of the ROM and branch before the decompression code to a MVN. I wouldn't be surprised if the actual ratio is closer to 1.3x and not all of the ROM is compressed so it may be less than 2 MB total. My guess is that the average compression ratio is not better than 2x (uncompressed to compressed ratio) so it would be < 3MB (1MB original ROM + 2MB uncompressed data) total in size as a worst case. Uncompressed size - I haven't looked at how well the compression works. Palette editor - This is straightforward to do for at least the background tiles. I'd like to display enemy/object sprites on the map and allow for moving, adding, and removing them, but probably no editing. Sprite editing is more difficult and I don't have time to spend on it right now. Something similar to the mmx editor where there's a tile editor, map editor, block (?) editor, and scene editor. Graphics editing - I'd like to get a basic background tile editor working. If anyone knows of some documentation on the ROM/RAM layout or really anything about the game I would appreciate a link. I couldn't find any previous work on SC4 and had to look through traces to figure most of it out.

I haven't coded a compressor, but that shouldn't be too bad. This wasn't too difficult to understand and code up. It has a decompression routine that looks at control words in the stream to: (a) decompress LZ, (b) copy the input stream, (c) zero extend 8b to 16b, (d) decompress RLE using a byte in the input stream, or (e) decompress RLE using 0. Much more than mmx which only really compressed tiles.

Since I borrowed the mmx editor code the emulator works as-is and you can see a paused screen in the picture below.Ī lot of data in the ROM is compressed. It's not much right now, but there's enough to display one (hardcoded) level segment. What was supposed to be a two day break from the mmx editor turned into a week long hack to start a Super Castlevania 4 editor.
