Control of the base map colour is dependent on GPS model. In some of the more recent ones, you can change the “Garmin yellow” by simply changing the colour of polygon 0x4b using a TYP file. For older models (including the GPSMap76csx that I have) you have to overlay the yellow with a land polygon of a colour of your choosing:

  • You need to generate your own map with mkgmap
  • You need to create your own style that defines land and sea polygons
  • You need to create your own TYP file that contains polygons for land and sea
  • You need to use the mkgmap --generate-sea:polygons option

You can see the results of this method here: http://www.cferrero.net/maps/screenshots_index.html. These are from Mapsource but the effect is identical on the GPS unit.

There are two drawbacks:
a) The garmin yellow base still underlies everything, so when you pan around you briefly see it before the unit draws the land or sea polygon on top
b) Redraws are a little slower due to the unit having to draw a land polygon everywhere.