¡Emulación de la Expansion Pak en la Nintendo 64 Virtual Console de Wii! (¡8 MB de RAM en N64 VC!)

Qué tal, EOLianos e interesados en la scene de Wii!

Recientemente trabajé para intentar aumentar el límite máximo de la memoria RAM de los juegos emulados de Nintendo 64 en los juegos de Wii Virtual Console (Consola Virtual de Wii / Wii VC), e incluso emular el accesorio Expansion Pak, que le da 4 MB de RAM extra a la consola Nintendo 64 (4 MB de RAM principal de la N64 + 4 MB del accesorio Expansion Pak = ¡8 MB de RAM!)

Por lo tanto, para hacer esto, me basé en el trabajo de aglab2 en inyectar hacks de Super Mario 64 (SM64) en la Wii (que la mayor parte de ellos requieren Expansion Pak para jugarlos), también utilizando la herramienta gzinject de krimtonz y sus parches (en *.gzi) y el trabajo de glankk en las correcciones en el emulador de N64 en VC del juego oficial "The Legend of Zelda: Ocarina of Time".

Los parches originales en *.gzi para ver la comparación entre el límite ajustado a 8 MB de RAM y el límite ajustado a 4 MB de RAM se pueden descargar desde aquí:
4MB_RAM_N64VC.gzi.zip
8MB_RAM_N64VC.gzi.zip

Decidí probarlo porque estoy molesto de las ralentizaciones (lentitudes) y otros detalles gráficos que no se muestran en algunos juegos, incluido "Road Rash 64", que tiene tanta ralentización (se ejecuta a 30 FPS en lugar de 60 FPS).

Estoy tan cansado de tener esto cuando ejecuto mi inyección de VC de Road Rash 64 en el WAD de Mario Golf (con compresión romc):

Imagen

Así que hice algo para obtener esta pantalla como esta:

Imagen

¿Cómo lo hice? Estos son los pasos:

1. Primero, tome su WAD de N64 VC favorito o un WAD inyectado de N64 VC que sea compatible con Expansion Pak
2. Desempaqueta el WAD con la herramienta wwPacker (enlace de descarga). Arrastre el archivo WAD que desea editar su archivo 00000001.app y suéltelo en el archivo batch __wwunpacker.bat.
3. Una vez desempaquetado, abra la carpeta WAD descomprimida y verifique si el 00000001.app está comprimido. Esto se puede comprobar si el tamaño de 00000001.app es inferior a 1 MB.
Si no está comprimido (su tamaño es más de 1 MB), salte al Paso 6. Pero si está comprimido (su tamaño es menos de 1 MB), proceda desde el Paso 4.
4. Copie el 00000001.app de la carpeta WAD descomprimida a la carpeta wwPacker (donde está wwcxtool ).
5. Ahora descomprima el 00000001.app original con wwcxtool. Para ello, abra el CMD en la carpeta wwPacker y ejecute este comando: wwcxtool.exe /u 00000001.app 00000001_dec.app
NOTA: ¡NO BORRES EL ARCHIVO ORIGINAL 00000001.app, ¡LO ESTAREMOS UTILIZANDO MÁS TARDE PARA USAR LA MISMA COMPRESIÓN QUE TENÍA EL ARCHIVO 00000001.app ORIGINAL!
6. Ahora abra el archivo 00000001.app (o 00000001_dec.app si el 00000001.app original está comprimido) con un editor hexadecimal (yo recomiendo HxD)
Imagen
7. Ahora, en el editor hexadecimal, haga clic en la pestaña Buscar > Buscar. O presione Ctrl + F (para abrir la búsqueda en hexadecimal) y busque los siguientes valores hexadecimales: 41 82 00 08 3C 80 00 80
(Recuerda: los valores hexadecimales 3C 80 00 80 después de los valores hexadecimales de la cantidad de RAM utilizada son para definir la memoria RAM máxima de N64 para usar en el emulador de VC).
Imagen
8. Una vez buscado, debe ver estos valores hexadecimales resaltados:
Imagen
9. Ahora, haga clic en el primer byte de 41 82 00 08 3C 80 00 80 y luego reemplace estos valores hexadecimales con lo siguiente: 60 00 00 00 3C 80 00 80
10. Una vez modificados los valores, debe tener algo como esto: (la línea amarilla es solo para resaltarla, esto no aparecerá en el editor hexadecimal):
Imagen
11. Una vez que haya terminado de editar el archivo 00000001.app sin comprimir, guarde los cambios realizados en el archivo.
Imagen
12. Una vez guardado, se generará un archivo backup (* .bak) de 00000001.app (o 00000001_dec.app si tiene compresión). Elimine ese archivo backup, solo vamos a usar el archivo editado. NO BORRES EL ARCHIVO 00000001.app ORIGINAL, ¡LO VAMOS A UTILIZAR PARA USAR LA MISMA COMPRESIÓN DEL ARCHIVO ORIGINAL!
Imagen
13. Si su 00000001.app original no tiene compresión, vaya al paso 16. Pero si la 00000001.app original está comprimida, proceda desde el Paso 14.
14. Ahora tenemos que volver a comprimir el 00000001_dec.app editado con wwcxtool, usando la compresión original del archivo 00000001.app. Para ello, abra el CMD en la carpeta wwPacker y ejecute este comando: wwcxtool.exe /cr 00000001.app 00000001_dec.app 00000001_out.app
15. Una vez que haya terminado de comprimir el 00000001_dec.app editado, obtendrá un nuevo 00000001_out.app con la compresión original que tenía el archivo 00000001.app original.
Imagen
16. Copie el 00000001.app editado (o 000000001_out.app si el 00000001.app original está comprimido) en la carpeta WAD descomprimida.
PARA ARCHIVOS 00000001.app NO COMPRIMIDOS:[b] Si una advertencia muestra que desea reemplazar el archivo actual, acepte y continúe reemplazando el archivo 00000001.app antiguo con el nuevo archivo 00000001.app. Luego salte al paso 33.
17. Vaya a la carpeta del WAD desempaquetado, luego elimine el archivo original 00000001.app de la carpeta WAD descomprimida, luego use el archivo editado 000000001_out.app.
Imagen
18. Para utilizar el archivo 00000001_out.app editado y comprimido, [b]DEBES cambiarle el nombre de ese archivo a 00000001.app; de lo contrario, no podrás volver a empaquetar el WAD debido a que falta el archivo 1.app.

Imagen
19. Después de cambiar el nombre del archivo 000000001_out.app a 00000001.app, debe tener algo como esto:
Imagen
20. Ahora vaya a la carpeta wwPacker, luego arrastre la carpeta del WAD desempaquetado que editó su 00000001.app y suéltelo en el archivo batch __wwpacker-NoMod.bat o __wwpacker-RegionFree.bat.
21. Una vez reempaquetado el nuevo WAD, pruébelo con Dolphin Emulator y vea si el nuevo WAD usa Expansion Pak. Si muestra símbolos o texto como "EXPANSION PAK ENHANCED" o "EXPANSION PAK DETECTED", ¡buen trabajo! Si no es así, intente realizar todos estos pasos nuevamente.

¡Disfrute de la expansión completa de 8 MB de RAM del N64 Expansion Pak en Wii VC!

NOTA IMPORTANTE: Recuerde, la emulación de Nintendo 64 VC todavía es demasiado pobre en la consola Wii, por lo que solo algunos juegos que son compatibles con Expansion Pak pueden inyectarse y mejorarse mediante este procedimiento. Recuerda que tienes un 85% de probabilidad de que tu inyección falle porque se cuelga en la pantalla 'Requiere el uso de un mando clásico', y solo tienes un 15% de probabilidad de que su inyección funcione (a menudo con problemas).

¡Nos vemos en el próximo hilo de la scene de Wii!

saulfabreg - @saulfabreg
1 respuesta