Home Menu: Difference between revisions
Einstein95 (talk | contribs) |
No edit summary |
||
(24 intermediate revisions by 6 users not shown) | |||
Line 131: | Line 131: | ||
|- | |- | ||
| [[3.1.0-6|3.1.0-6]] | | [[3.1.0-6|3.1.0-6]] | ||
| | | Not updated | ||
| Unknown | | Unknown | ||
| Unknown. Sighted preinstalled on some early European 3DS XLs. | | Unknown. Sighted preinstalled on some early European 3DS XLs. | ||
Line 657: | Line 657: | ||
| Available | | Available | ||
| October 24, 2016 | | October 24, 2016 | ||
|- | |||
| [[11.3.0-36|11.3.0-36]] | |||
| | |||
| February 6, 2017 | |||
| See [[11.3.0-36|this]]. | |||
| Yes | |||
| Yes | |||
| Yes | |||
| No | |||
| Available | |||
| February 6, 2017 | |||
|- | |||
| [[11.4.0-37|11.4.0-37]] | |||
| | |||
| April 10, 2017 | |||
| See [[11.4.0-37|this]]. | |||
| Yes | |||
| Yes | |||
| Yes | |||
| No | |||
| Available | |||
| April 10, 2017 | |||
|- | |||
| [[11.5.0-38|11.5.0-38]] | |||
| | |||
| July 10, 2017 | |||
| See [[11.5.0-38|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| July 10, 2017 | |||
|- | |||
| [[11.6.0-39|11.6.0-39]] | |||
| | |||
| September 18, 2017 | |||
| See [[11.6.0-39|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| September 18, 2017 | |||
|- | |||
| [[11.7.0-40|11.7.0-40]] | |||
| | |||
| June 18, 2018 | |||
| See [[11.7.0-40|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| June 18, 2018 | |||
|- | |||
| [[11.8.0-41|11.8.0-41]] | |||
| | |||
| July 30, 2018 | |||
| See [[11.8.0-41|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| July 30, 2018 | |||
|- | |||
| [[11.9.0-42|11.9.0-42]] | |||
| | |||
| December 3, 2018 | |||
| See [[11.9.0-42|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| December 3, 2018 | |||
|- | |||
| [[11.10.0-43|11.10.0-43]] | |||
| | |||
| May 27, 2019 | |||
| See [[11.10.0-43|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| May 27, 2019 | |||
|- | |||
| [[11.11.0-43E|11.11.0-43E]] | |||
| | |||
| August 26, 2019 | |||
| See [[11.11.0-43E|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| August 26, 2019 | |||
|- | |||
| [[11.12.0-44|11.12.0-44]] | |||
| | |||
| November 4, 2019 | |||
| See [[11.12.0-44|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| November 4, 2019 | |||
|- | |||
| [[11.13.0-45|11.13.0-45]] | |||
| | |||
| December 2, 2019 | |||
| See [[11.13.0-45|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| December 2, 2019 | |||
|- | |||
| [[11.14.0-46|11.14.0-46]] | |||
| | |||
| November 17, 2020 | |||
| See [[11.14.0-46|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| November 17, 2020 | |||
|- | |||
| [[11.15.0-47|11.15.0-47]] | |||
| | |||
| July 27, 2021 | |||
| See [[11.15.0-47|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| July 27, 2021 | |||
|- | |||
| [[11.16.0-48|11.16.0-48]] | |||
| | |||
| August 30, 2022 | |||
| See [[11.16.0-48|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| August 30, 2022 | |||
|- | |||
| [[11.16.0-49|11.16.0-49]] | |||
| | |||
| September 13, 2022 | |||
| See [[11.16.0-49|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| September 13, 2022 | |||
|- | |||
| [[11.17.0-50|11.17.0-50]] | |||
| | |||
| May 23, 2023 | |||
| See [[11.17.0-50|this]]. | |||
| | |||
| | |||
| | |||
| No | |||
| Available | |||
| May 23, 2023 | |||
|} | |} | ||
Line 835: | Line 1,011: | ||
| 0x2 | | 0x2 | ||
| 0x2 | | 0x2 | ||
| | | u16, cart launcher position on the home menu | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
Line 843: | Line 1,019: | ||
| 0x8 | | 0x8 | ||
| 0xB40 | | 0xB40 | ||
| 360 u64s, list of titleIDs. For an unused entry, the u64 value is ~0(in that case, the corresponding entries at 0xD9A/0x106A for this titleID are not used either). This is used for the icons displayed on the main Home Menu screen. | | 360 u64s, list of NAND titleIDs. For an unused entry, the u64 value is ~0(in that case, the corresponding entries at 0xD9A/0x106A for this titleID are not used either). This is used for the icons displayed on the main Home Menu screen. | ||
|- | |||
| 0xB51 | |||
| 0x1 | |||
| u8, numbers of rows on the home menu, minus 1 (range 0..5) (with the enlarge/reduce option) | |||
|- | |||
| 0xB5C | |||
| 0x2 | |||
| u16, position of the cursor on the home menu | |||
|- | |||
| 0xB5E | |||
| 0x2 | |||
| u16, horizontal scrolling level (divided by the number of rows to get the actual number of columns hidden) on the home menu | |||
|- | |||
| 0xD80 | |||
| 0x2 or 0x4 | |||
| u16 or u32, number the next created folder will have (starts at 1) | |||
|- | |- | ||
| 0xD9A | | 0xD9A | ||
Line 851: | Line 1,043: | ||
| 0x106A | | 0x106A | ||
| 0x168 | | 0x168 | ||
| Array of 360 s8 fields, each one corresponds to the titleIDs at the array located at offset 0x8. This is used for icon position. When an s8 here is -1(which is the normal value), the icon is located with the first chunk of icons(outbuf+0), otherwise the base address is outbuf+0xB40+<s8val*0x1E0>(which is equivalent to 60 icons * s8val). Implemented with the format-version for [[4.0.0-7|4.0.0-X]]. | | Array of 360 s8 fields, each one corresponds to the titleIDs at the array located at offset 0x8. This is used for icon position. When an s8 here is -1(which is the normal value), the icon is located with the first chunk of icons(outbuf+0), otherwise the base address is outbuf+0xB40+<s8val*0x1E0>(which is equivalent to 60 icons * s8val). Implemented with the format-version for [[4.0.0-7|4.0.0-X]]. Corresponds to the id of the folder the icon is in, range -1..59, with -1 meaning not in a folder | ||
|- | |||
| 0x11DC | |||
| 0x78 | |||
| Array of 60 s16 fields, corresponding to folders position (with -1 meaning the folder is deleted/not yet created) | |||
|- | |||
| 0x1434 | |||
| 0x3C | |||
| Array of 60 u8 fields, the number of rows in each corresponding folder (defaults to 2) | |||
|- | |||
| 0x1470 | |||
| 0x78 | |||
| Array of 60 u16 fields, the position of the cursor in each corresponding folder (defaults to 0) | |||
|- | |||
| 0x14E8 | |||
| 0x78 | |||
| Array of 60 u16 fields, the horizontal scroll level in each corresponding folder (divided by the number of rows to get the actual number of columns hidden) (defaults to 0) | |||
|- | |||
| 0x1560 | |||
| 0x7F8 | |||
| Array of 60 utf-16 strings of length 0x22 (in bytes, so only 0x11 utf-16 characters) (not NULL-terminated), the name of each corresponding folder | |||
|- | |||
| 0x1D58 | |||
| 0xF0 | |||
| Array of 60 u32, the number of each corresponding folder | |||
|} | |} | ||
Line 938: | Line 1,154: | ||
| 0x8 | | 0x8 | ||
| 0xB40 | | 0xB40 | ||
| 360 u64s, list of titleIDs(used with icons). Equivalent to the same array in Launcher.dat. | | 360 u64s, list of titleIDs(used with icons). Equivalent to the same array in Launcher.dat, but for SD titles. | ||
|- | |- | ||
| 0xB48 | | 0xB48 | ||
Line 1,275: | Line 1,491: | ||
| 0x2 | | 0x2 | ||
| u16, Badge Sub ID (used for multi-part badges) | | u16, Badge Sub ID (used for multi-part badges) | ||
{| class="wikitable" border="1" | |||
! Value | |||
! Meaning | |||
|- | |||
| 0x0 | |||
| Badge is a standalone badge | |||
|- | |||
| 0x0100 | |||
| Badge is the left piece of a horizontal 2x1 badge | |||
|- | |||
| 0x0101 | |||
| Badge is the right piece of a horizontal 2x1 badge | |||
|- | |||
| 0x1000 | |||
| Badge is the top piece of a vertical 1x2 badge | |||
|- | |||
| 0x1010 | |||
| Badge is the bottom piece of a vertical 1x2 badge | |||
|- | |||
| 0x1100 | |||
| Badge is the top left piece of a 2x2 badge | |||
|- | |||
| 0x1101 | |||
| Badge is the top right piece of a 2x2 badge | |||
|- | |||
| 0x1110 | |||
| Badge is the bottom left piece of a 2x2 badge | |||
|- | |||
| 0x1111 | |||
| Badge is the bottom right piece of a 2x2 badge | |||
|} | |||
|} | |} | ||
Line 1,432: | Line 1,680: | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | 0xC | ||
| | | array of 8 u8, 0 if the corresponding layout slot is not set, 1 if it is | ||
|- | |- | ||
| | | 0xC | ||
| | | 0x3000 * 8 | ||
| | | Start of the layout entries. | ||
|- | |- | ||
| 0x1800C | |||
| 0xC | | 0xC | ||
| | | Padding | ||
| Start of the | |- | ||
| 0x18010 | |||
| 0x2DA0 * 8 | |||
| Start of the [[Home_Menu#SaveData.dat|SaveData.dat]] entries. | |||
|- | |||
| 0x2ED10 | |||
| 0xD4A8 * 8 | |||
| Start of the [[Home_Menu#BadgeMngFile.dat|BadgeMngFile.dat]] entries. | |||
|- | |||
| 0x99250 | |||
| 0x30 | |||
| Padding | |||
|- | |||
| 0x99280 | |||
| 256*3*8 * 400/8 * 8 | |||
| Start of the top screen (400x240) screenshots, in BGR8 tiled format, rotated 90 degrees and with 8 rows per "chunk", and actually 256 pixels wide instead of 240, with the last 16 being all black | |||
|- | |||
| 0x2F1280 | |||
| 256*3*8 * 320/8 * 8 | |||
| Start of the bottom screen (320x240) screenshots, in BGR8 tiled format, rotated 90 degrees and with 8 rows per "chunk", and actually 256 pixels wide instead of 240, with the last 16 being all black | |||
|} | |} | ||
Line 1,453: | Line 1,721: | ||
| 0x0 | | 0x0 | ||
| 0x2558 | | 0x2558 | ||
| Exact copy of the entire Home Menu [[System_SaveData]] Launcher.dat, this is the actual layout data. | | Exact copy of the entire Home Menu [[System_SaveData]] [[Home_Menu#Launcher.dat|Launcher.dat]], this is the actual layout data. | ||
|- | |- | ||
| 0x2558 | | 0x2558 | ||
| | | 0xAA8 | ||
| | | Padding | ||
|} | |} | ||
Line 1,465: | Line 1,733: | ||
Home Menu *only* accesses this file with the Home Menu layout-settings menu / when entering that menu. | Home Menu *only* accesses this file with the Home Menu layout-settings menu / when entering that menu. | ||
== Home Menu Jump Parameters == | |||
Parameters can be provided to [[APT:JumpToHomeMenu]] to perform certain actions when jumping to the home menu. | |||
=== Command Header === | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x0 | |||
| 0x4 | |||
| Magic Value "ASHP" | |||
|- | |||
| 0x4 | |||
| 0x1 | |||
| Command ID | |||
|} | |||
If the command requires extra arguments, this header will be padded and the arguments will start at offset 0x8. Otherwise it is just 0x5 bytes large as presented here. | |||
=== Command IDs === | |||
{| class="wikitable" border="1" | |||
|- | |||
! ID | |||
! Description | |||
! Extra Arguments | |||
|- | |||
| 0x0 | |||
| Does Nothing | |||
| None | |||
|- | |||
| 0x1 | |||
| Open Instruction Manual | |||
| None | |||
|- | |||
| 0x2 | |||
| Download Theme from Theme Shop | |||
| 4-byte ID of the theme (total command size 0xC bytes). This is divided by 1000000 to determine the [[Titles#Title_IDs|title ID variation]], and the remainder corresponds to the theme's DLC content index. If the value is 0 the theme shop will not open correctly, and if the ID isn't valid the theme shop will just return to the home screen after initializing the DLC title. | |||
|- | |||
| 0x3 | |||
| Open Badge Picker | |||
| None | |||
|} | |||
== Home Menu startup == | == Home Menu startup == |