Skip to content

Revival Edition

Compare
Choose a tag to compare
@astronautlevel2 astronautlevel2 released this 14 Jun 02:24
· 123 commits to master since this release

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.

canvas