Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Wine 9.0, released January 16, 2024, was a major architectural release rather than a simple compatibility update. Its two headline changes were a new WoW64 design for running 32-bit Windows programs on 64-bit Unix systems and an experimental Wayland display driver. Neither was enabled by default, and both came with important limitations. The Wine project described the stable release as the result of a year of development and “over 7,000 individual changes.”

What Wine 9.0 changed

Wine 9.0 is free, open-source software that lets Unix-like systems run many Windows applications. The stable release announced by the Wine project on January 16, 2024, focused on restructuring how Wine handles Windows-to-Unix calls, expanding ARM64 possibilities, and improving graphics, multimedia, input, internationalization, security, and developer compatibility.

“The main highlights are the new WoW64 architecture and the experimental Wayland driver.”

— Alexandre Julliard, Wine release announcement, January 16, 2024

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

This is a historical release, not the current Wine version in 2026. Its significance is that several later development directions were established here.

New WoW64 architecture: 32-bit Windows apps on 64-bit Unix

Wine 9.0 introduced a redesigned WoW64 mode that routes Windows-to-Unix transitions through the NT syscall interface. Modules that call Unix libraries contain WoW64 thunks, allowing 32-bit Windows PE code to communicate with 64-bit Unix libraries.

The practical result is the ability to run 32-bit Windows applications on a purely 64-bit Unix installation. This is especially relevant on systems that no longer support 32-bit Unix processes. The release notes specifically identified recent macOS versions with that restriction as a target use case.

Was the new WoW64 mode enabled automatically?

No. Wine 9.0 did not enable the new architecture by default. Building it required both 32-bit and 64-bit architecture targets, using the configuration option:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
./configure --enable-archs=i386,x86_64

Distribution packages may use different build choices, so a package labeled Wine 9.0 is not proof that this mode is active. Check your distribution’s build documentation before assuming that a particular installation uses the new architecture.

WoW64 limitations

  • 16-bit Windows code was not supported.
  • OpenGL performance was reduced compared with the traditional arrangement.
  • The ARB_buffer_storage extension was unavailable.
  • The release notes expected most applications to work, but not every application.

Therefore, WoW64 solves a deployment problem—running 32-bit Windows software without a 32-bit Unix userland—but it is not an unconditional compatibility or performance upgrade.

Experimental Wayland driver

Wine 9.0 added a Wayland driver intended to let Wine communicate directly with Wayland compositors instead of relying exclusively on X11. It was explicitly a work in progress and was not enabled by default.

The driver already provided basic window management, multiple-monitor handling, high-DPI scaling, relative-motion events, and Vulkan support. Those capabilities make it relevant on Linux desktops that use Wayland, particularly for pointer-intensive applications and multi-display setups.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How to try the Wayland driver

Wine’s release notes describe enabling both drivers and placing Wayland after X11 in the driver list:

  1. Open the Wine registry editor for the prefix you want to change.
  2. Go to HKCUSoftwareWineDrivers.
  3. Set the graphics driver value to x11,wayland.
  4. Ensure the DISPLAY environment variable is unset when launching the application.

Because the driver was experimental, keep a tested X11 configuration available for applications that show rendering, input, window-management, or startup problems.

WoW64 and Wayland are different technologies

These features are sometimes mentioned together because they were Wine 9.0’s headline changes, but they address separate problems.

Feature Purpose Status in Wine 9.0 Documented constraints
New WoW64 architecture Run 32-bit Windows applications on a purely 64-bit Unix installation Not enabled by default No 16-bit code, reduced OpenGL performance, no ARB_buffer_storage; not every application was expected to work
Wayland driver Display and input integration with Wayland compositors Experimental and not enabled by default Work in progress; retain an X11 fallback for compatibility

They are not interchangeable alternatives. A user may need WoW64 for an application’s 32-bit architecture and Wayland for the desktop display path.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

ARM64 support moved forward

The completed PE/Unix separation also improved Wine’s ability to run existing Windows binaries on ARM64. The loader supported ARM64X and ARM64EC modules, and Wine implemented a 32-bit x86 emulation interface.

Wine 9.0 did not ship an x86 emulation library. An external library exporting the required interface was needed; the release notes named FEX as an implementation when built as PE. Initial ARM64EC builds used an experimental LLVM toolchain, while an ARM64X build depended on future toolchain readiness described in the release notes.

Graphics and Direct3D improvements

  • Vulkan driver support advanced to specification version 1.3.272.
  • GdiPlus received optimizations.
  • Direct3D 10 effects gained additional instructions.
  • WineD3D and Vulkan backends received optimization work.
  • Wine validated Vulkan device features before reporting a Direct3D feature level, reducing cases where a device was advertised as capable of features it could not actually provide.

These changes improve the range of graphics paths Wine can expose, but the release announcement did not provide independent performance benchmarks.

Audio, video, and DirectShow additions

Audio and music

  • Foundational DirectMusic modules were added.
  • DLS1, DLS2, and SF2 sound-font loading became available.
  • The dmsynth MIDI synthesizer could use bundled FluidSynth with DirectSound output.
  • DirectSound gained Doppler-shift support.

Video and media plumbing

  • An Indeo IV50 Video for Windows decoder was included.
  • DirectShow gained a WMV decoder DMO and an Audio Capture filter.
  • The MPEG-1 Stream Splitter gained video, system, and audio stream support.
  • An MPEG-1 Video Decoder filter was added.

Input and desktop integration

  • DirectInput action maps made it possible to map controller inputs in older games that use that system.
  • Linux desktop URL and URI protocol handlers were added.
  • Wine could retrieve physical monitor names and model IDs from EDID data.
  • Full-screen desktop mode gained an Exit entry in the desktop menu.

Internationalization and system behavior

  • Native Windows IME and Linux IME integration improved.
  • Locale data was updated to Unicode CLDR 44.
  • Character tables were updated to Unicode 15.1.0.
  • Time-zone data came from IANA database version 2023c.
  • Windows 10 became the default Windows version for new prefixes.
  • ASLR support was added for modern PE binaries, although selected load addresses were not yet properly randomized.
  • The Low Fragmentation Heap and memory placeholders were implemented.
  • Smart-card support used Unix PCSClite.
  • BCrypt gained Diffie-Hellman keys.
  • The Negotiate security package was added.

Other notable components

  • Gecko was updated to 2.47.4.
  • Network-interface change notifications were added.
  • Mono was updated to 8.1.0.
  • Several built-in Windows-style utilities gained new functionality.

Developer compatibility warning: libwine.so removal

Wine 9.0 removed libwine.so. Winelib ELF applications built with Wine 5.0 or older must be rebuilt before they can run on Wine 9.0. This change matters to developers maintaining native Unix binaries linked through Wine’s Winelib tooling; ordinary Windows application users are not required to rebuild their programs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Who should care about Wine 9.0?

  • Users of 32-bit Windows software on 64-bit systems: the new WoW64 design addresses the underlying architecture barrier, provided its limitations are acceptable.
  • Wayland desktop users: the driver offers a native integration path, but its experimental status makes fallback testing essential.
  • ARM64 users: Wine’s loader and interfaces improved, but x86 emulation still required an external implementation.
  • Audio, game, and media users: DirectMusic, MIDI, DirectShow, Vulkan, controller mapping, and monitor handling all received targeted improvements.
  • Winelib developers: applications built against old Wine versions may need rebuilding because of the libwine.so removal.

Bottom line

Wine 9.0’s most important contribution was structural: it made a pure-64-bit Unix environment more viable for 32-bit Windows software and established an experimental path for Wayland display integration. Those advances came with non-default settings and clear caveats, so Wine 9.0 should be viewed as a foundational 2024 release—not as a promise that every 32-bit application, graphics workload, or Wayland desktop would work without adjustment.

Frequently Asked Questions

Did Wine 9.0 make every 32-bit Windows program work on 64-bit Linux?

No. The new WoW64 mode was expected to work for most applications, but it lacked 16-bit code support, reduced OpenGL performance, and the ARB_buffer_storage extension. It was also not enabled by default.

Can Wine 9.0 use Wayland automatically?

No. The Wayland driver was experimental and disabled by default. Wine’s documented setup used the registry value x11,wayland and required the DISPLAY environment variable to be unset when launching the application.

Did Wine 9.0 include x86 emulation for ARM64?

It implemented the 32-bit x86 emulation interface but shipped no emulation library. An external implementation, such as FEX when built as PE, was required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.