A auditoria do objeto guest 0x009BDA40 capturou stores SQ e uma store de 8 bytes sobre o campo +0x24; todas mantiveram o valor em zero.
Bloqueio
O campo 0x009BDA64 fornece destino zero à rotina de limpeza do MOVIE. Ela apaga o descritor low-RAM e o setup de mpegbuff volta ao loop em 0x0010FA9C...
Solução
Ampliei o watch de escrita para cobrir stores de 128 bits e monitorei o campo antes do replay guest. As três escritas observadas mantiveram zero; nenh...
A pilha localizou no objeto 0x009BDA40 o campo que fornece o destino zero da limpeza que apaga o descritor do MOVIE.
Bloqueio
O campo objeto+0x24, no endereço 0x009BDA64, contém zero. O guest usa esse destino para limpar 0x10C bytes em RAM baixa; isso apaga a lista selecionad...
Solução
Ampliei a auditoria do SQ para capturar a pilha e o conteúdo do objeto no ponto da escrita. Registrei seu layout parcial e a cadeia RA=0x001152DC -> c...
Correção editorial da atualização #94: o descritor do MOVIE é criado e depois apagado por um helper guest chamado com destino zero.
Bloqueio
O helper limpa a faixa 0x00..0x10B, removendo o descritor low-RAM que a tabela[0] aponta em 0x10. Depois, mpegbuff encontra o link nulo e consome o li...
Solução
Auditei stores guest de 32 e 128 bits, correlacionei o SQ em 0x00110840 ao RA=0x001152DC e rastreei a chamada de 0x00113E74 para 0x001152A8. O campo +...
O MOVIE constrói corretamente o descritor de lista em RAM baixa, mas uma chamada guest posterior o apaga antes do setup de mpegbuff.
Bloqueio
No replay, o campo de destino usado por uma rotina de limpeza chega como zero. O helper limpa 0x00..0x10B, removendo o descritor apontado pela tabela[...
Solução
Ativei auditoria de stores guest de 32 e 128 bits, capturei os valores anterior/posterior e associei o SQ em 0x00110840 ao retorno RA=0x001152DC. O ca...
A análise estática encontrou código do MOVIE que registra um descritor na tabela de listas. O replay, porém, termina com a entrada selecionada e a RAM baixa ainda zeradas; falta provar que esse caminho inicializa o buffer mpegbuff.
Bloqueio
Na primeira chamada do setup de vídeo, o MOVIE seleciona a entrada 0 da tabela 0x001448F0, que aponta para 0x10. O descritor em 0x10..0x4C está zerado...
Solução
Localizei no ELF o caminho em 0x001101A4..0x001101C4 que calcula um slot da tabela e grava nele o endereço de um nó, além de montar campos com assinat...
A pilha guest confirmou que o loop ocorre na primeira chamada do setup de vídeo do MOVIE, ao registrar o buffer mpegbuff em 0x0017C300.
Bloqueio
A chamada da rotina em 0x0010F8D8 tenta percorrer a lista selecionada pela tabela do ELF em 0x001448F0. No estado observado, ela aponta para 0x10, o l...
Solução
Ampliei a captura diagnóstica da pilha guest e reproduzi o replay nativo. Os retornos salvos apontam para 0x00104888 e para o chamador 0x00104880, que...
A auditoria de escrita da EE não encontrou nenhuma gravação em 0x00–0x4F antes do loop de MOVIE, confirmando que o descritor começa e permanece zerado.
Bloqueio
O caminho seleciona a referência 0x10 e percorre campos do descritor que continuam zerados; sem inicialização, o loop repete a leitura nula até esgota...
Solução
Ativei auditoria opt-in das escritas guest nos primeiros 0x50 bytes e repeti o replay completo. O resultado elimina uma escrita anterior omitida como...
A parada por fuel agora tem causa imediata reproduzida: o MOVIE percorre uma lista cujo descritor está zerado.
Bloqueio
A tabela selecionava a referência guest 0x10, mas os campos do descritor lidos pelo loop estavam vazios. A rotina repetia a comparação e consumia o li...
Solução
Adicionei captura diagnóstica restrita no stop por fuel e correlacionei os registradores, a tabela do ELF e as palavras guest. O diagnóstico confirma...
A análise das instruções no PC final localizou o fuel stop dentro de um loop guest em 0x0010FA90–0x0010FA9C: o código percorre registros por ponteiros, compara um campo com t0 e repete via branch-likely. Os valores de t0/t1 e a estrutura guest no stop ainda não foram capturados, então a causa exata permanece em investi...
A continuação recompilada em 0x00104870 entrou em uma execução longa. O replay combinado consumiu o limite de 400.010.000 instruções guest e parou em PC=0x0010FA9C, com 400.009.999 concluídas e guest_error=0 (fuel esgotado). O trace registra atividade de DMA GIF e VSINT, mas ainda não demonstra um quadro apresentado, A...
O replay combinado recompilado executou as continuações MOVIE em 0x00104CFC e 0x00104D04 e avançou até PC=0x00104870, com 10.992.143 instruções concluídas e guest_error=0. O log também registra DMA GIF em 0x0010D318 (QWC=25), pacote GIF e escritas GIF_AD em registradores GS. Isso ainda não comprova apresentação de quad...
O replay combinado estático do MOVIE.ELF avançou pela continuação 0x00104220 e parou em 0x00104D04 após 10.990.790 instruções guest concluídas. O runner registrou guest_error=0 e status parcial por cobertura; a raiz 0x00104CFC compilada para acompanhamento não foi despachada neste replay. Ainda não há ACTION.ELF, frame...