> xx.yy = 0XXYY/100 -> you store 0XXYY 2 > xxx.yy = XXXYY/100 -> you store XXXYY 2 > xx = 0XX00/100 -> you store 0XX00 0 > x.y = 00XY0/100 -> you store 00XY0 1 > I hope that this makes sense. It's 3AM here It does, and it's 3pm here That's exactly the sort of thing I'll be doing. Worry about the DP after the ASCII -> integer conversion. Will be a lot simpler than how I'd started it, coping with the DP during conversion I've also belatedly realised that each sensor can be dealt with using its own range, rather than trying to devise a system that covers everything from 99999 to 0.001. No individual sensor actually needs that bit width / precision. In fact 1% would be close enough most of the time, given the analogue nature of the sensors, A2D resolution etc -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist