As from an email by Lance D. to the dev list (long long time ago):
formatCoords: function (base) {
var t, t2;
var degrees = Math.floor(base);
var minutes = Math.floor(t = ( base - degrees ) * 60);
var seconds = Math.floor(t2 = ( t - minutes ) * 6000);
seconds = seconds / 100.00;
return ("" + degrees + "\u00B0 " + minutes + "\u0027 " +
seconds + "\u0022" );
AND
if (this.map.units == "degrees") {
newHtml = this.formatCoords(lonLat.lon) + this.separator +
this.formatCoords(lonLat.lat);
}
else {
var digits = parseInt(this.numdigits);
newHtml =
this.prefix +
lonLat.lon.toFixed(digits) +
this.separator +
lonLat.lat.toFixed(digits) +
this.suffix;
}
As per comment by Jeff D., this should not be the default, but should be a configurable option.
A further idea presented by Lance is "detecting positives and
negatives and prepending them as E,W or N,S"