77,624
edits
Steventyler (talk | contribs) |
mNo edit summary |
||
Line 4: | Line 4: | ||
Fixed-length user-input strings are terminated with 0x50. If a fixed-length string is terminated before using its full capacity, the contents of the remaining space are not specified. | Fixed-length user-input strings are terminated with 0x50. If a fixed-length string is terminated before using its full capacity, the contents of the remaining space are not specified. | ||
Note that 0x7F is a space (" "), not empty. All characters that are not control characters print in one character. | Note that 0x7F is a space (" "), not empty. All characters that are not control characters print in one character. | ||
In some contexts, some characters may display differently than suggested below. For example, in the character input table, <sup>E</sup><sub>D</sub> is 0xF0 instead of the [[Pokémon Dollar]] symbol, and in the Pokédex (in English), the feet (') and inches (") marks are 0x60 and 0x61. | In some contexts, some characters may display differently than suggested below. For example, in the character input table, <sup>E</sup><sub>D</sub> is 0xF0 instead of the [[Pokémon Dollar]] symbol, and in the Pokédex (in English), the feet (') and inches (") marks are 0x60 and 0x61. | ||
==English== | |||
Bytes with a dark gray background are not used normally in the English games. Characters with a light gray background are holdovers from the Japanese game but that are not used in the English game. | Bytes with a dark gray background are not used normally in the English games. Characters with a light gray background are holdovers from the Japanese game but that are not used in the English game. | ||
:{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | :{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | ||
Line 66: | Line 65: | ||
The full list of characters that are available for user input are: A-Z and a-z, space, and the following: <code>×():;[]<sup>P</sup><sub>K</sub><sup>M</sup><sub>N</sub>-?!♂♀/.,</code>. | The full list of characters that are available for user input are: A-Z and a-z, space, and the following: <code>×():;[]<sup>P</sup><sub>K</sub><sup>M</sup><sub>N</sub>-?!♂♀/.,</code>. | ||
===Tilemap sections=== | |||
The game sections off various areas of the tilemap loaded into {{wp|VRAM}} and each character code directly corresponds to a tile in the tilemap. Not all tiles in the tilemap are accessible via character code, but many are. | The game sections off various areas of the tilemap loaded into {{wp|VRAM}} and each character code directly corresponds to a tile in the tilemap. Not all tiles in the tilemap are accessible via character code, but many are. | ||
Line 77: | Line 76: | ||
## The range 0xE0-0xFF includes numbers, some symbols, and more user interface characters. The player-enterable characters {{PK}}, {{MN}}, and gender symbols are also stored here. | ## The range 0xE0-0xFF includes numbers, some symbols, and more user interface characters. The player-enterable characters {{PK}}, {{MN}}, and gender symbols are also stored here. | ||
===Character codes=== | |||
Character codes are within the 0x49-0x5F range, with the exception of 0x4D which defaults to tile 4D. | Character codes are within the 0x49-0x5F range, with the exception of 0x4D which defaults to tile 4D. | ||
Control characters work by intercepting the tile that would normally correspond to the control character and instead perform a different action whether it be end the text or print a lengthy message. | Control characters work by intercepting the tile that would normally correspond to the control character and instead perform a different action whether it be end the text or print a lengthy message. | ||
====Dialogue control codes==== | |||
These control codes control dialogue text placement, paging, etc. | These control codes control dialogue text placement, paging, etc. | ||
Line 97: | Line 96: | ||
* 0x5F - "dex" - Displays a period and ends the Pokédex entry | * 0x5F - "dex" - Displays a period and ends the Pokédex entry | ||
====Variable control codes==== | |||
These control codes print text defined elsewhere. | These control codes print text defined elsewhere. | ||
Line 105: | Line 104: | ||
* 0x5A - "user" - In battle, the user of a move. Just like "target", "Enemy " will be prepended to the name of opposing Pokémon. | * 0x5A - "user" - In battle, the user of a move. Just like "target", "Enemy " will be prepended to the name of opposing Pokémon. | ||
====Text control codes==== | |||
These control codes print a hardcoded string. They are used to decrease the number of bytes to write common strings while still rendering as the correct number of characters. | These control codes print a hardcoded string. They are used to decrease the number of bytes to write common strings while still rendering as the correct number of characters. | ||
Line 116: | Line 115: | ||
* 0x5E - "rocket" - Prints "ROCKET" | * 0x5E - "rocket" - Prints "ROCKET" | ||
==French & German== | |||
:{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | :{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | ||
|- | |- | ||
Line 169: | Line 167: | ||
|} | |} | ||
==Italian & Spanish== | |||
:{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | :{| style="text-align: center; border-collapse: collapse" cellpadding="2px" width="375px" | ||
|- | |- | ||
Line 225: | Line 222: | ||
The lowercase 'm' (0xAC) in the French, German, Italian & Spanish version is stylized differently compared to the English version. | The lowercase 'm' (0xAC) in the French, German, Italian & Spanish version is stylized differently compared to the English version. | ||
==Japanese== | |||
Technically all characters under 0x60 are control characters, the majority of which have the behavior of causing a specific character from the main font (0x80-0xFF) to be printed with a diacritic in the space above it. Those characters that have different, more complicated functions are detailed below. | Technically all characters under 0x60 are control characters, the majority of which have the behavior of causing a specific character from the main font (0x80-0xFF) to be printed with a diacritic in the space above it. Those characters that have different, more complicated functions are detailed below. | ||