Homebrew Unofficial 3DS RetroArch builds

kenseiden

i am overflow
Member
Joined
Sep 20, 2015
Messages
259
Trophies
0
Age
42
XP
2,356
Country
United States
How does the n3DS version of RA compare to say a PS Classic in terms of quality and compatibility?

It really depends on the core. Sega Genesis/Mega Drive and the 8-bit cores (NES, Master System, Game Gear, Game Boy) will all run fine on a New 3DS. SNES 2002 is more likely to run most games at or near full speed, exceptions being the special chip games (Star Fox, Yoshi’s Island). SNES 2005 also will run most SNES games pretty well; just expect some more performance hits compared to SNES 2002 when it comes to more complex games. PCSX-Rearmed takes a bit of configuring per-game but you can get a pleasant experience on the New 3DS, with some games even running full speed! So basically compared to the PS Classic, there’s a bit more you have to do in order to get what I would consider an optimal experience, but I personally think it’s worth doing so, as I find myself using RA on the 3DS more than I do on other platforms.

For improved performance, you should try justinweiss’s RA cores from this thread. He’s been optimizing and trying some experimental stuff for the 3DS RA, and they’re definitely worth a try in my opinion.
 

Deleted member 42501

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,724
Trophies
2
XP
4,259
It really depends on the core. Sega Genesis/Mega Drive and the 8-bit cores (NES, Master System, Game Gear, Game Boy) will all run fine on a New 3DS. SNES 2002 is more likely to run most games at or near full speed, exceptions being the special chip games (Star Fox, Yoshi’s Island). SNES 2005 also will run most SNES games pretty well; just expect some more performance hits compared to SNES 2002 when it comes to more complex games. PCSX-Rearmed takes a bit of configuring per-game but you can get a pleasant experience on the New 3DS, with some games even running full speed! So basically compared to the PS Classic, there’s a bit more you have to do in order to get what I would consider an optimal experience, but I personally think it’s worth doing so, as I find myself using RA on the 3DS more than I do on other platforms.

For improved performance, you should try justinweiss’s RA cores from this thread. He’s been optimizing and trying some experimental stuff for the 3DS RA, and they’re definitely worth a try in my opinion.

Great thanks. To be more specific I'm talking about MAME, FBA, Neo Geo and CPS2/3.

The screen being low resolution really works well on these old school games and I've never tried much on there beyond some Virtual Console.
 
  • Like
Reactions: kenseiden

kenseiden

i am overflow
Member
Joined
Sep 20, 2015
Messages
259
Trophies
0
Age
42
XP
2,356
Country
United States
Great thanks. To be more specific I'm talking about MAME, FBA, Neo Geo and CPS2/3.

The screen being low resolution really works well on these old school games and I've never tried much on there beyond some Virtual Console.

Ah, from my experience, I've had a more consistent arcade experience with the FBA cores. MAME 2000 and 2003/2003 Plus are broken in their own little ways to the point where I end up avoiding using them altogether on the 3DS. FBA 2012 and FBNeo work wonderfully as long as you have the correct rom sets, but I've never gotten CPS-3 working on the 3DS despite having the correct rom sets (verified as working on RA on other platforms).
 

justinweiss

Well-Known Member
Member
Joined
May 29, 2016
Messages
121
Trophies
0
Age
41
XP
1,439
Country
United States
@justinweiss Are the changes you made eventually sent to the upstream “main” retroarch 3DS port, or are these versions their own thing?

I try to send everything back upstream as long as it works well. Right now a lot of these features need to wait for a buildbot upgrade, but after that happens I'll start sending them in for merging.

BTW, as I've been playing with the current builds, it seems like Threaded Rendering (the pcsx setting) will sometimes be faster if Threaded Video (the RetroArch setting) is off. This surprised me, but I wonder if the 3DS is hitting the limits of the amount of work that can be done on the other core, and maybe they're blocking each other from getting work done. Worth a try to see if you can get a few extra fps's out of it. On other cores it's probably still worth keeping Threaded Video on. But experimenting with different combinations is always good!
 

wanderindirk

Active Member
Newcomer
Joined
Aug 29, 2014
Messages
43
Trophies
0
Age
31
XP
173
Country
Vietnam
I try to send everything back upstream as long as it works well. Right now a lot of these features need to wait for a buildbot upgrade, but after that happens I'll start sending them in for merging.

BTW, as I've been playing with the current builds, it seems like Threaded Rendering (the pcsx setting) will sometimes be faster if Threaded Video (the RetroArch setting) is off. This surprised me, but I wonder if the 3DS is hitting the limits of the amount of work that can be done on the other core, and maybe they're blocking each other from getting work done. Worth a try to see if you can get a few extra fps's out of it. On other cores it's probably still worth keeping Threaded Video on. But experimenting with different combinations is always good!

Yet another great revelation, I was genuinely surprised by the differerence/improvement this made. The few extra fps's can be I think even more than just a few in some games. With this new setting both MGS and Soul Reaver (heaviest games in my test list) are etching ever closer to playable for me personally.

Oh, and the attachment file is a log for an arm11 crash when I chose "Quit Retroarch"
 

Attachments

  • crash_dump_quitretroarch.rar
    615 bytes · Views: 275
  • Like
Reactions: justinweiss

dingdongyo

New Member
Newbie
Joined
Sep 22, 2020
Messages
1
Trophies
0
Age
39
XP
37
Country
United States
i feel incredibly stupid for asking this, but can someone provide dead simple instructions on what exactly to do with both folders inside RetroArch_3dsx.7z? As in, where precisely to put the two parent folders labeled "retroarch" and "3dsx" on the SD card so that I can launch it via homebrew launcher? every visual tutorial i can find uses the .cia file, but I don't have that: i used Jack sorrel's instructions [here: ] to get the homebrew launcher to work, and that doesn't install FBI apparently. i do have other single console emulators installed and working properly, so i figure my exploit is working. but no matter how i try to copy these folders to the SD card, it just, doesn't, work. ever. it just freezes on the red screen while booting, every single time, with every single attempt at getting the folder locations right.

<rant>i've never been able to get retroarch to work well (if at all) on anything. not on a PC or a softmodded OG xbox either. retroarch is so highly recommended, but there's something i fundamentally don't get about it. i feel like i should since i can install other emulators. but i have the absolute worst luck with this one.</rant>
 

MarioKartFan

Well-Known Member
Member
Joined
Aug 27, 2019
Messages
596
Trophies
0
XP
2,319
Country
Algeria
@justinweiss

Using your latest build:

I completed SOTN with near perfect performance (minor FPS dips in the Cathedral room which is a pain for performance). In ten hours of play time I did have one crash (Arm 11 error) when loading a new room. Issue did not recur.

I am 1/2 through Disc 2 of Final Fantasy IX with zero flaws (other than a stutter when first loading a battle after startup — stutter does not recur after once).

I am a few hours into Vagrant Story and Final Fantasy Tactics with zero flaws (Final Fantasy Tactics in particular stutters when you first enter into combat - but only the first time and not on subsequent battles). The new GPU thread you added last week addressed the minor sound issues I was having with Vagrant Story in your prior build.

Crash Bandicoot runs full speed. More importantly...the vastly superior Crash Bandicoot 2 runs full speed!

Suikoden II runs full speed with no issues a few hours through the early game.

Resident Evil 2 plays full speed and without flaw.

Policenauts (English hacked) runs full speed.

Metal Gear Solid .... still runs really poorly (even using the settings that another user posted, even with overclocking it grinds to a halt in the Revolver Ocelet fight 30 minutes into the game).

Build still crashes a lot when exiting Retroarch.
 
Last edited by MarioKartFan,

justinweiss

Well-Known Member
Member
Joined
May 29, 2016
Messages
121
Trophies
0
Age
41
XP
1,439
Country
United States
Awesome!

If you catch any of the crash dumps, can you send them my way? So far I haven't been able to discover where the crashes are coming from, but with more examples I might have more to go on.
 
  • Like
Reactions: DSoryu and Zense

justinweiss

Well-Known Member
Member
Joined
May 29, 2016
Messages
121
Trophies
0
Age
41
XP
1,439
Country
United States
Yeah, they're helpful as long as I can tie them back to a specific build. I'm surprised that I haven't run into any of these myself, it does make them harder to solve. I wonder if there's a configuration or some other kind of setup problem making them happen more frequently.
 

lone_wolf323

Well-Known Member
Member
Joined
May 27, 2011
Messages
5,485
Trophies
2
XP
4,927
Country
Canada
Yeah, they're helpful as long as I can tie them back to a specific build. I'm surprised that I haven't run into any of these myself, it does make them harder to solve. I wonder if there's a configuration or some other kind of setup problem making them happen more frequently.
Digimon world 2003 is game. been playing about 120 hours. used slot 0 and slot 1. Both would crash afterward playing for like half a hour. changed the save state slot and the crash hasnt been seen yet. I am providing the 2 crashes, the retro config and the core that I use.
 

Attachments

  • arm11.rar
    1.6 MB · Views: 211

justinweiss

Well-Known Member
Member
Joined
May 29, 2016
Messages
121
Trophies
0
Age
41
XP
1,439
Country
United States
Digimon world 2003 is game. been playing about 120 hours. used slot 0 and slot 1. Both would crash afterward playing for like half a hour. changed the save state slot and the crash hasnt been seen yet. I am providing the 2 crashes, the retro config and the core that I use.

Was this one of the experimental cores from this thread? Unfortunately I only have debugging info ready for the last few builds I've posted here.
 

lone_wolf323

Well-Known Member
Member
Joined
May 27, 2011
Messages
5,485
Trophies
2
XP
4,927
Country
Canada
Was this one of the experimental cores from this thread? Unfortunately I only have debugging info ready for the last few builds I've posted here.
Post 489 you had linked a gofile page. I grabbed the cores.cia from there and installed the psx one from there.

Also do want to mention. System of use for me is N3DSXL with 11.13 version.
 
  • Like
Reactions: justinweiss

wanderindirk

Active Member
Newcomer
Joined
Aug 29, 2014
Messages
43
Trophies
0
Age
31
XP
173
Country
Vietnam
Metal Gear Solid .... still runs really poorly (even using the settings that another user posted, even with overclocking it grinds to a halt in the Revolver Ocelet fight 30 minutes into the game).

Upping the clockspeed to 60 will make the Ocelot fight much more smoother compared to setting it at 55-56. Just beat him again with no noticeable slowdown while fighting. Cutscenes will take a slight hit though (but nothing too major I think). I agree that continually having to push the clockspeed is not a good sign, but I haven’t got too far in the game either to be able to say if that will continue to be the case. Personally I’ve never gone past 60 with MGS, I find it to be a good end point.

@justinweiss attached is a crash dump for a crash which happened when I tried to use savestate. In my experience, the experimental build will invariably crash when I play long enough. So far I've seen crashes when saving/loading states, quiting and restarting the app. Plus, trying to turn off Threaded Video in Retroarch settings when no game has been loaded up yet will outright freeze the app.
 

Attachments

  • crash_dump_savestate.rar
    250 bytes · Views: 189
Last edited by wanderindirk,

MarioKartFan

Well-Known Member
Member
Joined
Aug 27, 2019
Messages
596
Trophies
0
XP
2,319
Country
Algeria
Upping the clockspeed to 60 will make the Ocelot fight much more smoother compared to setting it at 55-56. Just beat him again with no noticeable slowdown while fighting. Cutscenes will take a slight hit though (but nothing too major I think). I agree that continually having to push the clockspeed is not a good sign, but I haven’t got too far in the game either to be able to say if that will continue to be the case. Personally I’ve never gone past 60 with MGS, I find it to be a good end point.

Wow. I’ll be damned. At a clock speed of 60 the game performs full speed (outside of cut scenes as you note). I wonder why that’s the case. I always thought of overclocking an emulator as a way of addressing performance issues with the underlying hardware. In this case though the overclocking seems to address issues with the emulation of the underlying hardware. I can see how underclocking might achieve that but I’m not sure why overclocking does.

In any event, this basically means that nearly all of the greatest PSX games are now fully playable at or near full speed on the N3DS.

What an amazing accomplishment.
 

justinweiss

Well-Known Member
Member
Joined
May 29, 2016
Messages
121
Trophies
0
Age
41
XP
1,439
Country
United States
Here's a build that I'm hoping will fix some of the random crashes on exit (and in some other places). It seems like there is a bug (maybe in luma?) when freeing a large chunk of memory all at once. I've modified the memory management code to free in chunks of 1MB instead, which fixed the one crash I was able to consistently cause. But since I haven't seen any other crashes myself, I don't know if it's fixed those too. It's the sort of problem that could cause just about anything to crash, though, so I'm hopeful.

There's another crash that can occur when saving state -- this seems to be a dynarec bug, and has probably existed for a while. It's probably more likely to happen after playing a game for a long time without stopping. This build does not fix that one, I don't know much about the dynarec and would have to understand that code in more detail before attempting a fix.

I don't know why they would be happening more frequently with these builds, unless one of the new configuration options makes a situation more likely to happen. So far all of the crashes I've debugged have been in code that hasn't changed for a while. So for crash dumps, configuration files might also be helpful. Just be sure to remove any passwords / etc. that might have got in there first.

This also has some speedups for dithering, the first level of Crash 1 now hits 58-60fps for me with dithering enabled, dsp_thread, async cd, hi-res dowscaling, and threaded rendering.

Enjoy!
 

Attachments

  • pcsx_rearmed_libretro.3dsx.zip
    1.9 MB · Views: 196
Last edited by justinweiss,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Veho @ Veho: The cybertruck is a death trap.