Talk to Steven at Silph. Co and he will say something about stones and eventually he would say something like,"Which stone would you rather have?" Now choose the Green Stone and you get Treeko. Choose the Red Stone and you get Torchic. Choose the Blue one and you get Mudkip.
P.S. I got Mudkip
You can't get to the Hoenn region in HeartGold or SoulSilver. However, Latias can be caught in HeartGold, which is a legendary from Hoenn.
You can get them by visiting Steven Stone at Silph Co. after you defeated Red.
In HeartGold, you cannot enter the Hoenn region however you can find Pokémon that are found in the Hoenn region in HeartGold by playing the Hoenn Sound on the March Channel while you're traveling through routes however the Hoenn Sound is only available on Wednesdays.
Look on your map.
No, you do not get to choose a Starter Pokémon in "Pokémon HeartGold" immediately after arriving in the Kanto region however later on after you've defeated all of the 8 Kanto Gym Leaders including Blue, you'll get to choose a Kanto Starter and a Hoenn Starter.
Silph.Co(Kanto, postgame)
No you do not need to catch Kyogre. You can get a Hoenn starter from a guy named Steven in Kanto.
No, it is not possible to access the Hoenn region in either SoulSilver or HeartGold. However, you can catch Pokemon from Hoenn. On Wednesday, the Pokemon march station is a Hoenn sound. To get the Hoenn Pokemon all you have to do is set your Pokegear radio onto the Pokemon march station on Wednesday after you have defeated Red.
You can't get there because you can only go to johto and kanto.
In Pokemon Heartgold and Soulsilver you can get a Johto starter from Professor Elm, a Hoenn starter from Steven, and a Kanto starter from Professor Oak
You can only go to Johto and Kanto in Pokemon Heartgold and Soulsilver
Outside of migration from Hoenn itself, Steven Stone gives out a Hoenn starter in Pokémon HeartGold and SoulSilver. In order to receive it, you have to beat PKMN Trainer Red at Mt. Silver.