Homebrew CitrAGB - 3DS GBA Emulator (WIP)

davhuit

Well-Known Member
Member
Joined
Nov 23, 2005
Messages
994
Trophies
0
XP
550
Country
France
Only 20? The price changed again? Because when smealum said the name of the exploit, the price was like 500 dollars in some places...

If yes, I suppose the new gateway exploit might have played a role in that change of price.
 

Slushie3DS

Cold Beverage Lover
Member
Joined
Jan 9, 2015
Messages
707
Trophies
0
Age
29
XP
420
Country
United States
Only 20? The price changed again? Because when smealum said the name of the exploit, the price was like 500 dollars in some places
The price has went down a lot. You can get the cartridge used for about $18. I got lucky and caught a guy that was selling them new, never out of the plastic, for only $20. Considering that my local super market sells older 3DS games for around $5, it is kind of expensive.
 

Slushie3DS

Cold Beverage Lover
Member
Joined
Jan 9, 2015
Messages
707
Trophies
0
Age
29
XP
420
Country
United States
I lucked out and got both of my copies for $10 all together.
Hopefully we can eventually get the homebrew launcher on gateway. It seems like a lot of devs like the 3dsx format.
I know I do. I've been kind of coding my Atari 2600 emulator in the dark while I wait for my game.
 

davhuit

Well-Known Member
Member
Joined
Nov 23, 2005
Messages
994
Trophies
0
XP
550
Country
France
The price has went down a lot. You can get the cartridge used for about $18. I got lucky and caught a guy that was selling them new, never out of the plastic, for only $20. Considering that my local super market sells older 3DS games for around $5, it is kind of expensive.

Nice to know. Most of the things I use are .cia files and don't require it but I'll probably buy one when the emulator will be in a more advanced stage then.
 

FPSRussi4

Well-Known Member
Member
Joined
Dec 1, 2013
Messages
671
Trophies
0
XP
609
Country
Laos
Not sure if it's been stated or if it's an error on my end, but I followed the installation instructions on newest build and it keeps kicking me to home menu, saying "There's been an an error and the system will now restart."
 

ubergeek77

Post editing world champ.
Member
Joined
Dec 6, 2014
Messages
584
Trophies
0
XP
607
Country
United States
Is this still being developed? When this got released, it all but killed the previous emulator, and that one would at least run at 50% speed. This one hardly runs at all...
 

shinyquagsire23

SALT/Sm4sh Leak Guy
OP
Member
Joined
Nov 18, 2012
Messages
1,977
Trophies
2
Age
26
Location
Las Vegas
XP
3,765
Country
United States
Is this still being developed? When this got released, it all but killed the previous emulator, and that one would at least run at 50% speed. This one hardly runs at all...
It's still being worked on (somewhat). Still trying to find a better way to invalidate the instruction cache, because that is the only thing stopping this emulator from running at full speed. Like, seriously. If you look at the demo in the main post, it runs 100% full speed, with sound. The main issue is that while gpsp can cache frequently called routines, it cannot cache new routines before they happen, so games like Pokemon and the like will lag pretty hard in that area due to having a crapton of subroutines.

The problem with flushing the icache is that this can normally only be done in ARM11 kernel mode. Smea's method involves unmapping and mapping a section of memory to force the flush/invalidation, but it's horribly laggy. I was looking at yifanlu's work and I was maybe thinking it could be done via kernel hax or maybe a nop slide or something, idk.
 

ubergeek77

Post editing world champ.
Member
Joined
Dec 6, 2014
Messages
584
Trophies
0
XP
607
Country
United States
It's still being worked on (somewhat). Still trying to find a better way to invalidate the instruction cache, because that is the only thing stopping this emulator from running at full speed. Like, seriously. If you look at the demo in the main post, it runs 100% full speed, with sound. The main issue is that while gpsp can cache frequently called routines, it cannot cache new routines before they happen, so games like Pokemon and the like will lag pretty hard in that area due to having a crapton of subroutines.

The problem with flushing the icache is that this can normally only be done in ARM11 kernel mode. Smea's method involves unmapping and mapping a section of memory to force the flush/invalidation, but it's horribly laggy. I was looking at yifanlu's work and I was maybe thinking it could be done via kernel hax or maybe a nop slide or something, idk.

Thanks. I'm glad to hear it hasn't gone away. It's likely the game I was trying to run was simply poorly coded, too, as every game is different.

Is what you need for the backbone of this emulator solely contained in ninjhax? Do you think you'd get a speed boost if you moved this over to that ARM/Spider/browser hack we saw a few days ago?
 

shinyquagsire23

SALT/Sm4sh Leak Guy
OP
Member
Joined
Nov 18, 2012
Messages
1,977
Trophies
2
Age
26
Location
Las Vegas
XP
3,765
Country
United States
Thanks. I'm glad to hear it hasn't gone away. It's likely the game I was trying to run was simply poorly coded, too, as every game is different.

Is what you need for the backbone of this emulator solely contained in ninjhax? Do you think you'd get a speed boost if you moved this over to that ARM/Spider/browser hack we saw a few days ago?

Depends. With ARM11 kernel access I'd definitely be able to get some good speed boosts, because instruction cache invalidation is just 4 instructions (assuming this isn't what's killing the speed in the first place). After looking at what they have I believe I'll be able to change a few things to get it running as a .cia, although the same cache invalidation issue will still be there which is no bueno. I would prefer to stay away from the browser stuff (or anything which relies on exploitation to gain ARM11 kernel or ARM9 kernel), but it may be needed, idk. Fact of the matter is though, without the ability to actually invalidate the instruction cache, it will be difficult to properly implement dynrec emulators for anything really. It does run full speed though, provided every piece of the program is stowed away in the recompiling caches. This was the case with my demo.gba and as such it runs at full speed, no issues with video or sound at all (and it's beautiful). It *might* be possible to recursively scan the entire ROM and recompile it that way, avoiding invalidation altogether, but that also would be pretty tricky.

EDIT: OK, *used* to run at full speed. Apparently on 4.5 it runs a crapton slower (as in, 50%) for some reason, but I haven't done any code changes so no idea what could cause this regression other than whatever Nintendo was using for mapping memory being slower on 4.5 than on 9.2). Can anyone test the demo on 8.x or 9.x and set a feel for how fast it is on those versions?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    BigOnYa @ BigOnYa: I played the intro to far cry 5, that is like some crazy Jim Jones cult shit. Still its petty...