/* Draw bitmap (bitmap from BMP file without header)  */
int32_t GLCD_DrawBitmap(uint32_t x, uint32_t y, uint32_t width, uint32_t height, const uint8_t *bitmap)
/* Draw bitmap (bitmap from BMP file without header)  */
int32_t GLCD_DrawBitmap(uint32_t x, uint32_t y, uint32_t width, uint32_t height, const uint8_t *bitmap)
{
    for (j = 0; j < width; j++) {
      frame_buf[dot] = *ptr_bmp++;
      dot += GLCD_SWAP_XY * GLCD_HEIGHT + (!GLCD_SWAP_XY);
    }
    dot = GLCD_SWAP_XY * (x * GLCD_HEIGHT + y + (i + 1)) + (!GLCD_SWAP_XY) * ((y + i + 1) * GLCD_WIDTH + x);
    ptr_bmp -= 2 * width;
  }
  return 0;
}