Felix86: o emulador que promete trazer jogos x86 para RISC-V
Notícias

Felix86: o emulador que promete trazer jogos x86 para RISC-V

Num mundo onde a arquitetura RISC-V vem ganhando cada vez mais espaço, surge um novo projeto que promete quebrar uma das maiores barreiras para sua adoção massiva: a compatibilidade com software x86-64. O felix86 é um emulador inovador que permite executar programas Linux desenvolvidos para arquitetura x86-64 em processadores RISC-V, com foco especial em jogos!

Como o felix86 funciona?

O felix86 atua como um emulador em userspace, traduzindo instruções x86-64 para RISC-V em tempo real através de uma técnica conhecida como recompilação just-in-time (JIT). Isso significa que ele não precisa virtualizar todo um sistema operacional – em vez disso, aproveita o kernel Linux do host para lidar com chamadas de sistema, resultando em desempenho muito mais eficiente.

O projeto já demonstra resultados impressionantes, com jogos como:

  • Celeste (rodando a ~20 FPS)
  • SuperTuxKart (10 FPS em modo corrida)
  • World of Goo
  • The Binding of Isaac: Rebirth
  • Baba Is You
Felix86: o emulador que promete trazer jogos x86 para RISC-V 1
Imagem: felix86

Desafios técnicos

Um dos maiores obstáculos na emulação é o código automodificável – quando um programa altera suas próprias instruções durante a execução. Isso é comum em engines como Mono (usada em Celeste) e em técnicas de otimização JIT. O felix86 implementou um sistema inteligente que:

  1. Bloqueia escrita em páginas com código recompilado;
  2. Usa handlers de sinal para detectar modificações;
  3. Invalida blocos afetados e os recompila quando necessário.

Outro avanço significativo foi o suporte experimental a Wine, permitindo até mesmo executar alguns jogos Windows simples (como o clássico Paciência do Windows 7) em hardware RISC-V.

O hardware por trás do projeto

Os desenvolvedores enfrentaram desafios interessantes com hardware. Eles vêm testado utilizar placas de vídeo dedicadas em dispositivos RISCV. Inicialmente, estavam testando uma NVIDIA GTX 1050 Ti, mas não funcionou corretamente devido à falta de driver adequados. Atualmente vêm fazendo testes com GPUs AMD HD 7350 via adaptador mPCIe, já que ainda é difícil encontrar placas RISC-V com slots PCIe padrão.

Felix86: o emulador que promete trazer jogos x86 para RISC-V 2
Imagem: felix86

Nos testes feitos pelos desenvolvedores, o desempenho em jogos é bem melhor com a placa de vídeo dedicada.

O futuro do Felix86

O roadmap do projeto inclui:

  • Melhor suporte a programas 32-bit (já em desenvolvimento);
  • Implementação completa de instruções MMX;
  • Otimização de syscalls para melhor compatibilidade;
  • Aproveitamento de extensões RISC-V como Zacas quando disponíveis.

Para quem quiser experimentar ou contribuir, o projeto está hospedado no GitHub com documentação detalhada sobre compilação e uso. Embora ainda não haja binários pré-compilados, a comunidade já está animada com o potencial do felix86 em tornar o ecossistema RISC-V mais acessível para usuários finais.

Num mundo cada vez mais diversificado em arquiteturas, projetos como o felix86 mostram que a interoperabilidade é possível – e que talvez em breve possamos ter nosso Steam Library rodando em processadores RISC-V!

Você também ama Linux e tecnologia? Visite nossa loja e mostre seu amor ao mundo vestindo o melhor estilo do pinguim!

Diolinux Ofertas - Aproveite os melhores descontos em diversos produtos!