Compatibilidade e limitações

As correções que o núcleo aplica sozinho por jogo, as notas de compatibilidade do projeto, como avaliar um jogo no seu aparelho e o que ainda limita o Xendroid+.

Build 63Vale para a build 63 e para o main atual, que tem os mesmos ajustes e dados.

Revisada com o código de 06/10/2026 (bd1d2a8d) Editar esta página

O código mudou depois da revisão

Arquivos do app citados nesta página mudaram depois da última revisão: emulator-core/src/main/cpp/xenia/src/xenia/game_quirks.cc. Confira na versão que você usa; a página pode estar desatualizada nesses pontos.

O Xendroid+ não tem uma lista pública de compatibilidade. O que roda e como roda depende do jogo, do aparelho, do driver da GPU e da versão do app. Esta página reúne o que o projeto documenta.

Correções automáticas por jogo #

O núcleo traz 80 ajustes para 11 jogos (game_quirks.cc). Eles entram quando o título inicia, com a prioridade de um ajuste do próprio jogo: acima da config global e abaixo do arquivo config/<TITLE ID>.config.toml. Você não precisa configurar nada, e um valor posto por você no arquivo do jogo vence a correção. O log do emulador registra cada uma como Game quirk for <TITLE ID>: <cvar>.

Title IDJogoAjustesCvars
544307D5Ninja Gaiden II1inline_gprlr_saverest_parts
4D5307D1Project Gotham Racing 31spirv_multiply_zero_test_on_bits
494707D4Test Drive Unlimited2vulkan_in_pass_resolve, network_enabled
49470804Test Drive Unlimited 22vulkan_in_pass_resolve, network_enabled
4E4D083ADark Souls1spirv_multiply_zero_test_on_bits
45410961Need for Speed Most Wanted (2012)8spirv_multiply_zero_test_on_bits, memexport_enable, readback_resolve, vulkan_depth_4x_as_1x e mais 4
4D5309C9Forza Horizon22spirv_texture_sign_branch, spirv_fast_precision_rounding, vulkan_texture_load_to_image, vulkan_direct_host_resolve_to_texture e mais 18
4D530AA4Forza Horizon 219spirv_texture_sign_specialization, spirv_texture_sign_branch, spirv_fast_precision_rounding, skip_overwritten_transfers e mais 15
4D5308ABGears of War 32vulkan_depth_4x_as_1x, vulkan_samples_as_pixels_simple_ps
4541098ECrysis 316vulkan_depth_4x_as_1x, vulkan_samples_as_pixels_simple_ps, accurate_resolve_number_formats, resolve_copy_dest_number_packing e mais 12
53510823Rise of the Tomb Raider6accurate_resolve_number_formats, resolve_copy_dest_number_packing, texture_integer_num_format, vulkan_depth_clamp_without_depth e mais 2

A maioria corrige travamentos e falhas de desenho no driver Turnip ou economiza tempo de GPU ou de CPU; os comentários de cada entrada, em game_quirks.cc, trazem o motivo e a medida feita pelo autor. Os nomes dos jogos vêm dos arquivos de patch do repositório ou, quando não há patch, da base de títulos do Xenia que acompanha o núcleo, usada aqui só para o nome.

Notas do projeto por jogo #

O GAME_COMPAT.md documenta dois jogos com mais detalhe:

  • Ninja Gaiden II (544307D5): jogável com dois ajustes no arquivo do jogo, clear_memory_page_state = true (traz de volta os modelos dos personagens) e depth_float24_convert_in_pixel_shader = true (evita travamentos da GPU no Adreno), ambos na seção [GPU].
  • Fable II (4D5307F1): roda sem ajuste especial desde junho de 2026, com problemas conhecidos (chão transparente em alguns lugares, falhas ocasionais no carregamento e cortes de áudio).

O mesmo documento traz notas para drivers e aparelhos: vulkan_mid_frame_submission_draws em alguns Adreno 830, depth_float24_convert_in_pixel_shader global em drivers que falham no caminho float32 e vulkan_dynamic_constant_buffers desligado nos drivers da Qualcomm.

Partes desatualizadas do GAME_COMPAT.md

  • O caminho certo do arquivo de cada jogo é Android/data/xendroid.compose.fork/files/compose/config/<TITLE ID>.config.toml; o documento cita outro pacote e outra pasta.
  • O patch do Fable II que o documento diz estar no repositório (patches/4D5307F1.patch.toml) não existe; o catálogo tem outros patches para esse jogo.
  • O padrão de vulkan_mid_frame_submission_draws hoje é 1300, não 0.

Avaliar um jogo no seu aparelho #

Na ficha → menu ⋮ → Avaliar compatibilidade, escolha como o jogo rodou: não abre, abre sem imagem, só abertura ou menus, no jogo com problemas ou jogável. A avaliação fica só no seu aparelho, com a versão do app, a GPU, o driver e a data, sem rede. Ela entra no backup dos ajustes.

Limitações conhecidas #

  • Experimental. Alguns jogos rodam bem, outros ainda têm falhas ou não iniciam.
  • Drivers personalizados só em Adreno com KGSL. Nas outras GPUs, só o driver do sistema.
  • Geração de quadros é experimental, começa desligada a cada abertura e o LSFG precisa do seu Lossless.dll. Cadência e latência no aparelho ainda não foram validadas.
  • Celular como controle é experimental e só funciona na rede local.
  • Android 10 só abre jogos vindos de um frontend.
  • Ajustes da comunidade e o catálogo de compatibilidade existem no código, mas ficam desligados nas versões publicadas: nenhuma tem servidor configurado.
  • Perfis recomendados por jogo: a lista que vem no app está vazia.
  • Interface nova (biblioteca, ficha, menu em jogo e as demais telas): o documento do redesenho mantém uma lista de itens ainda por conferir num aparelho, por lote. Veja docs/ui-redesign/app.md.

Propostas fora do app #

Do protótipo da interface, três propostas ficaram de fora, sem data prevista:

  • um mapa de teclas para cada controle;
  • achar o jogo na rede e ler um QR code no celular como controle;
  • procurar o arquivo do disco quando a troca de disco não acha nenhum (hoje, Cancelar é a saída, e o disco aparece depois de colocado numa pasta de jogos).

Ajudar com relatos #

O repositório tem um modelo de issue para relatos de desempenho, que pede CPU, GPU, fabricante, versão do Android, jogo e notas. Inclua também a versão do app (em Sobre), o driver e o Title ID, e anexe o diagnóstico da sessão. A conversa da comunidade fica no Discord.

Digite para buscar em todas as páginas da documentação, nos ajustes do app e nas chaves do TOML.

↑ ↓ escolherEnter abrirEsc fechar