Anemone3DS: Difference between revisions

From GameBrew
 
(5 intermediate revisions by the same user not shown)
Line 4: Line 4:
|description=A theme and boot splash manager for the Nintendo 3DS console.
|description=A theme and boot splash manager for the Nintendo 3DS console.
|author=astronautlevel2
|author=astronautlevel2
|lastupdated=2022/05/23
|lastupdated=2022/08/01
|type=Utilities
|type=Utilities
|version=2.3.0
|version=2.3.1
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/3dshomebrews/anemone3ds.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/anemone3ds.7z
Line 78: Line 78:


Recommended tools:
Recommended tools:
* For the theme, you can use [https://github.com/usagirei/3DS-Theme-Editor Usagi] (theme editor), [https://gbatemp.net/threads/release-yet-another-theme-application-plus-yata-3ds-theme-editor.393355 YATA+] (no .smdh) and [https://gbatemp.net/threads/release-the-smdh-creator-make-your-own-icon-pack.396765 SMDH Creator] (.smdh only).
* For the theme, you can use [[Usagi 3DS Theme Editor|Usagi]] (theme editor), [[YATA Plus 3DS|YATA+]] (no .smdh) and [[The SMDH Creator 3DS|The SMDH Creator]] (.smdh only).
* For the audio, you can use [http://audacityteam.org Audacity] (music editor) and [https://github.com/libertyernie/LoopingAudioConverter/releases Looping Audio Converter] (converter to .bcstm).
* For the audio, you can use [http://audacityteam.org Audacity] (music editor) and [https://github.com/libertyernie/LoopingAudioConverter/releases Looping Audio Converter] (converter to .bcstm).


Line 108: Line 108:


==Changelog==
==Changelog==
'''v2.3.1 Anemone3DS Patchwork Update 2022/08/01'''
* 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...
'''v2.3.0 Legacy Compatibility Update 2022/05/23'''
'''v2.3.0 Legacy Compatibility Update 2022/05/23'''


Features:
Features:
*Shuffle now works even if you've never used a shuffle theme before
*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.
*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
*Connection error messages will now display considerably more information than before.


Bugfixes:
Bugfixes:
*Fixed a browser error which allowed you to scroll out of bounds
*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 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 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 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 some audio edge cases.
*Fixed support for ThemePlaza by using HTTP rather than HTTPS
*Fixed support for ThemePlaza by using HTTP rather than HTTPS.


'''v2.2.0 Covid Christmas Edition 2020/12/25'''
'''v2.2.0 Covid Christmas Edition 2020/12/25'''
Line 132: Line 144:


Bugfixes:
Bugfixes:
* A variety of QR code bugfixes should help the QR reader be more stable than ever™️.
* 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.
* 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.
* Memory leak fix in theme loading code to allow you to load even more themes.

Latest revision as of 00:34, 5 February 2023

Anemone3DS
Anemone3ds2.png
General
Authorastronautlevel2
TypeUtilities
Version2.3.1
LicenseGPL-3.0
Last Updated2022/08/01
Links
Download
Website
Source

Anemone3DS is a Theme and Splashscreen Manager for the Nintendo 3DS, written in C.

Features

  • Support for installing a single theme to your 3DS.
  • Support for installing up to 10 shuffle themes.
  • QR code reading to install themes from QR codes.
  • Support for previewing your themes and splashes before installing them.
  • Support for installing boot splashes (Luma3DS only).
  • Install BGM only.
  • Support themes without an SMDH file.
  • Dump themes, allowing you to translate CIA themes to Anemone themes (immediately usable) and thus manage all your themes in one place.

Installation

Available in 3DSX/SMDH and CIA formats.

  • CIA - Install the .cia with the CIA manager of your choice.
  • 3DSX - Copy both .3dsx and .smdh to the /3ds/Anemone3DS/ folder on your SD card, run it with Homebrew Launcher.

Setup for themes and splashes:

  • Create the /Themes/ and /Splashes/ folders on the root your SD card.
  • Put all of your themes in the /Themes/ folder. These can either be zips, or folders.
  • Put all of your splashes in the /Splashes/ folder. These must be folders.

User guide

Note: You will need to quick reboot your 3DS in order to apply the themes properly.

Instructions for usage are available once you're in the app.

Custom themes

Option 1:

  • Download your preferred custom themes from Theme Plaza, or make your own custom theme.
  • Put the ZIP file, or folder for your custom theme, to the Themes folder on your SD Card (no need to extract the ZIP file).

Option 2:

  • Run the application and open the QR Code scanner.
  • Go to Theme Plaza, hover over the preview for the theme you want to download.
  • Position your 3DS camera in front of the QR Code. Re-position it until all of the QR Code is visible on the 3DS's screen.
  • The theme will begin downloading after the QR Code is scanned.

Option 3:

  • Enter the theme browser by tapping the download button on the Touch Screen or by holding X, holding left on the D-pad, and then releasing X.
  • Wait for the list to load and download the themes you like.
  • Once the download is completed, go back.

How to use

In the theme list, choose the theme that you would like to install (you can choose to install only the BGM).

Once completed, exit Anemone3DS and press the HOME Button to go to the Home Menu. You should now see the Custom Theme you installed on your Home Menu.

You now have Custom Themes. To install a new theme, download a new theme from Theme Plaza and install it using Anemone3DS, or scan a QR Code.

Dump CIA themes to Amemone themes

Since v2.2.0 you can use Amemone to convert CIA themes to compatible theme formats.

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.

Create a theme

A theme is composed by several files:

  • body_LZ.bin - Contains background images and some theme settings.
  • BGM.bcstm - Contains theme BGM sound.
  • Preview.png/.jpg/.bmp - Preview screenshot/image.
  • BGM.ogg - Contains theme BGM preview sound.
  • info.smdh - Contains icon, author, description and title of the theme.

Recommended tools:

Controls

R - Open QR Code scanner

Download icon or Hold X+Left (then release X) - Enter theme browser

Touchscreen - Navigate through themes

A - Install theme, Download theme

Y - See preview of the theme

X - Install only BGM of the theme

B - Go back

Start - Exit homebrew, Quick reboot 3DS (necessary to properly apply theme)

Home - Back to Home Menu

Media

How to install Anemone3DS and Custom Theme and Splashes (sthetix)

Known issues

Please see https://github.com/astronautlevel2/Anemone3DS/issues.

Changelog

v2.3.1 Anemone3DS Patchwork Update 2022/08/01

  • 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...

v2.3.0 Legacy Compatibility Update 2022/05/23

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.

v2.2.0 Covid Christmas Edition 2020/12/25

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.

v2.1.0 Revival Edition 2020/06/14

  • 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 it is not expected to be an issue - the changes can be reverted if it caused any issues, but note that themes without an info.smdh are prone to cause crashes.

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.
  • Fixed bug with QR initialization on o3ds/o2ds/n2dsxl. May still not be perfect, unable to test on o2ds, 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.

Revision changelog.

Credits

Please see the Credits List.

External links

Advertising: