diff options
| author | 2018-04-22 19:02:18 -0700 | |
|---|---|---|
| committer | 2018-04-22 19:02:18 -0700 | |
| commit | 27650499bc74ec642c253a84fcf7f1c7812fdcac (patch) | |
| tree | 90d6fd8921ae0e319166f4d52ade2ed71237cfb3 | |
| parent | lioncash proposed changes (diff) | |
| download | yuzu-27650499bc74ec642c253a84fcf7f1c7812fdcac.tar.gz yuzu-27650499bc74ec642c253a84fcf7f1c7812fdcac.tar.xz yuzu-27650499bc74ec642c253a84fcf7f1c7812fdcac.zip | |
GetIUserInterface->CreateUserInterface, Added todos and stub logs. Playreport->PlayReport.
| -rw-r--r-- | src/common/logging/log.h | 1 | ||||
| -rw-r--r-- | src/core/hle/service/audio/audren_u.cpp | 8 | ||||
| -rw-r--r-- | src/core/hle/service/nfp/nfp.cpp | 27 | ||||
| -rw-r--r-- | src/core/hle/service/nfp/nfp.h | 2 | ||||
| -rw-r--r-- | src/core/hle/service/nfp/nfp_user.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/prepo/prepo.cpp | 34 | ||||
| -rw-r--r-- | src/core/hle/service/prepo/prepo.h | 10 | ||||
| -rw-r--r-- | src/core/hle/service/service.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/ssl/ssl.cpp | 1 |
10 files changed, 64 insertions, 25 deletions
diff --git a/src/common/logging/log.h b/src/common/logging/log.h index 45821850c..ade44d9c7 100644 --- a/src/common/logging/log.h +++ b/src/common/logging/log.h | |||
| @@ -65,6 +65,7 @@ enum class Class : ClassType { | |||
| 65 | Service_NS, ///< The NS services | 65 | Service_NS, ///< The NS services |
| 66 | Service_NVDRV, ///< The NVDRV (Nvidia driver) service | 66 | Service_NVDRV, ///< The NVDRV (Nvidia driver) service |
| 67 | Service_PCTL, ///< The PCTL (Parental control) service | 67 | Service_PCTL, ///< The PCTL (Parental control) service |
| 68 | Service_PREPO, ///< The PREPO(Play report) service | ||
| 68 | Service_SET, ///< The SET (Settings) service | 69 | Service_SET, ///< The SET (Settings) service |
| 69 | Service_SM, ///< The SM (Service manager) service | 70 | Service_SM, ///< The SM (Service manager) service |
| 70 | Service_SPL, ///< The SPL service | 71 | Service_SPL, ///< The SPL service |
diff --git a/src/core/hle/service/audio/audren_u.cpp b/src/core/hle/service/audio/audren_u.cpp index fe445552a..a9360614c 100644 --- a/src/core/hle/service/audio/audren_u.cpp +++ b/src/core/hle/service/audio/audren_u.cpp | |||
| @@ -163,12 +163,10 @@ public: | |||
| 163 | {0x4, &IAudioDevice::QueryAudioDeviceSystemEvent, "QueryAudioDeviceSystemEvent"}, | 163 | {0x4, &IAudioDevice::QueryAudioDeviceSystemEvent, "QueryAudioDeviceSystemEvent"}, |
| 164 | {0x5, &IAudioDevice::GetActiveChannelCount, "GetActiveChannelCount"}, | 164 | {0x5, &IAudioDevice::GetActiveChannelCount, "GetActiveChannelCount"}, |
| 165 | {0x6, &IAudioDevice::ListAudioDeviceName, | 165 | {0x6, &IAudioDevice::ListAudioDeviceName, |
| 166 | "ListAudioDeviceNameAuto"}, // Are these any different? | 166 | "ListAudioDeviceNameAuto"}, // TODO(ogniK): Confirm if autos are identical to non auto |
| 167 | {0x7, &IAudioDevice::SetAudioDeviceOutputVolume, | 167 | {0x7, &IAudioDevice::SetAudioDeviceOutputVolume, "SetAudioDeviceOutputVolumeAuto"}, |
| 168 | "SetAudioDeviceOutputVolumeAuto"}, // Are these any different? | ||
| 169 | {0x8, nullptr, "GetAudioDeviceOutputVolumeAuto"}, | 168 | {0x8, nullptr, "GetAudioDeviceOutputVolumeAuto"}, |
| 170 | {0xa, &IAudioDevice::GetActiveAudioDeviceName, | 169 | {0xa, &IAudioDevice::GetActiveAudioDeviceName, "GetActiveAudioDeviceNameAuto"}, |
| 171 | "GetActiveAudioDeviceNameAuto"}, // Are these any different? | ||
| 172 | {0xb, nullptr, "QueryAudioDeviceInputEvent"}, | 170 | {0xb, nullptr, "QueryAudioDeviceInputEvent"}, |
| 173 | {0xc, nullptr, "QueryAudioDeviceOutputEvent"}}; | 171 | {0xc, nullptr, "QueryAudioDeviceOutputEvent"}}; |
| 174 | RegisterHandlers(functions); | 172 | RegisterHandlers(functions); |
diff --git a/src/core/hle/service/nfp/nfp.cpp b/src/core/hle/service/nfp/nfp.cpp index 2f21d8f56..a1cd6b24a 100644 --- a/src/core/hle/service/nfp/nfp.cpp +++ b/src/core/hle/service/nfp/nfp.cpp | |||
| @@ -17,18 +17,43 @@ public: | |||
| 17 | IUser() : ServiceFramework("IUser") { | 17 | IUser() : ServiceFramework("IUser") { |
| 18 | static const FunctionInfo functions[] = { | 18 | static const FunctionInfo functions[] = { |
| 19 | {0, &IUser::Initialize, "Initialize"}, | 19 | {0, &IUser::Initialize, "Initialize"}, |
| 20 | {1, nullptr, "Unknown1"}, | ||
| 21 | {2, nullptr, "Unknown2"}, | ||
| 22 | {3, nullptr, "Unknown3"}, | ||
| 23 | {4, nullptr, "Unknown4"}, | ||
| 24 | {5, nullptr, "Unknown5"}, | ||
| 25 | {6, nullptr, "Unknown6"}, | ||
| 26 | {7, nullptr, "Unknown7"}, | ||
| 27 | {8, nullptr, "Unknown8"}, | ||
| 28 | {9, nullptr, "Unknown9"}, | ||
| 29 | {10, nullptr, "Unknown10"}, | ||
| 30 | {11, nullptr, "Unknown11"}, | ||
| 31 | {12, nullptr, "Unknown12"}, | ||
| 32 | {13, nullptr, "Unknown13"}, | ||
| 33 | {14, nullptr, "Unknown14"}, | ||
| 34 | {15, nullptr, "Unknown15"}, | ||
| 35 | {16, nullptr, "Unknown16"}, | ||
| 36 | {17, nullptr, "Unknown17"}, | ||
| 37 | {18, nullptr, "Unknown18"}, | ||
| 38 | {19, nullptr, "Unknown19"}, | ||
| 39 | {20, nullptr, "Unknown20"}, | ||
| 40 | {21, nullptr, "Unknown21"}, | ||
| 41 | {22, nullptr, "Unknown22"}, | ||
| 42 | {23, nullptr, "Unknown23"}, | ||
| 43 | {24, nullptr, "Unknown24"}, | ||
| 20 | }; | 44 | }; |
| 21 | RegisterHandlers(functions); | 45 | RegisterHandlers(functions); |
| 22 | } | 46 | } |
| 23 | 47 | ||
| 24 | private: | 48 | private: |
| 25 | void Initialize(Kernel::HLERequestContext& ctx) { | 49 | void Initialize(Kernel::HLERequestContext& ctx) { |
| 50 | LOG_WARNING(Service_NFP, "(STUBBED) called"); | ||
| 26 | IPC::ResponseBuilder rb{ctx, 2}; | 51 | IPC::ResponseBuilder rb{ctx, 2}; |
| 27 | rb.Push(RESULT_SUCCESS); | 52 | rb.Push(RESULT_SUCCESS); |
| 28 | } | 53 | } |
| 29 | }; | 54 | }; |
| 30 | 55 | ||
| 31 | void Module::Interface::GetIUserInterface(Kernel::HLERequestContext& ctx) { | 56 | void Module::Interface::CreateUserInterface(Kernel::HLERequestContext& ctx) { |
| 32 | LOG_WARNING(Service_NFP, "(STUBBED) called"); | 57 | LOG_WARNING(Service_NFP, "(STUBBED) called"); |
| 33 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | 58 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; |
| 34 | rb.Push(RESULT_SUCCESS); | 59 | rb.Push(RESULT_SUCCESS); |
diff --git a/src/core/hle/service/nfp/nfp.h b/src/core/hle/service/nfp/nfp.h index c0688f232..262a666cb 100644 --- a/src/core/hle/service/nfp/nfp.h +++ b/src/core/hle/service/nfp/nfp.h | |||
| @@ -14,7 +14,7 @@ public: | |||
| 14 | public: | 14 | public: |
| 15 | Interface(std::shared_ptr<Module> module, const char* name); | 15 | Interface(std::shared_ptr<Module> module, const char* name); |
| 16 | 16 | ||
| 17 | void GetIUserInterface(Kernel::HLERequestContext& ctx); | 17 | void CreateUserInterface(Kernel::HLERequestContext& ctx); |
| 18 | 18 | ||
| 19 | protected: | 19 | protected: |
| 20 | std::shared_ptr<Module> module; | 20 | std::shared_ptr<Module> module; |
diff --git a/src/core/hle/service/nfp/nfp_user.cpp b/src/core/hle/service/nfp/nfp_user.cpp index 678f7a927..b608fe693 100644 --- a/src/core/hle/service/nfp/nfp_user.cpp +++ b/src/core/hle/service/nfp/nfp_user.cpp | |||
| @@ -9,7 +9,7 @@ namespace Service::NFP { | |||
| 9 | NFP_User::NFP_User(std::shared_ptr<Module> module) | 9 | NFP_User::NFP_User(std::shared_ptr<Module> module) |
| 10 | : Module::Interface(std::move(module), "nfp:user") { | 10 | : Module::Interface(std::move(module), "nfp:user") { |
| 11 | static const FunctionInfo functions[] = { | 11 | static const FunctionInfo functions[] = { |
| 12 | {0, &NFP_User::GetIUserInterface, "GetIUserInterface"}, | 12 | {0, &NFP_User::CreateUserInterface, "CreateUserInterface"}, |
| 13 | }; | 13 | }; |
| 14 | RegisterHandlers(functions); | 14 | RegisterHandlers(functions); |
| 15 | } | 15 | } |
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp b/src/core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp index 44ae9c08a..5008d7cbf 100644 --- a/src/core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp +++ b/src/core/hle/service/nvdrv/devices/nvhost_ctrl_gpu.cpp | |||
| @@ -79,7 +79,7 @@ u32 nvhost_ctrl_gpu::GetTPCMasks(const std::vector<u8>& input, std::vector<u8>& | |||
| 79 | std::memcpy(¶ms, input.data(), input.size()); | 79 | std::memcpy(¶ms, input.data(), input.size()); |
| 80 | LOG_WARNING(Service_NVDRV, "(STUBBED) called, mask=0x%x, mask_buf_addr=0x%" PRIx64, | 80 | LOG_WARNING(Service_NVDRV, "(STUBBED) called, mask=0x%x, mask_buf_addr=0x%" PRIx64, |
| 81 | params.mask_buf_size, params.mask_buf_addr); | 81 | params.mask_buf_size, params.mask_buf_addr); |
| 82 | params.unk = 0xcafe; // Needs to be non 0, what does this actually do? | 82 | params.unk = 0xcafe; // TODO(ogniK): Needs to be non 0, what does this actually do? |
| 83 | std::memcpy(output.data(), ¶ms, sizeof(params)); | 83 | std::memcpy(output.data(), ¶ms, sizeof(params)); |
| 84 | return 0; | 84 | return 0; |
| 85 | } | 85 | } |
diff --git a/src/core/hle/service/prepo/prepo.cpp b/src/core/hle/service/prepo/prepo.cpp index b9a7e1ff0..02db54827 100644 --- a/src/core/hle/service/prepo/prepo.cpp +++ b/src/core/hle/service/prepo/prepo.cpp | |||
| @@ -4,15 +4,28 @@ | |||
| 4 | #include "core/hle/kernel/event.h" | 4 | #include "core/hle/kernel/event.h" |
| 5 | #include "core/hle/service/prepo/prepo.h" | 5 | #include "core/hle/service/prepo/prepo.h" |
| 6 | 6 | ||
| 7 | namespace Service::Playreport { | 7 | namespace Service::PlayReport { |
| 8 | Playreport::Playreport(const char* name) : ServiceFramework(name) { | 8 | PlayReport::PlayReport(const char* name) : ServiceFramework(name) { |
| 9 | static const FunctionInfo functions[] = { | 9 | static const FunctionInfo functions[] = { |
| 10 | {10101, &Playreport::SaveReportWithUser, "SaveReportWithUser"}, | 10 | {10100, nullptr, "SaveReport"}, |
| 11 | {10101, &PlayReport::SaveReportWithUser, "SaveReportWithUser"}, | ||
| 12 | {10200, nullptr, "RequestImmediateTransmission"}, | ||
| 13 | {10300, nullptr, "GetTransmissionStatus"}, | ||
| 14 | {20100, nullptr, "SaveSystemReport"}, | ||
| 15 | {20200, nullptr, "SetOperationMode"}, | ||
| 16 | {20101, nullptr, "SaveSystemReportWithUser"}, | ||
| 17 | {30100, nullptr, "ClearStorage"}, | ||
| 18 | {40100, nullptr, "IsUserAgreementCheckEnabled"}, | ||
| 19 | {40101, nullptr, "SetUserAgreementCheckEnabled"}, | ||
| 20 | {90100, nullptr, "GetStorageUsage"}, | ||
| 21 | {90200, nullptr, "GetStatistics"}, | ||
| 22 | {90201, nullptr, "GetThroughputHistory"}, | ||
| 23 | {90300, nullptr, "GetLastUploadError"}, | ||
| 11 | }; | 24 | }; |
| 12 | RegisterHandlers(functions); | 25 | RegisterHandlers(functions); |
| 13 | }; | 26 | }; |
| 14 | 27 | ||
| 15 | void Playreport::SaveReportWithUser(Kernel::HLERequestContext& ctx) { | 28 | void PlayReport::SaveReportWithUser(Kernel::HLERequestContext& ctx) { |
| 16 | /*IPC::RequestParser rp{ctx}; | 29 | /*IPC::RequestParser rp{ctx}; |
| 17 | auto Uid = rp.PopRaw<std::array<u64, 2>>(); | 30 | auto Uid = rp.PopRaw<std::array<u64, 2>>(); |
| 18 | u64 unk = rp.Pop<u64>(); | 31 | u64 unk = rp.Pop<u64>(); |
| @@ -23,18 +36,19 @@ void Playreport::SaveReportWithUser(Kernel::HLERequestContext& ctx) { | |||
| 23 | std::vector<u8> buffer2; | 36 | std::vector<u8> buffer2; |
| 24 | buffer.reserve(ctx.BufferDescriptorA()[0].Size()); | 37 | buffer.reserve(ctx.BufferDescriptorA()[0].Size()); |
| 25 | Memory::ReadBlock(ctx.BufferDescriptorA()[0].Address(), buffer.data(), buffer.size());*/ | 38 | Memory::ReadBlock(ctx.BufferDescriptorA()[0].Address(), buffer.data(), buffer.size());*/ |
| 39 | // TODO(ogniK): Do we want to add play report? ^ Buffers/Data required for it | ||
| 26 | 40 | ||
| 27 | // If we ever want to add play reports | 41 | LOG_WARNING(Service_PREPO, "(STUBBED) called"); |
| 28 | 42 | ||
| 29 | IPC::ResponseBuilder rb{ctx, 2}; | 43 | IPC::ResponseBuilder rb{ctx, 2}; |
| 30 | rb.Push(RESULT_SUCCESS); | 44 | rb.Push(RESULT_SUCCESS); |
| 31 | }; | 45 | }; |
| 32 | 46 | ||
| 33 | void InstallInterfaces(SM::ServiceManager& service_manager) { | 47 | void InstallInterfaces(SM::ServiceManager& service_manager) { |
| 34 | std::make_shared<Playreport>("prepo:a")->InstallAsService(service_manager); | 48 | std::make_shared<PlayReport>("prepo:a")->InstallAsService(service_manager); |
| 35 | std::make_shared<Playreport>("prepo:m")->InstallAsService(service_manager); | 49 | std::make_shared<PlayReport>("prepo:m")->InstallAsService(service_manager); |
| 36 | std::make_shared<Playreport>("prepo:s")->InstallAsService(service_manager); | 50 | std::make_shared<PlayReport>("prepo:s")->InstallAsService(service_manager); |
| 37 | std::make_shared<Playreport>("prepo:u")->InstallAsService(service_manager); | 51 | std::make_shared<PlayReport>("prepo:u")->InstallAsService(service_manager); |
| 38 | } | 52 | } |
| 39 | 53 | ||
| 40 | } // namespace Service::Playreport | 54 | } // namespace Service::PlayReport |
diff --git a/src/core/hle/service/prepo/prepo.h b/src/core/hle/service/prepo/prepo.h index 40e26adcf..3708e0dcb 100644 --- a/src/core/hle/service/prepo/prepo.h +++ b/src/core/hle/service/prepo/prepo.h | |||
| @@ -7,12 +7,12 @@ | |||
| 7 | #include "core/hle/kernel/event.h" | 7 | #include "core/hle/kernel/event.h" |
| 8 | #include "core/hle/service/service.h" | 8 | #include "core/hle/service/service.h" |
| 9 | 9 | ||
| 10 | namespace Service::Playreport { | 10 | namespace Service::PlayReport { |
| 11 | 11 | ||
| 12 | class Playreport final : public ServiceFramework<Playreport> { | 12 | class PlayReport final : public ServiceFramework<PlayReport> { |
| 13 | public: | 13 | public: |
| 14 | explicit Playreport(const char* name); | 14 | explicit PlayReport(const char* name); |
| 15 | ~Playreport() = default; | 15 | ~PlayReport() = default; |
| 16 | 16 | ||
| 17 | private: | 17 | private: |
| 18 | void SaveReportWithUser(Kernel::HLERequestContext& ctx); | 18 | void SaveReportWithUser(Kernel::HLERequestContext& ctx); |
| @@ -20,4 +20,4 @@ private: | |||
| 20 | 20 | ||
| 21 | void InstallInterfaces(SM::ServiceManager& service_manager); | 21 | void InstallInterfaces(SM::ServiceManager& service_manager); |
| 22 | 22 | ||
| 23 | } // namespace Service::Playreport | 23 | } // namespace Service::PlayReport |
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp index 1e759b21e..68d2b9f17 100644 --- a/src/core/hle/service/service.cpp +++ b/src/core/hle/service/service.cpp | |||
| @@ -193,7 +193,7 @@ void Init(std::shared_ptr<SM::ServiceManager>& sm) { | |||
| 193 | NS::InstallInterfaces(*sm); | 193 | NS::InstallInterfaces(*sm); |
| 194 | Nvidia::InstallInterfaces(*sm); | 194 | Nvidia::InstallInterfaces(*sm); |
| 195 | PCTL::InstallInterfaces(*sm); | 195 | PCTL::InstallInterfaces(*sm); |
| 196 | Playreport::InstallInterfaces(*sm); | 196 | PlayReport::InstallInterfaces(*sm); |
| 197 | Sockets::InstallInterfaces(*sm); | 197 | Sockets::InstallInterfaces(*sm); |
| 198 | SPL::InstallInterfaces(*sm); | 198 | SPL::InstallInterfaces(*sm); |
| 199 | SSL::InstallInterfaces(*sm); | 199 | SSL::InstallInterfaces(*sm); |
diff --git a/src/core/hle/service/ssl/ssl.cpp b/src/core/hle/service/ssl/ssl.cpp index 7e21fec8e..27d91640e 100644 --- a/src/core/hle/service/ssl/ssl.cpp +++ b/src/core/hle/service/ssl/ssl.cpp | |||
| @@ -103,6 +103,7 @@ SSL::SSL() : ServiceFramework("ssl") { | |||
| 103 | } | 103 | } |
| 104 | 104 | ||
| 105 | void SSL::SetInterfaceVersion(Kernel::HLERequestContext& ctx) { | 105 | void SSL::SetInterfaceVersion(Kernel::HLERequestContext& ctx) { |
| 106 | LOG_WARNING(Service_SSL, "(STUBBED) called"); | ||
| 106 | IPC::RequestParser rp{ctx}; | 107 | IPC::RequestParser rp{ctx}; |
| 107 | u32 unk1 = rp.Pop<u32>(); // Probably minor/major? | 108 | u32 unk1 = rp.Pop<u32>(); // Probably minor/major? |
| 108 | u32 unk2 = rp.Pop<u32>(); | 109 | u32 unk2 = rp.Pop<u32>(); |