Homebrew CitrAGB - 3DS GBA Emulator (WIP)

del_delly

Well-Known Member
Member
Joined
Sep 21, 2013
Messages
137
Trophies
0
Age
31
XP
163
Country
Norway
I am guessing the issue is
1. GBA instead of gba(it needs to be lower case)
2. It has to be in the gba folder, since it doesn't read the root folder, unlike what the emu's gitpage says
If it isn't working, then we have no idea.
 

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,212
Trophies
2
XP
34,102
Country
Mexico
Is there any way or any talk about putting the Homebrew Channel on the actual 3DS screen without going through Ironfall or YouTube?
A la Wii?
Not a chance.

You'll have to disable sig checks in order to have a HBC like that of the Wii, or made a custom CIA that can be signed properly to run and load without sig checks.

You need something similar to the Trucha Bug in the Wii to do that.
 

Apache Thunder

I have cameras in your head!
Member
Joined
Oct 7, 2007
Messages
4,433
Trophies
3
Age
36
Location
Levelland, Texas
Website
www.mariopc.co.nr
XP
6,802
Country
United States
A la Wii?
Not a chance.

You'll have to disable sig checks in order to have a HBC like that of the Wii, or made a custom CIA that can be signed properly to run and load without sig checks.

You need something similar to the Trucha Bug in the Wii to do that.

You seem to not have a clue what you are talking about. HBC isn't available because no one seems able/willing to recreate the custom services that are setup during the exploit process and load direct to it via a CIA. A Wii has nothing to do with this discussion. The 3DS already has comparable exploits. It's just a matter of recreating the environment for the HBC thing to run in.

The Homebrew Channel on the 3DS doesn't operate in the same way as the Wii version. The one for the Wii is installed as it's own app while the one for the 3DS piggy backs off a game exploit and isn't ever loaded direct from the Home Menu. They probably aren't coded the same way and only real similarity is the concept/name.
 
D

Deleted User

Guest
You seem to not have a clue what you are talking about. HBC isn't available because no one seems able/willing to recreate the custom services that are setup during the exploit process and load direct to it via a CIA. A Wii has nothing to do with this discussion. The 3DS already has comparable exploits. It's just a matter of recreating the environment for the HBC thing to run in.

The Homebrew Channel on the 3DS doesn't operate in the same way as the Wii version. The one for the Wii is installed as it's own app while the one for the 3DS piggy backs off a game exploit and isn't ever loaded direct from the Home Menu. They probably aren't coded the same way and only real similarity is the concept/name.
You only seem to have a minimal understanding of how any of the exploitation process works. There isn't an "unwillingness" to create a HBC that loads directly from the homescreen, it's just more difficult than folks that don't write code understand.

If people are just simply unwilling, or lazy by assertion, please go ahead and try working on it yourself.
 
  • Like
Reactions: ShadowOne333

OctopusRift

GBATemp's Local Octopus, Open 9am-2am. "Not Yet"
Member
Joined
Nov 19, 2014
Messages
1,460
Trophies
0
XP
947
Country
Saint Kitts and Nevis
You only seem to have a minimal understanding of how any of the exploitation process works. There isn't an "unwillingness" to create a HBC that loads directly from the homescreen, it's just more difficult than folks that don't write code understand.

If people are just simply unwilling, or lazy by assertion, please go ahead and try working on it yourself.
Its damn near impossible lol... ninjhax 2 might be more easy to port to CIA using a 3dsx to cia wrapper due to less dependencies, but, we'll have to wait for ninjhax 2's source.
 

Apache Thunder

I have cameras in your head!
Member
Joined
Oct 7, 2007
Messages
4,433
Trophies
3
Age
36
Location
Levelland, Texas
Website
www.mariopc.co.nr
XP
6,802
Country
United States
You only seem to have a minimal understanding of how any of the exploitation process works. There isn't an "unwillingness" to create a HBC that loads directly from the homescreen, it's just more difficult than folks that don't write code understand.

If people are just simply unwilling, or lazy by assertion, please go ahead and try working on it yourself.

Creating homebrew for the 3DS and writing exploit payloads aren't exactly the same and the only post history I see from you is from the homebrew side of the system. So how I can I know for sure what level of understanding you have?

I won't claim to know how to code or write exploits, but I know enough about the 3DS to know that it's not the same security wise as the Wii. Hence my post above to the guy who mentioned the Wii exploit. Wii exploits and 3DS exploits are not the same and should not be compared.

The HBC not being available via CIA because of what I mentioned above. I never claimed it would be "easy" to make HBC available as a CIA. Only said that those with the expertise to do it had no interest in doing it. Mostly because of the mantra of not supporting CFWs that promote piracy. That aspect I will not discuss here because it's a dead horse that's been beaten to death over and over.

Telling someone to "work on it themselves" is not constructive criticism and I do not respect people who have this mentality no matter how far up the chain they are in coding expertise.
 
  • Like
Reactions: SLiV3R
D

Deleted User

Guest
You seem to not have a clue what you are talking about. HBC isn't available because no one seems able/willing to recreate the custom services that are setup during the exploit process and load direct to it via a CIA. A Wii has nothing to do with this discussion. The 3DS already has comparable exploits. It's just a matter of recreating the environment for the HBC thing to run in.

The Homebrew Channel on the 3DS doesn't operate in the same way as the Wii version. The one for the Wii is installed as it's own app while the one for the 3DS piggy backs off a game exploit and isn't ever loaded direct from the Home Menu. They probably aren't coded the same way and only real similarity is the concept/name.
No... I'm pretty sure he's right. The question was why it can't be installed to the home menu so we don't have to go through ironhax/tubehax, and the answer is that, unlike on the Wii where this was perfectly possible, this cannot be done on the 3DS without disabling signature checks. You'd have to go through an exploit first, which would defeat the purpose of having it installed since the exploit could just open it itself, unless you're looking to install it in emuNAND.
 

Apache Thunder

I have cameras in your head!
Member
Joined
Oct 7, 2007
Messages
4,433
Trophies
3
Age
36
Location
Levelland, Texas
Website
www.mariopc.co.nr
XP
6,802
Country
United States
I'm not trying to say this can be done out side of CFW. I never claimed that. Of coarse any custom CIA homebrew requires sig checks patched out. It would be nice to have HBC for CFW users. But aside from that HBC requires an exploit of some kind first.

EDIT: It seems I misunderstood the conversation. I was under the impression they were talking about loading the Homebrew channel from a CIA in a CFW that already took care of the signature patches and what not so I thought all this was taking place already in a exploited environent (as I assumed that's what would be occuring for those wanting to load HBC from the home menu). Besides in the context of this thread, the effort is better used to adapt CtrAGB to work as a CIA instead of trying to make HBC a CIA so you can launch CtrAGB from that.

The Homebrew channel on the Wii didn't require the system to be exploited on every boot up like the the 3DS does so once you used an exploit, you can install it and once it's installed that's all you had to do. It was available to you at boot up. With the 3DS you have to exploit the system everytime you reset/power cycle the console due to the added security like the sig checks and what not.
 
Last edited by Apache Thunder,
  • Like
Reactions: SLiV3R

TecXero

Technovert
Member
Joined
Apr 13, 2014
Messages
2,810
Trophies
0
Location
Mainframe
XP
1,040
Country
United States
I'm fine with IronHax. It's a bit roundabout, but just spamming A will get me to the homebrew launcher in about 15 seconds. So I'm not too worried about a "Homebrew Channel", but I could definitely see those stuck with TubeHax wanting an alternative.

EDIT: I just realized this is the CitrAGB thread (I was just going through my notifications), isn't this a little bit off topic? Seems like something that belongs in the IronHax/TubeHax thread.
 
Last edited by TecXero,

KnightBearGames

Active Member
Newcomer
Joined
Aug 17, 2015
Messages
42
Trophies
0
Age
32
Location
Ohio
XP
58
Country
United States
I'm fine with IronHax. It's a bit roundabout, but just spamming A will get me to the homebrew launcher in about 15 seconds. So I'm not too worried about a "Homebrew Channel", but I could definitely see those stuck with TubeHax wanting an alternative.

I'm asking for two rather silly reasons.

One, I feel like I'm totally disrespecting the crew that made Ironfall by loading that game up and never playing it. Makes me feel bad.

Two, I'm a neat freak when it comes to my electronics. I would like to put it on the main screen with a nice little home icon. Just like my Wii.
 

TecXero

Technovert
Member
Joined
Apr 13, 2014
Messages
2,810
Trophies
0
Location
Mainframe
XP
1,040
Country
United States
I'm asking for two rather silly reasons.

One, I feel like I'm totally disrespecting the crew that made Ironfall by loading that game up and never playing it. Makes me feel bad.

Two, I'm a neat freak when it comes to my electronics. I would like to put it on the main screen with a nice little home icon. Just like my Wii.
Yeah, I get it. If the option was there, I'd go for it. As it is, though, I'm rather content.

As for the topic, I wouldn't mind seeing something that would allow dynarec emulation on my old 3DS, but I have a feeling that won't happen for quite a while. Oh well, my micro doesn't take up much bag space.
 
  • Like
Reactions: KnightBearGames

rayofcannon

New Member
Newbie
Joined
Aug 20, 2015
Messages
2
Trophies
0
Age
27
XP
53
Country
Senegal
Greets all,

So I've been working on a thing for a while. I had originally abandoned the project because I thought it was unable to be done without the use of dynamic recompilation, however as it turns out it was in fact possible. I present my 3DS GBA Emulator: CitrAGB, a 3DS GBA emulator based on gpsp.

t0wIZum.png

ht0cjXh.png


As of now, compatibility is technically on-par with whatever gpsp's interpreter is able to handle, however, due to the nature of the port some games will not run or crash on particular parts. Flipping the screen to it's proper orientation did a bit of damage which might take a bit to get fixed up, and a lot of things still need implementation. But, on the plus side, many games that do run actually run fairly well, around 50% speed in optimal cases, or as low as 20% if the game uses extremely inefficient idle loops. In the future I also plan on hopefully porting gpsp's dynrec CPU to be able to work on the 3DS as well, once smea updated ninjhax to allow developers to set RAM pages executable. This will increase emulation speed dramatically.

Controls:
A, B, Start, Select, L, R, and the D/C-Pad all map out to their rightful GBA buttons. Y is bound to select, and X currently exits back to the homebrew menu

Sauce Code:
You can find the source code for CitrAGB on my GitHub here. Once again, this is very much a work in progress and extremely buggy, but the bugs will be fixed and the emulator refined with time. However, if you encounter bugs let me know the game name and when the bug occurs so I have games to test against while fixing bugs.

Installation Instructions:
First, grab the .3dsx here and rename it/place it in sd:/3ds/<name of .3dsx>. You can also grab the smdh here and give it the same name and place it in the same directory as the 3dsx. Next, download game_config.txt from here and a sample homebrew application here to make sure everything is set up right before you run regular GBA ROMs. The last thing you will need is gba_bios.bin. You can either dump this/find this online, or you can use Normatt's open source GBA bios here. A proper GBA bios dump is preferred, although Normatt's bios hasn't shown any issues as of yet. Once you have gba_bios.bin, place it either in the root of your SD card or in /gba.

After downloading everything, your SD card structure should look something like this:
game_config.txt
gba_bios.bin
demo.gba
/3ds/<3dsx name>/<3dsx name>.3dsx
/3ds/<3dsx name>/<3dsx name>.smdh


Currently Known Bugs:
  • Any video issues which may arise
Special Thanks
Big thanks to Normatt, smea, yellows8 and plutoo for helping me get this working. Probably wouldn't have got anywhere in some places without your help.



after downloading a gba bios , the emu just freezes after the gameboy advance screen , i cant acess games :/ what am i doing wrong please help
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Back when I was playing kakarot I looked up one little guide now all I see is dbz stuff