1 pontos por GN⁺ 2026-03-14 | 1 comentários | Compartilhar no WhatsApp
  • O Dolphin, que começou em 2003 como um emulador de GameCube, expande-se para uma nova área de plataformas ao adicionar suporte ao sistema de arcade Triforce em 2026
  • A otimização MMU Fastmem acelera o acesso à memória baseado em tabela de páginas e, em especial, permite que Rogue Squadron III rode em velocidade total pela primeira vez
  • O bug de sincronização online de Mario Strikers Charged foi corrigido após 5 anos, fazendo com que o jogo em rede com um Wii real funcione corretamente
  • Na emulação do Triforce, está em andamento a restauração do protocolo de touchscreen e das funções de cartão IC de The Key of Avalon, e melhorias relacionadas a F-Zero AX e Virtua Striker 4 também estão previstas
  • Foram adicionados vários recursos que melhoram a experiência do usuário e o desempenho, como armazenar o jogo em cache na RAM, configuração de dicas de controle SDL e ajuste do timing do menu do Wii

Adição de suporte ao Triforce

  • O Dolphin agora oferece suporte oficial ao Triforce, sistema de arcade conjunto da Sega, Namco e Nintendo
    • Inclui melhorias iniciais como inserção automática de Magnetic Card, configuração de região e correções de bugs na emulação de múltiplos cabinets
  • Foi confirmado que o protocolo de touchscreen de The Key of Avalon é semelhante ao Elo SmartSet; o jogo chegou a iniciar, mas parou devido a um problema na inicialização do cartão IC
  • Com a restauração das funções do cartão IC, os modos de montagem de time e criação de personagens em Virtua Striker 4, Gekitou Pro Yakyuu e outros devem voltar a funcionar

MMU Fastmem e otimização de Rogue Squadron

  • Com a implementação do mapeamento Fastmem por tabela de páginas, o desempenho de Rogue Squadron II e III melhorou em até duas vezes
    • As alterações na tabela de páginas são refletidas em tempo real por meio do rastreamento da instrução tlbie
  • A desativação de Branch Following, a otimização da invalidação de código e a ativação de CPU Vertex Culling reduziram quedas de frames e stuttering
  • Rogue Squadron III agora pode rodar em velocidade total pela primeira vez em hardware de alto desempenho

Correção do bug de Mario Strikers Charged

  • Foi identificado que a causa do erro de sincronização de física entre o Dolphin e um Wii real era a imprecisão nos cálculos de ponto flutuante da instrução fmadds
  • O problema foi resolvido com uma correção precisa de arredondamento usando o algoritmo 2Sum, deixando as partidas online totalmente sincronizadas
  • Essa correção evoluiu a partir da experiência de resolver um problema semelhante em Inazuma Eleven GO: Strikers 2013

Outras melhorias importantes

  • O timing do gerenciamento de dados do menu do Wii foi ajustado para ficar mais próximo do hardware real, reduzindo a carga excessiva de CPU durante acessos à NAND
  • Foi adicionada a função Load Whole Game into Memory, eliminando a latência de espera de disco ao executar jogos a partir de armazenamento em rede, como NAS
  • A introdução de configurações de dicas SDL na GUI melhorou a compatibilidade com controles, incluindo separação de Joy-Con e problemas de hotplug do DualSense
  • Alguns jogos, como Need for Speed: Hot Pursuit 2 e Rabbids Go Home, receberam patches de sincronização VBI para normalizar o limite de frames

Desempenho e contribuições da comunidade

  • Nesta versão, foram mesclados 465 commits, refletindo vários testes da comunidade e pesquisas de hardware
  • Foram incluídos casos de resolução de problemas de longa data envolvendo a série Rogue Squadron, Mario Strikers Charged e Triforce, melhorando significativamente a precisão e o desempenho do Dolphin

1 comentários

 
GN⁺ 2026-03-14
Comentários do Hacker News
  • É impressionante que o Dolphin consiga se conectar online com consoles Wii reais, substituindo os servidores oficiais que foram encerrados há muito tempo
    Fico realmente feliz em saber que existem pessoas com esse nível de dedicação apaixonada

    • Fico imaginando quanta coisa a humanidade poderia realizar se cooperasse assim
      Mas, no curto prazo, esse tipo de avanço tecnológico também pode aprofundar ainda mais a desigualdade
    • Esse tipo de esforço é essencial para a preservação dos jogos
      Se, por causa de bugs no emulador, um jogo não puder ser executado total ou parcialmente, as gerações futuras perdem a chance de vivenciá-lo
      É muito legal ver gente se importando tanto assim
  • O que acho mais interessante é que o desenvolvimento de emuladores frequentemente revela que os jogos originais já tinham comportamentos estranhos, mas intencionais

    • Estou trabalhando com descompilação há quase 2 anos, e é divertido ver tanto as peculiaridades do compilador quanto as limitações de versões antigas do GCC, além do código quase supersticioso escrito pelos programadores da época
      Fiquei surpreso ao descobrir que o GCC de meados dos anos 90 já fazia automaticamente coisas que eu tentei otimizar manualmente no começo dos anos 2000
    • Hoje, graças à comunidade do 9front, descobri que alguns jogos de GB usavam a SRAM do cartucho como se fosse memória de swap
      O emulador não estava salvando a SRAM, o que causava inconsistências nos saves, mas isso foi corrigido rapidamente
      Como o código era um C simples baseado em Plan9, foi fácil corrigir
  • Eu sempre gosto de ler os relatórios de desenvolvimento do Dolphin
    Eles explicam bem os assuntos técnicos de um jeito fácil de entender

    • Eu lia esses relatórios até antes de me tornar programador, e eles me ajudaram muito a aprender a pensar de forma lógica sobre o funcionamento interno dos programas
    • O mais marcante é que eles não explicam só “o que mudou”, mas também “por que foi difícil
  • Sobre os relatórios do Dolphin, um dos autores publicou um texto interessante sobre os problemas da comunidade de emuladores open source
    Rethinking Open Source
    Em resumo, se você lança como open source um projeto cercado de hype antes de formar uma base comunitária e uma identidade bem definidas, podem surgir problemas por causa de usuários com exigências irreais
    Também acontece de outras pessoas pegarem branches inacabadas e distribuírem como se fossem criações próprias
    A equipe do Dolphin vem tocando o projeto com um alto nível de profissionalismo apesar dessas dificuldades

    • Deve ser muito difícil manter a motivação no meio de usuários agressivos ou ingratos
      Isso já seria difícil mesmo sendo remunerado, então imagino que seja ainda pior em um projeto gratuito
    • Antigamente eu precisava usar vários branches incompatíveis; agora fico feliz em ver que o suporte ao Triforce parece ter entrado na branch principal
      Os forks antigos não eram muito completos
  • É legal ver como o autor está sinceramente empolgado com aquilo que escreveu

    • O JMC é realmente incrível
      Quando relatei um bug de netplay do Melee no passado, ele me pareceu alguém profundamente curioso e disposto a investigar tudo a fundo
  • O Dolphin é realmente um exemplo de desenvolvimento inteligente
    Antigamente, meu computador velho precisava usar os 4 núcleos para rodar Metroid Prime, mas alguns anos depois o mesmo jogo usava apenas 25% de um núcleo
    Graças ao JIT e à eficiência da emulação, o desempenho melhorou absurdamente
    Esse tipo de otimização foi uma conquista impressionante

  • Durante a discussão sobre compatibilidade com os arcades Triforce, mencionaram o “suporte a cartões IC”, e disseram que, se isso for implementado, muitas funções poderão ser desbloqueadas
    Parece um cartão de transporte japonês, mas nas placas Triforce ele é usado para armazenar dados de progresso do jogo
    É um recurso interessante que nunca vi em arcades nos EUA

    • Os jogos Triforce suportam dois tipos de cartão: cartão magnético (magcard) e cartão IC
      O magcard é barato, mas menos durável, e pode ser impresso
      O cartão IC é mais espesso e resistente, mas não pode ser impresso
      Fonte com fotos e explicação: Rise of the Triforce
    • Na verdade, isso significa cartão de memória
      Quase todos os jogos Triforce usam cartões para salvar progresso
      Provavelmente você já viu alguma versão de Mario Kart Arcade GP nos EUA
    • Também existe em arcades dos EUA
      É um conceito parecido com os cartões AIME usados em maimai, chunithm, DDR etc.
      Mas, no caso do cartão IC do Triforce, ele não serve só para autenticação, como também para armazenamento de dados
  • Achei interessante o caso em que a instrução de CPU fnmsubs estava implementada incorretamente no JIT, mas funcionava corretamente no interpretador
    Parece uma ótima oportunidade para aplicar differential fuzzing

  • O ponto principal deste texto é que o Dolphin restaurou o suporte aos gabinetes de arcade Triforce
    O Triforce era um hardware desenvolvido em conjunto por Nintendo, Sega e Namco, e o Dolphin havia abandonado o suporte em 2016
    Agora jogos como F-Zero AX e Mario Kart Arcade GP 1·2 voltaram a funcionar
    Mais detalhes: The Return of the Triforce

    • Também houve uma thread relacionada algumas semanas atrás
      Link para a discussão anterior
      O primeiro parágrafo do artigo já tratava disso, então é difícil chamar de “assunto enterrado”
  • Fiquei curioso se eles aceitam doações, mas não encontrei isso no site oficial

    • Na prática, eles não aceitam doações
      Post no fórum relacionado: Dolphin Donations