Well, in order to dive you have to have an HM that is Dive, teach it to your Pokemon, and then you have to win the Pokemon league to go to Undella town. Once your at Undella town, surf on the water and you see these really dark waters. Click on it ( or press A) and you will go in this secret pyramid and go inside and you have to treasure hunt. They have time on you, so hunt quickly!!
Chat with our AI personalities
get a hm called dive attach it to a water type pokemon and go on water and use dive.
Dive is not an HM in Pokemon firered or leafgreen however if you trade a Pokemon that knows dive from ruby or sapphire or emerald now you have a Pokemon that knows dive But you can't dive underwater in firered or leafgreen because it wasn't invented in the kanto region.
Once you get the HM dive and make it to mossdeep city you can surf southwest somewhere you will find white rocks you can dive down and you will find a secret cave underwater if you resurface in the cave you will appear in sootopolis city.
There is no HM for Dive in SoulSilver, but you can get it by transferring a Pokemon who knows dive into SoulSilver the Pal Park. but you can get dive as a HM in Pokemon black and white but not in soulsilver,heartgold,platinum,diamond,and pearl
Dive is absent in Pokemon pearl,diamond,platinum,heartgold,and soulsilver . But will return in Black/White =-)