violet city
You only have to go north when you get to Violet City and you will find it north of the Violet City Gym.
It is in goldenrod city to the right of the gym
Violet City
You go north from cherrygrove city.
Aliza town
In violet city gym.
In the PokéMart.
go north to dark cave than west to violet city
It is south of Violet City and east of Azalea, or in other words it's the cave between Violet City and Azalea Town.
Go in Violet City and into the gym.
It's Heart Gold btw and go to CherryGrove City and go North Till Dark Cave then West to Violet City hope this helps