Wine 6.0 chega com mais de 8300 mudanças e estas são as mais importantes

Vários dias atrás a nova versão estável do Wine 6.0 foi apresentada, versão que chegou após um ano de desenvolvimento e 29 versões experimentais.

Nesta nova versão mais de 8300 mudanças foram incorporadas e entre as principais conquistas incluídas na entrega, podemos encontrar o Módulos básicos do Wine em formato PE, um backend baseado na API gráfica Vulkan para WineD3D, uma nova implementação de um console de texto, suporte para DirectShow e o framework Media Foundation.

O Wine confirmou o funcionamento completo de 5049 (4869 um ano atrás) programas para Windows, 4227 (4136 um ano atrás) programas funcionam perfeitamente com configurações adicionais e DLLs externas. Os programas 3703 apresentam pequenos problemas operacionais que não interferem no uso das funções principais dos aplicativos.

Principais novidades do Wine 6.0

Nesta nova versão do Wine 6.0 podemos descobrir que os principais arquivos DLLincluindo NTDLL, KERNEL32, GDI32 e USER32, foram movidos para usar o formato executável PE (executável portátil) em vez de ELF. O uso de PE resolve problemas com o suporte de vários esquemas de proteção contra cópia que verificam a identidade dos módulos do sistema no disco e na memória.

Além disso um novo mecanismo é proposto para anexar bibliotecas Unix a módulos PE para organizar o acesso a bibliotecas Unix a partir de arquivos PE quando for necessário chamar funções que não podem ser processadas através da API Win32. Bibliotecas Unix adicionais são identificadas pela presença de um arquivo com a extensão "so" e o nome do módulo PE (por exemplo, ntdll.so para ntdll.dll).

Por outro lado vinculação de módulos Winelib para libwine.so quebrou e o carregamento de libwine.so foi desabilitado em tempo de execução. Devido a esta mudança, a compatibilidade com as versões anteriores foi perdida, ou seja, os módulos criados para o Wine 6.0 não poderão ser carregados nas versões anteriores do Wine.

Também digno de nota é que o suporte para montagem de módulos PE com salvamento de informações de depuração em um arquivo separado foi implementado, reduzindo o tamanho dos arquivos instalados.

O suporte para desenhar arcos, elipses e retângulos arredondados usando a API Direct2D foi adicionado ao subsistema gráfico.

O driver Vulkan fornece suporte para a especificação Vulkan Graphics API 1.2.162. Forneceu a geração de um manifesto JSON e uma entrada de registro usada pelo carregador Vulkan oficial.

Um motor de renderização experimental foi implementado no Direct3D para WineD3D, que traduz chamadas Direct3D 12 para a API gráfica Vulkan. O mecanismo requer a biblioteca libvkd3d-shader, que suporta a tradução do código de byte 4 e 5 de modelos de shader na representação intermediária SPIR-V.

Novos recursos do Direct3D 11 foram implementados, como estados de junção independentes, junção de múltiplas fontes, máscaras para MSAA (Multi-Sample Anti-Aliasing) e solicitações de recursos adicionais.

No D3DX, a interface ID3D12ShaderReflection e funções para obter parâmetros de imagem, como 3DX10GetImageInfoFromMemory (), bem como novos objetos e funções do kernel NT, foram implementados, necessários para a operação de sistemas anti-cheat que carregam drivers de kernel.

Outra mudança importante está na implementação do Media Foundation que foi significativamente melhorada, no qual havia suporte inicial para os componentes Media Session, Streaming Audio Renderer (SAR), Video Renderer, EVR mixer, Topology Loader e Media Engine.

Video Mixing Renderer adiciona suporte para modos sem janela e sem renderização, a capacidade de redimensionar automaticamente o vídeo para caber na janela, conversão de espaço de cor acelerada por hardware e formatação widescreen em torno do conteúdo para atingir a proporção correta.

Das outras mudanças que se destacam:

  • Novos recursos foram adicionados à API Media Detector.
  • Adicionado suporte para conversão de formatos de vídeo e áudio para filtrar link via GStreamer.
  • O Enhanced Video Processor (EVR) suporta mixagem via API DXVA2.
  • Adicionado suporte completo para normalizar strings Unicode.
  • Suporte aprimorado do Windows para tabelas de mapeamento de codificação de caracteres.
  • Uma implementação integrada de funções matemáticas foi adicionada ao tempo de execução C com base no código da biblioteca Musl.
  • O código para gerar números de ponto flutuante foi reprojetado e removido da ligação com a função do sistema printf.
  • Removido o suporte para a arquitetura PowerPC de 32 bits que não estava funcionando.
  • Adicionado suporte para manipulação de exceção e desenrolamento de pilha em sistemas ARM de 32 e 64 bits.

Finalmente, se você quiser saber mais sobre isso, você pode consultar o seguinte link.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.