42 lines
1.4 KiB
Plaintext
42 lines
1.4 KiB
Plaintext
#library "SDL3";
|
|
|
|
// SDL_InitFlags
|
|
SDL_INIT_VIDEO :u32: 0x20;
|
|
|
|
// SDL_WindowFlags
|
|
SDL_WINDOW_OPENGL :u64: 0x2;
|
|
|
|
// SDL_GLAttr (enum starting at 0)
|
|
SDL_GL_DOUBLEBUFFER :s32: 5;
|
|
SDL_GL_DEPTH_SIZE :s32: 6;
|
|
SDL_GL_CONTEXT_MAJOR_VERSION :s32: 17;
|
|
SDL_GL_CONTEXT_MINOR_VERSION :s32: 18;
|
|
SDL_GL_CONTEXT_FLAGS :s32: 19;
|
|
SDL_GL_CONTEXT_PROFILE_MASK :s32: 20;
|
|
|
|
// SDL_GLProfile
|
|
SDL_GL_CONTEXT_PROFILE_CORE :s32: 0x1;
|
|
|
|
// SDL_GLContextFlag
|
|
SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG :s32: 0x2;
|
|
|
|
// SDL_EventType
|
|
SDL_EVENT_QUIT :u32: 0x100;
|
|
SDL_EVENT_KEY_DOWN :u32: 0x300;
|
|
|
|
// Functions
|
|
SDL_Init :: (flags: u32) -> bool #foreign;
|
|
SDL_Quit :: () -> void #foreign;
|
|
SDL_CreateWindow :: (title: [:0]u8, w: s32, h: s32, flags: u64) -> *void #foreign;
|
|
SDL_DestroyWindow :: (window: *void) -> void #foreign;
|
|
SDL_GL_SetAttribute :: (attr: s32, value: s32) -> bool #foreign;
|
|
SDL_GL_CreateContext :: (window: *void) -> *void #foreign;
|
|
SDL_GL_DestroyContext :: (context: *void) -> bool #foreign;
|
|
SDL_GL_MakeCurrent :: (window: *void, context: *void) -> bool #foreign;
|
|
SDL_GL_SwapWindow :: (window: *void) -> bool #foreign;
|
|
SDL_GL_SetSwapInterval :: (interval: s32) -> bool #foreign;
|
|
SDL_GL_GetProcAddress :: (proc: [:0]u8) -> *void #foreign;
|
|
SDL_PollEvent :: (event: *void) -> bool #foreign;
|
|
SDL_GetTicks :: () -> u64 #foreign;
|
|
SDL_Delay :: (ms: u32) -> void #foreign;
|