diff options
| author | 2014-12-19 02:04:54 -0500 | |
|---|---|---|
| committer | 2014-12-21 16:38:57 -0500 | |
| commit | 462740278dfcf84b712f4cd615dd69cafa4373ee (patch) | |
| tree | 7ac72fd2c80869ececdb67e6370e47dbb47b902d /src | |
| parent | CFG: Implemented the GetConfigInfoBlk2 function. (diff) | |
| download | yuzu-462740278dfcf84b712f4cd615dd69cafa4373ee.tar.gz yuzu-462740278dfcf84b712f4cd615dd69cafa4373ee.tar.xz yuzu-462740278dfcf84b712f4cd615dd69cafa4373ee.zip | |
CFG:U: Add some data to the 0x00050005 config block.
Seems to allow some games to boot further, thanks @Normmatt for sharing this information
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/service/cfg_u.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/core/hle/service/cfg_u.cpp b/src/core/hle/service/cfg_u.cpp index e6c9ce1fa..771575e29 100644 --- a/src/core/hle/service/cfg_u.cpp +++ b/src/core/hle/service/cfg_u.cpp | |||
| @@ -16,7 +16,13 @@ namespace CFG_U { | |||
| 16 | static std::unique_ptr<FileSys::Archive_SystemSaveData> cfg_system_save_data; | 16 | static std::unique_ptr<FileSys::Archive_SystemSaveData> cfg_system_save_data; |
| 17 | static const u64 CFG_SAVE_ID = 0x00010017; | 17 | static const u64 CFG_SAVE_ID = 0x00010017; |
| 18 | static const u64 CONSOLE_UNIQUE_ID = 0xDEADC0DE; | 18 | static const u64 CONSOLE_UNIQUE_ID = 0xDEADC0DE; |
| 19 | static const char CONSOLE_USERNAME[0x1C] = "THIS IS CITRAAAAAAAAAAAAAA"; | 19 | |
| 20 | /// TODO(Subv): Find out what this actually is | ||
| 21 | /// Thanks Normmatt for providing this information | ||
| 22 | static const u8 STEREO_CAMERA_SETTINGS[32] = { | ||
| 23 | 0x00, 0x00, 0x78, 0x42, 0x00, 0x80, 0x90, 0x43, 0x9A, 0x99, 0x99, 0x42, 0xEC, 0x51, 0x38, 0x42, | ||
| 24 | 0x00, 0x00, 0x20, 0x41, 0x00, 0x00, 0xA0, 0x40, 0xEC, 0x51, 0x5E, 0x42, 0x5C, 0x8F, 0xAC, 0x41 | ||
| 25 | }; | ||
| 20 | 26 | ||
| 21 | enum SystemModel { | 27 | enum SystemModel { |
| 22 | NINTENDO_3DS, | 28 | NINTENDO_3DS, |
| @@ -288,9 +294,9 @@ Interface::Interface() { | |||
| 288 | // Console-unique ID | 294 | // Console-unique ID |
| 289 | config.block_entries[0] = { 0x00090001, offset, 0x8, 0xE }; | 295 | config.block_entries[0] = { 0x00090001, offset, 0x8, 0xE }; |
| 290 | offset += 0x8; | 296 | offset += 0x8; |
| 291 | // Username | 297 | // Stereo Camera Settings? |
| 292 | config.block_entries[1] = { 0x000A0000, offset, 0x1C, 0xE }; | 298 | config.block_entries[1] = { 0x00050005, offset, 0x20, 0xE }; |
| 293 | offset += 0x1C; | 299 | offset += 0x20; |
| 294 | // System Model (Nintendo 3DS XL) | 300 | // System Model (Nintendo 3DS XL) |
| 295 | config.block_entries[2] = { 0x000F0004, NINTENDO_3DS_XL, 0x4, 0x8 }; | 301 | config.block_entries[2] = { 0x000F0004, NINTENDO_3DS_XL, 0x4, 0x8 }; |
| 296 | 302 | ||
| @@ -299,8 +305,7 @@ Interface::Interface() { | |||
| 299 | // Write the data itself | 305 | // Write the data itself |
| 300 | file->Write(config.block_entries[0].offset_or_data, 0x8, 1, | 306 | file->Write(config.block_entries[0].offset_or_data, 0x8, 1, |
| 301 | reinterpret_cast<u8 const*>(&CONSOLE_UNIQUE_ID)); | 307 | reinterpret_cast<u8 const*>(&CONSOLE_UNIQUE_ID)); |
| 302 | file->Write(config.block_entries[1].offset_or_data, 0x1C, 1, | 308 | file->Write(config.block_entries[1].offset_or_data, 0x20, 1, STEREO_CAMERA_SETTINGS); |
| 303 | reinterpret_cast<u8 const*>(CONSOLE_USERNAME)); | ||
| 304 | } | 309 | } |
| 305 | 310 | ||
| 306 | Interface::~Interface() { | 311 | Interface::~Interface() { |