First to clarify...
GPS refers the Global Positioning System, a highly-accurate system that relies on satellites orbiting the earth.
There are several ways to figure out where a phone is located:
- It can use a GPS chip to read its GPS position (either internally like the 8800 or using an external bluetooth GPS like the 8700 or 8300 can do).
- its location can be triangulated from which cell phone tower it is locked on top, using an external (not in the phone, since it is HUGE) database of tower locations. This is how e911 works. Accuracy is low, around a quarter mile usually, sometimes better.
- If the phone supports WIFI, its location can be estimated from the WIFI station it is connected to (after all WIFI only spreads so far).
Software like BlackBerry Maps, Google Maps, or Telenav relies on a true GPS chip to give you your location. So you will need an external bluetooth GPS puck for the 8300.
In a pinch, Navizon makes a mapping product that will calculate/estimate your location using the nearest cell tower or WIFI transmitter when the GPS is not available. However, accuracy is questionable (it doesn't have all cell towers and only a few WIFI locations). But it does work.
e911 operators have a vendor-provided tool that uses the vendor's tower database to triangulate the cell phone's estimated position. Not very accurate, but good enough when trying to find where a 911 call is originating from (like a car accident).