YNIX / RECOMP
Ynix Recomp / PlayStation 2
Em andamento

Ynix PS2 Recomp

Projeto experimental de engenharia reversa e recompilação estática. O objetivo é traduzir o executável original para código nativo em Windows e Linux, sem substituir o console por um emulador.

Alvo: WindowsAlvo: Linux
Ver diário e changelog
objetivo

Recompilação nativa

Pesquisar o caminho técnico para traduzir o software do console para uma execução nativa em Windows e Linux. O progresso será registrado com evidências, limites e bloqueios reais.

estado

Desenvolvimento ativo

229 atualizações públicas vinculadas a esta área.

histórico do console

Atualizações e changelog

229 registros
Avanços

META 019: PORT_OPEN concluído e nova barreira em SIF DMA

O Ynix concluiu a chamada guest PORT_OPEN depois de corrigirmos a máscara de ClearEventFlag e o ciclo do bit start do SIO2. O worker guest sinalizou o evento esperado e o RPC retornou status 0, sem evento injetado pelo harness. Também ampliamos a recompilação nativa para a instrução R5900 MULT1, preservando HI1/LO1 en...

META 019 Abrir atualização
Avanços

Replay confirma IRQ e leitura SIO2; evento MTAP segue pendente

O replay nativo observou a transferência SIO2 de seis bytes do comando 0x21, a IRQ 17 tratada pelo ISR recompilado da ISO e a leitura guest de RECV1/2/3 e dos seis bytes de FIFOOUT. No perfil restrito de porta desconectada, RECV1 foi 0x1D100 e FIFOOUT retornou seis bytes 0xFF. Após a conclusão, o worker sinalizou 0x800...

META 019 Abrir atualização
Avanços

MTAPMAN registra cinco RPCs; PADMAN passa por SRAV

O entry guest real do MTAPMAN, carregado da ISO, agora completa e registra cinco servidores RPC. A chamada PORT_OPEN observada foi agendada na thread guest da fila registrada, sem criar servidor ou resposta sintética. Implementei SRAV no YNIR/backend R3000, e o worker PADMAN passou do ponto 0x00180964. O handler ainda...

META 019 Abrir atualização
Avanços

RPC do MTAPMAN avança até a próxima espera SIO2

O compilador IOP agora aceita roots guest observados adicionais; a execução recompilada inclui o bloco 0x00150040 selecionado pela jump table real do MTAPMAN. No replay, a RPC guest passou por sio2man#48, #51 e #52; a transferência observada iniciou e a IRQ SIO2 17 foi entregue ao handler recompilado da ISO. A RPC entã...

META 019 Abrir atualização
Avanços

SIO2MAN processa IRQ SIO2 e conclui ordinal 51

No replay combinado da ISO 007, o worker SIO2MAN enviou a sondagem guest de multitap sem dispositivo conectado. A IRQ 17 foi entregue ao handler recompilado da própria SIO2MAN, que limpou o estado e sinalizou o evento guest 0x2000; a thread concluiu a export sio2man#51 e o MOVIE.ELF avançou. A execução ainda para em um...

META 019 Abrir atualização
Avanços

SIO2MAN conclui primeiro handshake guest

A chamada SIO2MAN do ordinal 48 agora retorna após o worker guest limpar o evento 0x10 e sinalizar 0x20. O ordinal 51 inicia a próxima fase e aguarda 0x800; o worker então para em acesso de memória não mapeada no PC 0x00160060, sem DMA/IRQ SIO2 concluído. Ainda não houve abertura do ELF principal, frame ou gameplay. ME...

META 019 Abrir atualização
Avanços

PADMAN e MTAPMAN avançam até espera real do SIO2MAN

O PADMAN registrou dois callbacks guest de VBlank, que agora ficam armazenados no contexto IOP sem execução artificial. A chamada guest do PAD entrou no servidor MTAPMAN recompilado e alcançou o SIO2MAN da ISO. Após SetEventFlag do PS2SDK, a rotina do SIO2MAN bloqueou em WaitEventFlag aguardando o bit 0x10. O próximo p...

META 019 Abrir atualização
Avanços

PADMAN registra os serviços PAD e executa a primeira chamada

O Ynix carregou o PADMAN.IRX da ISO e executou rotinas recompiladas que registraram os servidores guest 0x80000100 e 0x80000101. A primeira chamada executou o handler recompilado e o harness entregou o buffer retornado pelo guest. Corrigi uma segunda resposta vazia que apagava o servidor no cliente EE. A chamada seguin...

META 019 Abrir atualização
Bloqueios

Bind pendente do PADMAN identificado no replay

Corrigimos a hipotese de que o guest estivesse apenas preso esperando outra thread. O fluxo em MOVIE repete o bind RPC para o SID 0x80000100 e volta a tentar quando o campo server segue zero. O PS2SDK identifica 0x80000100/0x80000101 como os RPCs novos do PADMAN. A ISO contem MODULES/PADMAN.IRX; extraimos e analisamos...

META 019 - NOT_READY Abrir atualização