Tool/software: TI C/C++ Compiler
Big problem converting serial received hexadecimal values via (char) into integer >65535 when compiler is changing 0x00 into 0x0. So 262144 or 0x40000 changes into 400 loosing base 16 shifted places 0x00. If we shift the sum of all 3 serial bytes (4, 0, 0) then 262144 results but any integers <65535 are then incorrect. We need the compiler to stop messing with hexadecimal zero and 255 (0xff) so NUL remains 0x00 and not being morphed to 0x0 that is base 16 being truncated.
Can we tweak (char) NULL to be 0x00 and not 0x0? we can live 0xff being 0x0 as long as the system knows the difference when instructions test for char 0xff.