I've heard for years that Shining Force CD borrowed heavily from Shining Force II's code.
So I figured that'd give me an in to find out how data in SFCD is laid out (I'm familiar with 68K assembly... not terribly skilled with it, but familiar).
Finding the routine that displays text was no problem at all.
But I was only interested in that because in that routine you can see the pointer to the script bank pointer table. The script itself is compressed and my skill isn't such that I'm up for decompressing... but that's neither here nor there (at this point, I just want to get an idea of where stuff is, not actually do anything with it).
The problem is that pointer to the pointer table is 0x22E000.
Which, looking at the individual file the routine is in, is well beyond it's file size.
And if one views the .iso as a whole in a hex editor, what's at that address does not appear to be a pointer at all.
From Gens Tracer, I can see that $20:0000-23:ffff is for Word RAM
Aaaand that's where I stop knowing things.
All I really want to know is how this pointer is getting into word RAM and where it's coming from. So... uh... can anyone provide a nudge in the right direction? Or is there some documentation I should read? I'd also ask "Word RAM? What's that?" but that seems like the sort of thing I ought to be embarrassed to ask.
In hindsight, this was a goofy overreaction to something unfamiliar.
I tend to assume that things are more complicated than necessary and that I'm an idiot.
A more rational person would figure something like "Dude, it's just more RAM. It probably works pretty much like the RAM you're already used to dealing with. I know it was 4/20 and all, but you don't need to be so paranoid. It's not even like you smoke anything."