O Ynix PS2 Recomp recompila executaveis MIPS de PlayStation 2 para codigo nativo. O estado publico atual alcanca a preparacao da transferencia CDVD por DMA3 em Toy Story 3; ainda nao ha setor de ISO lido, ELF principal carregado, frame ou gameplay comprovados.
Alvo: WindowsAlvo: Linux
execu??o de jogoAinda n?o executa jogo
Este estado s? muda para ?Executando jogo? quando houver evid?ncia observ?vel de um t?tulo em execu??o.
Compila??o, ferramentas e testes sint?ticos medem a infraestrutura; execu??o de jogo exige evid?ncia pr?pria.
infraestrutura
Em desenvolvimento
253 registros p?blicos vinculados a este console.
Arquitetura
Emotion Engine (R5900), IOP, DMA/CDVD e Graphics Synthesizer (GS).
Componentes implementados
Probe de inicializa??o do guest e investiga??o de syscalls.
Mem?ria EE, temporiza??o virtual e chamadas de espera observadas no probe.
Teste sint?tico isolado para limites do canal DMA3.
execu??o do jogo
Ainda n?o executa jogo
O avan?o em infraestrutura n?o ? contado como carregamento, frame ou jogabilidade.
Limita??es conhecidas
O probe ainda para antes da c?pia de setores CDVD e da conclus?o/IRQ do DMA3.
O conjunto amplo guest_memory_tests ainda falha em uma expectativa anterior de EE MMIO.
N?o h? SYSTEM.CNF carregado, ELF do jogo iniciado, primeiro frame ou jogabilidade demonstrados.
marcos observ?veis
Caminho at? a jogabilidade
Cada etapa avan?a somente com evid?ncia correspondente ao pr?prio est?gio.
1
An?lise do execut?vel
Probes e registros delimitam o caminho de inicializa??o do t?tulo.
Em andamento
2
Carregamento
A transfer?ncia de setores e a conclus?o do DMA3 ainda precisam ser implementadas.
Bloqueado
3
Inicializa??o do sistema
A inicializa??o completa de CDVD/IOP ainda n?o foi atravessada.
Aguardando
4
Primeiro frame
Ainda sem evid?ncia de imagem renderizada pelo jogo.
Aguardando
5
Jogabilidade
Ainda sem sess?o jog?vel demonstrada.
Aguardando
pr?ximo objetivo verific?vel
Implementar a transfer?ncia real de setores CDVD, concluir DMA3 e validar a inicializa??o de IOP at? o carregamento do ELF.
?ltimo avan?o concreto
META 019: limite DMA3 protegido por teste isolado
19/10/2026 00:55 BRT: o novo alvo sintético goal019_dma3_boundary_tests compilou e passou 1/1; valida MADR/BCR, CHCR sem início, rejeição do CHCR de transferência e preservação do estado anterior.
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...
Identificadores e fontes de fixtures foram alinhados por comportamento, e a documentação agora explica a separação entre compilador/runtime, perfis de compatibilidade e a futura GUI.
Bloqueio
Nomes de metas, fases e jogos estavam vazando para IDs de fixtures, nomes de arquivos de teste, símbolos internos e parte da documentação. Isso dificu...
Solução
Os IDs gerais agora usam nomes como finite_loop, branch_taken e boot_trace; as funções SIF0 não carregam o nome de um jogo; arquivos de exemplos usam...
A CLI foi reorganizada em serviços, modelos e interoperabilidade com o núcleo nativo; o artefato agora se chama Ynix.PS2.Recomp.dll. Um painel estático com gráfico, barra por marcos e atualizações automáticas foi preparado.
Bloqueio
A CLI concentrava responsabilidades e usava nomes de saída antigos, enquanto a página de progresso ainda não tinha uma visualização consolidada. O cód...
Solução
Separação inicial em Application, Commands, Build, Execution, Interop e Models, centralização dos identificadores de fixtures com nomes semânticos no...
A CLI foi reorganizada em módulos por comando, execução e build. O manifesto e a política de fixtures ELF também foram isolados.
Bloqueio
Program.cs concentrava despacho, interop nativa, validação ELF, compilação e manifesto em um arquivo extenso; regras de fixture e metadados estavam mi...
Solução
Separados os comandos em arquivos próprios, extraída a política explícita de autorização das fixtures e movida a montagem da proveniência do manifesto...
A pasta build caiu de aproximadamente 12,57 GiB para 3,04 GiB após a limpeza, uma redução observada de cerca de 9,53 GiB. A nota anterior usou a soma lógica das saídas selecionadas e superestimou o espaço recuperado.
Bloqueio
A atualização #168 informou 9,66 GB com base na soma dos tamanhos dos artefatos selecionados antes da exclusão. Essa soma não correspondeu à variação...
Solução
A medição consolidada após remover as saídas antigas mostra 3.264.541.225 bytes (3,04 GiB) restantes em build/, contra aproximadamente 12,57 GiB antes...
Removemos 9,66 GB de saídas antigas do alvo 007, mantivemos o toolchain e os artefatos ativos do Toy Story 3, e organizamos a documentação e os módulos CMake.
Bloqueio
Builds e replays históricos ocupavam mais de 12 GB em build/, com centenas de diretórios de artefatos temporários. A documentação tinha um diário ativ...
Solução
Criamos scripts/clean-generated.ps1 com modo de prévia e preservação explícita do LLVM instalado e do build parcial atual do Toy Story. Foram removido...
A compilação parcial do SLUS_219.31 passou pelo loop inicial e pelas criações de semáforo, chegando ao syscall SetSyscall do PS2.
Bloqueio
O loader rejeitava segmentos PT_LOAD vazios válidos. Após essa correção, o runtime parou em CreateSema e, depois de modelar o contrato observado, avan...
Solução
O compilador ignora apenas PT_LOAD com filesz e memsz iguais a zero. O perfil Toy Story 3 compila 256 blocos nativos e trata CreateSema somente no PC...
A nova captura do PCSX2 confirma a sequência do segundo reboot do IOP até o carregamento do front-end main_menu. O Ynix avançou a execução estática de MOVIE até a próxima fronteira observada, sem alcançar ainda o reset do IOP.
Bloqueio
O log avançado contém 2.134 leituras CDVD e os marcos de ACTION.ELF e main_menu, mas não registra eventos de EE Syscalls, SIF/RPC ou espera de threads...
Solução
Documentei os marcos PCSX2 com horários e acrescentei ao pipeline as continuações guest observadas 0x0010EE14, 0x0010EE70 e 0x0010EE90. O replay integ...
O log do PCSX2 fornecido confirma a sequência do 007 até a carga de ACTION.ELF e do BSP main_menu. A execução isolada atual do entry ACTION no Ynix ainda para antes de apresentar um frame.
Bloqueio
Faltava um marco comportamental confirmado para a transição após MOVIE. O log PCSX2 não contém registros completos de syscalls, registradores ou threa...
Solução
Documentei a ordem observada: fim do filme, reboot IOP via IOPRP214.IMG, carga de módulos, entrada ACTION.ELF 0x00120008 e BSP main_menu. Correlacione...
Corrigimos a preservacao do servidor RPC e implementamos ReferThreadStatus conforme o estado modelado do scheduler. O replay agora conclui sceCdInit, le MOVIE.ELF pela cadeia guest e avanca por continuacoes estaticas ate 0x00114E14.
Bloqueio
O fechamento de RPC_CALL sobrescrevia server/buf/cbuf do cliente com campos vazios da resposta, e o ordinal 22 de thbase (ReferThreadStatus) nao estav...
Solução
A conclusao de RPC_CALL preserva os dados de bind do cliente, e ReferThreadStatus agora fornece a estrutura documentada para threads conhecidas, resol...