Glitch Pokédex sorting: Difference between revisions
Jump to navigation
Jump to search
m
→Technical details
>Torchickens m (Princess Torchic ❤ moved page Glitch Pokédex categories to Glitch Pokédex sorting) |
|||
(10 intermediate revisions by 4 users not shown) | |||
Line 1:
{{Arbitrary code execution}}
{{Summary page}}
{{PRAMA|glitch-pokedex-ace}}
'''Glitch Pokédex categories''' are invalid Pokédex listing categories found in {{GSC}}.▼
▲'''Glitch Pokédex
The 2nd generation of pokémon games allow the player to select three different modes to order pokémon within the pokédex. These modes include "New Pokédex mode", "Old Pokédex mode" and "A to Z mode". When a specific mode is selected, the game will save the value of the last selected mode in memory.
When the pokédex is selected from the start menu, the game uses a jumptable to select which sorting function should be used. By changing the value of the last selected mode, it's possible to index this jumptable out of bounds. Because of this, certain modes are able to [[arbitrary code execution|execute arbitrary code]], such as glitch mode 09's execution of $FA20 (Echo RAM for $DA20) in Crystal.
==Accessing glitch Pokédex categories==▼
The address D67E in {{GS}} or D959 in {{C}} controls the current Pokédex category loaded for when the player opens the Pokédex.▼
==Technical details==
When opening the pokédex, the game will retrieve the last selected dex mode from wLastDexMode and use that to retrieve a pointer from Pokedex_OrderMonsByMode.Jumptable.
{| class="wikitable"
! Game !! Applicable language !! wLastDexMode !! Pokedex_OrderMonsByMode.Jumptable
|-
! rowspan="7" | Gold & Silver
| English || rowspan="5" | $D67E || $10:4BF0
|-
| French || $10:4BF8
|-
| German || $10:4BEA
|-
| Italian || $10:4C01
|-
| Spanish || $10:4BF2
|-
| Japanese || $D671 || $10:4ABC
|-
| Korean || $D731 || $10:4AF1
|-
! rowspan="6" | Crystal
| English || rowspan="5" | $01:D959 || $10:4BF0
|-
| French || $10:4BF8
|-
| German || $10:4BE9
|-
| Italian || $10:4C01
|-
| Spanish|| $10:4BF4
|-
| Japanese || $01:D94C || $10:4ABC
|}
▲The address D67E in {{GS}} or D959 in {{C}} controls the current Pokédex
This means the [[cheating device|GameShark]] code 01xx7ED6 in Gold and Silver or 01xx59D9 in Crystal will change the Pokédex mode.
With glitches, the [[duplicate key items glitch]] can be used to set up the expanded Balls pocket, where the glitch Pokédex
Another way of accessing arbitrary code in {{GSC}} is through the [[Coin Case glitch]] (in English Gold/Silver only) or [[Glitch item#TMs and HMs outside of the correct pocket|TMs and HMs outside of the correct pocket]]. The glitch TM/HM method is ideal because TMs and HMs can be forced into the PC items; also available through the expanded Balls pocket.
In Gold and Silver, modifying address C6D8 on the option screen (list of available Pokédex modes) will allow the player to access glitch sortings in a different way to the above method.
(Thanks Pokechu22 for the C6D8 method)
{{stub}}
[[Category:Generation II glitches]]
[[Category:Glitch things]]
[[Category:Glitch Pokédex sortings|*]]
|