Talk:Pokédex data structure (Generation III)
"The MSB byte is always set to 0x08 (8), so this matches a BRANCH instruction (B) in assembly. For example, if the location is 0x123456, it will appear here as 0x08123456 (56 34 12 08)."
This is not right. Any reference to any location starts with the bank number. Branch instructions have nothing to do with this. They're not even close. The order of the bytes is just an endian issue: the ARM7 as used in the GBA is little-endian, just like 80x86 and Pentium processors.
The game's ROM image is mapped onto bank 8 in memory, so any offset in the file gets 0x8000000 added to it. --Kyoufu Kawa 19:35, 30 June 2007 (UTC)
Just an aside: the ARM7 has a switch that determines byte order. The one used on the GBA is permanently set to little-endian. --Kyoufu Kawa 19:42, 30 June 2007 (UTC)