Xendroid+
Emulação de Xbox 360 no Android, ajustada para Snapdragon e GPUs Adreno. Continua o XenDroid sobre o núcleo do Xenia, com uma interface para toque e controle, ajustes por jogo aplicados na abertura e o diagnóstico de cada sessão no próprio aparelho.
Experimental. Como cada jogo roda depende do jogo, do aparelho e do driver da GPU: alguns títulos rodam bem, outros ainda têm falhas ou não iniciam.

As telas do Xendroid+
Imagens geradas a partir do código da interface pelos testes de tela do projeto. Os jogos, capas e números nelas são dados de exemplo.

Os seus jogos numa biblioteca que entende o Xbox 360
- Encontra ISO, ZAR, GOD, pastas com default.xex e pacotes XBLA nas suas pastas, com busca por nome ou Title ID, favoritos, coleções e filtro por formato.
- A ficha de cada jogo junta Jogar, Iniciar com… (perfil, driver, executável, sem patches ou sem os ajustes do jogo, só nesta abertura), as sessões, os patches e os saves.
- Com um controle conectado, a interface troca sozinha para o modo controle: carrossel de capas, abas por LB e RB e dicas de botão sempre à vista.

173 ajustes, cada um dizendo quando vale
- Três níveis de detalhe: Essencial (24), Avançado (62) e Tudo (173). Cada linha diz se o valor é o padrão, se mudou e se vale na hora ou na próxima abertura.
- Os mesmos ajustes valem para todos os jogos em Configurações ou só para um jogo na ficha, gravados em config/<Title ID>.config.toml, o arquivo que o núcleo lê.
- Predefinições Desempenho, Equilíbrio e Qualidade aplicam vários ajustes de uma vez, com Desfazer.

Drivers Turnip por jogo, conferidos antes de instalar
- Baixe pacotes de fontes no GitHub (a padrão é K11MCH1/AdrenoToolsDrivers) ou importe um ZIP; o app confere a biblioteca Vulkan arm64 e o SHA-256 quando a release publica um.
- Escolha um driver para todos os jogos, um por jogo ou um só para a próxima abertura; o driver do sistema fica sempre a um toque.
- As 11 flags do Turnip (TU_DEBUG) aparecem uma a uma, com sysmem como padrão. Drivers personalizados só carregam em GPUs Adreno.

Toque, controle físico e até outro celular
- Controles de toque no visual Moderno ou Clássico, com editor de layout, layouts salvos por jogo e por orientação, câmera por toque e giroscópio.
- Controles físicos jogam como P1 a P4, com mapeamento dos 16 botões, vibração por controle e uma tela para testar cada botão.
- Celular como controle (experimental): outro telefone na mesma rede local entra como P2 a P4 com um código de 6 dígitos.

Cada sessão deixa um rastro que dá para compartilhar
- O app guarda as últimas sessões (4 por padrão), com o log do emulador, o logcat do app e como cada uma terminou.
- Compartilhar gera uma cópia limpa: caminhos, gamertags, XUIDs, endereços IP, e-mails, senhas e tokens saem antes.
- No fim de uma sessão com problema, o app sugere até três mudanças com o motivo em números, e Comparar execuções mede uma mudança por vez (A B B A).
Feito para o aparelho, conferido no código
Cada número abaixo é contado n código da build 63 quando este site é gerado.
-
11jogos com correções
Ver a lista
Correções por jogo aplicadas na abertura
O núcleo traz 80 ajustes para 11 jogos específicos, como Forza Horizon, Gears of War 3 e Ninja Gaiden II. Eles entram quando o título inicia, com a prioridade de um ajuste do próprio jogo, sem você configurar nada.
-
173ajustes
Referência completa
Cada ajuste vem do esquema do app
Imagem, desempenho, áudio, controles, compatibilidade, driver, sistema e depuração, globais ou por jogo. O arquivo por jogo é gravado no formato que o núcleo lê, e o simulador deste site gera o mesmo arquivo.
-
305jogos com patches
Como funcionam
Patches de jogos dentro do APK
Os 479 arquivos de patch do Xenia Canary vão no app. A ficha separa os patches feitos para a sua versão do jogo dos que valem para outras versões.
-
11flags do Turnip
Drivers da GPU
Gerenciador de drivers Adreno
Pacotes Turnip baixados do GitHub ou importados, conferidos antes de instalar, escolhidos para todos os jogos, por jogo ou só numa abertura.
-
A/Bcomparar execuções
Desempenho
Medir antes de mudar
Cada sessão grava FPS por segundo, tempo de quadro, pipelines criados, falhas de áudio e temperatura. Comparar execuções só dá um veredito quando as execuções seguem a ordem A B B A e diferem em uma coisa só.
Medições publicadas pelo projeto
Medido num POCO F7 (Snapdragon 8s Gen 4, Adreno 825) com Turnip, em builds de desenvolvimento (outubro de 2026). Seu aparelho, driver e versão do jogo vão mudar estes números.
| Jogo | Testado em | Taxa de quadros | Observações |
|---|---|---|---|
| Forza Horizon | Corrida | 30 fps (limite do jogo) | ~18 ms de GPU por quadro |
| Forza Horizon 2 | Corrida | 27–30 fps | Com os ajustes do Forza Horizon |
| Gears of War 3 | Campanha, Versus | 30 fps (limite do jogo) | GPU de 40 → 28 ms por quadro na cena mais pesada |
| Halo 4 | Campanha | ~26–30 fps | Cutscenes em vídeo corrigidas; resta um leve tremor de sombra |
| Need for Speed: Most Wanted | Corrida | ~19 fps | Travamentos na abertura e na gameplay corrigidos |
| Sonic Unleashed | Gameplay | 50–52 fps | — |
| Halo: Reach | Menus, abertura | 30 fps | Cai a 19 fps |
| Crysis 3 | Menus, abertura | 32–46 fps | Travamento do JIT corrigido |
| Grand Theft Auto IV | Menus, abertura | ~22 fps | Limitado pela thread de comandos da GPU |
| Red Dead Redemption | Menus, abertura | ~25 fps | Limitado pela thread de comandos da GPU |
Fonte: README.pt-BR.md e performance-tests/. Não são garantia: o seu aparelho, o driver e a versão do jogo mudam estes números.
Requisitos e limitações
O que o aparelho precisa
- Android
- 10 ou mais novo. Escolher a pasta de jogos exige Android 11.
- Processador
- ARM de 64 bits (arm64-v8a). O APK não instala em outras arquiteturas.
- GPU
- Vulkan, obrigatório. O foco são Adreno 7xx e 8xx com o driver Turnip; recomenda-se um Snapdragon 8 Gen 2 ou mais novo.
- Jogos
- Os seus, extraídos de discos ou consoles seus: ISO, ZAR, GOD, pastas com default.xex e pacotes XBLA.
- Arquivos
- Acesso a todos os arquivos, para a biblioteca ler as pastas de jogos.
O que ainda limita
- Compatibilidade varia. Não há lista pública de compatibilidade do Xendroid+: a avaliação de cada jogo fica no seu aparelho.
- Drivers personalizados só em Adreno. Em outras GPUs os jogos rodam no driver Vulkan do sistema.
- Geração de quadros é experimental. Win-FG 2× e LSFG começam desligados a cada abertura; o LSFG precisa do seu próprio Lossless.dll.
- No Android 10 o app instala, mas só abre jogos vindos de um frontend: escolher pastas exige Android 11.
- Ajustes da comunidade e catálogo de compatibilidade existem no código, mas ficam desligados nas versões publicadas: não há servidor.
Fora do appPropostas registradas, ainda não implementadas
- Um mapa de teclas para cada controle (hoje um mapa vale para todos).
- 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.
Registradas em docs/ui-redesign/app.md, sem data prevista.
Documentação e simulador
Documentação
Da instalação à coleta de logs, escrita a partir d código da build 63, com busca e links para cada seção.
Simulador da interface
Navegue pelas telas do app no navegador, no modo toque ou no modo controle, com teclado ou um controle de verdade. Os ajustes são os 173 da build 63, e o arquivo de configuração de um jogo sai no formato que o núcleo lê.
Jogos, capas, perfis e sessões do simulador são exemplos; nada roda um jogo.
Código aberto, feito no aparelho
O Xendroid+ é criado e mantido por phforner0. Dá continuidade ao XenDroid, o port original para Android de rfandango, e usa o núcleo do Xenia e do Xenia Canary.
O trabalho de desempenho é medido quadro a quadro em aparelhos reais, com métodos e resultados em performance-tests/, e cada versão publicada traz as notas do que mudou. Componentes de terceiros mantêm as próprias licenças, listadas no THIRD-PARTY-NOTICES.md.
