Releases: astronautlevel2/Anemone3DS
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
™️ . - 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.
ThemePlaza Browser
Pretty big changes are here! Rather than hold them back because they're untested, we'd rather get a large amount of people testing them. There's no way that this is completely bug-free, so if you encounter any bugs please report them!
Thanks to @LiquidFenrir for pretty much everything in this release.
New things:
- An assortment of bug fixes
- Switch from minizip to libarchive in order to solve a few edge cases as well as allow the QR scanner to automatically detect whether something is a splash or a theme
- Slight changes in the UI
- Added a new ThemePlaza browser. This allows you to browse ThemePlaza directly from your console and download splashes and themes without ever leaving Anemone3DS!
But wait, there's more!
Happy New Year to everyone! To celebrate going into 2018, we're releasing a new version of Anemone3DS with a lot of new features.
The changes are as follows (and it's a big one!):
- Massive UI update -
Anow has multiple functions, combined with the D-pad - you can single, shuffle, BGM and no-BGM install from one sub-menu now! Additionally, there are now touchscreen controls - don't worry, we'll keep the buttons updated for those of you who want buttons, but if for some reason you want to only use the touchscreen now you can. (Thanks to @LiquidFenrir) - More updates to the QR scanner! It now can scan for QRs automatically without having to press any button!
- Dynamically load themes! That means that even if you have a few thousand themes, Anemone should load relatively quickly, and should never crash. (Thanks to @LiquidFenrir)
- Both themes and splashes are now sorted alphabetically - no more paging through all of your themes just to find one starting with '
🅱️ '. (Thanks to @Helloman892) - You can delete items from your SD now! No more feeling like a real hacker and looking through using
FBIGM9 (!). (Thanks to @LiquidFenrir) - Fast-paging (using the Circle Pad left and right) works properly. At last, you madmen with a few hundred themes don't feel left out.
- Scanning a QR that doesn't link to a ZIP file no longer crashes the app, and now just throws a warning. Which means you can go ahead and try to download other CIAs through Anemone's scanner all you like now, nothing will happen.
- The app now tells you when you have too many/no themes selected when attempting to use shuffle - now you can select more than 10, and toggle off the ones you don't want - the feature you never knew you wanted.
- When viewing the preview of an item that doesn't have one, Anemone would previously show the last one you viewed - no longer! You now receive a warning instead, telling you that there is no such preview. (Thanks to @LiquidFenrir)
- START and SELECT finally got their own icons. About time. (Thanks to @Wizzrobes for these!)
- A ton of bugfixes, for that Nintendo level stability... hopefully.
- A whole host of grammatical and aesthetic changes, to make everything look nicer
™️
Thanks to a ton of people for making this release possible. These people include, but are definitely not limited to:
- LiquidFenrir, for the absolutely incredible work he did with the app recently. This release definitely wouldn't have been possible without him.
- HM892/Helloman892, for miscellaneous feature improvements while I've been away (and for writing the original draft of this changelog!)
- FrozenFire and kenn, for creating a brand new, shiny boot logo.
- Steveice10, whose QR code in FBI served as the basis of the improvements for the QR scanner in this release.
- And anyone else I may have forgotten to mention.
Some small bugfixes & a disclaimer
- The app now checks that the device is connected to WiFi before attempting to download via QR code
- In previous versions, downloading a QR whilst having shuffle themes selected would clear the list, but not reset the counter. This caused theme extdata corruption upon shuffle install
- Malformed SMDH files should no longer cause bizarre descriptions (see below)
- During testing we encountered a bug in the SMDH generation method used by 3dsthem.es. The SMDH files it generates are improper when theme descriptions are too long - for example, in this theme, a part of the description field is overwritten by the author field. This will cause the author field to appear malformed in Anemone, but is not something that we can fix








