Git Product home page Git Product logo

open_agb_firm's People

Contributors

exelotl avatar htv04 avatar midnoclose avatar nemris avatar profi200 avatar spitzeqc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

open_agb_firm's Issues

Project name change

The name of this project was the first that came to my mind when i had to decide but i'm not very good in giving names and i figured the name is not so easy to type so i decided it should be changed. However i need ideas for a proper name. Here are ideas i got so far from people on GodMode9 IRC/Discord:

openAgbFirm (it was a joke but might aswell include it)
YellowGba (CTR -> Citra -> Citrus -> yellow)

At the end i will probably make a poll with the most popular ones (if i get many, otherwise all).

Save detection fails on Pinball Challenge Deluxe (Europe).

This game has saving support but doesn't include any of the typical save type strings, so it would need to be hardcoded as an exception. The publisher Ubisoft decided to pull the EEPROM before release, presumably as a cost-cutting measure, but saving support was left in the game and I can confirm saving works on real GBA hardware with a flash cart.

With apologies, I have no idea what save type the game expects, so I'm not any help in terms of getting this working.

[request] Display on bottom screen

Would it be possible to add a config option to display on the bottom screen? (also a way to change settings without removing the sd card would be nice)

Button remapping

Using the X/Y buttons would be really useful in certain games. I tried remapping buttons by modifying the source code and compiling it, but it only affected the file browser. Is it possible to implement button remapping?

Games with no save type lead to a white screen

With the last release, when I launch a game with no save type (ie: Finding Nemo, Britney's Dance Beat...), it leads to a white screen and I can't play. I have to either disable gba_db.bin or mess with bool saveOverride true and then select another random save type which is not 15.

Sonic The Hedgehog - Genesis not saving

I know, it's an absolutely horrible port, but bear with me.

Sonic The Hedgehog - Genesis doesn't seem to be able to save. According to No-Intro, it uses EEPROM_v124, like Mario & Luigi: Superstar Saga does.

Upon booting the game, the effects of the game being unable to save start to appear. The music and sound options are set to off, and the game has a "Resume" button that isn't supposed to appear yet.

When playing the game, the "Saving..." pop-up still appears as if saving were working, but it's probably in vain, because after I turned the game off and checked my SD card, there was no .sav file.

I guess this has something to do with the buggy EEPROM detection. Can this be fixed at all before a save type database is implemented?

Speaking of save type databases, I believe VBA-M has one. Not sure about mGBA though.

Backlight brightness too dark even at 64

I don't know if this is just me or not, but the backlight brightness, even at 64, seems a little too dark. Is the limit really 64? I tried checking GodMode9's code and I think it had a limit of 210.

Also, a bit unrelated, but what's the best outGamma setting for "accurate" colors? I set mine to 2.2, same as the inGamma setting, and that seems to work well. Don't know if this is the right gamma to set it to, though.

Save detection

Save type hardcoded to 32 KiB (256k) SRAM. Unknown how save type detection will be done.

Why not use a native_firm application to select a rom and write the path (to rom and save) and the save type to "open_agb_firm.ini"? Then trigger a reboot to open_agb_firm and it loads the ini file. I figure in native_firm there's more room to work with. You might even be able to write the config to ram since it isn't cleared on a reboot.

Implement change ROM and last rom folder

Is it possible for a newer version to be able to press a combination of buttons to select another game instead of having to turn off the console, also it would be nice if open_agb_firm remembered where it was the last folder you loaded a game

Headphones don't work

When booting open_agb_firm (I used the no intro version) despite my headphones being plugged in, the audio still streamed through the system's built in speakers. Using an old 3ds if that matters.

Implement ROM mirroring

Uploading 09172BDB-F2EA-4AF2-95D4-DB6F36043370.jpeg…
Currently, ROM out of bounds is padded with 0xFF, instead of mirroring the existing ROM space. For a test, see mgba’s Game Boy Advance test suite.

[Bug] Agb Save format not compatible with GBArunner2

One issue I have encountered when using this is that the Save Format isn't compatible with GBArunner2 and if you try to load Games with Saves that were played in GBArunner2 it wipes the save clean. The same thing happens when you load saves from games played on Open Agb firm.

Hopefully this issue can be fixed soon.

This issue Also doubles as a PSA. Do not try to load saves from games played in GBArunner2 in Open Agb firm. I recommend putting games you're going to play in AGB firm in a separate folder from games with GBArunner2.

[Enhancement] 3d slider brightness control

It would be nice if the 3ds slider was able to control brightness, so you didn't have to go into the settings in order to change it. Also, the lowest value should have the screen totally off. this would make it easy to turn off the screen when you close your 3ds, so you wouldn't waste tons of battery life on the screen when you're not using it.

Limit of ROMs on a single folder is of 512

I have a folder that has 543 ROMs, and the file browser seems to cap at maximum 512 listings,cutting out some ROMs.

Workaround is to divide the ROMs into more folders.

Implement a method to set scaler to 1:1

I believe there should be some way to use 1:1 video scaling. (Personally, I do not like the smeared look of non-integer scaling and am willing to sacrifice screen real estate for sharper pixels.)

Since there is currently no configuration UI, this could be implemented as a separate build, but I understand this would be another build and added effort for binary releases. So, this is an enhancement request that would be nice-to-have.

Loading from fastboot3DS v1.2 menu (not keycombo) results in screens being turned off

Attempting to load open_agb_firm from the fastboot3DS v1.2 menu results in the screens being turned off. Presumably it's running, since pressing B shuts the system off, but with the screens off it's rather difficult to do anything.

This does not happen if open_agb_firm is assigned to a key combo and the key combo is used to boot open_agb_firm. It also doesn't happen if loaded through GodMode9 v1.9.1.

open_agb_firm will not boot

I'm using an old 3ds, I tried both the intro version and no intro version. When booted, the 3ds simply boots to a black screen, both top and bottom. When any buttons are pressed, the system shuts down.

[QUESTION] Implementing game reset

Is it possible to implement the soft game reset like on real hardware?
The L + R + Start + Select reset combo.
It would be more convenient than having to restart the console each time! Not sure if the hardware allows it tho.

First launch works, next launch crashes (hangs)

I'm running open_agb_firm alpha build 2020-09-08 on a new 3ds (non-xl) and the first time I launch it, it works perfectly; I see the file browser on the lower screen and can load all roms no problem (it runs really nicely!!). When I'm done playing, I press the power button to turn off my 3ds and then press power again (while holding start) and both screens just stay black and the blue power LED stays on solid. I have to pull the battery to get around the crash / hang. Then when I power on again the next time while holding start everything works fine again. Of course I have to reset my system date and time every time I pull the battery, otherwise everything works fine but would be nice if it worked properly every time. Is anyone else experiencing the same issue?

EDIT: I noticed I can avoid the crash / hang if I boot into regular 3ds mode after loading open_agb_firm and powering off. In other words I cannot load open_agb_firm twice consecutively without crashing my system, but I can run it multiple times by booting into regular 3ds mode after every run of open_ags_firm.

[Request] Filter options

Is it a possibility to add filter options editable in the configuration? I'm one of the few who actually like full screen gba with bilinear filtering XP

[Request] Custom savegame folder

Hi!
There is any way to use different folder for savegames? Maybe in a config setting?
This can be great to have less mess in folders (Or, for me for example, can share gPSP savefiles and open_agb_firm ones, that are compatible as is for can I see)
Thanks :)

Doesn't boot

I used the latest .firm from the releases page and it just has a black screen. The power light is on but no other light.

Is there a certain place I should put the .firm or the roms? At the minute my firm is in the payloads folder

Video scaler options don't appear to do anything

I tried changing the video scaler options in the config.ini between 0, 1, and 2 but the output appears exactly the same in every case. I even dumped the screen output on each mode and as far as I can tell they're not different from each other in any way. I would prefer to play with a bilinear filtered output. Is this config option just not supported yet?

[Request]Can you add support for more languanes?

When i using it,the ROM Had to be named in English,it not very convenient fou us.Can authors add support for other languages to display other languages in ROM list,suca as japanese,chinese,korean,etc.
plz

Brightness. Can it be increased?

Now, the roms run in a half bright mode. So, it's sort of dark. Changing the brightness in the n3ds settings doesn't help, it is full bright there already. Thx.

Implement ROM mirroring for Classic NES games

The Classic NES re-releases rely on a multitude of quirks and edge-cases as anti-emulation measures. The cartridges are particularly unique in that they are the only Game Paks to mirror out-of-bounds ROM areas. Without mirroring, in-game controls refuse to work correctly and only accept input somewhat sporadically. At the moment, open_agb_firm pads the out-of-bounds ROM area with 0xFFFFFFFF, which is incorrect behavior for both Classic NES and regular Game Paks.

Uploading GBA roms remotely?

Hi!

I've been wondering if it would be possible to receive and immediately launch a GBA rom over my local network? E.g. using a simple protocol like 3dslink as supported by the standard hbmenu.

As a GBA homebrew developer, I could imagine this would become the fastest and most ideal way to test my game on real hardware!

Many thanks for your amazing work thus far :)

[QUESTION] Could it work on DSi?

It is just a question, I know nothing about hard/software for DS/3/2DS consoles but would be great to replace GBARunner2 with something like this on DSi/XL/LL. :)

Request: Fast scroll in file browser

I know you have way bigger fish to fry, but hoping you can squeeze in hold-to-scroll in the file browser in a future release. It would make locating roms within large directories so much easier. And maybe the option to press dpad right and left to page up and down? Thanks again so much for the amazing work you are doing!

Only boots from Luma3DS chainloader with more than one firm.

If you try to boot this from Luma with only OAF in the payload folder it just shuts off your 3DS. In fastboot3ds trying to boot it with a hotkey also shuts off the system but if you attempt to boot it from the menu it locks up. The only way I've gotten it to boot is with multiple firms and the Luma chainloader.

Creating a save type database.

Some people probably noticed when i pushed this file. The idea is to make a database of save types for all GBA games ever released numbered using the no-intro.org database. Similar databases (script to convert) exist but there are a number of problems with them. They are not numbered using the no-intro db and i found several broken games testing only a hand full of them (mostly the less popular games).

The big question: Why?
Because all save type detection attempts so far didn't give satisfying results. The biggest problem are EEPROM games where i just can't properly detetct if 4k or 64k.

I surely won't go over the almost 3000 games alone so i want to make this a community effort.

Rules:

  • Your dump must be a known good dump verified using the linked release database.
  • If you own the original cartridge and it uses a flash save type please open it and identify the save chip used on that cartridge and mark the submitted entry as "verified". This is important to identify the proper flash manufacturer used in a cart.
  • If the first 3 of the 4 letters game code matches for all languages/regions, each entry is for all of them so the same game doesn't need to be included multiple times.
  • If you don't know the save type always start with the smallest size (without Real-Time Clock) and verify the game is saving properly and loading the savegame works. If the game freezes and it's a verified dump it probably means wrong save type.
  • If a game uses a special cartridge with extra hardware like Real-Time Clock mark the entry as such.

To make this easier i will probably make a build including a save type selector later.
This is subject to change.

Issues booting open_agb_firm twice in a row

If I boot open_agb_firm and run a game, then power off, then try to boot into open_agb_firm again, it just hangs. If I then boot into the normal system software, let it come up, power down, then boot into open_agb_firm again, it works fine (but the problem will still come back if I try to do it twice). I didn't have this problem before updating to build 2020-09-08.

I'm using an O3DS XL, Luma should be on the latest version. This is using the version of open_agb_firm that has the GBA bios splash.

[QUESTION] Can a loaded (custom) .gba access X, Y buttons?

Can a GBA rom loaded with open_agb_firm access the extra buttons (X, Y, perhaps even touchscreen?)?

I've tried reading the halfword at 0x04000136 (NDS EXTKEYIN) with no luck. I've also tried to read it from the addresses REG_HID_PAD, REG_LGY_PAD_VAL (which maybe makes no sense from the .gba side).

One thing I noticed is that pressing Y freezes screen for some frames. In every game, even at boot logo. Why is that?

Possibility of a screenshot feature?

I am wondering if the possibility exists of adding a screenshot feature to open_agb_firm. Not only could it be a cool feature, on-device screenshots would drastically lower difficulty for those wanting to run tests to reverse-engineer the GBA PPU.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.