Pete,
Here are some FSUIPC variables in the GPS area
int GPS_600C at $600C; // Zulu time in seconds since midnight
float GPS_6068 at $6068; // Track Error (TKE), in radians
float GPS_60EC at $60EC; // Distance to next waypoint, in metres
float GPS_60F4 at $60F4; // Distance between previous and next waypoint, in metres
float GPS_610C at $610C; // Course to Set (CTS), in radians
char GPS_6137[5] at $6137; // Flightplan destination airport
char GPS_6140[8] at $6140; // Approach name
char GPS_6154[8] at $6154; // Approach transition name
int GPS_6190 at $6190; // Time when waypoint was crossed,
float GPS_61A0 at $61A0; // Route total distance, in metres
float GPS_61A8 at $61A8; // Estimated fuel burn, in gallons
int GPS_61B0 at $61B0; // Time of last update, see 61B8
int GPS_61B8 at $61B8; // Counter, incremented once every five seconds
Also, there are three floating point variables at 6178, 6180 and 6188. I haven't found out what they do yet, but when flying between waypoints A and B they have values of X, Y and Z for example. On the return journey, between C and B they have values -X, -Y and -Z.
Also, 6008 starts a flight plan as 12, and is incremented when the approach is loaded, not not incremented when the approach is activated, and incremented when VTF is activated. If you then select another flightplan, it gets incremented by six.
JohnS