Поздравляю с установкой новейшей версии Wine.
.
Ключевые новшества Wine 4.0
Direct3D
Добавлена начальная поддержка Direct3D 12. Реализация основана на библиотеке vkd3d и требует для работы графической карты с поддержкой графического API Vulkan (Direct3D 12 работает через трансляцию вызовов в API Vulkan). Обеспечена поддержка большей части возможностей Direct3D 12, включая средства для графики и вычислений, очереди и списки команд, дескрипторы и дескрипторы кучи, корневые подписи, неупорядоченный доступ, Sampler-ы, сигнатуры команд, корневые константы, непрямая (indirect) отрисовка, методы Clear*() и Copy*();
Включено по умолчанию применение обособленного потока для обработки команд Direct3D, позволяющего выполнять отрисовку в асинхронном режиме с распараллеливанием на многоядерных системах;
В любых ситуациях, при доступности OpenGL, в Direct3D обеспечено применение по умолчанию базовых контекстов OpenGL. Ранее базовые контексты использовались только для обеспечения работы приложений Direct3D 10 и 11 на системах с графическими картами AMD и Intel. Теперь это ограничение снято и они применяются для любых видеокарт и всех версий Direct3D, за исключением Direct3D 12;
В реализации Direct3D 10 и 11 добавлена большая часть новых возможностей, включая поддержку мультисэмплинга текстур (Multisample texture), 1D-текстур, выборочной (per-sample) обработки фрагментов шейдерами, множественных областей ограничения 3D-сцены (viewport), новых форматов ресурсов, потокового вывод без геометрических шейдеров, управления отсечением глубины, механизмов для устранения артефактов при отрисовке теней и т.п.;
Некоторые интерфейсы Direct3D 11 обновлены до версии 11.2, а интерфейсы DXGI до версии 1.6;
Начался переход к применению в Direct3D гранулярных (fine-grained) блокировок, которые позволят повысить эффективность выполнения на CPU с большим числом процессорных ядер;
Для приложений DXGI и DirectDraw обеспечено использование корректного интервала замены буферов отрисовки (swap interval), синхронизированного с кадровым гасящим импульсом (v-blank);
Добавлена возможность настройки из приложений DXGI и Direct3D 9Ex величины задержки вывода кадров (frame latency);
Добавлена реализация механизма сжатия 3D-текстур S3TC (S3 Texture Compression), срок действия патентов на который истёк около года назад;
При поддержке драйвером OpenGL-расширения ARB_query_buffer_object обеспечено снижение задержек, благодаря обработке запросов в асинхронном режиме;
Расширена база данных графических карт, пригодных для использования Direct3D;
В реестр добавлены новые настройки "HKEY_CURRENT_USER\ Software\ Wine\ Direct3D": "MultisampleTextures" (включение мультисэмплинга текстур) и "Renderer" ("gl" для OpenGL и "gdi" для GDI). Объявлен устаревшим ключ "DirectDrawRenderer". Удалён ключ "StrictDrawOrdering";
Графическая подсистема
Реализован полноценный драйвер для графического API Vulkan, использующий штатные Vulkan-библиотеки на системах с X11 и API MoltenVK на платформе macOS;
Добавлена библиотека vulkan-1.dll c собственной реализацией загрузчика драйверов Vulkan для Windows, альтернативного загрузчику из Vulkan SDK;
Добавлена поддержка пиктограмм в формате PNG, в том числе пиктограмм 256x256 для экранов с большим разрешением;
В штатный набор пиктограмм добавлены варианты размером 256x256;
Многие интерфейсы Direct2D обновлены до версии спецификации 1.2. Для ограничения версии интерфейса Direct2D в секцию реестра "HKEY_CURRENT_USER\ Software\ Wine\ Direct2D" добавлен ключ "max_version_factory";
Для X11 добавлена поддержка визуализации в формате ARGB;
На базе движка DIB подготовлена реализация старого 16-разрядного драйвера DIB.DRV;
В движке DIB значительно ускорена отрисовка больших полигонов;
В код вывода на печать добавлена поддержка определения размера страниц A0, A1 и A2;
В GdiPlus добавлена поддержка рисования стрелок;
Ядро (интерфейсы ядра Windows)
Прекращена поддержка выполнения в wine исполняемых файлов DOS. При попытке запуска исполняемых файлов DOS теперь запускается отдельный экземпляр DOSBox. Изменение не касается выполнения исполняемых файлов Win16, поддержка которые остаётся встроенной в Wine;
Для запускаемых в Wine драйверов на уровне ядра реализованы обработчики событий, семафоры, мьютексы и таймеры. Драйверам предоставлен доступ к управлению CPU и настройке отладочных регистров;
Добавлена поддержка примитивов синхронизации WaitOnAddress;
Для корректного определения использования технологии Hyper-threading, в выдаваемой информации о конфигурации CPU теперь разделяются логические и физические ядра процессора;
При запуске в окружениях Linux предоставлен доступ к детальной информации, выдаваемой BIOS;
Реализована подборка отладочных API для манипуляции 32-разрядными процессами в Wow64 из контекста 64-разрядных процессов;
Добавлено определение в manifest-файлах приложений настроек, уровней запуска и информации о совместимости;
Реализованы различные режимы определения завершения файлового ввода/вывода;
Для платформы NetBSD реализована поддержка отладочных регистров;
Интерфейс пользователя
Реализована инфраструктура для настройки отображения элементов интерфейса с учётом DPI и параметров масштабирования. Масштабирование содержимого окон пока отключено по умолчанию и доступно только на платформе Android. Для включения следует изменить параметр "DpiScalingVer" в секции реестра "HKEY_CURRENT_USER\ Control Panel\ Desktop"
Реализована возможность перенаправления класса Window, что позволило добавить поддержку элементов интерфейсов на базе библиотеки Common Controls 6;
В библиотеку ComCtl32 v6 (Common Control) добавлена поддержка стандартных пользовательских элементов интерфейса, в том числе классов для кнопок (Button), списков (ListBox), комбинированных блоков (ComboBox), статических блоков (Static) и форм редактирования (Edit). Реализована поддержка тем оформления;
Реализован штатный диалог управления задачами (TaskDialog), включающий поддержку пиктограмм, гиперссылок, полос для индикации прогресса выполнения операций и различных элементов интерфейса;
В формах редактирования добавлена поддержка отображения подсказок непосредственно в полях ввода (Cue banner);
Интеграция с рабочим столом
Добавлена возможность отключения экспорта списка ассоциаций для MIME-типов (вкладка Desktop Integration в winecfg или ключ реестра "HKEY_CURRENT_USER\ Software\ Wine\ FileOpenAssociations");
В реализацию диалога открытия и сохранения файлов добавлена возможность отображения свойств файла (размер, время и атрибуты). Опционально добавлена возможность отображения слева панели с часто используемыми файловыми путями (Places);
Для соответствия поведению новых версий Windows место AllUsersProfile в оболочке теперь используется каталог Public;
В файловом менеджере появилась поддержка горячих клавиш для переименования (F2) и удаления (Del) каталогов;
В библиотеку добавлены многие стандартные для Windows пиктограммы;
Добавлена поддержка автодополнения ввода в Shell;
В режиме рабочего стола панель задач теперь не показывается вверху полноэкранных окон;
В состав Shell32 включён большой набор новых пиктограмм;
Добавлена поддержка дополнительных имён штатных курсоров, что позволило улучшить совместимость с темами оформления курсоров в окружениях X11;
Устройства ввода
В API Raw Input и XInput добавлена поддержка игровых контроллеров с интерфейсом HID;
В HID-драйвере появилась поддержка геймпадов;
Реализован драйвер SDL, позволяющий взаимодействовать через интерфейс HID с поддерживаемыми в SDL игровыми контроллерами;
Сетевые возможности
В JScript добавлен режим совместимости с EcmaScript, позволяющий использовать некоторые возможности, отсутствующие в штатном режиме. Добавлена поддержка обращения к свойствам JavaScript;
Переписаны и теперь лучше соответствуют стандарту объекты для работы с таблицами стилей;
В MSHTML добавлена поддержка не-HTML элементов, в частности, добавлена ограниченная поддержка SVG;
Реализованы некоторые новые HTML API;
В апплет Internet Control Panel добавлена поддержка настройки прокси-сервера;
В API WebServices добавлена поддержка Stream I/O;
Реализован API Web Services on Devices (WSDAPI), в том числе обеспечена поддержка отправки и приёма различных типов сообщений;
Через API WBEM предоставлен доступ к дополнительной информации о системе, включая сведения о CPU, BIOS, видеокарте и сетевом адаптере;
WinHTTP переведён на использование Windows Sockets;
Криптография
Добавлена поддержка асимметричных криптографических ключей, а также возможность проверки цифровых подписей на базе алгоритмов RSA и ECDSA;
Добавлена возможность использования хэшей sha256/sha384 в цифровых подписях ECDSA;
Добавлена поддержка режимов аутентифицированного шифрования GCM и ECB;
Для RSA реализована поддержка оптимального асимметричного шифрования с дополнением (OAEP);
Добавлена поддержка аутентификации при помощи Kerberos;
Реализован диалог для работы с сертификатами на основе открытых ключей;
При работе в macOS при наличии теперь используются библиотеки GnuTLS, а при их отсутствии штатный фреймворк CommonCrypto;
Текст и шрифты
В DirectWrite добавлена поддержка хранения ресурсов шрифтов в памяти;
Таблицы символов обновлены до спецификации Unicode 11;
Добавлена поддержка субпиксельного рендеринга шрифтов (требуется наличие FreeType 2.8.1 или более новой версии);
В эмуляторе консоли обеспечено корректное масштабирование шрифтов в соответствии с настройками DPI.
Расширено число глифов в шрифте Wingdings, в том числе добавлены глифы с разными изображениями часов;
Звук
Реализован интерфейс Windows Media Player для воспроизведения мультимедийного контента;
Добавлен декодировщик MP3, доступный через DirectX Media Object;
Поддержка платформы Android
Добавлена возможность установки курсора мыши, используя API Android 7+;
Добавлена поддержка нового механизма распределения памяти gralloc, который позволил решить проблемы с выводом графики в Android 8+;
Добавлена поддержка платформ Android x86-64, в том числе в 64-разрядном режиме (режим WoW64 пока не поддерживается в пакетах WineHQ);
Встроенные приложения
Добавлена программа Ping, показываются время сетевого отклика, вычисляемого при помощи вызова функции IcmpSendEcho;
Добавлен интерфейс SchTasks для добавления и удаления команд для запуска задач по расписанию;
В RegEdit добавлен режим шестнадцатеричного просмотра бинарных значений;
В командном интерпретаторе добавлена корректная реализация циклов "FOR";
В программу XCopy добавлена опция "/k", обеспечивающая сохранение атрибутов;
Инструменты для разработки
В winedbg добавлена поддержка отладки процессов WoW64;
В winegcc добавлена поддержка сборки библиотек штатных подсистем и улучшен поиск подходящих библиотек для кросс-компиляции;
В winebuild добавлена опция "-mfpu" для выбора архитектуры FPU для платформ ARM;
В winedump добавлена поддержка дампов typelib в формате SLTG;
В компилятор IDL добавлена поддержка ACF (Application Configuration Files), асинхронных интерфейсов, cериализации атрибутов, типа __int32 и генерации нескольких typelib в одном файле с ресурсами;
Движок Mono, используемый для запуска файлов .NET, обновлён до выпуска 4.7.5. В 64-разрядных окружениях добавлена возможность запуска в режиме CLI 32-разрядных исполняемых файлов .NET;
Система маршалинга в Typelib переписана с использованием функций NDR;
В фреймворке для проведения тестирования качества кода добавлена поддержка тестирования драйверов ядра Windows и библиотек, загружающих внешние dll;
Добавлена возможность сборки WoW64 (эмулятор для запуска 32-разрядных приложений Windows в 64-разрядных редакциях Windows) из штатного дерева исходных кодов Wine;
Разное
Реализован сервис Task Scheduler для запуска задач по расписанию;
Реализован сервис WMI (Windows Management Instrumentation) для централизованного управления системами на базе Windows;
Реализована библиотека для сервисов OPC (Open Packaging Convention), используемых в XML-файлах Microsoft Office;
Расширена поддержка платформ ARM и ARM64. Для кросс-компиляции для ARM64 реализована возможность использования инструментария MinGW;
Добавлена поддержка отложенной установки пакетов MSI. Обеспечено выполнение пользовательских обработчиков в MSI в отдельном процессе, что позволяет создавать комбинированные установщики для 32- и 64-разрядных систем. Добавлена поддержка преобразований субхранилищ в MSI;
Новые внешние зависимости: библиотеки Vulkan для работы драйвера Vulkan, Vkd3d для Direct3D 12, SDL для поддержки игровых контроллеров, GSSAPI для Kerberos.