While each glitch Pokémon in Pokémon Red, Blue, and Yellow have one basic front sprite and one basic back sprite (however the sprite may vary if it is located in RAM or is altered with inverted sprites, or due to luck with glitch Pokémon with a zero (x256) sprite dimension (see also: freeze sprite glitch Pokémon)), more glitch Pokémon sprites can be obtained if the original sprite is in a banked region of the Game Boy Memory Map (such as region 4000-7FFF or in SRAM).
By default, glitch Pokémon 0xBF-0xFF are in sprite bank 0x0D as per this documentation, but with a glitch, it is possible to force the same two byte sprite pointer but loaded from another bank (possible other banks include 0x01, 0x09, 0x0A, 0x0B, 0x0C), effectively loading a completely different sprite.
Switch to any bank methodThis method is possible with a cheating device, but may also in theory be possible with OAM DMA hijacking. It was discovered by GlitchedPokemonStudent and analysed by Torchickens.
1. Make the game constantly force write a value to CF91 (Pokémon Red and Blue) or CF90 (Pokémon Yellow). The value must belong to a valid Pokémon or hybrid glitch Pokémon.
Below are some examples:
0xC3 can be interpreted as "from bank 0x0D" 0x74 as "from bank 0x0C" 0x4A as "from bank 0x0B" 0x21 as"from bank 0x0A" 0x01 as "from bank 0x09" For Red/Blue possibly 0x15 as "from bank 0x01"
2. Choose any glitch Pokémon (or regular Pokémon) in the party you wish to see with the adjusted bank. For example, if you have a ゥ ( Z4 (0xC3) and enable code 014A90CF, Beedrill's sprite will show instead of ゥ ( Z4's usual sprite, as Beedrill's sprite is in bank 0x0B and 0B:791B points to this sprite rather than 0D:791B (the default ゥ ( Z4 sprite).
This is also a convenient method of viewing glitch Pokémon sprites on a summary screen where it would normally not be possible.