any hints on what you may be getting back to? More Time Stranger?
Well, there's a certain NES game that I was working on that you translated, and I never got round to finishing it, so...
Plus I've got a fun little thing on the 3DO, which I was doing before you brought this game up.
Speaking of which... it's update time again, and my word, this is the game that keeps on giving...
First I thought I understood the compression with the 1bpp font. Then I thought I understood it with the title screen graphics. But the game had one last sting in the tail for me. See, I figured that I'd got things cracked: I took the new title screen tiles, went through the XOR routine that the game does, took out the zeroes, added the header, and figured that was that. But still it kept messing up, and I couldn't understand why. So I thought something else MUST be happening.
I went step by step through a trace log to see what I was missing. It turns out that there's one more step the game goes through: there are FOUR levels of compression, and there's a table with 2-bit values to tell the game which to use:
0 nothing but zeroes (LDIR blast direct to VRAM)
1 no compression (LDIR blast direct to VRAM, no 4-byte header)
2 partial compression (no XOR, only zeroes removed)
3 full compression (XOR and zeroes removed)
Now everything seems clear: not only do I have to think about using compression, but I also have to write this table as well. On the plus side, maybe I can just choose to use no compression and dump it all in there, though whether it'll actually fit is a good question. I'm not sure why the devs did this: surely all compression or no compression, but the fact that it has this system seems really quite sophisticated. But I'm very pleased that I've reverse engineered it.
For the last hour or so I've been going through the title screen again, this time comparing all three compression levels to see which one is best for each tile. Surprisingly it's a bit of a mix, so maybe this adaptive approach to compression isn't such a bad idea. Pity it would never work on the NES, but the SMS/GG is ideal for this. I'm most of the way down the screen and it's looking good (I'll save a screenshot for when I'm done - though it looks the same as FlashPV's picture on Twitter, so...). Not much more to do now!
December 15, 2018, 04:56:19 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
To hell with the seven-day limit, I have to post this:
It's a thing of beauty...
If only you guys knew how many hours of painstaking work went into this, just because it uses a rather ingenious compression scheme that only now I fully understand. It's not totally finished, though: there's still the two secret screens that need their graphics tweaked to fit the new title screen, but now that I understand how it all works, it won't be a big deal, and the big work is done.
There's just a few things to fix up before I can release, so it's coming soon.