You can sign up to get a daily email of our articles, see the Mailing List page!

Here we are again time to stop and re-wine. Another development release of the Wine compatibility layer has become available with Wine 6.17 having the bottle popped open today.

For newer readers and Linux users here's a refresher - Wine is a compatibility layer built for operating systems like Linux, macOS and BSD. The idea is to allow other platforms to run games and applications only built and supported for Windows. It's also part of what makes up Steam Play Proton. Once a year or so, a new stable release is made.

What's new in Wine 6.17 includes:

  • WineCfg program converted to PE.
  • Better high-DPI support in builtin applications.
  • More preparation work for the GDI syscall interface.
  • Improved debugger support in Wow64 mode.

Since Wine is covering a massive amount of APIs from Windows, each time it gets something finished up we should see better application compatibility. GDI syscall should help even more applications run and display correctly. Microsoft explain that GDI "enables applications to use graphics and formatted text on both the video display and the printer. Windows-based applications do not access the graphics hardware directly. Instead, GDI interacts with device drivers on behalf of applications".

In regards to many things being "converted to PE" over multiple Wine releases: previously Wine has built its Win32 libraries (like DLLs and EXEs) as ELF but for many reasons (like better compatibility) they've started to move them over to use PE instead. So it's another change that will gradually improve compatibility as more is moved over.

This time around 12 bugs were noted as being solved. Usual here applies: some bugs were fixed previously, some only recently. The Wine team noted these were fixed:

  23979  SMSDV's main window is empty
  36887  Trusteer Rapport setup crashes on unimplemented function ntoskrnl.exe.PsGetCurrentProcessSessionId
  37592  Filenames in themed file dialog change size
  40700  Page Scrolling Bar of PDF Eraser not rendered with wine-mono
  45133  Multiple applications need 'ntdll.NtQueryInformationProcess' to support 'ProcessSessionInformation' info class (ProcessHacker, NewProcessFromToken)
  49625  winedbg --command 'info wnd' fails with Exception c0000005
  51655  iphlpapi regression prevents Samsung SDK from working properly
  51672  Imperiums: Greek Wars has small black window on launch (caused by wrong position).
  51693  ntdll:info fails on Windows 7 64-bit
  51702  AFxW: the working directory of launched Unix application isn't set
  51726  wineserver crashes with an assert()
  51728  copypasta in pwcache.c:ctox()

Article taken from GamingOnLinux.com.
16 Likes
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG and Humble Store. See more here.
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
8 comments

fagnerln 10 Sep
Hey Liam, just a complain:

I (and I bet that some others too) clicked in this post because "GDI Syscall" sounds interesting, you explained for the 234th time what is Wine, but don't put a word (or a link at least) about this syscall, as it's on the title, it should be important right? 😜
rcrit 10 Sep
View PC info
  • Supporter Plus
As I understand it, the conversion to PE format (Portable Executable) helps with some copy protection schemes that check that modules on-disk and in-memory are identical.

This thread on the Fedora development list also mentions that it improves compatibility with some applications (again it could be copy protection but the author isn't explicit about it).

https://lists.fedorahosted.org/archives/list/devel@lists.fedoraproject.org/thread/SL4IPD2VBMJ2XVGXRYFPDXZIC4YIYPWY/#FQ5UO3BJHFST7YC3H3X3GKCOGQLBMGHN

The thread gets pretty technical and Fedora-specific.
TheRiddick 11 Sep
Can anyone list some specific use cases for this GDI system? do games even benefit or is this more of a application thing? (which is ok imo, applications under wine are always finicky)
rcrit 11 Sep
View PC info
  • Supporter Plus
Quoting: TheRiddickCan anyone list some specific use cases for this GDI system? do games even benefit or is this more of a application thing? (which is ok imo, applications under wine are always finicky)

From https://zetcode.com/gui/winapi/gdi/

QuoteThe GDI insulates the programmer from the hardware. From the programmer's point of view, the GDI is a group of API functions for working with graphics. The GDI consists of 2D Vector Graphics, Fonts and Images.

As I said, they didn't implement GDI in this release, they converted it to PE. Based on a 10-second review of the commits consists it was mostly of code re-organization (because it was already implemented).
I agree with other user, you could try to briefly explain what GDI syscall is and why it's important :)
dindon 11 Sep
Quoting: fagnerlnHey Liam, just a complain:

I (and I bet that some others too) clicked in this post because "GDI Syscall" sounds interesting, you explained for the 234th time what is Wine, but don't put a word (or a link at least) about this syscall, as it's on the title, it should be important right? 😜

I was also hoping to see an explanation of what is a GDI syscall but hopefully the comment section rocks.
Liam Dawe 11 Sep
It's a fair point, added.
While you're here, please consider supporting GamingOnLinux on:

Patreon, Liberapay or PayPal Donation.

This ensures all of our main content remains totally free for everyone with no article paywalls. We also don't have tons of adverts, there's also no tracking and we respect your privacy. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register

Or login with...
Sign in with Steam Sign in with Twitter Sign in with Google
Social logins require cookies to stay logged in.