From d13dc7eca718508eb40dc17edff9d298c5f4052c Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 3 Oct 2022 11:35:27 -0400 Subject: [PATCH] Add a few Fiber functions to kernel32.odin This is not the complete set, but a start. --- core/sys/windows/kernel32.odin | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/core/sys/windows/kernel32.odin b/core/sys/windows/kernel32.odin index a9ed44d8a..9e5e5448b 100644 --- a/core/sys/windows/kernel32.odin +++ b/core/sys/windows/kernel32.odin @@ -963,4 +963,15 @@ DCB :: struct { foreign kernel32 { GetCommState :: proc(handle: HANDLE, dcb: ^DCB) -> BOOL --- SetCommState :: proc(handle: HANDLE, dcb: ^DCB) -> BOOL --- -} \ No newline at end of file +} + + +LPFIBER_START_ROUTINE :: #type proc "stdcall" (lpFiberParameter: LPVOID) + +@(default_calling_convention = "stdcall") +foreign kernel32 { + CreateFiber :: proc(dwStackSize: SIZE_T, lpStartAddress: LPFIBER_START_ROUTINE, lpParameter: LPVOID) -> LPVOID --- + DeleteFiber :: proc(lpFiber: LPVOID) --- + ConvertThreadToFiber :: proc(lpParameter: LPVOID) -> LPVOID --- + SwitchToFiber :: proc(lpFiber: LPVOID) --- +}