Sounds like there's a problem with something being stored in a byte when it should be an integer. I'll take a quick look, should be relatively simple to fix. I hope.
Edit: almost right. Although the cash and the final prices are stored in integers, there are a couple of places where cost/weight calculations are performed using two byte-sized values and these remain byte-sized even when they're assigned to ints. Making one of them an integer seems to solve this issue - just doing some final testing now, then I'll build and push 1.7 live.