Move 0x00 corruption (Generation I): Difference between revisions

From Glitch City Wiki
Jump to navigation Jump to search
Content added Content deleted
>Torchickens
 
(30 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Misc R/B}}
{{Major glitches}}
{{Summary page}}
{{Bulbapedia2|-- (move)}}
{{Bulbapedia2|-- (move)}}
{{PRAMA|cooltrainer-trick}}
[[File:CoolTrainer6.png|frame|right|Viewing '-' on the Fight screen.]]
[[File:CoolTrainer6.png|frame|right|Viewing '-' on the Fight screen.]]
"'''-'''", nicknamed "'''CoolTrainer move'''", is a 'move' with an index number of hex:00 in {{RBY}}. It is considered a glitch move when it is the first move in a Pokémon's list of moves. The name "CoolTrainer move" was taken from the name of its (probably constant) type; "CoolTrainer♀" in {{RB}} for when no [[Super Glitch]] effect is caused.


''For the glitch move in {{RB}}, please see [[AttackDex/RB:000]].''
On the Fight screen and a Pokémon's summary it is called '-', because this name is used for no move (also hex:00) in situations where a Pokémon knows less than four moves, but it acts as a glitch move when it's forced as the first move.


''For the glitch move in {{Y}}, please see [[AttackDex/Y:000]].''
Upon using it, and when a PP Up is applied to it, its name is taken from the memory and is essentially random.


'''Move 0x00 corruption''', also known as '''CoolTrainer♀ glitch''' refers to the corruptions in {{RBY}} caused by a [[buffer overflow]] in the random internal names of glitch move "-" (which are of variable length).
==Obtaining '-' as the first move==
In Pokémon Red and Blue, the [[swapping Transform moves glitch]] can be used to put '-' in the first position of the moves list if the number of moves after the transformation is greater than the number of moves before the transformation.


The applications of this were documented and popularised by TheZZAZZGlitch (along with the discovery of how [[Super Glitch (Generation I)|Super Glitch]] works). Move 0x00 corruption has also become a notable exploit in the history of various Pokémon glitched speedruns, such as 'catch 'em all'.
Example 1: Ditto normally only knows [[bp:Transform (move)|Transform]], so if it transforms into a Pokémon with four moves, swapping the second move with the first will make it have CoolTrainer♀ as the first move after the battle.


==Nature==
Example 2: A Mew knowing only three moves including Transform can encounter a Pokémon with four moves and transform into it. Then, swapping the fourth move with the first move will give CoolTrainer♀ as the first move after the battle.

The swapping Transform moves glitch was fixed in Pokémon Yellow, however, the player can still trade a Pokémon with an accessible '-' over from Pokémon Red and Blue.

Certain glitch Pokémon know the CoolTrainer♀ move as their first starting move, and many can learn the CoolTrainer♀ move through level up, meaning that the first move can be replaced with it if the Pokémon already has four moves.

Theoretically [[arbitrary code execution]] can be used to obtain '-' as the first move, too.

===0 initial PP and how to restore it===
After obtaining '-' as the first move it may have 0/13 PP at first, and healing at a Pokémon Center won't restore its PP. However, if the player uses a certain PP restoring item (Ether or Max Ether only), it's possible to use the move.

===Glitch Pokémon that know '-' as their first move===

====In Pokémon Red/Blue only====
<nowiki>#</nowiki>250 [[Glitch Pokémon family|family]]:

*[[GlitchDex/RB:191|▶ A (hex:BF)]]
*[[GlitchDex/RB:197|PkMn (hex:C5)]]
*[[GlitchDex/RB:208|PkMn PkMn T (hex:D0)]]
*[[GlitchDex/RB:214|4 h (hex:D6)]]
*[[GlitchDex/RB:223|. PkMn (hex:DF)]]

<nowiki>#</nowiki>000 family:

*[[Missingno.|Fossil and Ghost Missingno.]] only, if one of the Pokémon above is the last Pokémon in the party, and the Pokémon screen is opened before capturing it. (hex:B6-B8)

===Glitch Pokémon that know '-' through level up===
Note that this data was generated from the ROM, and has not been verified.

====In Pokémon Red/Blue====

{| border="1"
!Glitch Pokémon
!Index number (dec)
!Level(s) it learns '-'
|-
|[[GlitchDex/RB:191|▶ A (hex:BF)]]
|191
|248
|-
|[[GlitchDex/RB:193|ゥ (hex:C1)]]
|193
|33
|-
|[[GlitchDex/RB:194|. 4 (hex:C2)]]
|194
|97, 123
|-
|[[GlitchDex/RB:196|POKéWTRAINER (hex:C4)]]
|196
|139
|-
|[[GlitchDex/RB:199|♀pゥ ゥ ゥ (hex:C7)]]
|199
|115, 219
|-
|[[GlitchDex/RB:202|PC 4S H (hex:CA)]]
|202
|28, 62
|-
|[[GlitchDex/RB:205|TRAINER (hex:CD)]]
|205
|181
|-
|[[GlitchDex/RB:206|W G d (hex:CE)]]
|206
|248
|-
|[[GlitchDex/RB:207|O PkMn4 X (hex:CF)]]
|207
|33
|-
|[[GlitchDex/RB:208|PkMn PkMn T (hex:D0)]]
|208
|22
|-
|[[GlitchDex/RB:209|4B 8 4 8 (hex:D1)]]
|209
|165
|-
|[[GlitchDex/RB:211|M p' u ゥ (hex:D3)]]
|211
|234
|-
|[[GlitchDex/RB:213|pゥ ゥ ゥ (hex:D5)]]
|213
|12, 13, 115, 131, 137
|-
|[[GlitchDex/RB:214|4 h (hex:D6)]]
|214
|4
|-
|[[GlitchDex/RB:217|PkMnRPkMn B (hex:D9)]]
|217
|6, 11
|-
|[[GlitchDex/RB:218|B (hex:DA)]]
|218
|3
|-
|[[GlitchDex/RB:220|(hex:DC)]]
|220
|3
|-
|[[GlitchDex/RB:221|7 PkMn 'v (hex:DD)]]
|221
|12, 13, 115, 131, 137
|-
|[[GlitchDex/RB:225|'v (hex:E1)]]
|225
|234
|-
|[[GlitchDex/RB:226|...... (hex:E2)]]
|226
|248
|-
|[[GlitchDex/RB:228|(hex:E4)]]
|228
|4, 33
|-
|[[GlitchDex/RB:229|C (hex:E5)]]
|229
|248
|-
|[[GlitchDex/RB:230|(hex:E6)]]
|230
|4
|-
|[[GlitchDex/RB:231|pゥ (hex:E7)]]
|231
|234
|-
|[[GlitchDex/RB:233|c (hex:E9)]]
|233
|3
|-
|[[GlitchDex/RB:235|(hex:EB)]]
|235
|38
|-
|[[GlitchDex/RB:237|h ゥ (hex:ED)]]
|237
|248
|-
|[[GlitchDex/RB:238|g (hex:EE)]]
|238
|33
|-
|[[GlitchDex/RB:241|94 (hex:F1)]]
|241
|12, 22
|-
|[[GlitchDex/RB:242|ゥ (hex:F2)]]
|242
|192, 248
|-
|[[GlitchDex/RB:243|ゥ (hex:F3)]]
|243
|28, 62
|-
|[[GlitchDex/RB:246|G 'Mp (hex:F6)]]
|246
|240
|-
|[[GlitchDex/RB:248|' N g ゥ (hex:F8)]]
|248
|12, 13, 115, 131, 137
|-
|[[GlitchDex/RB:249|94 h (hex:F9)]]
|249
|38
|-
|[[GlitchDex/RB:250|(hex:FA)]]
|250
|6, 22
|-
|[[GlitchDex/RB:252|O (hex:FC)]]
|252
|234
|-
|[[GlitchDex/RB:253|6ゥ (hex:FD)]]
|253
|248
|-
|[[GlitchDex/RB:254|'M (hex:FE)]]
|254
|3, 7, 15, 31, 63, 127, 255
|-
|[[GlitchDex/RB:255|'M (hex:FF)]]
|255
|28, 62
|}

====In Pokémon Yellow====
{| border="1"
!Glitch Pokémon
!Index number (dec)
!Level(s) it learns '-'
|-
|[[GlitchDex/Y:191|4A 4 (hex:BF)]]
|191
|234
|-
|[[GlitchDex/Y:193|♀ . (hex:C1)]]
|193
|16, 22
|-
|[[GlitchDex/Y:200|(hex:C8)]]
|200
|7, 15, 30, 31, 127, 255
|-
|[[GlitchDex/Y:206|PkMn (hex:CE)]]
|206
|234
|-
|[[GlitchDex/Y:208|(hex:D0)]]
|208
|16, 22
|-
|[[GlitchDex/Y:212|(hex:D4)]]
|212
|22
|-
|[[GlitchDex/Y:213|' ゥ. (hex:D5)]]
|213
|12, 13, 51, 87, 115, 131, 137
|-
|[[GlitchDex/Y:214|PkMn (hex:D6)]]
|214
|4
|-
|[[GlitchDex/Y:215|(hex:D7)]]
|215
|97, 123
|-
|[[GlitchDex/Y:216|(hex:D8)]]
|216
|22
|-
|[[GlitchDex/Y:219|ゥ ' B (hex:DB)]]
|219
|16
|-
|[[GlitchDex/Y:221|4, ゥァ (hex:DD)]]
|221
|12, 13, 51, 87, 115, 131, 137
|-
|[[GlitchDex/Y:227|4 89 4 (hex:E3)]]
|227
|7, 15, 30, 31, 127, 255
|-
|[[GlitchDex/Y:228|8B 4 8 (hex:E4)]]
|228
|4, 33
|-
|[[GlitchDex/Y:229|Z ゥ (hex:E5)]]
|229
|234
|-
|[[GlitchDex/Y:230|9ゥ (hex:E6)]]
|230
|4
|-
|[[GlitchDex/Y:234|'r ゥ (hex:EA)]]
|234
|8
|-
|[[GlitchDex/Y:237|4 ( h 4 ?? (hex:ED)]]
|237
|234
|-
|[[GlitchDex/Y:239|h pゥ ゥ... (hex:EF)]]
|239
|3, 7, 15, 31, 63, 127, 255
|-
|[[GlitchDex/Y:241|' B' ゥ (hex:F1)]]
|241
|12, 22
|-
|[[GlitchDex/Y:243|ゥ A (hex:F3)]]
|243
|28, 62
|-
|[[GlitchDex/Y:248|ゥ (hex:F8)]]
|248
|12, 13, 51, 87, 115, 131, 137
|-
|[[GlitchDex/Y:255|Q (hex:FF)]]
|255
|234
|}

==Super Glitch effect==
[[File:CoolTrainer foe tiles.png|frame|right|Screen tiles affecting Pokémon, DV/EV, level yields by Dabomstew.]]
[[File:CoolTrainer foe tiles.png|frame|right|Screen tiles affecting Pokémon, DV/EV, level yields by Dabomstew.]]
''See also: [[Super Glitch (Generation I)#"-" (CoolTrainer♀-type move) corruption|Section on the Super Glitch article]]''.


[[Super Glitch]] may be triggered with '-' when it is the first move by opening the fight menu or trying to move the cursor. After the Super Glitch effect occurs, the type of '-' may change from CoolTrainer♀ to something else.
An effect similar to [[Super Glitch]] may be triggered with '-' when it is the first move by opening the fight menu or trying to move the cursor. After the effect occurs, the type of '-' may change from CoolTrainer♀ to another type.


Unlike other Super Glitch moves, only one buffer overflow occurs with '-' (at memory address $CF4B, but not $D0E1). No corruption is caused by the '-' move when viewing it from a status screen.
Unlike other unterminated name/Super Glitch moves, only one buffer overflow occurs with '-' (at memory address $CF4B, but not $D0E1). No corruption is caused by the '-' move when viewing it from a status screen.


Triggering Super Glitch with '-' requires more luck than other Super Glitch moves, so the player may need to keep 'moving' the cursor or opening and closing the fight menu. After a certain point in the player's game, CoolTrainer♀ induced corruption may stop working, due to hex:50 characters appearing in its internal name too early. There is no known guaranteed way to fix this other than to use a different cartridge.
Triggering the move 0x00 corruption with '-' requires more luck than other Super Glitch moves, so the player may need to keep 'moving' the cursor or opening and closing the fight menu. After a certain point in the player's game, CoolTrainer♀ induced corruption may stop working, due to hex:50 characters appearing in its internal name too early. There is no known guaranteed way to fix this other than to use a different cartridge.


The most basic effect that can be triggered with the CoolTrainer♀ move is the [[TMTRAINER effect]], by opening the 'PkMn' menu from within battle before viewing it in the 'Fight' menu. Triggering the TMTRAINER effect in [[bp:Diglett's Cave|Diglett's Cave]] will let you avoid a freeze immediately after the battle ends. Opening the start menu after the TMTRAINER effect happens and the battle ends may be required to avoid a freeze after exiting the cave.
The most basic effect that can be triggered with the CoolTrainer♀ move is the [[TMTRAINER effect]], by opening the 'PkMn' menu from within battle before viewing it in the 'Fight' menu. Triggering the TMTRAINER effect in [[bp:Diglett's Cave|Diglett's Cave]] will let you avoid a freeze immediately after the battle ends. Opening the start menu after the TMTRAINER effect happens and the battle ends may be required to avoid a freeze after exiting the cave.
Line 319: Line 26:
With the TMTRAINER effect, the enemy Pokémon's species will change into a level 127 Missingno. (hex:32) if sprites are not flipped, and a level 127 Horsea is obtainable by catching the enemy Pokémon if the sprites are flipped. Though the Pokémon's sprite will not change to the new Pokémon until it is captured, its palette may change to that of the new Pokémon.
With the TMTRAINER effect, the enemy Pokémon's species will change into a level 127 Missingno. (hex:32) if sprites are not flipped, and a level 127 Horsea is obtainable by catching the enemy Pokémon if the sprites are flipped. Though the Pokémon's sprite will not change to the new Pokémon until it is captured, its palette may change to that of the new Pokémon.


In the Japanese versions (at least Red/Green), the equivalent Pokémon are Level 127 Missingno. (hex:38) and Level 127 Pikachu.
In Pokémon Red and Blue, [http://forums.glitchcity.info/index.php/topic,6992.0.html more Pokémon] can be obtained with '-' (and also Super Glitch) by viewing the Pokémon menu in specific places where there is a 'bottom-left corner of a bush' tile (hex:50) between y coordinates 09-0C (these are BGB coordinates; y starts as 00 at the top of the screen and increases the further down you go) before entering Diglett's Cave and triggering Super Glitch with '-'.

==Advanced Red/Blue usage==
In Pokémon Red and Blue, [https://forums.glitchcity.info/index.php?topic=6992.0.html more Pokémon] can be obtained with '-' (and also Super Glitch) by viewing the Pokémon menu in specific places where there is a [[0x50 sub-tile]] (often the 'bottom-left corner of a bush' tile) between y coordinates 09-0C (these are BGB coordinates; y starts as 00 at the top of the screen and increases the further down you go) before entering Diglett's Cave and triggering move 0x00 corruption with '-'. Additionally the sub-tile at BGB coordinates '''y=06, x=01''' must be equal to the desired Pokémon.


For an image showing where the bush tiles should be, and further information, please see [https://www.youtube.com/watch?v=Sst_5kAX2y4 this Youtube video by TheZZAZZGlitch].
For an image showing where the bush tiles should be, and further information, please see [https://www.youtube.com/watch?v=Sst_5kAX2y4 this Youtube video by TheZZAZZGlitch].


Keep in mind that the start menu is added to the saved screen data, and the west most tiles of the start menu are between x=0A-13, so the 50 tiles replaced with start menu tiles don't count.
Keep in mind that the start menu is added to the saved screen data, and the west most tiles of the start menu are between x=0A-13, so the 50 tiles replaced with start menu tiles don't count.

==Advanced Yellow usage==
Despite the fact that 0x00 move corruption no longer works by directly bringing over tiles from outside of battle in this version, it is still possible to get the aforementioned Level 127 MissingNo. or Horsea by flashing the items menu in battle.

Additionally, using the [[ItemDex/RGBY:009|Pokédex glitch item]] and closing it will print tiles on the screen in battle (but not in the same pattern as outside of battle), which can be used to potentially access CoolTrainers by flashing the items menu from within battle.

Additionally, the glitches [[LOL glitch]] and [[Rival LOL glitch]] which make use of [[unterminated name glitch item]]s are alternative glitches to 0x00 move corruption and can be used together to obtain many Pokémon and/or glitch Pokémon.


==Effect of using the move==
==Effect of using the move==
This effect ignores Super Glitch:
This effect ignores move 0x00 corruption:


In Pokémon Red and Blue and Yellow, '-' acts as a damaging move with Fissure's animation that may freeze the game if it doesn't defeat the opponent.
In Pokémon Red and Blue and Yellow, '-' acts as a damaging move with Fissure's animation that may freeze the game if it doesn't defeat the opponent.

In {{RB}}, the effect of the move (move effect 0x74) [[arbitrary code execution|executes arbitrary code]] at F928 (Echo RAM for D928). For more information on how to exploit this, see [https://forums.glitchcity.info/index.php?topic=7504.0 here].


==Note==
==Note==
A Pokémon with '-' as the first move can be traded to {{GSC}}, where it will become [[- (Generation II move)]], because a Pokémon is not deemed [["Abnormal" Pokémon|'abnormal']] by its moves.
A Pokémon with '-' as the first move can be traded to {{GSC}}, where it will become [[- (Generation II move)]], because a Pokémon is not deemed [["Abnormal" Pokémon|'abnormal']] by its moves.

==See also==
*[[Japanese unterminated name glitch item instant encounter glitch]]
*[[Super Glitch (Generation I)]]
*[[LOL glitch]]


[[Category:Generation I glitches]]
[[Category:Generation I glitches]]
[[Category:Glitch moves]]

Latest revision as of 12:53, 7 July 2023

Major glitches of the Pokémon series


Arbitrary code execution

0x1500 control code arbitrary code execution (Crystal) | Cart-swap arbitrary code execution | Generation I custom map script pointer | Generation I invalid meta-map scripts | Generation I item ("8F", "ws m", "-g m", "5かい", "てへ" etc.) | Generation I move ("-", "TM42") | Generation I Trainer escape glitch text boxes | Generation II bad clone | Generation II Burned Tower Silver | Japanese Crystal Pokémon Communication Center SRAM glitches | Coin Case glitch | Generation II glitch Pokédex sortings | Pikachu off-screen glitch ACE | OAM DMA hijacking | Pikachu glitch emote | Generation III glitch Pokémon summary | Generation III glitch move animation) | Remote code execution | TM/HMs outside of the TM/HM pocket | ZZAZZ glitch Trainer FC


No further extensions

Cloning | Item duplication glitch (Generation I) | Pokémon merge glitch ("Q Glitch", Generation I) | Time Capsule exploit | Bug-Catching Contest data copy glitch (Generation II, Japan only) | Berry glitch | Battle Tower Lati@s glitch (Generation III) | (Mimic) Transform Rage glitch (Generation IV)

Transform held item glitch (Generation IV, Japan only) | Mimic glitch (Generation IV, Japan only)


Buffer overflow techniques

99 item stack glitch | LOL glitch | Rival LOL glitch | Instant LOL glitch | RAM LOL glitch | Out of bounds LOL glitch | blockoobLG | Instant encounter infinite chain glitch | LGFly | Super Glitch (Generation I) | Party remaining HP glitch | Super Glitch (Generation III) | Text pointer manipulation mart buffer overflow glitch | CoolTrainer♀-type move | Double distort CoolTrainer♀ corruption | Yami Shop glitch | Party Pokémon box data shift glitch | Unterminated name glitch item instant encounter (Japanese Red/Green)


Item stack duplication glitch (Generation I)

Generation I expanded items pack (Glitch Rocket HQ maps, Map FE (English and non-English European Yellow) | Map script pointer manipulation (arbitrary code execution | Map script pointer item ball manipulation) | Text pointer manipulation (arbitrary code execution | Item ball manipulation | Mart buffer overflow) | Trainerless instant encounter glitch


Bad clone glitch (Generation II)

????? party overloading (Type 0xD0 move glitch | ????? map corruption | Celebi trick | Celebi Egg trick | Shiny Celebi trick | Glitch move map corruption | Overloaded party map corruption | Glitch Unown (Glitch Unown map corruption) | Duplicate key items glitch (Infinite items and item creation, Expanded Balls pocket (Wrong pocket TM/HMs, Glitch Pokédex categories))


Closed menu Select glitches (Japanese Red/Green)

Dokokashira door glitch (International) | Fossil conversion glitch (international) | Second type glitch | Skip to Level 100 glitch | Trainer mutation glitch | Walk through walls (International) | Lift glitch | Badge describer glitch


Pomeg glitch (Generation III)

Pomeg data corruption glitch ("Glitzer Popping") | Charm glitch


Voiding (Generation IV)

Tweaking

Broken escalator glitch (Japan only) | Elite Four door glitch (Japan only)


2x2 block encounter glitches (Generation I)

Left-facing shore tile glitch (in-game trade shore encounter trick, Old man trick, Trade link up shore encounter trick, Fight Safari Zone Pokémon trick) | Viridian Forest no encounter grass tiles glitch


Glitch City

Safari Zone exit glitch | RAM manipulation | Out of bounds Glitch City (Generation II) | Slowpoke Well out of bounds corruption (French Gold/Silver/Crystal)


Large storage box byte shift glitch

Storage box remaining HP glitch | Generation I max stat trick


Pikachu off-screen glitch

Trainer corruption glitch


SRAM glitches

Generation I save corruption | 255 Pokémon glitch | Expanded party encounter table manipulation (Generation I) | Send party Pokémon to a new game (Generation I) | Generation II save corruption | Mailbox glitches | Mystery Gift item corruption | Trainer House glitches


Trainer escape glitch

Death-warp | Ditto trick | Experience underflow glitch | Mew trick | Text box ID matching | Meta-map script activation


Walk through walls

Ledge method | Museum guy method | Rival's effect | Select glitch method (International Select glitch method), Brock Through Walls


Surf down glitch

Grass/rock Surfing glitch (Spanish/Italian only) (adaptions: Submerge glitch (international)) | 8 8 (0x7C) grass/rock surfing glitch (English Red/Blue))

(view, talk, edit)
This article is a summary page for different variations of a glitches, etc. when talked about as a whole.
Bulbapedia also has an article about Move 0x00 corruption (Generation I).
PRAMA Initiative a également une page sur Move 0x00 corruption (Generation I).
Viewing '-' on the Fight screen.

For the glitch move in Pokémon Red and Blue, please see AttackDex/RB:000.

For the glitch move in Pokémon Yellow, please see AttackDex/Y:000.

Move 0x00 corruption, also known as CoolTrainer♀ glitch refers to the corruptions in Pokémon Red, Blue, and Yellow caused by a buffer overflow in the random internal names of glitch move "-" (which are of variable length).

The applications of this were documented and popularised by TheZZAZZGlitch (along with the discovery of how Super Glitch works). Move 0x00 corruption has also become a notable exploit in the history of various Pokémon glitched speedruns, such as 'catch 'em all'.

Nature

Screen tiles affecting Pokémon, DV/EV, level yields by Dabomstew.

An effect similar to Super Glitch may be triggered with '-' when it is the first move by opening the fight menu or trying to move the cursor. After the effect occurs, the type of '-' may change from CoolTrainer♀ to another type.

Unlike other unterminated name/Super Glitch moves, only one buffer overflow occurs with '-' (at memory address $CF4B, but not $D0E1). No corruption is caused by the '-' move when viewing it from a status screen.

Triggering the move 0x00 corruption with '-' requires more luck than other Super Glitch moves, so the player may need to keep 'moving' the cursor or opening and closing the fight menu. After a certain point in the player's game, CoolTrainer♀ induced corruption may stop working, due to hex:50 characters appearing in its internal name too early. There is no known guaranteed way to fix this other than to use a different cartridge.

The most basic effect that can be triggered with the CoolTrainer♀ move is the TMTRAINER effect, by opening the 'PkMn' menu from within battle before viewing it in the 'Fight' menu. Triggering the TMTRAINER effect in Diglett's Cave will let you avoid a freeze immediately after the battle ends. Opening the start menu after the TMTRAINER effect happens and the battle ends may be required to avoid a freeze after exiting the cave.

With the TMTRAINER effect, the enemy Pokémon's species will change into a level 127 Missingno. (hex:32) if sprites are not flipped, and a level 127 Horsea is obtainable by catching the enemy Pokémon if the sprites are flipped. Though the Pokémon's sprite will not change to the new Pokémon until it is captured, its palette may change to that of the new Pokémon.

In the Japanese versions (at least Red/Green), the equivalent Pokémon are Level 127 Missingno. (hex:38) and Level 127 Pikachu.

Advanced Red/Blue usage

In Pokémon Red and Blue, more Pokémon can be obtained with '-' (and also Super Glitch) by viewing the Pokémon menu in specific places where there is a 0x50 sub-tile (often the 'bottom-left corner of a bush' tile) between y coordinates 09-0C (these are BGB coordinates; y starts as 00 at the top of the screen and increases the further down you go) before entering Diglett's Cave and triggering move 0x00 corruption with '-'. Additionally the sub-tile at BGB coordinates y=06, x=01 must be equal to the desired Pokémon.

For an image showing where the bush tiles should be, and further information, please see this Youtube video by TheZZAZZGlitch.

Keep in mind that the start menu is added to the saved screen data, and the west most tiles of the start menu are between x=0A-13, so the 50 tiles replaced with start menu tiles don't count.

Advanced Yellow usage

Despite the fact that 0x00 move corruption no longer works by directly bringing over tiles from outside of battle in this version, it is still possible to get the aforementioned Level 127 MissingNo. or Horsea by flashing the items menu in battle.

Additionally, using the Pokédex glitch item and closing it will print tiles on the screen in battle (but not in the same pattern as outside of battle), which can be used to potentially access CoolTrainers by flashing the items menu from within battle.

Additionally, the glitches LOL glitch and Rival LOL glitch which make use of unterminated name glitch items are alternative glitches to 0x00 move corruption and can be used together to obtain many Pokémon and/or glitch Pokémon.

Effect of using the move

This effect ignores move 0x00 corruption:

In Pokémon Red and Blue and Yellow, '-' acts as a damaging move with Fissure's animation that may freeze the game if it doesn't defeat the opponent.

In Pokémon Red and Blue, the effect of the move (move effect 0x74) executes arbitrary code at F928 (Echo RAM for D928). For more information on how to exploit this, see here.

Note

A Pokémon with '-' as the first move can be traded to Pokémon Gold, Silver and Crystal, where it will become - (Generation II move), because a Pokémon is not deemed 'abnormal' by its moves.

See also