I use offmaps on my iphone. if you download the map in advance, the gps in your phone should work to locate you without a data plan. it's not perfect as others have pointed out but i found it works pretty well. I almost use the compass feature more than the physical map itself.
sometimes in the maze of small side streets, i just need a general pointing in the right direction to get out onto a bigger street where I can get on the train at a nearby station.