diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/service/fs/fs_user.cpp | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/core/hle/service/fs/fs_user.cpp b/src/core/hle/service/fs/fs_user.cpp index 02458a00b..d8d1d5547 100644 --- a/src/core/hle/service/fs/fs_user.cpp +++ b/src/core/hle/service/fs/fs_user.cpp | |||
| @@ -494,6 +494,14 @@ static void FormatThisUserSaveData(Service::Interface* self) { | |||
| 494 | * 1 : Media type (NAND / SDMC) | 494 | * 1 : Media type (NAND / SDMC) |
| 495 | * 2 : Low word of the saveid to create | 495 | * 2 : Low word of the saveid to create |
| 496 | * 3 : High word of the saveid to create | 496 | * 3 : High word of the saveid to create |
| 497 | * 4 : Unknown | ||
| 498 | * 5 : Unknown | ||
| 499 | * 6 : Unknown | ||
| 500 | * 7 : Unknown | ||
| 501 | * 8 : Unknown | ||
| 502 | * 9 : Unknown | ||
| 503 | * 10: Unknown | ||
| 504 | * 11: Unknown | ||
| 497 | * Outputs: | 505 | * Outputs: |
| 498 | * 1 : Result of function, 0 on success, otherwise error code | 506 | * 1 : Result of function, 0 on success, otherwise error code |
| 499 | */ | 507 | */ |
| @@ -503,6 +511,13 @@ static void CreateExtSaveData(Service::Interface* self) { | |||
| 503 | MediaType media_type = static_cast<MediaType>(cmd_buff[1] & 0xFF); | 511 | MediaType media_type = static_cast<MediaType>(cmd_buff[1] & 0xFF); |
| 504 | u32 save_low = cmd_buff[2]; | 512 | u32 save_low = cmd_buff[2]; |
| 505 | u32 save_high = cmd_buff[3]; | 513 | u32 save_high = cmd_buff[3]; |
| 514 | |||
| 515 | LOG_WARNING(Service_FS, "(STUBBED) savedata_high=%08X savedata_low=%08X cmd_buff[3]=%08X " | ||
| 516 | "cmd_buff[4]=%08X cmd_buff[5]=%08X cmd_buff[6]=%08X cmd_buff[7]=%08X cmd_buff[8]=%08X " | ||
| 517 | "cmd_buff[9]=%08X cmd_buff[10]=%08X cmd_buff[11]=%08X", save_high, save_low, | ||
| 518 | cmd_buff[3], cmd_buff[4], cmd_buff[5], cmd_buff[6], cmd_buff[7], cmd_buff[8], cmd_buff[9], | ||
| 519 | cmd_buff[10], cmd_buff[11]); | ||
| 520 | |||
| 506 | cmd_buff[1] = CreateExtSaveData(media_type, save_high, save_low).raw; | 521 | cmd_buff[1] = CreateExtSaveData(media_type, save_high, save_low).raw; |
| 507 | } | 522 | } |
| 508 | 523 | ||
| @@ -513,15 +528,20 @@ static void CreateExtSaveData(Service::Interface* self) { | |||
| 513 | * 1 : Media type (NAND / SDMC) | 528 | * 1 : Media type (NAND / SDMC) |
| 514 | * 2 : Low word of the saveid to create | 529 | * 2 : Low word of the saveid to create |
| 515 | * 3 : High word of the saveid to create | 530 | * 3 : High word of the saveid to create |
| 531 | * 4 : Unknown | ||
| 516 | * Outputs: | 532 | * Outputs: |
| 517 | * 1 : Result of function, 0 on success, otherwise error code | 533 | * 1 : Result of function, 0 on success, otherwise error code |
| 518 | */ | 534 | */ |
| 519 | static void DeleteExtSaveData(Service::Interface* self) { | 535 | static void DeleteExtSaveData(Service::Interface* self) { |
| 520 | // TODO(Subv): Figure out the other parameters. | ||
| 521 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 536 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 522 | MediaType media_type = static_cast<MediaType>(cmd_buff[1] & 0xFF); | 537 | MediaType media_type = static_cast<MediaType>(cmd_buff[1] & 0xFF); |
| 523 | u32 save_low = cmd_buff[2]; | 538 | u32 save_low = cmd_buff[2]; |
| 524 | u32 save_high = cmd_buff[3]; | 539 | u32 save_high = cmd_buff[3]; |
| 540 | u32 unknown = cmd_buff[4]; // TODO(Subv): Figure out what this is | ||
| 541 | |||
| 542 | LOG_WARNING(Service_FS, "(STUBBED) save_low=%08X save_high=%08X media_type=%08X unknown=%08X", | ||
| 543 | save_low, save_high, cmd_buff[1] & 0xFF, unknown); | ||
| 544 | |||
| 525 | cmd_buff[1] = DeleteExtSaveData(media_type, save_high, save_low).raw; | 545 | cmd_buff[1] = DeleteExtSaveData(media_type, save_high, save_low).raw; |
| 526 | } | 546 | } |
| 527 | 547 | ||
| @@ -579,6 +599,11 @@ static void CreateSystemSaveData(Service::Interface* self) { | |||
| 579 | u32 savedata_high = cmd_buff[1]; | 599 | u32 savedata_high = cmd_buff[1]; |
| 580 | u32 savedata_low = cmd_buff[2]; | 600 | u32 savedata_low = cmd_buff[2]; |
| 581 | 601 | ||
| 602 | LOG_WARNING(Service_FS, "(STUBBED) savedata_high=%08X savedata_low=%08X cmd_buff[3]=%08X " | ||
| 603 | "cmd_buff[4]=%08X cmd_buff[5]=%08X cmd_buff[6]=%08X cmd_buff[7]=%08X cmd_buff[8]=%08X " | ||
| 604 | "cmd_buff[9]=%08X", savedata_high, savedata_low, cmd_buff[3], cmd_buff[4], cmd_buff[5], | ||
| 605 | cmd_buff[6], cmd_buff[7], cmd_buff[8], cmd_buff[9]); | ||
| 606 | |||
| 582 | cmd_buff[1] = CreateSystemSaveData(savedata_high, savedata_low).raw; | 607 | cmd_buff[1] = CreateSystemSaveData(savedata_high, savedata_low).raw; |
| 583 | } | 608 | } |
| 584 | 609 | ||