melonDS es un emulador de Nintendo DS, DSi y 3DS para Windows, macOS y Linux.
Características principales de melonDS
- Núcleo casi completo (CPU, vídeo, audio, ...)
- Recompilador JIT para una emulación rápida
- Renderizador OpenGL, escalado 3D
- RTC, micrófono, cierre/apertura de la tapa
- Soporte de joystick
- Estados de guardado
- Varios modos de posición/tamaño/rotación de la pantalla
- (WIP) Wifi: multijugador local, conectividad online
- (WIP) Emulación de DSi
- DLDI
- (WIP) Complementos para la ranura GBA
- ¡y hay más planeados!
Cómo usar melonDS
melonDS requiere copias del firmware y de la bios de la Nintendo DS. Archivos requeridos:
- bios7.bin, 16KB: ARM7 BIOS
- bios9.bin, 4KB: ARM9 BIOS
- firmware.bin, 128/256/512KB: firmware
El arranque del firmware requiere un volcado del firmware de una DS o DS Lite original. Los firmwares de DS volcados desde una DSi o 3DS no son arrancables y sólo contienen datos de configuración, por lo que sólo son adecuados para arrancar juegos directamente.
Posibles tamaños del firmware:
- 128KB: DSi/3DS DS-mode firmware (reduced size due to lacking bootcode)
- 256KB: regular DS firmware
- 512KB: iQue DS firmware
Los volcados de BIOS de DSi o 3DS pueden utilizarse sin problemas de compatibilidad. Los volcados de BIOS de DSi (en modo DSi) no son compatibles. O tal vez lo sean. No lo sé.
Por lo demás, la interfaz debería ser bastante sencilla. No obstante, si tienes alguna duda, no dudes en preguntar.
Créditos
- Martin for GBAtek, a good piece of documentation
- Cydrak for the extra 3D GPU research
- All of you comrades who have been testing melonDS, reporting issues, suggesting shit, etc
Que novedades incluye la versión 0.9.5
Released
- eliminar el perfil de color incorrecto de los iconos PNG (Nadia)
- Arreglos de DLDI para la demo de Smash (Arisotura)
- arreglar lagunas en el manejo de E/S (Arisotura)
- arreglar comandos savemem inválidos, arreglar Dementium (Arisotura)
- FreeBIOS: añade la función de descompresión LZ77 compatible con VRAM, arregla Yoshi's Island (Arisotura)
- firmware por defecto: en modo DSi, emular la placa wifi DWM-W015 en lugar de la DWM-W024 (Arisotura)
- firmware por defecto: guardar la configuración del WFC en un archivo separado (Arisotura)
- Desactivar la interfaz de usuario de las anulaciones de firmware cuando la anulación de firmware no está marcada (Nadia)
- 2D: fundidos/mezclas más precisos (Arisotura)
- DSi: añadir soporte para GXFIFO NDMA (Arisotura)
- DSi: añadir espejo de mainRAM en 0x0C000000 (Arisotura)
- añadir relación de aspecto 3DS 5:3, refactorizar el código de relación de aspecto (Nadia)
- OpenGL: arreglar la resolución 16x en macOS (Nadia)
- Arreglar que los gatillos sean reconocidos como valores negativos del stick analógico durante el mapeo (Nadia)
- arreglar los botones de mapeo del joystick en macOS (Nadia)
- DSi: implementación preliminar de SNDEXCNT (Genérico)
- DSi: arreglar los bits IRQ de la SD insertada/extraída (Genérico)
- DSi: implementar el acceso de 8/16 bits a los registros AES (Genérico)
- DSi: arreglar el bit de inserción de carro SCFG_MC (Genérico)
- JIT: invalidar bloques en la VRAM/WRAM de ARM7 cuando se remapea (Genérico)
- arreglar la lectura del banner de la ROM cuando la ROM no tiene banner (Rayyan, Arisotura)
- arreglar el manejo del título de la ROM UTF16 en el diálogo de información de la ROM (Rayyan)
- wifi: mejoras en la emulación de wifi (Arisotura)
- wifi: mecanismo de sincronización/comunicación basado en memoria compartida para wifi local (Arisotura)
- soporte adecuado para múltiples instancias de melonDS para el multijugador (Arisotura)
- DSi: soporte real y adecuado para la cámara (Arisotura)
- DSi: arreglar el DSP lo suficiente como para que funcione (Arisotura)
- arreglar el manejo del contexto de OpenGL (Stenzek, Generic, Nadia)
- forzar la alineación de todos los accesos a la memoria (en lugar de sólo los accesos a la memoria de la CPU) (Arisotura)
- mejorar el manejo de los parámetros del CLI (patataofcourse)
- arreglar errores en el arranque directo de la DSi (Arisotura)