rileytestut / Delta

Delta is an all-in-one classic video game emulator for non-jailbroken iOS devices.
4.53k stars 334 forks source link

[BUG] Increase SRAM for GBC Gambatte Core so that programs like LSDJ work #295

Open amitkulk123 opened 1 month ago

amitkulk123 commented 1 month ago

When I'm using LSDJ (a tracker program for the GB/GBC), I have this issue where it doesn't show the Load/Save option. Here's how it looks for me right now (Delta v1.10 w/ Gambatte core): IMG_4094

While this is how it's supposed to look (Provenance 2.2.0 w/ Gambatte core): IMG_4096

I searched online and people said that this could be due to the emulator not having enough SRAM to support that option:  https://www.reddit.com/r/chiptunes/comments/7tlmy4/has_lsdj_removed_loadsave_function/ https://www.reddit.com/r/Delta_Emulator/comments/n7m9pb/lsdj_not_allowing_to_saveload_songs/

One solution to this issue is that I could use the mGBA core instead of Gambatte. However, it doesn't have very good audio accuracy for the GBC which makes it impractical to use for LSDJ (since it's for producing chiptune music).

I think this issue can be fixed by allowing more SRAM or having some sort of configuration option for it. I've used Gambatte core with OpenEmu and even with Retroarch on a 3DS and I don't have this issue on those platforms so I think it's gotta be some issue with the emulation configuration

haysidney commented 1 month ago

This has been a problem for a while. I remember building Delta myself with a small patch and it did work. It should be an easy fix.

amitkulk123 commented 1 month ago

This has been a problem for a while. I remember building Delta myself with a small patch and it did work. It should be an easy fix.

Yeah seems like that would fix it. I'll try to compile the code with those changes and see if it works on my end.

amitkulk123 commented 1 month ago

This has been a problem for a while. I remember building Delta myself with a small patch and it did work. It should be an easy fix.

I can confirm that that code fixes the issue. I have a fork here: https://github.com/amitkulk123/Delta/tree/develop with those changes that you can test if you'd like. I'll open a PR so that Riley can look at it an merge it once I get some time.

amitkulk123 commented 1 month ago

Just made a PR in the GBCDeltaCore repo to fix this issue: https://github.com/rileytestut/GBCDeltaCore/pull/3. Hopefully it gets merged soon since it's such an easy fix and tons of ppl would love this to make chiptune on their phones.