It seems to me that ABS is simply returning the same type as you send it. Send it a byte, get a byte back. Is this a normal c-style result, which we inherited in translation, or is there more going on behind the scenes like function overloading at play? If nobody digs into this by Friday, I'll look into it for us. The holidays are finally over, and this seems like a simple enough issue to jump into to get my feet back into the waters of QB64. ;)