RET_TYPE is uint8_t though :/... you don't get any warning during the compilation?
I suggest we change RET_TYPE to int8_t and revert to the original returns...