I did some research involving the select glitch on red and green.
You could create a Pokemon from other data.
One method involves OT and Nicknames.
The OT's of all 6 Pokemon compromises 36 bytes of data. The Nicknames of the first 2 Pokemon compromises the other 8 bytes.
It requires trading with other players. Nickname your starter Pokemon as your name and put it on the first slot.
The first OT is the Pokemon, HP, Status, and first type. 3-letter name for normal status and type.
The second OT is second type and moves. 1-letter name for no moves, otherwise have moves including Petal Dance.
The third OT is ID, Experience, and HP EV. First two letters must match name. If there's no exact match on ID and/or OT, experience boost and may not obey.
But it doesn't matter as many names make Level 100 Pokemon. 5-letter name gives 20480 HP EV.
The fourth OT are Attack, Defense, and Speed EVs. For best results, Time Capsule trade with player named ォォォォォ for 20724 HP EV, 62708 Attack and Defense EVs, and 20480 Speed EV.
The fifth OT is Special EV, IVs, and Move 1 PP. Time Capsule Trade with ォォォっっ for 20724 Speed EV, 62708 Special EV, and perfect HP, Speed, and Special IVs,
The ヲ cannot be selected in Red and Green, but can be selected in Gold and Silver. Time Capsule trade with ォォォゥヲ for shiny Pokemon.
The sixth OT is PP of other moves, Level, and Max HP. 4 or 5 letter name, non-diacritic fourth letter or a space will guarantee level 100.
Nicknames for the stats don't matter. The first 48 entries in the Pokedex determine the nickname by the Pokemon you own.
Highlight the 7th item and press select, highlight the Pokemon you don't need anymore, and there you go. Your very own Pokemon.
Another method involves Nicknames and Pokedex Data.
The nicknames of the second through sixth Pokemon compromises 28 bytes of data. The first 128 entries in the Pokedex by the Pokemon you own compromises the other 16 bytes.
The remainder of the second Pokemon's nickname is the Pokemon and HP.
The third nickname is the types, status, first two moves. 5-letter name for Petal Dance for the second move.
The fourth nickname is the other two moves, ID, and experience. 4-letter names guarantee level 100.
The fifth nickname is HP, Attack, and Defense EVs. Time Capsule trade with ォォォォォ for 62,708 HP and Attack EVs, 20480 Defense EVs.
The sixth nickname is remaining EVs. Time Capsule trade with ォォォォォ for 20704 Defense EV and 62708 Speed and Special. But you get 5 Attack IV and 0 Defense IV.
The next part is the Pokedex. If you Started with Charmander and traded for Wartortle, 8 Speed and Special IVs.
From Blastoise to Wigglytuff, whatever you own determine the PP. Catch a Venonat, you're guaranteed to be level 100.
From Venomoth to Tauros, whatever you own determine your stats, but nickname stops at Drowzee.
Have a Pokemon in the second slot whose nickname shares your name, and only trade for Haunter in the twelfth set of eight.
Highlight the 8th item and press select, highlight the Pokemon you don't need anymore, and there you go. Your very own Pokemon.
This next method is so complicated because whoever you see and the items you have determine what you get.
To get a Mew, own a Magikarp, Lapras, and Eevee. Don't own Gyarados, Ditto, or any Eeveelution.
You must own at least one of the following: Porygon, Pokemon revived from fossils, Snorlax, legendary birds, dragons, Mewtwo, Mew. Otherwise it has 0 HP.
It's hard to not see Caterpie, Metapod, Weedle, and/or Kakuna. It'll have stacked status problems.
Seeing Pidgeotto, Pidgeot, Rattata, Raticate, Spearow, Pikachu, Raichu, Sandshrew, Sandslash, and Nidoran♀ determine the types.
Trade for a Spearow and/or Sandshrew for special types. Don't see Rattata, but trade for Raticate for Ghost Type. Same goes for Trading for Sandslash.
From Zubat to Tentacool, whatever you saw determine the moveset. From Tentacruel to Grimer, whatever you saw determine the ID.
Just battle Brock's Onix for a level 100 guarantee. From Chansey to Mew, they determine EVs. 65535 HP and Attack EVs and 16467 Defense EV if inventory is full.
99 TM50 in item slots 1 and 2. You need the Dokokashira Door Glitch for entry to Celadon City. That means you have to money grind or be really good at the Game Corner.
You'll have 64099 Speed and and Special EVs. there's a extremely cheaper alternate; albeit Poke$30000000 cheaper; Giving you 60771 Speed and Special EVs. By having 99 TM37.
Whatever you have in the 3rd item slot makes the IVs. Items 4 and 5 determine the PP of the moves.
Put a TM or HM in the sixth slot of the items. Items 7 through 10 are your stats. Having exactly 10 items gives you a Special stat 65280.
Revive Aerodactyl, trade for Kabutops, Don't get a Porygon, Snorlax, Articuno, and other fossil Pokemon.
Have a Pokemon in the third slot whose nickname shares your name.
Highlight the 9th item and press select, highlight the Pokemon you don't need anymore, and there you go. Your very own Pokemon.
This last method requires a full inventory.
The quantity of any item in slot 11 is the Pokemon. Slot 12 determines HP. Have any key item in slot 13. It will be asleep in 1 turn.
Item 14 determines the type. The quantity of slot 15, slot 16, and the type of item in slot 17 determine the moves.
If there's 18 of whatever in slot 18, guaranteed level 100. Item 20 is your HP EV. You'll have 65280 Attack EV.
Have Poke$999999 and you have 39321 Defense EV. Name your rival ーーーーっ and you have 58339 Speed and Special EVs and perfect Defense IV, But lackluster Special IV.
Option sets PP for first move, Having all badges sets PP for second move. The upper 8 bits of your ID determines the level.
Have a Pokemon in the forth slot whose nickname shares your name. And make sure its level and attack stat (big endian) match your ID.
Highlight the 10th item and press select, highlight the Pokemon you don't need anymore, and there you go. Your very own Pokemon.
If you swapped a Pokemon whose first move has 0 PP, it makes the text to start appearing instantly.
Doing the methods have side-effects. like affecting the OT, nicknames, Pokedex Data, items, money, badges, etc. which allows for more glitchy goodness.