Homebrew 3DNES - NES Emulator

  • Thread starter Thread starter st4rk
  • Start date Start date
  • Views Views 308,474
  • Replies Replies 538
  • Likes Likes 47
Would it be possible to just port an existing emulator to the 3ds and tweak it? Like Nestopia for example.
I ask because I am learning how to build emulators so I can make some contributions in the future.
Also, if you can give me some tips, that would be great. I am trying to learn assembler and acquire as many NES technical documents as possible.
 
I need help! I got 3dnes on the micro sd card and I got the two folders ROMS and SAVES on the big sd card. I got the homebrew to load but when I try to enter the homebrew there's a black screen and I'm stuck. What can I do without erasing my other saves on the micro sd?
 
I gave 3DNES a quick try with SMB, and I gotta say, good work there. No speed issues, it plays nicely. (SMB isn't the most CPU-intensive game I guess, though)

I noticed that some sprite priorities were wrong (ie powerups coming out of blocks, Mario entering pipes, etc), but that's minor. What would be nice imo would be the ability to map the 3DS A/B/X/Y to the NES A/B buttons in whatever way you like, or in a few presets that work well in the popular games.

Keep up the good work, anyway.


N64 will be a tricky one. I believe one would need a JIT to get good performance on the 3DS, but the 3DS's security system makes it impossible to implement a JIT without hacking the kernel.
 
I gave 3DNES a quick try with SMB, and I gotta say, good work there. No speed issues, it plays nicely. (SMB isn't the most CPU-intensive game I guess, though)

I noticed that some sprite priorities were wrong (ie powerups coming out of blocks, Mario entering pipes, etc), but that's minor. What would be nice imo would be the ability to map the 3DS A/B/X/Y to the NES A/B buttons in whatever way you like, or in a few presets that work well in the popular games.

Keep up the good work, anyway.


N64 will be a tricky one. I believe one would need a JIT to get good performance on the 3DS, but the 3DS's security system makes it impossible to implement a JIT without hacking the kernel.

Thank you for it, really :D, about the key map, i will work on it xD, sprite priorities really work, but i need remove it, because speed down :C

JIT = Dynamic Recompilation ? if yes, i wanna do it, maybe is the best way to work N64 good on 3DS, but the biggest problem is because we just can use one core from games :C the other core from ARM11 is to System.
 
Thank you for it, really :D, about the key map, i will work on it xD, sprite priorities really work, but i need remove it, because speed down :C

JIT = Dynamic Recompilation ? if yes, i wanna do it, maybe is the best way to work N64 good on 3DS, but the biggest problem is because we just can use one core from games :C the other core from ARM11 is to System.


I don't know much about the 3DS's internals, but wasn't the 3DS updated during the time of Super Mario 3D Land to allow that game to utilize 25% of the other core?
 
The CreateThread SVC call takes a bitmask that tells which CPU cores the thread can run on. One can probably just use this, unless it requires a special permission.

Now, I don't know how the '25% of the system core' would work. Does the kernel monitor CPU usage and kill your app if it goes over that number? Seems unlikely.
 
  • Like
Reactions: Margen67
The CreateThread SVC call takes a bitmask that tells which CPU cores the thread can run on. One can probably just use this, unless it requires a special permission.

Now, I don't know how the '25% of the system core' would work. Does the kernel monitor CPU usage and kill your app if it goes over that number? Seems unlikely.


Woow, it is so good, i thought it is impossible use the two core from ARM11 :P
 
  • Like
Reactions: Margen67
Well, nevermind what I said. Either it requires a special permission, or what has been said about SM3DL isn't true.

Either way, attempting to create a thread on the second core just plain crashes. Doesn't even return a 'not authorized' error code.
 
Well, nevermind what I said. Either it requires a special permission, or what has been said about SM3DL isn't true.

Either way, attempting to create a thread on the second core just plain crashes. Doesn't even return a 'not authorized' error code.


I never tested this before, :o, i can test it in my CFW, maybe work different(or no).
 
Hey st4rk, I'm also having the problem that others mention above where I cannot launch 3DNES with Gateway because the icon is pure white with no name. I even tried flashing 3dnes onto its own micro SD card using the old method (gateway image flash software) and had no luck. My Emunand firmware is 7.1.0-16U. Thanks!
 

Site & Scene News

Popular threads in this forum