- Joined
- Dec 5, 2009
- Messages
- 839
- Trophies
- 1
- Age
- 30
- Location
- center of the Sun
- Website
- kuribo64.net
- XP
- 2,498
- Country
melonDS 0.4 is out!
The highlights of this release are several 2D and 3D fixes and improvements, but also, working wifi multiplayer.
The full changelog is below.
• implement access modes for certain IO registers that were unhandled
• actually implement RCNT instead of hardcoding it
• wifi: emulation of multiplayer cmd/reply/ack transfers
• wifi: more accurate RFSTATUS/RFPINS
• wifi: some games can go into multiplayer now (Pictochat, NSMB, Pokémon known working)
• improved savemem detect heuristic
• implement firmware write, fix SPI bugs
• accurate emulation of 'main memory display FIFO'
• 2D: fix render/capture order
• 2D: implement mode6 large BG
• 2D: fix bitmap BG sizes
• 2D: fix rotscaled bitmap sprites
• 3D: fix missing term in MatrixTranslate
• 3D: fix toon highlight mode
• 3D: fix boxtest bug
• 3D: accurate viewport transform
• 3D: polygon Y-sorting
• 3D: more accurate interpolation, still not perfect
• 3D: more accurate Z and W transforms, fix some cases of Z-fighting
• 3D: separate polygonID attributes for opaque and translucent pixels
• 3D: start documenting and implementing depth test edge cases
• emulate delays for SPI transfers and div/sqrt
• misc bugfixes/additions as usual
pile of copypasta
How to use
melonDS requires BIOS/firmware dumps from a DS. You can dump them with the following dumper.
The files must be placed in the same directory as the melonDS executable, as follows:
* bios7.bin -- ARM7 BIOS, 16KB
* bios9.bin -- ARM9 BIOS, 4KB
* firmware.bin -- firmware, 256KB or 512KB
Note: the DS-mode firmware in the 3DS isn't bootable. It only contains the bare minimum required to run DS games. Be sure to enable direct game boot when using a firmware dump from a 3DS.
Settings
Emulation: settings related to emulation. For now it lets you enable direct game boot (directly runs the game instead of going through the firmware) and the threaded 3D renderer.
There's also a wifi-related setting (which only ended up there because I'm lazy and I need to redo the UI). You should try toggling it if you have trouble getting multiplayer working.
Input: allows you to configure keyboard and joystick input. You can change a mapping by clicking the corresponding entry, then pressing a keyboard key or joystick button. For now, joystick input uses the first joystick available if multiple joysticks are plugged.
If your game fails to save
Check the size of the savefile. melonDS can, in some circumstances, misdetect the save memory type.
Save memory type detection is done only when no existing savefile is present.
If you provide an existing savefile with the correct size, melonDS will use the correct save memory type and saving should work properly.
Downloads
* Windows 64-bit
* Linux 64-bit
If you feel generous
melonDS Patreon
Have fun!
The highlights of this release are several 2D and 3D fixes and improvements, but also, working wifi multiplayer.
The full changelog is below.
• implement access modes for certain IO registers that were unhandled
• actually implement RCNT instead of hardcoding it
• wifi: emulation of multiplayer cmd/reply/ack transfers
• wifi: more accurate RFSTATUS/RFPINS
• wifi: some games can go into multiplayer now (Pictochat, NSMB, Pokémon known working)
• improved savemem detect heuristic
• implement firmware write, fix SPI bugs
• accurate emulation of 'main memory display FIFO'
• 2D: fix render/capture order
• 2D: implement mode6 large BG
• 2D: fix bitmap BG sizes
• 2D: fix rotscaled bitmap sprites
• 3D: fix missing term in MatrixTranslate
• 3D: fix toon highlight mode
• 3D: fix boxtest bug
• 3D: accurate viewport transform
• 3D: polygon Y-sorting
• 3D: more accurate interpolation, still not perfect
• 3D: more accurate Z and W transforms, fix some cases of Z-fighting
• 3D: separate polygonID attributes for opaque and translucent pixels
• 3D: start documenting and implementing depth test edge cases
• emulate delays for SPI transfers and div/sqrt
• misc bugfixes/additions as usual
pile of copypasta
How to use
melonDS requires BIOS/firmware dumps from a DS. You can dump them with the following dumper.
The files must be placed in the same directory as the melonDS executable, as follows:
* bios7.bin -- ARM7 BIOS, 16KB
* bios9.bin -- ARM9 BIOS, 4KB
* firmware.bin -- firmware, 256KB or 512KB
Note: the DS-mode firmware in the 3DS isn't bootable. It only contains the bare minimum required to run DS games. Be sure to enable direct game boot when using a firmware dump from a 3DS.
Settings
Emulation: settings related to emulation. For now it lets you enable direct game boot (directly runs the game instead of going through the firmware) and the threaded 3D renderer.
There's also a wifi-related setting (which only ended up there because I'm lazy and I need to redo the UI). You should try toggling it if you have trouble getting multiplayer working.
Input: allows you to configure keyboard and joystick input. You can change a mapping by clicking the corresponding entry, then pressing a keyboard key or joystick button. For now, joystick input uses the first joystick available if multiple joysticks are plugged.
If your game fails to save
Check the size of the savefile. melonDS can, in some circumstances, misdetect the save memory type.
Save memory type detection is done only when no existing savefile is present.
If you provide an existing savefile with the correct size, melonDS will use the correct save memory type and saving should work properly.
Downloads
* Windows 64-bit
* Linux 64-bit
If you feel generous
melonDS Patreon
Have fun!