Homebrew OPEN_AGB_FIRM discussion thread

Archerg

Active Member
Newcomer
Joined
Jul 30, 2018
Messages
27
Trophies
0
Age
25
XP
494
Country
United States
Odd question, but on my mind. GBA injects utilize a bios per CIA file and per game. Since OAF loads them straight from the .firm file, where is the bios for this being stored? I tried checking the source on GitHub, but there aren't any .bin files aside from the save database, and the makefile script points to a 9.bin and an 11.bin but aren't in the proper folders as it also points to them in an ignore script.

Would I assume that profi200 has either made a custom bios from scratch, obfuscated the bios within his scripts somewhere, or creates a bios out of the arm 9 bin to make an Arm 7 GBA bios? And would any of this create a system that's possible to use your own bios files, or the prototype bios?
 

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,189
Trophies
2
XP
3,443
Country
Spain
Seeing how an option in Luma is to show the bios intro when starting OAF, and that there's a tutorial in github about how to get a GBA bios out of the 3ds, I guess the system has already it.

I think most people would prefer to use mGBA since it does allow more common features that is standard for emulators than open agb firm.

The gpsp core has better performance than mgba, and also has all the other stuff. I've only tries a handful, but all of them had issues on mgba (or gbarunner2) but none apparent in gpsp.

OAF is more akin to play it in real hardware, with its pros and cons.
 

pokota

Well-Known Member
Member
Joined
Apr 14, 2016
Messages
101
Trophies
0
Age
34
XP
597
Country
United States
Odd question, but on my mind. GBA injects utilize a bios per CIA file and per game. Since OAF loads them straight from the .firm file, where is the bios for this being stored? I tried checking the source on GitHub, but there aren't any .bin files aside from the save database, and the makefile script points to a 9.bin and an 11.bin but aren't in the proper folders as it also points to them in an ignore script.

Would I assume that profi200 has either made a custom bios from scratch, obfuscated the bios within his scripts somewhere, or creates a bios out of the arm 9 bin to make an Arm 7 GBA bios? And would any of this create a system that's possible to use your own bios files, or the prototype bios?
AGB_FIRM (and by extension, OAF) essentially is the bios, just configured for CTR hardware rather than a literal AGB system.

Presumably the reason GBA Injects need a bios for each CIA is so that you don't have to do a cold boot of the device when you're done playing, like you have to do with OAF (since a CIA inject still lets you use the HOME button to get out of the GBA environment, which OAF can't directly do)
 

ScottRobRubin

Member
Newcomer
Joined
May 6, 2023
Messages
5
Trophies
0
Age
28
XP
65
Country
Italy
I've been using OAF for a while and I'm very pleased with this little program!
Beats having to deal with VC injects.
However I was wondering if in the future it could be possible to use a better scale filter than the ones that are currently available.
Pixel perfect is not screen centered, bilinear is too blurry and hardware is too mixely..
Something closer to a linear filter like what TWpatch can use for TWLfirm (by making TwlBg.cxi and let luma autoload the module for use with TwilightMenu++) would be nice (or something like what mGBA does with its "bilinear pixelated" filter but I assume that one might be harder to implement).

I know TWpatch has an hidden option to set redshift and more and make a .cxi file for it, but while I got it working for TWLfirm, I didn't have luck with AGBfirm.
Is it not compatible with OAF?
 

ScottRobRubin

Member
Newcomer
Joined
May 6, 2023
Messages
5
Trophies
0
Age
28
XP
65
Country
Italy
by booting it up while holding Y, you have some options to generate an AgbBg.cxi file, but I didn't fully understand how to use it
Maybe it only affects VC injects?
Though this isn't the right place for that topic I think.
Either way, I really do wish some better filters could be used with the scaler of OAF, but can't say for sure if it's possible or not..
 

EXPowerBlast

Member
Newcomer
Joined
Oct 8, 2021
Messages
13
Trophies
0
Age
23
XP
95
Country
Canada
Can anyone help me with Classic NES Excitebike? It gives me the Game Pak Error message. It's the only Classic NES Series game that does so, and the Famicom Mini counterpart works just fine.
 
Last edited by EXPowerBlast,

steval_beaning

Well-Known Member
Newcomer
Joined
Feb 4, 2022
Messages
51
Trophies
0
Age
22
Location
some crap town
XP
535
Country
United Kingdom
I will say that I personally prefer how the official GBA VC handles scaling. with open_agb_firm, the bilinear setting is far too blurry, and the hardware setting suffers from shimmering when scrolling, whereas VC strikes a better balance between the two extremes.
 

ScottRobRubin

Member
Newcomer
Joined
May 6, 2023
Messages
5
Trophies
0
Age
28
XP
65
Country
Italy
I still wish something like mGBA's "Bilinear (Pixelated)" filter could be implemented, because it's pretty much the best they can look upscaled (way less mixely unlike hardware, no blurryness unlike bilinear), it almost looks like a correct x2 of the original resolution, which is impressive
I'll try to snap a photo once I can, but I believe other people talked about it here a while ago
 
  • Like
Reactions: steval_beaning

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,189
Trophies
2
XP
3,443
Country
Spain
Check what I said on gpsp with specific settings on previous posts here.

And while vc injects can be made without it, official gba vc releases are terrible to me because they introduce ghosting. Intentional ghosting, even. I cannot understand why...
 

steval_beaning

Well-Known Member
Newcomer
Joined
Feb 4, 2022
Messages
51
Trophies
0
Age
22
Location
some crap town
XP
535
Country
United Kingdom
Check what I said on gpsp with specific settings on previous posts here.

And while vc injects can be made without it, official gba vc releases are terrible to me because they introduce ghosting. Intentional ghosting, even. I cannot understand why...
I believe it was because some games would flicker certain objects to fake transparency (e.g. the map in f-zero). granted ghosting is not the best way to work with it, something like mGBA's interframe blending isn't as bad but oftentimes it's just better to just live with the flicker.

also I got good results on VC using this (I think) on my NSUI injects to improve colour balance by adjusting the gamma. I haven't tried gpsp in a while though, I remember the sound being a bit worse than open_gba_firm or VC last time I tried, and in the past I have had compatibility problems with certain games such as mario golf and final fantasy vi.
 

ScottRobRubin

Member
Newcomer
Joined
May 6, 2023
Messages
5
Trophies
0
Age
28
XP
65
Country
Italy
gpsp is a very old emulator, and not accurate at all
that is why it might run better, but it will also be more prone to be incompatible with most games
I rather not deal with it
 

Rya687

Well-Known Member
Newcomer
Joined
Apr 28, 2016
Messages
62
Trophies
0
XP
710
Country
Austria
Why arent the default savefiles of this compatible with twlmenu, retroarch, or pizza boy? (pizza boy is a gba emulator for android)
As explained by the readme, most emulators use an incorrect byte order for their EEPROM save files. OPEN_AGB_FIRM uses the correct order, presumably because it's not an emulator.

This tool can swap the byte order: https://exelotl.github.io/gba-eeprom-save-fix/
 

pokota

Well-Known Member
Member
Joined
Apr 14, 2016
Messages
101
Trophies
0
Age
34
XP
597
Country
United States
in my experience OAF save data is compatible with retroarch without further adjustments to the save binary, it's just a matter of file location. It might depend on what core you're using for retroarch GBA though.
 

That1LoserGuy

Well-Known Member
Newcomer
Joined
Jul 8, 2022
Messages
75
Trophies
0
Age
34
Location
Da Usa
XP
159
Country
United States
As explained by the readme, most emulators use an incorrect byte order for their EEPROM save files. OPEN_AGB_FIRM uses the correct order, presumably because it's not an emulator.

This tool can swap the byte order: https://exelotl.github.io/gba-eeprom-save-fix/
1. This make sense because emulators make the save files for my game (mario and luigi superstar saga) start with GPRLAM, while open_agb_firm saves for my game start with MALRPG.

2. Thank you for the tool, i will definitly be trying it.
Post automatically merged:

@pokota tysm for the tool, i tried out the .sav it made with my emulator and it had the progress i had on open_agb_firm, i had been searching for a week for something to make the savefile work.
 
Last edited by That1LoserGuy,

branchus

New Member
Newbie
Joined
Feb 6, 2007
Messages
4
Trophies
1
XP
50
Country
Just discovered this GBA implementation on 3DS, really nice. especially at the time my ndsl died. so I basically can play three generations of games on 3ds natively.

Thank you very much :)
 

EXPowerBlast

Member
Newcomer
Joined
Oct 8, 2021
Messages
13
Trophies
0
Age
23
XP
95
Country
Canada
Can anyone help me with Classic NES Excitebike? It gives me the Game Pak Error message. It's the only Classic NES Series game that does so, and the Famicom Mini counterpart works just fine.
Ended up finding out that the solution was as easy as overriding the save type.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    BakerMan @ BakerMan: this one