HeadlinesBriefing favicon HeadlinesBriefing.com

Construcción de depuración de Resident Evil 4 para GameCube completamente descompilada

Hacker News •
×

Se ha logrado una descompilación completa y byte-identical de Resident Evil 4 para Nintendo GameCube para la construcción de depuración G4BE08 (el prototipo del “25 de noviembre de 2004”, ambos discos). El proyecto reproduce exactamente main.dol y todos los 114 overlays REL, verificado por hashes SHA1 en cada construcción. Incluye 1,083 objetos (675 en el DOL, 408 en los RELs) y 15,641 funciones, todos byte-identical. El código fuente totaliza aproximadamente 555k líneas de C/C++ (~33k líneas de encabezados) sin archivos de ensamblaje.

El juego fue compilado con SN Systems Pro DG 3.9.3 — GCC 2.95.3, Metrowerks CodeWarrior 2.4.7 y CodeWarrior GC/1.2.5n. Incluye middleware CRI (ADX, SFD, MPV) y bibliotecas del SDK de Nintendo. El repositorio no contiene activos del juego; los usuarios deben proporcionar sus propias imágenes de disco de depuración (disco 1 para main.dol y 110 RELs, disco 2 para cuatro RELs de etapa de isla). La construcción requiere Linux, Python 3 y ninja; los compiladores y herramientas se descargan automáticamente excepto el GCC nativo de SN.

El emparejamiento significa que cada unidad se compila a los bytes originales con los compiladores originales. Cuando se necesitaban formas específicas de código fuente para reproducir elecciones de registros o programación, las construcciones se marcan con comentarios `// COMPILER-DIFF:` (644 en total). Una verificación automática confirma que solo 231 instrucciones de kernel de hardware provienen de plantillas de ensamblaje. La documentación cubre la arquitectura del motor, la metodología de emparejamiento, notas por unidad y registros de investigación de compiladores.

Entidades clave: Empresas: Nintendo, SN Systems, Metrowerks, CRI Middleware | Personas: adonis-singh

Preguntas frecuentes: ¿Qué significa ‘descompilación byte-identical’ para este proyecto de Resident Evil 4?

Significa que el código recompilado (main.dol y todos los 114 overlays REL) coincide byte a byte con la construcción original de depuración de GameCube, verificado por hashes SHA1, utilizando los compiladores originales (SN Systems GCC 2.95.3 y Metrowerks CodeWarrior) y las formas originales de código fuente.