Views: 23,259,017 | Homepage | Main | Rules/FAQ | Memberlist | Active users | Last posts | Calendar | Stats | Online users | Search | 12-04-24 09:15 PM |
Guest: |
0 users reading melonDS 0.1 | 1 bot |
Main - Releases - melonDS 0.1 | Hide post layouts | New reply |
Arisotura |
| ||
Big fire melon magical melon girl Level: 58 Posts: 2/945 EXP: 1539594 Next: 37952 Since: 03-28-17 From: France Last post: 34 days ago Last view: 14 days ago |
There's a new DS emulator in the town, and it's finally seeing its first public release!
melonDS is part of a second wave of DS emulators. There are a few other emulator projects that are part of it, which you might have already heard of. Either way, check them out! Why start this project? Mostly for the sake of the challenge, but also because I believe the DS emulation scene needs some fresh air. The NO$GBA author is working hard to reverse-engineer, document and emulate the DSi, but aside from that, there isn't a lot of progress regarding the DS, and I feel that there are still things to be done. So, without further ado, let's relive 2007! melonDS 0.1 Features * almost-complete 2D graphics * 3D graphics (software renderer) with texturing, alphablending, lighting * input: keyboard and joystick, touchscreen * backup memory * booting from the BIOS * resizable video output window, preserving aspect ratio of individual screens 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). 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. Downloads * Windows 64-bit * Linux 64-bit Have fun! ____________________ Kuribo64 |
jeremynsl |
| ||
Newcomer Inactive Level: 6 Posts: 1/6 EXP: 778 Next: 129 Since: 03-30-17 Last post: 2791 days ago Last view: 2074 days ago |
Hey, congrats on the first release! Just downloaded and will be playing around with some random games to see how it performs.
I'm wondering, from your perspective, if there is anything you'd like tested in particular? Are you looking for bug reports or is it too early for that? Just interested in helping development if I'm able |
Arisotura |
| ||
Big fire melon magical melon girl Level: 58 Posts: 6/945 EXP: 1539594 Next: 37952 Since: 03-28-17 From: France Last post: 34 days ago Last view: 14 days ago |
SmithJrBlaquaLuigi |
| ||
Newcomer Inactive Level: 4 Posts: 1/2 EXP: 149 Next: 130 Since: 03-30-17 From: Ohio Last post: 2806 days ago Last view: 1859 days ago |
Splendid! congrats on your first release!
I am going to give this a try if you don't mind Although, if I detect any problems on melonds, I'll let you know. Other than that, keep up the good work |
jeremynsl |
| ||
Newcomer Inactive Level: 6 Posts: 2/6 EXP: 778 Next: 129 Since: 03-30-17 Last post: 2791 days ago Last view: 2074 days ago |
Alrighty, first feedback incoming.
Generally speaking, it would be nice to have .zip support. I loaded up my zip files in the file browser (though it might work?) and MelonDS just crashes without letting you know it can't accept zips. When you pause, it stretches the game windows to the entire window size regardless of DS aspect ratio. Testing on Win 7 64-bit, i5-3570k + R9 290. |
Dawn |
| ||
Newcomer Inactive Level: 4 Posts: 1/2 EXP: 149 Next: 130 Since: 03-30-17 Last post: 2806 days ago Last view: 2795 days ago |
On (a very heavily hacked-up) Ubuntu 14.04, I got the following error when running the binary:
./melonDS: relocation error: ./melonDS: symbol _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_createERmm, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference This sort of thing is easily solved if I were to just build the program from source myself, but I'm not going to bother with CodeBlocks today at least (I think something about potentially adopting CMake was mentioned? That would be very nice...) At any rate, congrats on the first release! Looking forward to further development. |
SmithJrBlaquaLuigi |
| ||
Newcomer Inactive Level: 4 Posts: 2/2 EXP: 149 Next: 130 Since: 03-30-17 From: Ohio Last post: 2806 days ago Last view: 1859 days ago |
Ah shoot, I cannot setup it up because it requires the Micro SD card. I already possess a 64GB one, but it's not compatible at all.
Fuck. :/ |
Nadia |
| ||
Pile of fazils Level: 24 Posts: 1/127 EXP: 75826 Next: 2299 Since: 03-29-17 From: Denmark Last post: 34 days ago Last view: 1 day ago |
...What would you need a microSD card for? |
Xindictive |
| ||
Newcomer Inactive Level: 3 Posts: 1/1 EXP: 52 Next: 76 Since: 03-30-17 Last post: 2806 days ago Last view: 2744 days ago |
Ok just did a few games on this. Outside of all games having no sound cause i'm guessing that's not implemented yet, here's the results from the games i got:
101 in 1 - Explosive Megamix: Playable. All games seem to run fine. LEGO Harry Potter Years 5-7: Doesn't work. White screen. I'll be calling it the "WSOD" for the emulator, since this is usually a sign that the game 100% doesn't want to run for me. Nanashi no Game ME: Playable. There's some missing graphics and without a flip ability, playing the walking parts sideways is a pain. Super Scribblenauts: Doesn't work. WSOD. Tony Hawk's Motion: Now this one is weird. It doesn't work too, but usually i get a WSOD if it doesn't work. I also usually get 60fps to 45fps on all games. However, Tony Hawk's Motion is dead-on 35fps. It also dies on a black screen and shows a HUGE mess of unknown BIO and CPU stuff, among other things. Might be to do with no Motion Pack installed with it, but it's definitely not working either way. Twilight Syndrome: Outside of a small few graphical glitches, this is playable. |
Asiv |
| ||
Member Normal user Level: 8 Posts: 1/11 EXP: 1932 Next: 255 Since: 03-30-17 Last post: 2767 days ago Last view: 2695 days ago |
ran the emulator on an Intel Celeron N2940 & BayTrail graphics, here we go.
Age of Empires - Age of Kings (US) - Playable Are You Smarter than a 5th Grader (US) - Too Slow, Unplayable. Bejeweled 3 (US) - White Screen Cars (US) - Black Screen Jump! Ultimate Stars (JP) - The FMV opening definitely slowed down the emulation, In-Game, it's playable. Elite Beat Agents (US) - Menus are smooth, but gameplay slow. Without any sound, this game is imperfect. Taiko no Tatsujin DS - Touch de Dokodon! (JP) - Menus Slow, In-Game runs okay-ish. Same status as Elite Beat Agents. |
Arisotura |
| ||
Big fire melon magical melon girl Level: 58 Posts: 8/945 EXP: 1539594 Next: 37952 Since: 03-28-17 From: France Last post: 34 days ago Last view: 14 days ago |
Posted by Dawn Actually, you don't use CodeBlocks under Linux. See this thread. I tried setting up the CodeBlocks project to also work under Linux, but didn't finish. CodeBlocks is flaky as hell under Ubuntu. Toolbars fail to redraw after a while, the build options dialog just completely freezes if there's an option it doesn't like... Regardless, thank you guys for the feedback! ____________________ Kuribo64 |
MeaningOfLifeIs42 |
| ||
Member Normal user Level: 12 Posts: 1/27 EXP: 7432 Next: 489 Since: 03-30-17 Last post: 2621 days ago Last view: 2564 days ago |
Hello! Good job on this emulator so far! I've tried a couple of my games on an i5 460M + ATI Mobility RadeonHD 5470:
Beat City: Needs sound to play, but the graphics are better than DeSmuMe. A black, diagonal line shows up between scene transitions. Big Brain Academy: Works well, but the menu and timer countdown seem to be a bit slow. Custom Robo Arena: Works well, but the startup is definently slower. Daniel X The Ultimate Power: White screen. Indiana Jones and The Staff of Kings: Says "The data could not be written. Turn power OFF and remove and reinsert the DS Card." at strartup. Super Scribblenauts: White screen. Hope this helps, and best of luck to you! |
Dawn |
| ||
Newcomer Inactive Level: 4 Posts: 2/2 EXP: 149 Next: 130 Since: 03-30-17 Last post: 2806 days ago Last view: 2795 days ago |
OK, tweaking the compile command you gave a bit I got melonDS building on my system.
It's worth noting that SDL_PIXELFORMAT_RGBA32 (found in src/wx/main.cpp) only exists on SDL 2.0.5 (which is the latest version at this time), so you will need to update your SDL2 installation to the latest version if it isn't already when building melonDS. When the ARM7/ARM9 BIOS files aren't found, the program segfaults. As a bare minimum, I would call exit(EXIT_FAILURE) after printing the error about not finding the files rather than just letting the program truck along until it inevitably crashes into a wall. In the long term, you'll want to provide a GUI message for people who aren't running their programs from a terminal window, of course... Tried playing Pokemon Platinum (US) for kicks, got a ton of "unknown arm7 read32" messages followed by a few "undefined ARM7 instruction"s and finally Halt() and "bad MRC opcode p14,2,15,7 on ARM7". Also tried playing Jump Ultimate Stars (J), but also got a ton of "unknown arm7 read32" msgs followed by some "undefined ARM7 instruction"s and a Halt() (but no "bad MRC opcode" whatnot) Those are the only two games I've backed up using my 3DS at the moment, I should back up some more so I can test some more games (and at least get something to actually run lol) Input configuration works excellently thanks to your use of SDL2! Many emulators have really crummy input configuration so I'm very glad to see you using SDL2 here. It's worth noting that on Linux, there are two systems for joystick configuration- "joydev" and "evdev". SDL1 supported using both systems under the hood, but SDL2 exclusively uses the newer system, "evdev" (which should be perfectly fine). SDL2 has a GameController API that is built on top of the more raw Joystick API, and the Joystick API is what abstracts away evdev from you when targetting Linux as a platform. I haven't poked my head in your code to see what you're doing for input yet, but it's probably worth taking some time to look at the SDL2 wiki to learn more about its input API (because when used effectively, it's the best cross-platform input API there is out there). It's also worth noting that Dolphin (which one might consider a shining example for other emulators to follow), uses evdev directly when running on Linux, if I recall correctly. Honestly though, your use of SDL2's input API will do just as well, if not better. Finally, for the context menus or whatever they're called (File, System, Settings), it's a bit annoying when you can't use a shortcut like "Alt+F" to select one of those menus. There ought to be some way of configuring those shortcuts in wxWidgets, but I haven't used the library myself so I don't know exactly how you'd go about it. Something around here, maybe... http://docs.wxwidgets.org/3.1.0/classwx_menu_bar.html OK, that's all I've got for now. Cheers! |
Nadia |
| ||
Pile of fazils Level: 24 Posts: 2/127 EXP: 75826 Next: 2299 Since: 03-29-17 From: Denmark Last post: 34 days ago Last view: 1 day ago |
I had made a simple SDL frontend for melonDS before the wxWidgets UI where I used the SDL2 GasmeController API for controller input.
The GameController API is a good idea but it does have some problems that would make it a bad idea to use for something like melonDS, or at least without a way to manually map the controller too. - The mappings generally have the A button as the bottom one instead of the right like on the DS, just swapping the mappings works most of the time, but for some controllers (like the Wii U Pro controller), you'll end up with BAYX mapped incorrectly - Some controllers are not supported, like the DualShock 4 v2 when on Linux 4.10 with the proper driver for it - Making custom mappings is a pain and I have no idea how to actually make them work Another thing that could be nice in the UI would be to swap the positions of the OK/Cancel buttons in dialog boxes when using GTK so the buttons are where the user would expect. |
jeremynsl |
| ||
Newcomer Inactive Level: 6 Posts: 3/6 EXP: 778 Next: 129 Since: 03-30-17 Last post: 2791 days ago Last view: 2074 days ago |
Second batch of compatibility feedback:
|
naknow |
| ||
Member Normal user Level: 13 Posts: 1/29 EXP: 8272 Next: 1995 Since: 03-31-17 From: United States Last post: 1551 days ago Last view: 1551 days ago |
You've done really nice on this emulator so far, especially for a v0.1 release.
Obviously, there are a number of errors that need to be fixed for a v1.0 release, and some additions to get a better base for a DS Emulator, which, most notable, would be sound. Anyway, I've attempted to play two games on melonDS, and here are some of my results:
Regardless, I will try out more games on v0.1, and I wish you well for the rest of your project. |
Asiv |
| ||
Member Normal user Level: 8 Posts: 2/11 EXP: 1932 Next: 255 Since: 03-30-17 Last post: 2767 days ago Last view: 2695 days ago |
yet another compatibility update
Clubhouse Games (US) - Playable, but slow. (15fps menus, 20fps ingame) Contact (EU) - It's slow, but looks like it can be playable (15fps all round) Guilty Gear Dust Strikers (US) - Playable. (40fps menus, 30fps ingame) Space Invaders Revolution (US) - Playable on both versions. (30fps menus, 30fps Classic ver., 38fps New Age ver.) |
naknow |
| ||
Member Normal user Level: 13 Posts: 2/29 EXP: 8272 Next: 1995 Since: 03-31-17 From: United States Last post: 1551 days ago Last view: 1551 days ago |
Compatibility update.
I tried out some puzzle games to see if they worked out well.
Next time, I might try testing some sprite heavy games. I'll most likely test out and give feedback on the Ace Attorney series. Cheers. |
naknow |
| ||
Member Normal user Level: 13 Posts: 3/29 EXP: 8272 Next: 1995 Since: 03-31-17 From: United States Last post: 1551 days ago Last view: 1551 days ago |
Ace Attorney Compatibility Test:
As promised, I tested the Ace Attorney series on melonDS. Here are my observations:
This is probably the biggest flawless streak you're gonna see for melonDS. Anyway, I might do one more testing session for the day, and find out more compatible & non-compatible games. What would my next genre/series be? I'm unsure. I think I might do more platformers next. 'Till next time. |
enhasiac |
| ||
Newcomer Inactive Level: 4 Posts: 1/2 EXP: 149 Next: 130 Since: 04-03-17 Last post: 2800 days ago Last view: 2740 days ago |
Oh boy I just read the release update.
here's a quick test run of Chrono Trigger: - average ~55fps, totally unnoticeable in a low-res sprite game, feels silky smooth - controls are tight and responsive, no discernible delay at all. - white flash on both screens when fading into character naming menu - Crono lingers on the floor a little too long after colliding with Marle in cutscene at the millennial fair. - Marle spins around on the teleporter for way too long during cutscene at the teleporter. - The "gates" fail to show during the same cutscene, Crono flashes instead of having a gradient-like effect. This is the only thing that seemed starkly wrong. - Mode7 renders correctly during time travel scene. - THE INFAMOUS DRM DETECTION DURING THE FIRST TIME TRAVEL SCENE DIDN'T GO OFF WHAT. - Enemies successfully disintegrate when killed - Correct outline on characters when given status effects (or at least, white for slow). - Saving worked, nothing seemed wrong after loading. If it wasn't for the Gate and I didn't know this game through and through, this would have seemed flawless. Already better than the PS1 version of this game. BUT THE DRM DIDN'T DETECT THE EMULATOR WHAT THE HELL |
Main - Releases - melonDS 0.1 | Hide post layouts | New reply |
Page rendered in 0.072 seconds. (2048KB of memory used) MySQL - queries: 28, rows: 115/115, time: 0.032 seconds. Acmlmboard 2.064 (2018-07-20) © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |