it is in sootopolis city which is under water it should be on your hoenn map.
Beacon Badge
The eighth badge can be obtained by defeating the gym leader in viridian city.
yes ash will get his 8th gym badge
you must beat the eighth gym leader and he will give you the badge.
beat wallce
the ground gym
Sunyshore City
You can obtain the 8th gym badge (the earth badge) in fire red from Giovanni in Viridian City.
it is Mauville gym
in sootoplis
You have to beat the eighth gym leader to get to the Elite Four. Without defeating the eighth gym, you cannot get the S.S. Aqua ticket. You also cannot capture Lugia without the eighth badge.
By beating the gym leader