YNIX / RECOMP
desenvolvimento aberto / PS2 ? PS4 ? Xbox 360 ? Xbox One

Ynix Recomp

Projetos de recompila??o nativa de consoles para Windows e Linux. Acompanhe separadamente infraestrutura, an?lise e execu??o observ?vel de cada jogo.

Build e testes sint?ticos n?o significam que um jogo foi carregado ou executado.
registro p?blico

Atualiza??es e changelog

Filtre por console, tipo ou palavra-chave.

14 registros
Marcos
Xbox 360

Xbox 360: base XEX e inventário validada

19/10/2026 00:48 BRT: projeto C++23/CMake configurado e compilado em Release com MSVC 19.44; CTest XEX sintético 1/1 passou; CLI inspect e inventário SHA-256 foram exercitados.

Bloqueio
A implementação reconhece somente a assinatura XEX2 de quatro bytes. Não há parser estrutural, decoder PowerPC, runtime ou execução de jogo.
Solução
Criada base independente com CLI limitada, teste sintético e inventariador Python somente leitura. Sem chaves, bypass DRM ou alegações de compatibilid...
infraestrutura-inicial Abrir atualização
Marcos
Xbox One

Xbox One: base de inspeção e inventário validada

19/10/2026 00:48 BRT: projeto C++23/CMake configurado e compilado em Release com MSVC 19.44; CTest sintético 1/1 passou; CLI inspect e inventário SHA-256 foram exercitados com arquivo sintético.

Bloqueio
Ainda não há parser específico de módulos Xbox One, loader, resolução de imports/serviços ou execução de jogo. Um prefixo MZ/PE não comprova formato n...
Solução
Criada base independente com inspeção limitada de assinatura, teste sintético e ferramenta Python de inventário somente leitura. Pesquisa documentada...
infraestrutura-inicial Abrir atualização
Marcos
PlayStation 2

Filas RPC guest do SIFCMD ativas; chamada CDVD agora exposta

O replay recompilado inicializa as duas filas RPC reais do FILEIO e identifica a primeira chamada CDVD de devctl.

Bloqueio
O scheduler aceitava apenas uma thread fixa, bloqueando a segunda fila. Depois disso, a thread seguinte parava em IOMAN devctl para cdrom0: comando 0x...
Solução
O provider SetRpcQueue valida a thread guest corrente e encadeia filas na estrutura SIFCMD guest em 0x00103800. O probe confirmou os servidores SID 0x...
boot nativo Abrir atualização
Marcos
PlayStation 2

Toy Story 3: execução nativa alcança syscall customizada 131

O Ynix registrou o handler SetSyscall observado no ELF do Toy Story 3 e avançou até o syscall 131. O novo bloqueio já está delimitado no handler COP0 do jogo.

Bloqueio
O runtime parava no serviço 116 SetSyscall e não tinha estado para o syscall customizado 131. A captura PCSX2 disponível só cobria o BIOS, sem Cause/E...
Solução
Implementado registro validado do handler SetSyscall por contexto guest, sem retorno de sucesso inventado. Build e replay chegaram a 161.720 instruçõe...
META 019 Abrir atualização
Marcos
PlayStation 2

Primeiras transferências GIF do MOVIE.ELF

O replay alcançou a inicialização gráfica de MOVIE.ELF: o guest iniciou DMA D2 para o GIF e o runtime processou tags com registros GS. A próxima fronteira estática é 0x0012E868.

Bloqueio
O runner não tinha cobertura estática para a nova cadeia de MOVIE e o despacho recursivo das continuações causava stack overflow. A primeira escrita C...
Solução
O harness agora executa continuidades por um loop externo, sem recursão entre módulos. Com o perfil DMAC/GIF opt-in e explicitamente diagnóstico, proc...
META 019 — boot do jogo 007 Abrir atualização
Marcos
PlayStation 2

META 019: primeiro dispatch estatico de MOVIE.ELF

A leitura do MOVIE.ELF agora chega ao objeto recompilado e executa varias continuacoes nativas; o limite atual e 0x00104CD4.

Bloqueio
O runner compacto completava a leitura do arquivo, mas parava em 0x00104008 porque nao despachava a entrada do modulo MOVIE para codigo host recompila...
Solução
Conectei o objeto estatico parcial de MOVIE.ELF ao runner e passei a compilar e despachar apenas os pontos de continuacao observados, mantendo o estad...
META 019 Abrir atualização
Marcos
PlayStation 2

EE passa do BOOTEND pelo callback recompilado do EESYNC

Recompilei e executei a entrada e o callback BIOS do EESYNC. O callback guest escreveu SMFLAG=0x40000, e a EE saiu do polling BOOTEND para iniciar o proximo ciclo de RPC.

Bloqueio
O runner nao percorria o callback postboot de LOADCORE/EESYNC e tratava o RPC assíncrono como se fosse o bloqueio da EE. Depois de BOOTEND, o jogo sol...
Solução
Adicionei o modulo EESYNC recompilado, capturei o registro guest em AddRebootNotifyHandler e executei o callback recompilado pelo runtime IOP. O readb...
META 019 Abrir atualização
Marcos
PlayStation 2

CDVDMAN conclui inicialização guest e responde ao primeiro RPC

A inicialização guest do CDVDMAN concluiu e o RPC 0x80000592 respondeu após a execução de _start e o suporte ao S-command 03:00.

Bloqueio
O runner carregava o CDVDMAN sem executar seu entry _start. Depois, sceCdInit ainda falhava ao enviar o S-command 03:00, pois o perfil de CDVD não ofe...
Solução
Recompilei e executei o _start do CDVDMAN, que cria o semáforo e os event flags do módulo. O perfil CDVD agora retorna 03 06 02 00 para o S-command 03...
META 019 Abrir atualização
Marcos
PlayStation 2

Reset da BIOS: replay nativo até TLBP

O replay nativo do reset EE avançou até TLBP: 29 instruções concluídas, sem fault, PC final 0xBFC00874.

Bloqueio
O fluxo parava no primeiro SYNC.P, e o backend ainda não representava as gravações COP0 da TLB nem o probe observado no BIOS.
Solução
Adicionei lowering nativo limitado às instruções e ao PC confirmados na ROM, ABI v11 para os cinco campos COP0 de TLB e aceitação restrita da escrita...
META 019 Abrir atualização
Marcos
PlayStation 2

Reset EE da BIOS: primeira sequência contínua executada nativamente

Ynix agora recompila e executa em código nativo as primeiras 11 instruções contínuas do reset EE da BIOS SCPH-39001, passando por SYNC.P e pelas gravações de Config, Status, Count e Compare.

Bloqueio
O perfil estrito do compilador esparso desabilitava SYNC.P. O reset EE parava em 0xBFC0080C, antes de aplicar o estado COP0 usado pelo BIOS.
Solução
Adicionei o opt-in --bios-ee-reset-profile, aceito somente para as 11 palavras e PCs exatos conferidos na ROM local. O harness x64 executou o trecho a...
META 019 Abrir atualização
Marcos
PlayStation 2

Reset EE recompila e preserva escritas COP0 observadas

O caminho nativo da BIOS agora reconhece as escritas COP0 observadas de Config, Status, Count e Compare; o harness recompilado confirmou Config 0x00073003 após leitura de volta.

Bloqueio
A análise do reset EE parava no MTC0 Config em 0xBFC00808 e não preservava o estado escrito pelo código da BIOS.
Solução
Implementei encodings COP0 estreitos no decoder, no YNIR de referência e no lowering LLVM. O ABI nativo v10 nomeia os slots de estado usados sem mover...
META 019 Abrir atualização
Marcos
PlayStation 2

Reset da BIOS identifica a rota EE do boot

A análise do reset vector da BIOS agora distingue a rota EE pelo PRid R5900 0x2E20, e o Ynix compila a instrução MFC0 PRid para código nativo x64.

Bloqueio
Sem a leitura correta de COP0 PRid, o analisador não explicava por que a BIOS escolhe a rotina EE em 0xBFC00800 em vez da rota alternativa em 0xBFC020...
Solução
Implementei a instrução MFC0 PRid de forma restrita no decoder, no YNIR de referência e no backend LLVM. A palavra observada no reset vector foi recom...
META 019 Abrir atualização