@Override
	public boolean hasStringValue(Settings settings) {
		int format = getFormatSettingsDefinition().getFormat(settings);
		return format == FormatSettingsDefinition.CHAR;
	}
Ghidra doesn't actually heed signedness unless the format is DECIMAL. Thus, for user
input, and to make this an inverse of getRepresentation, we'll adjust values between SMAX
and UMAX to ensure they get encoded as expected, rather than rejected. We'll still accept
signed values, though, since the user would rightly expect those to work, even though
it'll get echoed back in unsigned form.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/AbstractIntegerDataType.java