1. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    Download latest version here: https://github.com/suloku/3ds_hb_menu/blob/patch-1/_release/DOWNLOAD.md
    Source code: https://github.com/suloku/3ds_hb_menu/tree/patch-1/

    WARNING: Using region4 to launch a title under emunand will boot the title under SYSNAND

    Last update: 24 feb 2016 - 16:35 GTM+1 (version 1.1.3s)

    Changelog (since 15 sept 2015 - 17:00 GTM+1)
    Feature list:
    - Multiple configurable folders, change with L/R
    - Favorites: access with X, add/remove with SELECT
    - Disable/enable region free entry (configurable, toogle with hold DuP+R)
    - Alphabetical sorting (by folder/filename, not title in smdh file). Case sensitiveness configurable. Mix stray 3dsx configurable.
    - Option to remember last folder and last entry launched (toogle with hold Dup + L).
    - Custom themes (defined in themes.xml)
    - Random theme at boot (optional)
    - Create/delete HANS/Region4 shortcuts

    The "remember menu" feature is not shown on the video since it is made on citra and we can't boot hombrew there from hbl.

    New Controls:
    - L/R: previous/next folder
    - SELECT: add/remove favorite entry
    - X: enter/exit favorites menu
    - Hold Dup+R: toggle region free (title launcher)
    Reboot screen (press start in homebrew list to enter reboot screen):
    - L/R in reboot screen: previous/next theme
    - SELECT: toggle random theme
    - Y: toggle remember menu
    - Dup: toggle alphabetic/filesystem sorting
    - Ddown: toggle mix stray 3dsx files on/off
    - Dleft: toggle remember region free (title launcher) state
    - START: Shutdown

    SVDT integration (not needed anymore):
    NOTE: svdt and ctrulib were updated and now it can get the title by itself.
    - As of svdt 0.10.1 HBL mod will pass the selected title to svdt. This makes you only need to select the title once instead of two times (one in hbl, one in svdt). This makes savegame backup easier.

    Known bugs:
    - Crash on empty folder if region free is disabled. Under ninjhax 2.x (ironhax, youhax, oot3dhax, smashhax...) this is workarounded by automatically re-enabling region-free, so any xxxHax user won't have this problem. On ninjhax 1.x it will crash since region free is not available there, so just don't have empty folders. You can put a file named z.3dsx so it appears alwas as the last entry if you want to keep the folder.

    Demonstration video (a little outdated):


    Note: some homebrew must go in the /3ds/ folder because it uses hardcoded paths. Test all new homebrew in /3ds/ folder. Still, most homebrew work in any folder.
    Hax installers like ironhax and oot3dhax may fail if not run under /3ds/ folder (I've only tested oot3dhax installer).
    Read this for a little more information: https://gbatemp.net/threads/homebre...and-folder-support.396793/page-7#post-5669964

    Theme editor:

    Thanks to exelix11 we have a great theme editor for windows, many thanks!

    You can get it here: https://github.com/exelix11/HLThemeEditor/releases

    Release post: https://gbatemp.net/threads/homebre...and-folder-support.396793/page-6#post-5666295

    Original post:
    Version in github has more features, I'll update the thread when I get time.

    Features:
    - Multiple configurable folders, change with L/R
    - Favorites: access with X, add/remove with SELECT
    - Disable/enable region free entry (configurable, toogle with DuP+R)
    - Alphabetical sorting (by folder/filename, not tile in smdh file). Case sensitiveness configurable. Mix stray 3dsx configurable.

    NOTE: configuration is only saved when adding/removing favorites. This will affect the region free setting too.

    Already implemented, need to know if there are problems with it:
    - Option to remember last folder
    - Option to remember last entry launched

    There's not much more I'd like to add, I think it has many features I thought were missing.

    Code:
    The Homebrew Launcher folder/sort mod by suloku '15
    ***************************************************
    
    This a modified version of the Hombrew Launcher for 3ds that adds folder support and sorting.
    
    Sorting:
    --------
    Homebrew is sorted by filename/foldername.
    
    Sorting example:
    
        0_ftbrony/
        boot.3dsx
        citragb/
        ftbrony/
        ftbrony.3dsx
        z_ftbrony/
    
    Remember that the 3dsx file inside a folder must either be named the same as the folder or boot.3dsx.
    
    
    Folders:
    --------
    
    ¡¡IMPORTANT!!: if a homebrew has a hardcoded to /3ds/ and needs files to be there, it will only work from the /3ds/ folder. Always test new homebrew from /3ds/ folder.
    
    Folder paths are specified in sdmc:/3ds/folders.xml
    If no folders.xml is found it just behaves as regular homebrew launcher
    
    Up to 20 paths can be added.
    
    Config values:
    --------------
    - mix_files:
        · 0 = OFF Stray .3dsx files are sorted after homebrew with folder and icon
        · 1 = ON all homebrew is sorted alphabetically
    - case_sensitive (see example)
        · 0 = OFF : capital and lower case letters alike
        · 1 = ON : Capital letters before lower case
    - disable_RF
        · 0 = OFF : region free entry will appear
        · 1 = ON : disables the region free entry
    
    note: the region free entry can be toogled with DPad UP + R.
    note2: when the config file is saved, region free setting will be saved as well.
    note 3: currently config file is only saved if there are changes to favorites.
    
    Case_sensitive sorting example:
    
        OFF                    ON
    
        blargsnes            GameYob
        GameYob                SavedataManager
        ftbrony                blargsnes
        SavedataManager        ftbrony
        svdt                svdt
    
    
    Favorites:
    ----------
    They can be set and removed from inside the HBLauncher. Press SELECT.
    Press X to enter/exit the favorites menu.
    Up to 20 favorites can be added.
    
    Favorites can be manually defined in the config file, example:
    
    IMPORTANT: unlike folders, don't add the last '/' character
    
            <fav>/3ds/_EMU/GameYob/GameYob.3dsx</fav>
            <fav>/3ds/_EMU/PokeMini</fav>
            <fav>/3ds/_UTIL/CTRXPLORER</fav>
            <fav>/3ds/_UTIL/CTRXplorer/boot.3dsx</fav>
            <fav>/3ds/ftbrony/boot.3dsx</fav>
    
    
    New Controls:
    -------------
    
    - L: previous folder
    - R: next folder
    - X: enter favorites menu
    - SELECT: add/remove favorite entry
    
    Source code:
    ------------
    Branch of smealum's repository https://github.com/suloku/3ds_hb_menu
    https://github.com/suloku/3ds_hb_menu/tree/patch-1
    
    Changelog:
    ----------
    [+]v2c
        - Config saved also when rebooting from HBL.
    
    [+]v2b
        - Solved crashing when loading empty folder/ favorites tags.
    
    [+]v2
        - Added option in xml to sort case sensitive or not
        - Added option in xml to sort stray .3dsx files mixed with full homebrew (those in a folder) or     after them
        - Added option to disable region free entry
        - UP+R toogles region free in the menu itself
        - X opens favorite menu
        - Favorite paths/3dsx files can be configured in xml
        - Changed folders.xml to config.xml since now it holds more things
        - Removed SELECT to refresh. Just toogle favorites or press next/previous folder button. Works even with no xml file (remember, this is for those times hblauncher for some reason doesn't load any homebrew and can only exit or boot region free).
        - Dinamically set/remove favorites with SELECT
        - Save modified favorites to xml file
    
     
    Last edited by suloku, Feb 24, 2016
  2. Returnofganon

    Returnofganon I pretend like I know what I'm talking about
    Member

    Joined:
    Jul 1, 2015
    Messages:
    537
    Country:
    United States
    Once again thank you! :bow:
     
  3. Vague Rant

    Vague Rant Deceptively cute
    Member

    Joined:
    Aug 7, 2008
    Messages:
    2,299
    Country:
    You should probably do your sorting case-insensitive. Currently, /3ds/WhackMania comes before /3ds/blargsnes. This will seem counter-intuitive to most users.
     
  4. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    I was thinking in adding an option to xml to mix or not the stray .3dsx files with folders
    I can add the case insensitive setting too., I like it insensitive though, since it adds a layer of organization: make all folders with low case, make first letter of folder upper case case: your favorite homebrew is on top.

    And as I was writting this I've thought: a favorites folder in X button would be cool...
     
  5. SomeGamer

    SomeGamer GBAtemp Guru
    Member

    Joined:
    Dec 19, 2014
    Messages:
    6,816
    Country:
    Hungary
    Yeah, just realised that it's now the only unused button! :D
     
  6. link6155

    link6155 GBAtemp Fan
    Member

    Joined:
    Aug 14, 2013
    Messages:
    311
    Country:
    United States
    Neat mod, I don't have that many Homebrews yet, so a folder option wouldn't be useful to me at this time.

    This might be off topic, but I was hoping someone could make a Homebrew Launcher like this:
    [​IMG]

    I think this layout use the screens better. The Homebrew Launcher currently doesn't utilize the top screen at all.
     
  7. Ericjwg

    Ericjwg GBAtemp Psycho!
    Member

    Joined:
    Jul 2, 2015
    Messages:
    3,711
    Country:
    Canada
    is the newest boot file right?

    — Posts automatically merged - Please don't double post! —

    cuz i try to do the NH1.1&2.1 dual boot
     
  8. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    It looks better, but I don't have the skills to make that major changes to hbl.
    There's not much homebrews yet, but it's tarting to grow, and 4 homebrew per screen is too little.
    I don't know what you mean. If NH1.1. and NH2.1 use the same boot.3dsx it will work with both.

    If I recall, for dualboot you only need it to use a different 3ds folder and boot.3dsx right? if you don't want to recompile, you can hex edit the .3dsx file, look for the /3ds/ string and the boot.3dsx string, then change them to something like /3d1/ and boo1.3dsx respectively.

    Or just change to the folder with your 1.1 homebrew? I know nothing about NH1.1.
     
  9. fmkid

    fmkid Just another GBATemp's random guy
    Member

    Joined:
    Apr 23, 2015
    Messages:
    1,391
    Country:
    Colombia
    AFAIK, latest "boot.3dsx" (or based in) file should work fine on whatever Smealum's Hax... That file is only the "Homebrew Launcher", not the exploit itself at all!
     
  10. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    Just for those interested, current progress:

    - Added option in xml to sort case sensitive or not
    - Added option in xml to sort stray .3dsx files mixed with full homebrew (those in a folder) or after them
    - Added option to disable region free entry
    - UP+R toogles region free in the menu itself
    - X opens favorite menu
    - Favorite paths/3dsx files can be configured in xml
    - Changed folders.xml to config.xml since now it holds more things
    - Removed SELECT to refresh. Just toogle favorites or press next/previous folder button. Works even with no xml file (remember, this is for those times hblauncher for some reason doesn't load any homebrew and can only exit or boot region free).

    To do (on it right now):
    - Dinamically set/remove favorites with SELECT
    - Save modified favorites to xml file

    EDIT: done
     
    Last edited by suloku, Sep 9, 2015
  11. SomeGamer

    SomeGamer GBAtemp Guru
    Member

    Joined:
    Dec 19, 2014
    Messages:
    6,816
    Country:
    Hungary
    Where can I download this latest version?
     
  12. mashers

    mashers Stubborn ape
    Member

    Joined:
    Jun 10, 2015
    Messages:
    3,837
    Country:
    This is really great work, thank you! Looking forward to downloading the latest version so I can remove region free loader and keep my HB menu sorted :)
     
  13. Idaho

    Idaho GBAtemp Advanced Fan
    Member

    Joined:
    Oct 3, 2013
    Messages:
    848
    Country:
    France
    Maybe you should talk to smea to implement this "officially"
     
  14. fmkid

    fmkid Just another GBATemp's random guy
    Member

    Joined:
    Apr 23, 2015
    Messages:
    1,391
    Country:
    Colombia
    Some way to implement cursor stays just on latest selected program anytime someone loads HBL (via executing exploit or exit from a homebrew, either)?
     
  15. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    No release yet, source is up though. I'll release binary when I end with favorites.
    I've just completed the dynamic add/remove favorite code, only remains to code the function to update xml file.

    I made a pull request to the official repository, I don't know if smea would add it. I'm trying to stay true to original desing, in fact if there's no xml file the only new features one would notice are the free region launcher toogle and the reload folder when L/R are pressed.

    Also, there's probably much nicers way to code all this.
    I could save that data in the xml file, remembering last folder would be easy, the cursor position can be done, but it's a little more tricky (or maybe just need to store more values).

    I'll look into that when I finish the favorites thing.

    UPDATED FIRST POST with v2
     
    Last edited by suloku, Sep 9, 2015
  16. Vague Rant

    Vague Rant Deceptively cute
    Member

    Joined:
    Aug 7, 2008
    Messages:
    2,299
    Country:
    Your v2 build is nonworking on my USA New 3DS running 9.9. It locks up on launch with the usual garbage on screen, as per photo:
    [​IMG]
     
  17. geocool

    geocool Advanced Member
    Newcomer

    Joined:
    Jul 31, 2008
    Messages:
    57
    Country:
    Greece
    @suloku Do you have a public repository with the modified version of homebrew launcher ?

    @link6155 Who created this mockup ?
     
  18. mashers

    mashers Stubborn ape
    Member

    Joined:
    Jun 10, 2015
    Messages:
    3,837
    Country:
    I have exactly the same problem on a 9.9 UK New 3DS. Makes no difference whether I launch through IronHax or NinjHax. The previous version worked fine.
     
  19. pdapanda

    pdapanda GBAtemp Advanced Fan
    Member

    Joined:
    Nov 19, 2014
    Messages:
    727
    Country:
    Switzerland
    And the same with 9.9 JP NEW3DS
     
  20. suloku

    OP suloku GBAtemp Advanced Fan
    Member

    Joined:
    Apr 28, 2008
    Messages:
    880
    Country:
    This is strange, I'm on N3DS 9.9, I tought maybe it was becasue you didn't put the config file, but works fine for me wihtout config file.

    UPDATE: OK, the problem was the the config file I attached, becasue there where two blank elements (<path></path> and <fav></fav>)

    I'm updating the package now.

    edit: no, that wasn't it :(
    edit2: yes it was.
    edtir 3: no it doesn't support comments either, silly me.

    EDIT 4: Everything should be fine now, sorry for the trouble, I was using a different xml file and didn't notice that problem.

    I've just tested the file, should work fine with the included xml file or without it. There shouldn't be any more problems.

    For those asking, the sorce is in my github (address is in the readme)
     
    Last edited by suloku, Sep 9, 2015
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Homebrew, Launcher, sorting