Projekt WinCore vyvíjí vrstvu kompatibility s Win32/WGL, která umožňuje kompilaci kódu. Windows-programy napsané v C/C++ s použitím klasického Win32 API, které lze spustit v Linux и macOSWinCore zachycuje klasické obslužné rutiny Win32 a používá multiplatformní backendy pro vykreslování přes SDL3 nebo SDL2. Kód je napsán v jazyce C++ a distribuován pod licencí LGPLv3.
Projekt byl výsledkem přehodnocení knihovny LDL stejným autorem, který dospěl k závěru, že místo návrhu dalšího API je logičtější vzít osvědčené procedurální API Win32 a udělat ho přenositelným napříč různými operačními systémy a zařízeními. Myšlenka je taková, že kód je napsán podle pravidel Win32, ale je nativně kompilován a běží v... Windows, Linux и macOS.
Knihovna je napsána v striktním jazyce C++98 pro maximální přenositelnost, ale exportuje čisté hlavičkové soubory C89, což zajišťuje zpětnou kompatibilitu a umožňuje snadné navázání na Rust, Zig, Python a další jazyky prostřednictvím C FFI. V současné době jsou k dispozici dva backendy: SDL2 a SDL3. Backendy pro XLib a Wayland jsou plánovány do budoucna.
Autor si neklade za cíl napodobit všechny možnosti Windows a zaměřuje se pouze na multimediální a engine subsystémy. V současné době je implementováno 5 funkcí Kernel32.dll (správa modulů, systémový čas a latence), 25 funkcí User32.dll (vytváření oken, smyčky zpráv, pozice kurzoru a zpracování vstupu), 5 funkcí Gdi32.dll (výběr formátu pixelů, bitmapový výstup a přepínání vyrovnávací paměti) a 4 funkce Opengl32.dll (vytváření, mazání a aktivace kontextů WGL).


Zdroj: opennet.ru
