Skip to content

Commit

Permalink
dropped dontmove hex file and added support for dontmove text file
Browse files Browse the repository at this point in the history
added new bad naming sorting mode
improve screen operations
  • Loading branch information
Doino Gretchenliev committed May 4, 2020
1 parent 40473da commit 6475967
Show file tree
Hide file tree
Showing 16 changed files with 7,588 additions and 130 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ MAKEFLAGS += --no-print-directory
#---------------------------------------------------------------------------------
# any extra libraries we wish to link with the project
#---------------------------------------------------------------------------------
LIBS := -lgcc -lfat -liosuhax -lxml2
LIBS := -lgcc -lfat -liosuhax -lxml2 -lm

#---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing
Expand Down
87 changes: 63 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,84 @@
Wii U Menu Sort
ver 0.2.0
# Wii U Menu Sort

WARNING: TRY ON REDNAND FIRST.
I am not responsible for bricked consoles.
:warning: **WARNING**: If you're not sure try on rednand first. I am not responsible for bricked consoles.

That said, I tried 10 sorts on 2 accounts on USA sysNAND without issue.
> That said, I tried 10 sorts on 2 accounts on USA sysNAND without issue.
> @Yardape8000
### Description

This will allow you to alphabetically sort your icons on the Wii U Menu.
Icons in folders are also sorted.
Sorts are done per user account.
Not much is shown for a UI. It will just start sorting and tell you when it is done in 5-10s.
Not much is shown for a UI. It will just start sorting and tell you when it is done in 5-10s.

The following items will not move:
Folders and system icons (Disc, Settings, etc)
Homebrew Launcher
CHBC (untested)
Any IDs specified in dontmove.hex
Any IDs specified in [dontmove.txt](dontmove.txt).

### Sorting modes

1. _Standard sorting_: sorts titles alphabetically.
2. _Standard sorting(ignoring leading 'The')_: sorts titles alphabetically, ignoring a leading 'The' in the titles name.
3. _Bad naming mode sorting_: sorts titles alphabetically by group names(see _Titles map list_).
4. _Bad naming mode sorting(ignoring leading 'The')_: sorts titles alphabetically by group names(see _Titles map list_), ignoring a leading 'The' in the titles name.

You can try different sorting modes to see what works for you. Every time the app is executed it'll sort all titles based on the selected sorting mode.

dontmove.hex must be edited with a hex editor. Do Not use notepad, etc.
### Don't move list

You can override the default [dontmove.txt](dontmove.txt) with your custom list.
Only use the last 4 bytes of the title ID.
The included sample file has:
10 17 9B 00 Brain Age: Train Your Brain In Minutes A Day
10 10 5A 00 Netflix
10 10 57 00 YouTube
4bytes * 3 titles = 12byte file.

```
10179B00 # Brain Age: Train Your Brain In Minutes A Day
10105A00 # Netflix
10105700 # YouTube
```

The file can be as large or small as you want, depending on the IDs you don't want to move.
It must be a multiple of 4 bytes.

You can also use dontmoveX.hex where X is 0-9, or A or B.
You can also use <pre>dontmove<b>X</b>.txt</pre> where **`X`** is `0-9`, or `A` or `B`.
This allows each user to have separate selection of non-movable icons.
This is the last digit of the 8000000X save folder used by the current user.
Shown by the program as User ID: X
This is the last digit of the `8000000X` save folder used by the current user.
Shown by the program as User ID: `X`

`dontmoveX.txt` takes priority over `dontmove.txt`.
Only 1 file is used. The IDs are not merged.
You can delete the files if not needed.

**NOTE**: Don't forget to insert newline at the end of the `dontmove.txt` file.

### Titles map

You can override the default [titlesmap.psv](titlesmap.psv) with your custom map.
The file format is the following:
```
titleId#1|groupName
titleId#2|groupName
titleId#3|groupName
...
titleId#N|groupName
```

The included map has `6951` titles matched in groups. When _Bad naming mode sorting_ is chosen the title will be sorted based on the group and title name. If title is missing from the map it will sort it by name only.

The file can be as large or small as you want.

You can also use <pre>titlesmap<b>X</b>.psv</pre> where **`X`** is `0-9`, or `A` or `B`.
This allows each user to have separate selection of title maps.
This is the last digit of the `8000000X` save folder used by the current user.
Shown by the program as User ID: `X`

dontmoveX.hex takes priority over dontmove.hex.
Only 1 file is used. The IDs are not merged.
`titlesmapX.psv` takes priority over `titlesmap.psv`.
Only 1 file is used. The IDs are not merged.
You can delete the files if not needed.

It just does a basic string compare. Not sure how well it will work in foreign languages.
Will have to find a small UTF-8 normalize library.
### Build

You will need to compile the Wii U version of libfat.
https://github.com/dimok789/libfat
make from the wiiu\ directory.
Copy the headers and complied library to portlibs\ppc\...
You will need to compile the Wii U version of [libfat](https://github.com/dimok789/libfat).
make from the `wiiu\` directory.
Copy the headers and complied library to `portlibs\ppc\`.
Binary file removed dontmove.hex
Binary file not shown.
3 changes: 3 additions & 0 deletions dontmove.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
10179B00 # Brain Age: Train Your Brain In Minutes A Day
10105A00 # Netflix
10105700 # YouTube
6 changes: 3 additions & 3 deletions meta/meta.xml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<app version="1">
<name>Menu Sort</name>
<coder>Yardape8000 & doino-gretchenliev</coder>
<version>0.2.0</version>
<release_date>20200430000000</release_date>
<coder>doino-gretchenliev</coder>
<version>1.0.0</version>
<release_date>20200504000000</release_date>
<short_description>WiiU Menu Sort</short_description>
<long_description>Sorts items on Wii U Menu.</long_description>
</app>
Loading

0 comments on commit 6475967

Please sign in to comment.