Try the Android Jelly Beam, Maps has voice input feature but not perfect.
Example: you say "number one Robin road" it found perfectly. you say "suntec city tower one" ok without problem. But whey you say "Telok Ayer", it can't find. Why? It recognizes most English road name, but no no to Malay and Indian pronunciation. Try "Mustafa" can't find.