Player coordinates RAM writer
Jump to navigation
Jump to search
This article is incomplete. Please feel free to add any missing information about the subject. It is missing: {{{1}}}. |
Using arbitrary code execution, it is possible to create and run large programs in a Pokémon game, such as homebrew software.
Using 8F in Pokémon Red and Blue
This technique is referred to in TheZZAZZGlitch's video as 'jailbreaking' the Game Boy.
It requires the following items:
- Bicycle
- 8F
- X Accuracy, x97
- Burn Heal, x126
- Parlyz Heal, x15
- HP UP, x15
- Ice Heal, x15
- Potion, x134
- TM34, x20
- TM17, x46
- Leaf Stone, x52
- Great Ball, x201
- TM10, x1
- TM15, x46
Steps
- Swap TM17 x46 with TM15 x46, use 8F and jump off a ledge to walk through walls. This allows the player to walk on impassable tiles, so that they may access all coordinates ranging from hex:00 to hex:0F.
- There will now be a TM34 x21 instead of x20.
- Swap TM17 and TM15 back, toss TM34 until only one of them remains and use a Bicycle. The program is now in 'entering mode', and upon using 8F one byte is written to address D901 (and onward for each use) with its value depending on your X and Y positions where the Y position represents the high nybble and the X position represents the low nybble. For example, a coordinate of y=0C, x=09 would write a C9 (ret); see image below.
- To run the created code, swap TM10 x1 with TM34 and use 8F, it should then go straight to the created code.
Video:
| |
Route 1 coordinates map
This map (below) tells us the coordinates for spots in Route 1 for writing the code. For example, a coordinate of y=0C, x=09 would write a C9 (ret).