The Homebrew Launcher
|The Homebrew Launcher|
|Author||Smealum, GEMISIS, fincs, mtheall|
|Graphics by||Fluto, Arkhandar, dotjasp|
The Homebrew Launcher (hbmenu for short) is the default menu for ninjhax, a 3DS homebrew-enabling exploit released on November 20th 2014. It is a fairly simple (and beautiful) menu that lists homebrew applications and lets you run them.
To use The Homebrew Launcher as your ninjhax main menu, simply rename the 3dsx executable to boot.3dsx and place it at the root of your SD card.
It is included in every iteration 3ds homebrew starter kit by default.
- Start: reboot your console into home menu.
- D-Pad, Circle Pad, Stylus: Navigate and select an application
- A or Stylus: Start application.
- B: Exit submenu/selector
- Y: Launch NetLoader
Only executable files in 3dsx format are supported.
Icons and banners are supported in smdh, bin, and icn format.
The Homebrew Launcher scans all the .3dsx files located in the sdmc:/3ds/ folders and its sub-folders.
It can list 3dsx executables located in the sdmc:/3ds/ directory, but ideally, you should have a folder for each application, containing an executable and an icon (SMDH) file.
The executable should be named either boot.3dsx or [folder name].3dsx.
The icon file can be named either icon.bin, icon.smdh, icon.icn, [folder name].smdh, or [folder name].icn. They are all the same smdh format, only the name is different, so use the filename you prefer.
Here is a list of all supported paths and filename for executable:
/3ds/<filename>.3dsx /3ds/name of the homebrew/boot.3dsx /3ds/name of the homebrew/<name of the folder>.3dsx
And a list of all supported paths and filename for the icons:
/3ds/name of the homebrew/icon.bin /3ds/name of the homebrew/icon.icn /3ds/name of the homebrew/icon.smdh /3ds/name of the homebrew/<name of the folder>.icn /3ds/name of the homebrew/<name of the folder>.smdh
In order to compile The Homebrew Launcher, you need to install zlib for 3DS:
1) Download zlib-1.2.8. You don't need to extract it.
2) Copy the following text and save it as a file named "Makefile":
ZLIB := zlib ZLIB_VERSION := $(ZLIB)-1.2.8 ZLIB_SRC := $(ZLIB_VERSION).tar.gz export PORTLIBS := $(DEVKITPRO)/portlibs/armv6k export PATH := $(DEVKITARM)/bin:$(PATH) export PKG_CONFIG_PATH := $(PORTLIBS)/lib/pkgconfig export CFLAGS := -march=armv6k -mtune=mpcore -mfloat-abi=hard -O3 -mword-relocations export CPPFLAGS := -I$(PORTLIBS)/include export LDFLAGS := -L$(PORTLIBS)/lib .PHONY: all install clean all: $(ZLIB_SRC) @[ -d $(ZLIB_VERSION) ] || tar -xf $< @cd $(ZLIB_VERSION) && \ CHOST=arm-none-eabi ./configure --static --prefix=$(PORTLIBS) @$(MAKE) -C $(ZLIB_VERSION) install: @$(MAKE) -C $(ZLIB_VERSION) install clean: @$(RM) -r $(ZLIB_VERSION)
3) Place both the makefile and the tar.gz in the same folder.
4) Open a command prompt/terminal and navigate to the folder with the Makefile
5) Run the commands
6) You can now compile the homebrew launcher.