Yes, a check would be good. The value is finally stored in a 16 bit field. I would assume the value is used as an unsigned 16 bit int by Garmin, but maybe values > 32767 given to mkgmap already cause problems with the current code.