Go to wallys house it's right beside the petalburg gym.
you have to beat your dad's gym and then go talk to Wally's parents, who gives you the HM surf
beat the 2nd gym and go in the cave
To get surf in ruby, sapphire and emerald you need to beat the 5th gym (your dad) and go to wally's house (same town) then one of the people in wally's house should give you the surf HM
you beat the first four gyms, and go back to petalburg city to beat your dad
beat your dad and go nextdoor.Waly's dad gives it to you.
after you beat your dad you go next door to Wally's parents home and the dad will give it to you
Go to wallys house it's right beside the petalburg gym.
Beat the 4th gym and go to Wally's house in Petalsburg. Talk to his dad.
you have to beat your dad's gym and then go talk to Wally's parents, who gives you the HM surf
Go back to your dad's gym and battle him, then go to the house next to it and get HM surf
After you beat your own dad in Petalburg Gym, go to Wally's house (right next to the gym) and his dad will give you surf.
after you beat your dad and get surf you go to mauville city and surf at the right side of the city
Go to the Elite 4, and beat them.
after you beat your dad you go to wally"s house and his dad will give you surf
After you beat your rival after the 6th gym
Beat the Pokemon league, then go to Pal Park. You must have a Pokemon that knows Surf.