Tool/software: Code Composer Studio
It would seem the conversion of a long 32 bit integer somehow omits the ones place holder decimal 0-9 ASCII. So the results are not as expected when decoding base 10 radix into ASCII values. The results of ASCII conversion are close via output two 8 bit array stores but not exact and often can result in 0-255 being decoded across one, tens, hundreds positions via output of 3 array stores.
Is there some reason CCS compiler 18.12.2.LTS omits radix? What other function can be used to do inline conversions of long integers into ASCII and mirror integers into decimal values? CCS ltoa() seems to work accurately for shorts with 3 output buffers but fails to produces exact conversion for longs in either buffer case. It seems there is something wrong since the 1's decimal position often ends up being 4 or 5 yet 10's, 100's roll decimals 0-9 as expected from a long integer variable. The control in this experiment a high speed GUI that TI developed some time ago and GUI composer number spinner widgets without integer conversion to ASCII.
http://www.kev.pulo.com.au/pp/RESOURCES/cplusplus/ref/cstdlib/ltoa.html