I used to know more about the SNES memory mapping than I do now, apparently.
I'm using a combination of bsnes-plus (a debug oriented fork of bsnes) and IDA pro in an attempt to figure out something about a ROM.
bsnes-plus displays addresses in a linear/flat fashion, e.g. 59f49. IDA pro displays addresses with a bank:offset format, e.g. 80:8039, to calculate the linear address, I believe you must take:
(Bank Number * Bank Size) + Address within Bank
Fair enough.
However, I just want to go to an address in IDA pro, when I see it in bsnes-plus. I thought that the "G" command in IDA takes an absolute, flat address. However, most of the time it doesn't work.
For some particular address, if I'm in the top function name, and hit "G", it takes me to the correct location, perhaps this address just happened to be relative to that particular bank?
For a different address (bigger one), it doesn't work.
I must be misremembering something trivial about either IDA itself or how the SNES memory works.