Releases: astronautlevel2/Anemone3DS
Anemone3DS - v3.0.1 Hotfix
A minor hotfix for v3.0.0 of Anemone3DS
Bugfixes
- Dumping badges with illegal characters now works as expected
- Installing badges with more than a couple subfolders now works as expected
- Automatically make a backup of badge extdata on first time installing badges
For the v3.0.0 release notes, see: https://github.com/astronautlevel2/Anemone3DS/releases/tag/v3.0.0
QR Code
Anemone3DS: Beyond Journey's End
About a month after the beta, we're now releasing the full Anemone3DS v3.0.0 - the first major release of Anemone3DS in ~6 years! Without further ado, let's get into the release notes. Things which are new from v3.0.0b will be bolded to indicate the new features.
WARNING: This release is outdated - if you are interested in using badges, it is heavily recommended you install v3.0.1 instead.
Bugfixes
- Fixed various errors when downloading themes via the QR code reader
- Fix bug with files with * in their name (by @Zemogiter)
- Fix bugs with Unicode filenames
- Allow x-zip-compressed to be a valid Mime type
- Disable home button after installing theme; this was deemed to be the root of a number of corruption issues
- A failed search in the ThemePlaza browser now properly returns you to the previous page rather than locking the browser in a glitched state.
- Various scroll/jump bugs fixed
New Features
- Full badge support! Anemone3DS now supports installing badges, complete with custom sets and set icons. Additionally supports dumping badges, maintaining the set they're from and also dumping the set icon. For more info, check out our wiki.
- Translation framework allowing for Anemone3DS to be displayed in your native language! Currently only Spanish, Portugese, and French are present, but we're accepting PRs for more languages - feel free to message me or ping me on the ThemePlaza or Nintendo Homebrew discords if you want instructions!
- Added French translation by @cooolgamer
- Added Portuguese translation by @iveurne
- Added Spanish translation by @Tristanabs, Angelpro09_xd, and @Gatokun
- Add libcurl fallback so that Anemone can scan QR Codes from anywhere - not just HTTP websites.
- BCSTM Player added for theme previews, meaning that Anemone3DS should now more accurately represent what will be played on the Home Menu, and allowing for easier testing with tools like Kame Editor which don't produce a preview ogg file.
- Support for Korean region systems using the home menu patch (thanks to @cooolgamer)
- Assemble a splash preview if none was found (thanks to @Jan200101)
- Significant performance improvements, especially when scrolling between many themes
- New User Interface which should be both more intuitive (no more button combos!) and also more touch-screen friendly
- Respect Parental Controls which lock the user out of the browser and require a PIN on access if that restriction is enabled
- Warn the user on installing a theme with mono audio - this can cause many audio issues with the home menu
New Contributors
- @Zemogiter made their first contribution in #294
- @cooolgamer made their first contribution in #290
- @Jan200101 made their first contribution in #277
- @iveurne made their first contribution in #307
- @Tristanabs made their first contribution in #312
- @Gatokun made their first contribution in #315
- An especially big thanks to @cooolgamer for all their testing; without them this release wouldn't have been possible.
QR Download Code
A Personal Note
When I initially created Anemone3DS I wasn't in a great state of mind, and the project was something for me to pour myself into and forget about everything around me. I never expected it would end up becoming as widely used as it has; it's genuinely incredible to look back on. Thank you all so, so much for all of your support and encouragement over the years, this community has genuinely changed my life.
Anemone3DS: Beyond Journey's End Beta
I doubt many people were expecting a new Anemone3DS release - frankly I didn't really expect to do more work on it, but life's funny like that I guess. This is probably the biggest update we've done in a long while, and I haven't had the time to test everything thoroughly, so we're going to release it as a pre-release first and hope nothing breaks too bad 😄. I also want a few more languages supported (ideally Spanish and Japanese) before the full release, but more on that later!
Bugfixes
- Fixed various errors when downloading themes via the QR code reader
- Fix bug with files with * in their name (by @Zemogiter)
- Fix bugs with Unicode filenames
- Allow x-zip-compressed to be a valid Mime type
- Disable home button after installing theme; this was deemed to be the root of a number of corruption issues
New Features
- Translation framework allowing for Anemone3DS to be displayed in your native language! Currently only Portugese and French are present, but we're accepting PRs for more languages - feel free to message me or ping me on ThemePlaza or Nintendo Homebrew if you want instructions!
- Added French translation by @cooolgamer
- Added Portuguese translation by @iveurne
- Support for Korean region systems using the home menu patch (thanks to @cooolgamer)
- assemble a splash preview if none was found (thanks to @Jan200101)
- Significant performance improvements, especially when scrolling between many themes
- New User Interface which should be both more intuitive (no more button combos!) and also more touch-screen friendly
- Respect Parental Controls which lock the user out of the browser and require a PIN on access if that restriction is enabled
- Warn the user on installing a theme with mono audio - this can cause many audio issues with the home menu
- Add libcurl fallback so that Anemone can scan QR Codes from anywhere - not just HTTP websites.
New Contributors
- @Zemogiter made their first contribution in #294
- @cooolgamer made their first contribution in #290
- @Jan200101 made their first contribution in #277
- @iveurne made their first contribution in #307
Thanks to everyone who's been along for the ride and made Anemone3DS the success it is, I truly appreciate all of you. Hopefully I'm able to get this out of beta soon.
QR Download
Anemone3DS Patchwork Update
Sup gamers, just a patch release this time around. Of note this time around is that, if you have dumped official themes in the past, it didn't actually work - so you may have to scramble around and dump them again. Sorry about that.
In this patch
- Dumping and then installing official themes caused a crash because the themes were never actually dumped; @LiquidFenrir patched it.
- There were some problems with our audio thread, including not being joined back to the main thread on exit, causing bizarre crashes; that's been patched, again by @LiquidFenrir.
- Some of you may have noticed that the error
FS Error: ...
would appear when downloading themes with certain special characters in them. That was my (@Helloman892's) fault in v2.3.0, and you know what's next: patched. - Somewhat related to the above, searching for special characters in the TP browser has been broken for a while. Patched.
- There was another bug introduced in v2.3.0 as part of the networking overhaul; a useless-to-the-user 404 would be shown if a theme preview in the browser had no BGM. Patched.
- The Theme Plaza browser should crash less where previews are involved, thanks to yet another patch from @LiquidFenrir, without whom this patch release wouldn't be happening.
That besides, sorry this took a while to come out, and especially sorry for so many of you thinking you needed to get a new SD card! I really should have made that error more descriptive...
And here's a download QR to use with FBI
Anemone3DS - Legacy Compatibility Update
Hey everyone! For the first Anemone3DS update in over a year, we are bringing you... mostly a very minor update. In addition to a couple feature updates, this update also restores compatibility with ThemePlaza, which recently changed its network protocols to no longer support TLSv1.1. Note that from this update onwards, Anemone3DS will be communicating with ThemePlaza over HTTP rather than HTTPS, as the 3DS httpc sysmodule does not support newer TLS versions than 1.1. However, no identifying information is communicated with ThemePlaza, so there should not be any security concerns. And now, as always, it is time for the features and bugfixes!
Features:
- Shuffle now works even if you've never used a shuffle theme before
- Add ability to dump all installed themes! The application already supported backing up the currently installed theme, but now also supports backing up all your themes.
- Connection error messages will now display considerably more information than before
Bugfixes:
- Fixed a browser error which allowed you to scroll out of bounds
- Fixed a couple of error messages which weren't displaying properly
- Fixed a couple minor shuffle bugs with how our shuffle implementation interacted with the official theme manager
- Fixed a bug where the application did not properly handle downloading to a filename which already existed on the filesystem
- Fixed some audio edge cases
- Fixed support for ThemePlaza by using HTTP rather than HTTPS
And now a QR Code!
Anemone3DS Covid Christmas Edition
Happy Holidays everyone! We hope your holiday season has been going well despite the interference from Covid. Here's a new release of Anemone3DS with some minor feature updates and bugfixes as our gift to you.
Features:
- Themes without an SMDH file are now supported again!
- If you install a theme without BGM, and then do a BGM-only install, the BGM flag will be automatically set to ensure your music plays properly.
- You can now dump themes! Upon selecting the dump theme option in the extra menu, you'll be able to enter a name, and the theme body_LZ.bin and bgm.bcstm will be stored in the folder /themes/, along with a dummy SMDH file, meaning the theme will be immediately usable in Anemone. This allows you to translate CIA themes to Anemone themes and thus manage all your themes in one place.
- If you scan a QR code and the file host doesn't have a filename set for some reason, you'll now be able to manually enter the filename you want it to be saved as.
Bugfixes:
- A variety of QR code bugfixes should help the QR reader be more stable than ever:tm:.
- Various bugfixes and refactoring in the networking code to prevent possible crashes.
- Memory leak fix in theme loading code to allow you to load even more themes!
- Certain previews used to have inverted colors when loaded. This has been fixed.
- ThemePlaza url has been updated to the new one. While this wasn't a problem yet, as the old domain redirects to the new domain, it will prevent issues in the future.
- Various other null dereferences cleaned up to prevent crashes.
As a personal note from me:
It's always fun to get to work on the application and it's fantastic to see the continued support from the community. While this isn't the rewrite I promised in the last release, I still plan on doing it at some point. For now, I care more about creating actual useful updates and getting them out sooner rather than later. I hope to see you all again in a hopefully much better 2021!
Revival Edition
NOTE: This release removes support for themes which don't use an info.smdh file. Most themes use this file, including all themes from ThemePlaza, so I'm not expecting it to be an issue - if it is an issue, I can revert this change, but note that themes without an info.smdh are prone to cause crashes.
It's been a while since the last update to Anemone3DS! We're releasing a new edition to the software which should patch a number of outstanding bugs.
As per usual, bugfixes:
-
Changed Title ID to not conflict with a game - this means you'll have to uninstall the old version of Anemone3DS after updating to v2.1.0.
-
Fixed various bugs caused by an outdated libarchive version.
-
Fixed various bugs related to previous caused by lodepng by switching to libpng.
-
Fixed race condition in icon scrolling.
-
Fixed screen tearing in the QR reader.
-
Fixed bug caused by playing music even when there was no theme preview.
-
Fixed it being possible to try to preview themes/splashes even when there were no themes or splashes.
-
Fixed bug caused by attempting to play audio when dspfirm wasn't dumped.
-
Fixed bug caused by attempting to install BGM for shuffle themes even when there was none.
-
Fixed various bugs caused by not properly zeroing out files when creating them.
-
Properly update the installed splash.
Bugs fixed since beta:
-
Fixed bug with QR initialization on o3ds/o2ds/n2dsxl. May still not be perfect, as I don't have an o2ds test, but should be much improved based on reports from testers. Bug reports welcome.
-
Updated to newest libctru version & GCC version
-
Patched memory leak in the preview code
-
Updated to quirc v1.1, patching a segfault in the QR code reader
-
Fix multiple race conditions involving the QR code reader which could potentially cause a crash when exiting camera mode
-
Fix crash caused by quirc overflowing the 3DS stack when attempting to scan QR code like images that weren't actually QR codes (such as mechanical keyboards)
-
Fix double free which could potentially cause crashes when downloading from invalid zip files
-
Fix QR download from sites other than ThemePlaza which used a different format for content disposition header
-
Fix crashes caused by attempting to load invalid themes
-
Fix memory leak in zip reading code
-
Reset cursor when switching pages of the ThemePlaza browser to fix bug causing corruption.
Improvements:
-
Huge improvements to the QR code reader's speed. This is likely the fastest/smoothest it can possibly be (it's now on-par with QRaken and FBI) thanks to a combination of improved multithreading and switching graphics libraries.
-
Speaking of switching graphics libraries, we've completely switched from pp2d to citro2d! This allowed us to get the QR code reader substantially faster, as well as guarantees full support for the library in the future. Huge thanks to LiquidFenrir for doing most of the work of the change.
-
Switch to using spritesheets to load the sprites rather than just loading them all into the romfs.
-
Don't wait for audio to finish loading before displaying the preview image, making previews display in the snappy fashion they used to before the audio player.
-
Improved banner quality. Thanks to @TurdPooCharger for this!
Additional credits:
-
Huge thanks to individuals on the Nintendo Homebrew server who helped test the new QR scanner on different consoles, especially Weeber#9048.
-
Everyone who submitted bug reports through the beta program.
Final notes:
It's hard to believe that it's already been almost three years since the initial release of Anemone3DS - it feels like it was just yesterday that I was pulling all nighters trying to get the app ready in time for my self-imposed deadline. So much has changed then, the support for the community has been incredible, and I'm incredibly grateful for all the help I've received from other developers. I'm hugely appreciative for everything everyone has done for me and for this application. I hope to continue to improve it in the future, adding more features and, importantly, squashing more bugs.
This is probably the last release on this codebase! Hopefully, our next release will be using the rewrite codebase. This may still be a ways out, but we have nothing but time now, and will likely get started on it as soon as tomorrow.
Finally, if there are any bugs, they can be reported on this issue tracker and one of us will be sure to get to them. If you're not confident about posting an issue on the tracker, feel free to contact Asty#3336 on Discord - I'm on NH and ThemePlaza and will respond to your questions as soon as I see it.
v2.1.0 Beta
Beta release of v2.1.0.
The main purpose of this beta is to test the compatibility of the new QR code scanner as much as possible before the v2.1.0 release. Full change-log below:
Bugfixes:
-
Changed Title ID to not conflict with a game - this means you'll have to uninstall the old version of Anemone3DS after updating to v2.1.0.
-
Fixed various bugs caused by an outdated libarchive version.
-
Fixed various bugs related to previous caused by lodepng by switching to libpng.
-
Fixed race condition in icon scrolling.
-
Fixed screen tearing in the QR reader.
-
Fixed bug caused by playing music even when there was no theme preview.
-
Fixed it being possible to try to preview themes/splashes even when there were no themes or splashes.
-
Fixed bug caused by attempting to play audio when dspfirm wasn't dumped.
-
Fixed bug caused by attempting to install BGM for shuffle themes even when there was none.
-
Fixed various bugs caused by not properly zeroing out files when creating them.
-
Properly update the installed splash.
Improvements:
-
Huge improvements to the QR code reader's speed. This is likely the fastest/smoothest it can possibly be (it's now on-par with QRaken and FBI) thanks to a combination of improved multithreading and switching graphics libraries.
-
Speaking of switching graphics libraries, we've completely switched from pp2d to citro2d! This allowed us to get the QR code reader substantially faster, as well as guarantees full support for the library in the future. Huge thanks to LiquidFenrir for doing most of the work of the change.
-
Switch to using spritesheets to load the sprites rather than just loading them all into the romfs.
-
Don't wait for audio to finish loading before displaying the preview image, making previews display in the snappy fashion they used to before the audio player.
-
Improved banner quality. Thanks to @TurdPooCharger for this!
Mistakes were Made
A number of bugs were introduced in v2.0.0. This release focuses on solving those bugs and also adding a few miscellaneous features.
Bugfixes:
-
Fix use after free in the QR reader which could cause crashes
-
Fix bug not letting you start the QR reader after previewing a theme
-
Fix a number of crashes related to BGM preview
-
Disable home button to prevent issues with themes not being properly applied (instead press START and then HOME to ensure everything is saved properly)
New/changed features:
-
You can now choose specific themes to not have BGM when doing a shuffle install (press B twice on the theme when queueing)
-
No-BGM install has had its behaviour changed. No-BGM now makes the BGM silent. Use BGM-Only install to replicate the old behaviour of No-BGM.
-
Loading bar added when downloading themes (either from browser or QR) and when doing the initial load.
QR Code to install:
EDIT: I may or may not have uploaded the wrong file. If you downloaded it before 10:06 EST, please download it again or the BGM preview will sound awful.
The Second Coming
Hey everyone!
It's been a bit since our last stable release. We took your feedback from the 2.0.0 alpha and combined it with a bunch of new features we were working on to create perhaps one of the biggest single updates in Anemone3DS history. Thanks to all who were involved in the alpha for their feedback!
Without further ado, here's the TL;DR of the updates:
-
ThemePlaza Browser
-
BGM Preview
-
Shuffle BGM bug fixed
And now, here are the full feature updates:
-
Added a new ThemePlaza browser! Browse ThemePlaza straight from your 3DS, no more need to use QR codes or FTP to transfer themes! (For those of you who used 2.0.0a, the browser is now substantially faster after the first load thanks to caching)
-
BGM Preview functionality added. When you preview a theme, it automatically plays the BGM as well. Works in the ThemePlaza browser too!
-
QR scanner now automatically detects whether what you're downloading is a theme or a splash and puts it in the right place.
-
You can now change how themes are sorted!
-
Some slight UX changes, make sure to look at the top screen to know what they are and how they work!
Full bugfixes:
-
Finally fixed the shuffle theme BGM loop bug. Now you can listen to the BGM as many times as you want when you shuffle themes!
-
Solved a rare, but important, home menu bug that caused the console to crash when the cursor was moved to Anemone.
-
Doesn't show a blank screen when there are no splashes anymore.
-
Fixed an edge case bug that caused some zips to not extract properly by switching from minizip to libarchive.
-
Fixed scrolling bug.
-
Fixed shuffle theme install accidentally breaking theme extdata in some extremely rare cases.
-
Warn people who are using *Hax entrypoints that QR code scanning may not work.
Credits:
-
LiquidFenrir, for being the absolute best and the main developer of the ThemePlaza browser as well as various bugfixes and other features.
-
FrozenFire, for creating the new logo which fixes the home menu crash.
-
All of the testers who reported bugs and improvements.