2016-05-15 19:34:14 -06:00
|
|
|
# melonDS
|
2016-05-15 19:40:11 -06:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
DS emulator, sorta
|
2016-05-15 19:40:11 -06:00
|
|
|
|
2017-03-29 14:56:30 -06:00
|
|
|
The goal is to do things right and fast, akin to blargSNES (but hopefully better). But also to, you know, have a fun challenge :)
|
2016-05-15 19:40:11 -06:00
|
|
|
|
2017-03-29 14:56:30 -06:00
|
|
|
The source code is provided under the GPLv3 license.
|
2016-05-15 19:40:11 -06:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
## How to use
|
2017-02-07 14:23:46 -07:00
|
|
|
|
|
|
|
melonDS requires BIOS/firmware copies from a DS. Files required:
|
|
|
|
* bios7.bin, 16KB: ARM7 BIOS
|
|
|
|
* bios9.bin, 4KB: ARM9 BIOS
|
2017-08-05 11:13:55 -06:00
|
|
|
* firmware.bin, 128/256/512KB: firmware
|
2017-02-07 14:23:46 -07:00
|
|
|
|
2017-06-15 13:41:18 -06:00
|
|
|
Firmware boot requires a firmware dump from an original DS or DS Lite.
|
|
|
|
DS firmwares dumped from a DSi or 3DS aren't bootable and only contain configuration data, thus they are only suitable when booting games directly.
|
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
### Possible firmware sizes
|
|
|
|
|
2017-08-05 11:13:55 -06:00
|
|
|
* 128KB: DSi/3DS DS-mode firmware (reduced size due to lacking bootcode)
|
|
|
|
* 256KB: regular DS firmware
|
|
|
|
* 512KB: iQue DS firmware
|
|
|
|
|
2017-06-15 13:41:18 -06:00
|
|
|
DS BIOS dumps from a 3DS can be used with no compatibility issues. DSi BIOS dumps should be usable too, provided they were dumped properly.
|
2017-02-07 14:23:46 -07:00
|
|
|
|
2017-03-29 14:56:30 -06:00
|
|
|
As for the rest, the interface should be pretty straightforward. If you have a question, don't hesitate to ask, though!
|
2016-12-05 09:08:24 -07:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
## How to build
|
2017-04-29 19:46:27 -06:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
### Linux:
|
2016-12-05 09:08:24 -07:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
```sh
|
|
|
|
mkdir -p build
|
|
|
|
cd build
|
|
|
|
cmake ..
|
|
|
|
make
|
|
|
|
```
|
|
|
|
|
|
|
|
### Windows:
|
2017-04-02 01:33:01 -06:00
|
|
|
|
|
|
|
* use CodeBlocks
|
2017-08-29 10:17:44 -06:00
|
|
|
* or receive golden cookies if you get Cmake to work
|
2017-04-29 19:46:27 -06:00
|
|
|
|
|
|
|
Build system is not set in stone.
|
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
## TODO LIST
|
2016-12-05 09:08:24 -07:00
|
|
|
|
2017-08-29 10:17:44 -06:00
|
|
|
* UI that doesn't suck
|
|
|
|
* better sound emulation
|
|
|
|
* emulating some fancy addons
|
2017-02-12 18:07:54 -07:00
|
|
|
* other non-core shit (debugger, graphics viewers, cheat crapo, etc)
|
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
### TODO LIST FOR LATER
|
2017-02-12 18:07:54 -07:00
|
|
|
|
2017-08-29 10:17:44 -06:00
|
|
|
* hardware renderer for 3D (w/ upscaling and fancy shit)
|
|
|
|
* better wifi
|
2017-02-12 18:07:54 -07:00
|
|
|
* maybe emulate flashcarts or other fancy hardware
|
2017-03-12 17:45:26 -06:00
|
|
|
* big-endian compatibility (Wii, etc)
|
|
|
|
* LCD refresh time (used by some games for blending effects)
|
2017-03-29 14:56:30 -06:00
|
|
|
* any feature you can eventually ask for that isn't outright stupid
|
2017-08-29 10:17:44 -06:00
|
|
|
|
2017-10-21 21:58:02 -06:00
|
|
|
## Credits
|
2017-08-29 10:17:44 -06:00
|
|
|
|
|
|
|
* 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
|