Pressing the Home button to suspend isn't quite so successful. It pops back to the home menu ok, but the music keeps playing.
Pressing Home again to resume seems to work fine, but pressing X to close gives an endless "Closing" dialogue and I had to hard shutdown. Needs more APT
Exiting from the game's main menu works fine tho.
I figure you must have messed with APT stuff in your other projects, but if not, I found the BlargSNES source to be a helpful reference.
For the game not closing, it's not an APT problem, simply there are some loops inside the main loop that don't handle the SDL_EXIT event. I'm fixing it right now but I have to be very careful to not break the code for the other platforms.
The problem with the sound not stopping is a consequence of the aptMainLoop() function, introduced about a year ago in ctrulib, that hides all the different states handling.
This function is very easy to use, but now we can't control the app while we are in the suspended state. The app is paused in a loop waiting to return to the normal flow or for an exit event. So once a CSND sound loop is started, there is no way to stop it.
The only solution I see is to make in my code a custom version of the aptmainLoop() functions that stops the CSND loops (saving their states) and starts them again when returning to the main loop.
The problem is that the enums that lists the system states and some of the code I need, now is private, so I have to replicate a big part of the ctrulib code for the APT service.
I found this problem in my other games, but didn't solved it because the solution isn't very clean. I think now it's time to fix it
Migrating to NDSP will fix all of these problems without needing a custom aptMainLoop.
Unfortunately not all will make it on the 3DS. Giana's Return is a no go, as the actual license holder earns money with this on modern systems. Although it's a Retroguru game and all is done by our self, we still use their trademark so we have to respect that in any case.I will try this tonight and report. I want all the other retroguru games on My 3ds
Thanks, we try our best to deliver high quality. It's always sad to see when something has potential but on one important part it destroys the overall impression. Just imagine a great game without music or bad controls. Sometimes you just have a chance once to impress someoneone of the best designed homebrews
good job!
Anyone can confirm the CIA issues are history? Thanks
Thank you. But I can't fix this last one. It's a issue with ctrulib.Sorry for delay, I finally tested the latest version. All the issues I mentioned before are indeed fixed
But I found a new one that I didn't try before... Press home to suspend to main menu, then while it's suspended, close the console. It doesn't go into sleep mode (power light doesn't start breathing). I checked with an official game (Picross e2) just to make sure, and that does sleep in those circumstances. Sorry to spring a new one on you...