Like the non-BO I8 comment earlier, this code duplication is unnecessary I think. A wrapper func that does a int16_t cast would be enough. Right?