diff options
Diffstat (limited to 'core/sys/win32')
| -rw-r--r-- | core/sys/win32/general.odin | 19 | ||||
| -rw-r--r-- | core/sys/win32/kernel32.odin | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/core/sys/win32/general.odin b/core/sys/win32/general.odin index 16241de05..16853c5cd 100644 --- a/core/sys/win32/general.odin +++ b/core/sys/win32/general.odin @@ -300,6 +300,25 @@ File_Notify_Information :: struct { file_name: [1]u16, } +// https://docs.microsoft.com/en-gb/windows/win32/api/sysinfoapi/ns-sysinfoapi-system_info +System_Info :: struct { + using _: struct #raw_union { + oem_id: u32, + using _: struct #raw_union { + processor_architecture: u16, + _: u16, // reserved + }, + }, + page_size: u32, + minimum_application_address: rawptr, + maximum_application_address: rawptr, + active_processor_mask: u32, + number_of_processors: u32, + processor_type: u32, + allocation_granularity: u32, + processor_level: u16, + processor_revision: u16, +} // https://docs.microsoft.com/en-us/windows/desktop/api/winnt/ns-winnt-_osversioninfoexa OS_Version_Info_Ex_A :: struct { diff --git a/core/sys/win32/kernel32.odin b/core/sys/win32/kernel32.odin index f647ab7e0..3caeb4963 100644 --- a/core/sys/win32/kernel32.odin +++ b/core/sys/win32/kernel32.odin @@ -31,6 +31,7 @@ foreign kernel32 { @(link_name="GetCommandLineA") get_command_line_a :: proc() -> cstring ---; @(link_name="GetCommandLineW") get_command_line_w :: proc() -> Wstring ---; @(link_name="GetSystemMetrics") get_system_metrics :: proc(index: i32) -> i32 ---; + @(link_name="GetSystemInfo") get_system_info :: proc(info: ^System_Info) ---; @(link_name="GetVersionExA") get_version :: proc(osvi: ^OS_Version_Info_Ex_A) ---; @(link_name="GetCurrentThreadId") get_current_thread_id :: proc() -> u32 ---; |