The Wine Stable version incorporates numerous innovations. These innovations include;
The first support for Direct3D 12 was applied. Direct3D 12 support requires a vkd3d library and a Vulkan graphics card.
Multi-Threaded Command Stream is enabled by default.
OpenGL core contents are always used by default. In the previous version, they were already used by default for Direct3D 10 and 11 applications on AMD and Intel graphics cards. This was extended to all graphics cards and to all versions of Direct3D up to 12.
Among others, the following remarkable features of Direct3D 10 and 11 are implemented:
Multisample textures and views as well as multisample analysis.
Shading per sample.
Support for 1D tissues.
Draws without creating target views or depth / template views.
Multiple views and scissors rectangles per draw.
Depth cropping control.
Depth bias tightening.
Flow output without geometry shaders.
A few more talent queries.
A few more source formats.
The above-mentioned is depth slant clamp lam feature requires the OpenGL extension ARB_polygon_offset_clamp / EXT_polygon_off et_clamp. All Direct3D 10+-compatible hardware must be able to support this extension, but we have noticed that some NVIDIA “Legacy Drivers” didn’t support it. We encourage affected users to discover whether the Free Software Nouveau drivers meet their needs.
Various Direct3D 11 interfaces have been updated to version 11.2 and several DXGI interfaces to version 1.6. This allows applications that require newer interfaces to start working.
In Direct3D, the first steps were taken in the better-tuned locking path. This will be an ongoing effort to make better use of modern high-core number processors.
Support for using the correct swap range applies to both DXGI and DirectDraw applications.
Application configurable frame delay is applied for Direct3D 9Ex and DXGI applications.
S3TC compressed 3D textures are supported. S3TC compressed 2D textures are already supported if OpenGL drivers are provided.
ARB_query_buffer_object When the OpenGL extension is available, query results can be queried with a low delay, resulting in modest performance improvement in special cases.
The validation and use restrictions of the Direct3D 8 and 9 resource pool have improved blit constraints.
The Direct3D graphics card database recognizes more graphics cards.
The new HKEY_CURRENT_USER \ Software \ Wine \ Direct3D registry key:
“MultisampleTextures” (REG_DWORD) Support for multi-instance textures (0x1, default), or disable (0x0) support.
“Renderer” (REG_SZ) The back-end API to be targeted. Possible values are “gl” for OpenGL (default) and “gdi” for GDI.
Deprecated HKEY_CURRENT_USER \ Software \ Wine \ Direct3D registry key: “DirectDrawRenderer” This was replaced with the above “Renderer” setting.
Removed HKEY_CURRENT_USER \ Software \ Wine \ Direct3D registry key: “StrictDrawOrdering” This feature was previously removed in favor of the multithreaded command stream feature and completely removed.
A full Vulcan drive that uses oltenVK is applied to the host Vulcan libraries under X11 or macOS.
As an alternative to the SDK installer, a built-in Vulkan-1 installer is provided.
Icons in PNG format are supported, allowing high-resolution 256×256 icons to be loaded.
Standard icons include 256×256 to take advantage of PNG support.
Many Direct2D interfaces have been updated to version 1.2.
By default, using the X11 image of an ARGB image is supported.
The old 16-bit DIB.DRV driver is implemented using the DIB engine.
The polygon drawing in the DIB engine is much faster for large polygons.
Paper sizes A0, A1, and A2 are supported for common printers.
Arrows are supported in GdiPlus.
The new HKEY_CURRENT_USER \ Software \ Wine \ Direct2D registry key: “max_version_factory” (REG_DWORD)
Limit the interface version of the ID2D1Factory interface to the specified version. 0x0 for ID2D1Factory, 0x1 for ID2D1Factory1 and so on. By default, there is no limitation.
Support for running DOS binary files under Wine has been removed. When prompted to run a DOS binary, an external instance of DOSBox is started. This still does not apply to Win16 binaries that are internally supported.
All CPU control and debugging records are accessible from kernel drivers, including 64-bit.
Events, semaphores, mutexes, and timers are implemented in kernel mode for device drivers.
WaitOnAddress synchronization policies are supported.
The reported processor information accurately distinguishes the logical and physical CPU core to support the hyper-thread.
Detailed platform information can be queried on Linux platforms.
Various debugger APIs support a 32-bit Wow64 to manage the process from a 64-bit process context.
Application settings, compatibility information, and execution levels are recognized in application notifications.
Various file I / O completion modes are applied.
Debug recordings are supported in NetBSD.
The infrastructure was implemented to determine the DPI awareness and to scale the non-DPI-aware applications. However, actual scaling of the window content is only supported on Android at this point. Scaling is disabled by default and can be enabled by setting the “DpiScalingVer” value under HKEY_CURRENT_USER \ Control Panel \ Desktop.
Window class redirection is supported, which provides support for Common Controls version 6 features for standard USER controls, such as buttons.
Standard USER controls the version 6 features, including Button, List Box, Combo Box, Edit and Static support, themes.
The standard Task Dialog box is implemented, including support for icons, hyperlinks, progress bars, and other various UI elements.
Migration headings are supported in version 6 of the edit control.
Exporting MIME-type file associations to the local desktop can be disabled with a check box under the Desktop Integration tab in winecfg. It can be configured programmatically by setting “Enable” under. HKEY_CURRENT_USER \ Software \ Wine \ FileOpenAssociations.
The File Dialog can display file properties such as size, time, and attribute.
The File Dialog box optionally shows the Places toolbar on the left.
The Public Shell folder is used to track the behavior of the latest Windows versions instead of AllUsersProfile.
The Shell File Browser supports keyboard shortcuts for renaming shell folders (F2 key) and deleting (Delete key).
Many standard icons are added to the Shell library.
Shell Autocomplete is supported.
In desktop mode, the taskbar is not displayed on top of full-screen windows.
Additional names are provided for standard cursors to better match existing X11 cursor themes.
HID game controllers are supported on XInput and Raw Input APIs.
An SDL driver has been implemented so that SDL game controllers can be used over the HID interface.
Internet and Network
The HTML style object has been rewritten to support standard-compliant mode.
HTML documents follow the X-UA Compatible HTTP header, which allows web pages to request a specific compatibility mode. The hkey_current_user \ software \ wine \ mshtml \ compatmode key can be used to override the requested mode.
MSHTML allows limited SVG support by supporting non-HTML elements.
A number of new HTML APIs are supported.
The proxy server can be configured via the Internet Control Panel application.
Flow I / O is applied in web services.
The Web Devices API (WSDAPI) is applied, including sending and receiving various message types.
More system information is reported through WBEM including CPU, BIOS, video controller, and network adapter features.
Asymmetric encryption keys and RSA and ECDSA signature verification are supported.
GCM and ECB encryption chaining modes are supported.
Optimal Asymmetric Encryption Fill (OAEP) is supported in RSA encryption.
A Kerberos security provider that supports Kerberos authentication is applied.
A selection dialog box is applied for public key certificates.
If possible, GnuTLS is used in macOS instead of the CommonCrypto framework.
Text and Fonts
The character tables are based on the 11.0.0 version of Unicode Standard.
The new sub-pixel font representation of FreeType> = 2.8.1 is supported.
When a font face is missing, FontConfig is queried to provide possible assignments.
The font selected in the console emulator is scaled according to the display DPI.
Memory font resources are supported in DirectWrite.
The built-in Wingdings font contains clock images.
Windows Media Player interfaces are implemented and support media playback.
The boot loader is implemented in macOS for better address space layout compatibility.
The command key can be mapped to Ctrl by setting the “LeftCommandIsCtrl” or “RightCommandIsCtrl” valuesunder HKEY_CURRENT_USER \ Software \ Wine \ Mac Driver.
The App Nap energy saving feature is disabled by default in GUI operations. It can be reactivated by setting the value “EnableAppNap” under HKEY_CURRENT_USER \ Software \ Wine \ Mac Driver.
Setting the mouse cursor is supported using APIs in Android> = 7.
The new version of the Android graphics buffer separator API is supported to enable graphics support in Android >> 8.
Android x86-64 platforms are also supported in 64-bit mode, but WoW64 mode is not yet supported in WineHQ packages.
Stubborn COM proxies are implemented in ARM.
The Windows call rule for Variadic functions is supported in ARM64.
Exception handling and debugging are better supported on ARM64 platforms.
The MinGW toolchain is supported for cross-assembly to ARM64.
The ping program provides real ping functionality using IcmpSendEcho.
The SchTasks task scheduler program can create and delete tasks.
The RegEdit registry editor has a hex editor developed for binary values.
FOR loops are processed correctly in the Command Translator.
The XCopy program supports the / k (hide attributes) option.
Japanese 106 keyboard is supported properly.
Translation of time zone names is supported.
There is a partial translation into the Sinhala language.
More locale is supported in the Resource Compiler (wrc) and Message Compiler (wmc).
“winedbg” supports debugging WoW64 operations.
In Gdb proxy mode, “winedbg” supports a –port option to specify the port used to connect to gdb.
“winegcc” uses better heuristic scanning to find the appropriate lib directory for 32/64-bit cross assemblies.
“winegcc” supports the creation of local subsystem libraries.
“winegcc” also looks for inclusion at the highest level, which includes the directory of the installation prefix.
“winebuild” supports a -mfpu option to determine the FPU architecture on ARM platforms.
“winedump” supports discarding SLTG format typelibs.
Application Configuration Files (ACF) are supported.
Asynchronous interfaces are supported.
Type and method serialization are supported by using the encoding / decoding attributes.
The default value () attribute is supported for pointer types.
The created files are always specific to the target platform. Using the CPU-manufacturer-os platform, the target can be specified in the same way as other tools.
Intertwining of markers and arrays works correctly.
The correct size and alignment are created for encapsulated unions.
__Int32 type is supported.
The -Robust command-line option is recognized (but ignored) for compatibility with the Microsoft IDL compiler.
Multiple typelibs can be created into a single source file.
Only 32-bit CIL .NET binary files are supported on 64-bit.
The mono engine has been updated to 4.7.5 with some upstream Mono corrections.
Typelib marshal reapplied. It creates format strings and then uses standard NDR marching routines; play on 64 bit and ARM platforms this wayışır.
MSI custom actions run in a separate process, providing proper support for mixed 32/64 bit installers.
Deferred installation procedures are supported in MSI.
The test framework supports the creation of assistants in a test to allow test features that require an external library to be installed.
The testing framework supports testing Windows core drivers.
It is possible to create and run a WoW64 tree from within the Wine source directory. Previously a non-wood structure was required.
A .editorconfig file is provided with recommended indentation parameters.
Task Scheduler service and APIs are applied.
The Windows Management Instrumentation service was applied.
OPC Services (Open Packaging Rules used for Microsoft Office XML files) library is implemented.
The HKEY_PERFORMANCE_DATA magic registry key is partially implemented.
New Foreign Dependencies
The Vulkan library is used to implement the Vulkan graphics driver.
The Vkd3d library is used to implement Direct3D 12 on the Vulcan.
The SDL library is used to support game controllers.
The GSSAPI library is used to implement Kerberos authentication.
In this article, we have given brief information about the Wine 4.0.2 Stable version. Later, we have reviewed that its innovations have considerably more improvements than previous versions. Thanks for following us!