De experimentele release van de open implementatie van de Win32 API — Wine 9.5 is uitgebracht. Sinds de release van 9.4 zijn er 27 bugrapporten gesloten en 264 wijzigingen aangebracht.
De belangrijkste wijzigingen:
- In de compiler van de interfacebeschrijvingstaal WIDL (Web Interface Definition Language) is de initiële ondersteuning voor het genereren van een typbibliotheek (TypeLib) in het oude formaat (SLTG) toegevoegd.
Voor ABI ARM64EC (ARM64 Emulation Compatible) is uitzonderingafhandeling geïmplementeerd. ARM64EC wordt gebruikt om het porteren van applicaties die aanvankelijk voor de x86_64-architectuur zijn geschreven naar ARM64-systemen te vergemakkelijken, door de mogelijkheid te bieden om afzonderlijke modules met x86_64-code uit te voeren in een ARM64-omgeving via emulatie.
- De ondersteuning voor compacte geheugen-dumps in Minidump-formaat is verbeterd.
- Bugrapporten met betrekking tot de werking van de volgende spellen zijn gesloten: Elder Scrolls Online, RE:D Cherish, Fallout Tactics, Tomb Raider 3, Rocket League, ArmA: Cold War Assault, Final Fantasy XI Online, Far Cry 3.
- Bugrapporten met betrekking tot de werking van de volgende applicaties zijn gesloten: WhatsApp Desktop, Smartflix, Squirrel Installers, OneDrive, CDBurnerXP, Overwatch, RadiAnt DICOM Viewer, Grand Theft Auto V Rockstar Editor, YI Home, Alune Klient 14.03.2022. WeCom 4.x, Totem Arts, Acrom Controller, QQ 8.9.6.
Gelijktijdig is de release van het Wine Staging-project 9.5 gevormd, dat uitgebreide builds van Wine biedt, inclusief niet volledig gereed of risicovolle patches, die momenteel niet geschikt zijn voor opname in de hoofdvertakking van Wine. In vergelijking met Wine biedt Wine Staging 435 extra patches. In de nieuwe release van Wine Staging is synchronisatie uitgevoerd met de codebase van Wine 9.5 en vkd3d, zijn de patches ws2_32-TransmitFile en ntdll-Threading verwijderd, en zijn patches voor shell32 (problemen met SHFileOperation(FO_MOVE) en registerzoekopdrachten opgelost), wined3d (bindless-texturen voor GLSL-shaders ingeschakeld) en user32 (de stub LoadKeyboardLayoutEx toegevoegd) verhuisd naar de hoofdversie van Wine.
Het bedrijf Valve heeft de 16e bètaversie van het Proton 9.0-pakket gepubliceerd, gebaseerd op de codebase van het Wine-project en gericht op het mogelijk maken van het draaien van Linux-games die voor Windows zijn gemaakt en in de Steam-catalogus zijn gepresenteerd. Proton maakt het mogelijk om Windows-only game-applicaties direct uit te voeren in de Linux-client van Steam. Het pakket bevat de implementatie van DirectX 9/10/11 (gebaseerd op het DXVK-pakket) en DirectX 12 (gebaseerd op vkd3d-proton), die werken door middel van het vertalen van DirectX-aanroepen naar de Vulkan-API, biedt verbeterde ondersteuning voor gamecontrollers en de mogelijkheid om de volledige schermmodus te gebruiken, ongeacht de resoluties die door de games worden ondersteund. Voor het verbeteren van de prestaties van multithreaded games worden de mechanismen 'esync' (Eventfd Synchronization) en 'futex/fsync' ondersteund.
In de nieuwe tak van Proton is synchronisatie uitgevoerd met de release van Wine 9.0. Specifieke patches die zijn verzameld in Proton zijn nu overgebracht naar de upstream, en maken nu deel uit van de hoofdversie van Wine. De DXVK-laag die oproepen naar de Vulkan-API vertaalt, is bijgewerkt tot versie 2.3. VKD3D-Proton, een afsplitsing van vkd3d gemaakt door Valve om de ondersteuning voor Direct3D 12 in Proton te verbeteren, is bijgewerkt naar versie 2.11.1. Het Dxvk-nvapi-pakket, dat de NVAPI-bibliotheek bovenop DXVK implementeert, is bijgewerkt naar versie 0.6.4. Problemen in veel games zijn opgelost. In vergelijking met de vorige bètaversie is ondersteuning voor Steamworks SDK 1.59 toegevoegd en problemen zijn verholpen in de games Command & Conquer Red Alert, Carmageddon: Max Damage, Risk of Rain 2, DayZ, Last Of Us Part I en Trove.
Daarnaast is het project GE-Proton 9-2 uitgebracht, waaraan enthousiastelingen onafhankelijk van Valve uitgebreide builds van het Proton-pakket samenstellen voor het draaien van Windows-applicaties, die zich onderscheiden door een nieuwere versie van Wine, het gebruik van FFmpeg in FAudio en de toevoeging van extra patches die problemen in verschillende game-applicaties oplossen. In Proton GE 9-2 zijn wijzigingen overgenomen uit de nieuwste codebases van wine 9, proton 9, steamclient, vkd3d-proton, dxvk-nvapi en dxvk. Een probleem met het afspelen van wmv-bestanden is opgelost.
Bron: opennet.ru
