try it out:
volatile float bob = -344.0f;
unsigned int fred = (unsigned int)bob;
printf("%d\n",fred);
output will be 0.
obviously I am expecting it to wrap around just as if I had cast from a signed int to an unsgined int (which does wrap and act as expected on the iphone)
we assume it is something to do with the floating point settings.
any ideas?