Cómo portar cualquier juego de N64 al PC en tiempo récord


Agrandar / «N-tel (64) Dentro»

Aurich Lawson | imágenes falsas

En los últimos años, hemos informado sobre múltiples esfuerzos para aplicar ingeniería inversa a los juegos de Nintendo 64 y convertirlos en código C completamente descompilado y legible por humanos que luego puede convertirse en la base para adaptaciones completas para PC. Si bien los resultados pueden ser impresionantes, el proceso de descompilación puede llevar años de arduo esfuerzo manual, lo que significa que sólo los juegos más populares de N64 probablemente recibirán la atención necesaria por parte de los ingenieros inversos.

Ahora, una herramienta recientemente lanzada promete reducir enormemente la cantidad de esfuerzo humano necesario para obtener puertos de PC básicos para la mayoría (si no todos) los juegos N64. El proyecto N64 Recompiled utiliza un proceso conocido como recompilación estática para automatizar grandes franjas del laborioso proceso de extraer código C de los binarios de N64.

Si bien todavía se necesita trabajo de codificación humana para suavizar los bordes, el líder del proyecto, el Sr. Wiseguy, le dijo a Ars que su herramienta de recopilación es «la diferencia entre semanas de trabajo y años de trabajo» cuando se trata de hacer una versión para PC de un título clásico de N64. . Y el trabajo paralelo en un potente procesador de gráficos N64 significa que se pueden agregar actualizaciones habilitadas para PC, como velocidades de cuadros más suaves, mejora de la resolución y relaciones de aspecto de pantalla ancha, con poco esfuerzo.

Golpes de inspiración

Wiseguy le dijo a Ars que comenzó en el espacio de codificación N64 trabajando en varios proyectos de modificación alrededor de 2020. En 2022, comenzó a contribuir al entonces nuevo proyecto de renderizado RT64, que surgió del trabajo en un trazado de rayos. Súper Mario 64 puerto en un esfuerzo más generalizado para limpiar el proceso notoriamente complicado de recrear gráficos N64 con precisión. Mientras trabajaba en ese proyecto, Wiseguy dijo que se topó con un proyecto existente que automatiza el desmontaje de juegos de NES y otro que emula un antiguo compilador SGI para ayudar en la descompilación de títulos de N64.

YouTuber Nerrel expone algunos de los beneficios de la herramienta de recopilación N64 de Mr-Wiseguy.

«Me di cuenta de que sería muy fácil conectar el renderizador RT64 a un juego si pudiera ejecutarse a través de un proceso de recopilación estática similar», dijo Wiseguy a Ars. «Así que preparé una prueba de concepto para ejecutar un juego realmente simple y luego el proyecto creció a partir de ahí hasta que pudo ejecutar algunos de los juegos más complejos».

Una prueba de concepto básica para la idea de Wiseguy tardó sólo «un par de semanas como máximo» en ponerse en marcha, dijo, y estuvo lista en noviembre de 2022. Desde entonces, meses de intermitentes Se ha trabajado para completar el código de conversión y obtener una versión recompilada de La leyenda de Zelda: La máscara de Majora listo para el consumo público.

Confía en el proceso

En su nivel más básico, la herramienta de recompilación de N64 toma un binario del juego sin procesar (proporcionado por el usuario) y reprocesa cada instrucción directa y literalmente en el código C correspondiente. El conjunto de instrucciones MIPS del N64 ha sido bastante bien documentado durante años de trabajo de emulación, por lo que descubrir cómo traducir cada código de operación individual a su equivalente C no es una gran molestia.

Una de las primeras versiones beta del renderizador RT64 muestra cómo se verían las sombras y los reflejos del trazado de rayos en una adaptación de <em>Wave Race 64</em>.» src=»https://cdn.arstechnica.net/wp-content/uploads/2024/05/recomprt2-640×360.png» width=»640″ height=»360″ srcset=»https://cdn.arstechnica.net/wp-content/uploads/2024/05/recomprt2-1280×720.png 2x»/><figcaption class=
Agrandar / Una de las primeras versiones beta del renderizador RT64 muestra cómo se verían las sombras y los reflejos con trazado de rayos en un puerto de Carrera de olas 64.

La principal dificultad, afirmó Wiseguy, puede ser determinar hacia dónde apuntar la herramienta. «El contenido del [N64] La ROM se puede distribuir como el desarrollador decida hacerlo, lo que significa que hay que encontrar dónde está el código en la ROM antes de poder siquiera iniciar el proceso de recompilación estática», explicó. Y mientras que los emuladores de N64 manejan automáticamente los juegos que se cargan y descargan, código en la memoria en tiempo de ejecución, manejar esos casos en un binario precompilado puede agregar capas adicionales de complejidad.



Source link-49