Talk:Pokédex data structure in 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)
- Thank you for your corrections. Have you looked at any of the other articles? - 振霖T 01:55, 1 July 2007 (UTC)
Looked I have. Thought of possible changes too but I kinda forgot I guess... --Kyoufu Kawa 16:46, 21 July 2007 (UTC)
How many bytes?
The text says 34 bytes.
The box lists 32 bytes.
Looking at the actual dataset on the FireRed ROM shows 36 bytes.
Also, the "Name" field isn't the name of the species, it's the description -- like "Seed Pokemon" for Bulbasaur or "Mouse Pokemon" for Pikachu. What's our name for that field?
Do we describe the character encoding anywhere? Machinedramon 22:29, 3 October 2009 (UTC)
- Yes there is some Character Coding described on DataCrystal, but...
- "2010-06-02: We apologize for the inconvenience. The old host is no longer able to host datacrystal.org. I am working on setting up the site on a new host. -- AnyoneEB"
- In all the Gen3 games except Emerald, it is a 36-byte structure.
- Added a bit more description to the "Name" field.
- Added some offsets.
- Ajlsunrise33 19:02, 4 June 2010 (UTC)