Go to the top-left corner of Mosdeep city and go inside the house. There's Steven, who will notice you and give it to you
From steven at his house.
You get the abilty to use the move Dive from Tate and Liza in Mossdeep and then you can teach your Pokemon to Dive! X3 POKEMON-1001
you dive at route 128 by sootopolis city
Since dive is not a HM in firered you will have to trade a Pokemon to a friend that has ruby, sapphire or emerald then using that game use the HM Dive to teach the move Dive to that Pokemon trade it back so firered can have that Pokemon again it will still have Dive however you cannot use it to dive underwater.
In Emerald there are cave in which you get them. I THINK you need dig dive and flash.
There's no TM dive in pokemon fire red but there is in emerald, saphirre and ruby. But the way is to level up pokemon (seel level 41,dewgong level 45) to get TM dive (in firered).
get rayquaza
You have to have a Pokemon in your party which know the HM Dive. Surf onto water then go to your party, select the Pokemon that knows dive, and click on Dive.
You get the abilty to use the move Dive from Tate and Liza in Mossdeep and then you can teach your Pokemon to Dive! X3 POKEMON-1001
to get a heart dive
Use dive.
get a water Pokemon yhe TM dive and well dive under the water
You get Dive from steven not may.
You can get Dive in Pokemon Emerald by going to Mossdeep City and ensure you check all the houses.
you can find dive balls at the mossdeep city pokemart
dive 126_128 routes
mossdeep city dhoom
You can catch it when you use dive.