#pragma once #include "pxl8_types.h" typedef struct pxl8_hal { void* (*create)(i32 render_w, i32 render_h, const char* title, i32 win_w, i32 win_h); void (*destroy)(void* platform_data); u64 (*get_ticks)(void); void (*center_cursor)(void* platform_data); void (*present)(void* platform_data); void (*set_cursor)(void* platform_data, u32 cursor); void (*set_relative_mouse_mode)(void* platform_data, bool enabled); void (*upload_texture)(void* platform_data, const u8* pixels, u32 w, u32 h, const u32* palette, u32 bpp); } pxl8_hal;