you go to misty's gym and look in the swim rings after you beat the team rocket grunt in cerulian city and talked to the guy in the kanto power plant.
Chat with our AI personalities
It is behind the tube next to the gym leaders chair
after beating the gym leader misty, go down the stairs of the gym, go left and press A on the rubber rings, this is where the machine part is for the power plant.
The powerplant one? Well. go to Mystys gym top mid-left of the Gym you will find Machine part, bring it back to the plant and your good!
Use the Dowsing Machine on Route 20. You'll eventually find one.
you can not get regirock in soul silver but in platinum you can in a special event.