fix problem with forcefield width (not being set),
replace some numbers with the enums
change use of char to byte to stop a negative occuring