Homebrew CitrAGB - 3DS GBA Emulator (WIP)

  • Thread starter Thread starter shinyquagsire23
  • Start date Start date
  • Views Views 581,543
  • Replies Replies 1,234
  • Likes Likes 74
it only works on old firmware because Ninjhax 1 can be used to get kernel access on ARM11. that lets emulators use all of the power of the system.

on Ninjhax 2 and 9.3+, that simply is not possible right now (or for a while) since all homebrew is userland only. on New 3DS some extra power can be used but that is it.

Why are you even trying? Can't you see he's just trolling?
 
Okay, I swear to Jesus that I am not a fucking idiot like the other guy, nor am I trying to accuse anybody of incompetent codework, but can somebody explain to my why exactly it is that the SNES emulator runs so well, but GBA emulators seem to have a hard time? To my knowledge, SNES games are generally harder to emulate.

Again, I just don't understand why, and I'd like to know; no rude intent.
 
Okay, I swear to Jesus that I am not a fucking idiot like the other guy, nor am I trying to accuse anybody of incompetent codework, but can somebody explain to my why exactly it is that the SNES emulator runs so well, but GBA emulators seem to have a hard time? To my knowledge, SNES games are generally harder to emulate.

Again, I just don't understand why, and I'd like to know; no rude intent.

If I'm not mistaken (and I admit I might be on this one), GBA is more powerful than SNES
 
Okay, I swear to Jesus that I am not a fucking idiot like the other guy, nor am I trying to accuse anybody of incompetent codework, but can somebody explain to my why exactly it is that the SNES emulator runs so well, but GBA emulators seem to have a hard time? To my knowledge, SNES games are generally harder to emulate.

Again, I just don't understand why, and I'd like to know; no rude intent.

Technically it's because of the way this emulator is set up in particular - it uses dynamic recompilation, which is essentially a technique that 'translates' GBA code into code the 3DS can understand. The service that takes care of this process is only accessible with ARM11 kernel access - as in, it's not available in ARM11 userland - think of a program in your PC that requires Administrator access. This is why the emu works fine on 9.2 and earlier firmwares - those firmwares had exploits that allowed people to gain ARM11 kernel access - but slow on 9.3+, because Nintendo patched those exploits and as such dynamic recompilation no longer works.

Emulation without dynarec is also an option, but that makes things slower and the 3DS is not exactly a powerhouse - look at mGBA for example. It also doesn't help that we don't have access to all of the 3DS' resources.

Comparing the SNES to the GBA is like comparing apples and oranges, totally different processors and architecture. Also, the GBA has more RAM (though a little less VRAM from what I can remember). So you can't really make a fair comparison between the two.
 
Okay, I swear to Jesus that I am not a fucking idiot like the other guy, nor am I trying to accuse anybody of incompetent codework, but can somebody explain to my why exactly it is that the SNES emulator runs so well, but GBA emulators seem to have a hard time? To my knowledge, SNES games are generally harder to emulate.

Again, I just don't understand why, and I'd like to know; no rude intent.
Blargsnes was coded from the scratch, this is a port.
 
pls never say its not the programmers fault and the 3ds is not powerfull enough, when you know on old firmware it works LOOOOOOL
Your the dumpest person I´v ever seen in this forum! Or to say so that you understabd it: Your so dump,LOOOOL, I have a working New 3DS emulator for the O3DS,LOOOOL
 
Last edited by TheZoroark007,
New updates for CitrAGB!
  • CIA releases are now N3DS-enhanced, giving the 3x speedboost seen in ninjhax2 in addition to the existing dynrec. Most if not all games run full speed now for N3DS.
  • The home button is functional in all screens.
  • X now goes to the home screen for CIA releases, allowing you to exit the app or switch apps in the middle of a game
Most notably, games which were OBJ-heavy have had their drawing times dramatically increased for N3DS CIAs (ie Spyro), vblank and hblank interrupts now do not cause lag at all (this was especially noticable in Pokemon games during grass battles). This basically brings it up to par with the speeds you'd expect from a PSP or similar device running a gpsp port.

As usual, the latest releases are in the main post.

EDIT: A note to those compiling from source, you'll need to compile the latest version of makerom from profi200's Project_CTR Github repo in order for the RSF to work with the added flags for N3DS enhancement. I don't have a setup to compile those for Windows or Mac at the moment, so if someone could compile that I'd appreciate it (and I'm sure other homebrew authors would as well).
 
Last edited by shinyquagsire23,

Site & Scene News

Popular threads in this forum