Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Anemone3DS

From GameBrew
Revision as of 06:43, 13 July 2021 by HydeWing (talk | contribs)

Template:Infobox 3DS homebrew

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 as a 3DSX/SMDH and CIA, use either one and copy into your 3DS's SD card accordingly.

Create the /Themes/ and /Splashes/ folders on 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

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

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

Custom theme

Option 1:

  • Download your preferred custom themes from Theme Plaza, or make your own custom theme.
  • Create a folder with the name Themes on the root of your SD Card if it does not already exist.
  • Put the ZIP file, or folder with 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 - Screenshot used by CHMM2 for preview system.
  • BGM.ogg - Contains theme BGM preview sound, used by CHMM2 for preview system.
  • 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

Theme browser:

Touchscreen - Navigate through pages

Y - See preview of the theme

A - Download theme

B - Go back

Theme list:

A - Install theme

X - Install only BGM of the theme

Start - Exit homebrew, Qucik reboot 3DS (necessary to properly apply new 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.2.0 Covid Christmas Edition 25 Dec 2020

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 14 Jun 2020

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

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

Revision changelog.

Credits

Please see the Credits List.

Advertising: