Homebrew GBARunner2

  • Thread starter Thread starter Gericom
  • Start date Start date
  • Views Views 1,345,451
  • Replies Replies 4,013
  • Likes Likes 121
Excellent piece of software! Here are my test results: GTA Advance works really well and has improved with latest commits. Tekken Advance however now crashes on second screen.

I have one question about this project: would it be possible to port it to the native DSi and 3DS hardware to make use of the extra ram? That would probably solve a lot of compatibility issues for users with those consoles.
 
Last edited by Acid_Snake,
Excellent piece of software! Here are my test results: GTA Advance works really well and has improved with latest commits. Tekken Advance however now crashes on second screen.

I have one question about this project: would it be possible to port it to the native DSi and 3DS hardware to make use of the extra ram? That would probably solve a lot of compatibility issues for users with those consoles.
Thanks!
The issue you mentioned is most likely this bug I accidentally introduced: https://github.com/Gericom/GBARunner2/issues/65
Edit: The issue has been solved: https://github.com/Gericom/GBARunner2/releases/tag/v20190821-170339_7408193

Making use of extra memory on dsi and 3ds is still a bit difficult because of the way my memory setup is and the way I access uncached mirrors. Basically everything from 0x08000000 and upward has no protection region assigned and causes aborts. Because there is no protection region assigned, I can still not access it even when I unlock all regions. I would most likely need to access main memory at 0x0C000000 to have an uncached mirror. Anyway, it is more work than simply enabling and using it
 
Last edited by Gericom,
I wasn't talking about using the extra memory from DS mode, I was talking about a native 3DS version which will need to be done from scratch. The idea would be basically an open source AGB_FIRM (which can be reversed to learn how Nintendo does it).
I wish I knew anything about ARM and the GBA/DS/3DS to help in coding, all I can do is test games and enjoy this great software: many thanks and keep up the great work!
 
  • Like
Reactions: Gericom
I wasn't talking about using the extra memory from DS mode, I was talking about a native 3DS version which will need to be done from scratch. The idea would be basically an open source AGB_FIRM (which can be reversed to learn how Nintendo does it).
I wish I knew anything about ARM and the GBA/DS/3DS to help in coding, all I can do is test games and enjoy this great software: many thanks and keep up the great work!
Ah, agb firm is totally not like gbarunner2. What it does is switch on the arm7 in gba mode, put the rom in the right place and do some config stuff. Then it boots the game with a little hack such that the bios intro doesn't play. The arm11 works basically like in twl firm, passing the video data to the gpu and that kind of stuff. Anyway, no emulation involved. I heared somewhere that agb firm actually contains some left overs for sd loading (probably from the development). That could probably be used.
 
  • Like
Reactions: Alexander1970
Any word on the rather annoying save issue? Would really like to be able to save games..

Also, why can I not tap the settings icon after loading GBARunner?
 
TWiLight Menu++ v9.1.1 now launches GBARunner2 with TWL clock speed (133mhz), so now some speed issues and flickers are fixed.
Nice, although it would be probably be desirable to be able to toggle it on and off. I don't know if any games may be negatively influenced.
Any word on the rather annoying save issue? Would really like to be able to save games..

Also, why can I not tap the settings icon after loading GBARunner?
I'm not sure what save issue you are referring to.
As for the settings, they are simply not implemented yet.
 
I've finally managed to make a proper save patch for FLASH1M_V103. This means that the pokemon games don't need sram patches anymore and that cache now works!

Furthermore, I've made a branch that can run pokemon emerald. The reason it doesn't work normally is that it has code above 2MB in the rom. Statically loading more of the rom means the dynamic rom cache needs to be shrunken. I've done that in the feature/rom3M branch. The cache is 400 kb there instead of 1.4 MB on master. Because I'm not sure if that negatively impacts any games, I'm keeping it on a separate branch, as it only fixes a couple of games anyway. Best would be if dsi memory could eventually be used to have both more statically loaded rom data and a large cache on dsi and 3ds, but that needs to be looked into. Note that I'm not gonna merge master into rom3M every time there's a little change. I'm mainly providing a build now so people can play Pokemon Emerald if they like.

Latest master: https://github.com/Gericom/GBARunner2/releases/tag/v20190822-132604_d6ae472
Latest feature/rom3M: https://github.com/Gericom/GBARunner2/releases/tag/v20190822-133118_9b41464
 
Ah, agb firm is totally not like gbarunner2. What it does is switch on the arm7 in gba mode, put the rom in the right place and do some config stuff. Then it boots the game with a little hack such that the bios intro doesn't play. The arm11 works basically like in twl firm, passing the video data to the gpu and that kind of stuff. Anyway, no emulation involved. I heared somewhere that agb firm actually contains some left overs for sd loading (probably from the development). That could probably be used.
Yes I know agb_firm has nothing to do with gbarunner2 and that they work very differently, that's the idea, to create an open source version of agb_firm by reversing it (not an actual gbarunner2 port, but rather a rewrite from scratch focused on 3ds), so we can load roms off SD on a 3DS with the same (if not better) compatibility as agb_firm without all the downsides of vc injection.
 
I've finally managed to make a proper save patch for FLASH1M_V103. This means that the pokemon games don't need sram patches anymore and that cache now works!


That was the save bug i was referring to, thank you.

though, this did make it so some of my romhacks no longer work, but at least the regular games save
 
That was the save bug i was referring to, thank you.

though, this did make it so some of my romhacks no longer work, but at least the regular games save
Hmm, strange. What would be special about those rom hacks (related to saving) that they don't work anymore?
 
I'd like to describe some things I noticed while testing the latest 3 releases (tried Pokémon Emerald and again FireRed, both EU version):

-Since commit v20190822-110034_c86fd05 both Fire Red (and Emerald since v20190822-110034_c86fd05, as it's the first branch suporting it) shows some black lines which randomly appear and disappear in the top section of screen. Nothing game breaking (Emerald in general runs pretty fine, doesn't have the glitchy transition from overworld and random encounter like FR), but the less recent commits did not have this issue

-Saving in Pokémon Emerald doesn't work in the Emerald branch and the merged branch (v20190822-110034_c86fd05 and v20190822-133118_9b41464 respectively). The saving process within the game goes fine, but upon restarting the game there is no save game to load and just the "new game" option

EDIT: I forgot to mention the same thing happens while playing Fire Red as well, so there must be something in the Emerald branch part of the code mishandling the saving process, at least in pokémon games

-The implemented FLASH1M_V103 patch version (v20190822-132604_d6ae472) breaks any previous save with the non patched ones (The game reports the "save data have been cancelled" message and it starts from scratch). It's something I expected, so I made a save backup which still works with unpatched releases, I just wanted to warn everyone who was seriously playing the game to stick with the old version or start the game again to try the newer relases

Everything I experienced happened on arm7 GBarunner2, still did not try arm9 or wramicache
 
Last edited by Enzo995,
  • Like
Reactions: Alexander1970
I'd like to describe some things I noticed while testing the latest 3 releases (tried Pokémon Emerald and again FireRed, both EU version):

-Since commit v20190822-110034_c86fd05 both Fire Red (and Emerald since v20190822-110034_c86fd05, as it's the first branch suporting it) shows some black lines which randomly appear and disappear in the top section of screen. Nothing game breaking (Emerald in general runs pretty fine, doesn't have the glitchy transition from overworld and random encounter like FR), but the less recent commits did not have this issue
I noticed that, although I wasn't sure if it was always there or not. It seems using cache fixes it though.

-Saving in Pokémon Emerald doesn't work in the Emerald branch and the merged branch (v20190822-110034_c86fd05 and v20190822-133118_9b41464 respectively). The saving process within the game goes fine, but upon restarting the game there is no save game to load and just the "new game" option

EDIT: I forgot to mention the same thing happens while playing Fire Red as well, so there must be something in the Emerald branch part of the code mishandling the saving process, at least in pokémon games
Hmm, that's kinda interesting as not much changed there. Edit: Maybe I see what the issue could be Edit2: Fix here https://github.com/Gericom/GBARunner2/releases/tag/v20190822-153549_cfc6525

-The implemented FLASH1M_V103 patch version (v20190822-132604_d6ae472) breaks any previous save with the non patched ones (The game reports the "save data have been cancelled" message and it starts from scratch). It's something I expected, so I made a save backup which still works with unpatched releases, I just wanted to warn everyone who was seriously playing the game to stick with the old version or start the game again to try the newer relases

Everything I experienced happened on arm7 GBarunner2, still did not try arm9 or wramicache
That's most likely caused by the sram patch and the lack of proper 128kb save handling with sram.
 
Last edited by Gericom,
  • Like
Reactions: Alexander1970
Newest TwilightMenu++ fixes Tekken Advance (now works at full speed both audio and graphics). It also eliminates some minor slowdowns in GTA Advance. Great work!
The new rom3 version makes Fifa06 run and get to gameplay but there is a horrible screeching sound.
 
Hmm, strange. What would be special about those rom hacks (related to saving) that they don't work anymore?

No idea. But it’s a fire red hack. Boots to the (C) Nintendo screen, that fades then the rom doesn’t go any further. Works on the previous build though.
 
No idea. But it’s a fire red hack. Boots to the (C) Nintendo screen, that fades then the rom doesn’t go any further. Works on the previous build though.

On top of this, for fun I tried loading a rom of “My A**” version saves but black screen when loading.

Sapphire works fine. Seems like fire red works fine as well.
 

Site & Scene News

Popular threads in this forum