mirror of
https://github.com/yuzu-emu/yuzu.git
synced 2024-08-20 14:33:27 +02:00
Merge pull request #4737 from Morph1984/setshimlibraryversion-stub
capsrv: Stub 3 variants of SetShimLibraryVersion
This commit is contained in:
commit
32b4627a9c
@ -2,6 +2,8 @@
|
|||||||
// Licensed under GPLv2 or any later version
|
// Licensed under GPLv2 or any later version
|
||||||
// Refer to the license.txt file included.
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
|
#include "common/logging/log.h"
|
||||||
|
#include "core/hle/ipc_helpers.h"
|
||||||
#include "core/hle/service/caps/caps_c.h"
|
#include "core/hle/service/caps/caps_c.h"
|
||||||
|
|
||||||
namespace Service::Capture {
|
namespace Service::Capture {
|
||||||
@ -47,7 +49,7 @@ CAPS_C::CAPS_C() : ServiceFramework("caps:c") {
|
|||||||
static const FunctionInfo functions[] = {
|
static const FunctionInfo functions[] = {
|
||||||
{1, nullptr, "CaptureRawImage"},
|
{1, nullptr, "CaptureRawImage"},
|
||||||
{2, nullptr, "CaptureRawImageWithTimeout"},
|
{2, nullptr, "CaptureRawImageWithTimeout"},
|
||||||
{33, nullptr, "Unknown33"},
|
{33, &CAPS_C::SetShimLibraryVersion, "SetShimLibraryVersion"},
|
||||||
{1001, nullptr, "RequestTakingScreenShot"},
|
{1001, nullptr, "RequestTakingScreenShot"},
|
||||||
{1002, nullptr, "RequestTakingScreenShotWithTimeout"},
|
{1002, nullptr, "RequestTakingScreenShotWithTimeout"},
|
||||||
{1011, nullptr, "NotifyTakingScreenShotRefused"},
|
{1011, nullptr, "NotifyTakingScreenShotRefused"},
|
||||||
@ -72,4 +74,16 @@ CAPS_C::CAPS_C() : ServiceFramework("caps:c") {
|
|||||||
|
|
||||||
CAPS_C::~CAPS_C() = default;
|
CAPS_C::~CAPS_C() = default;
|
||||||
|
|
||||||
|
void CAPS_C::SetShimLibraryVersion(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
const auto library_version{rp.Pop<u64>()};
|
||||||
|
const auto applet_resource_user_id{rp.Pop<u64>()};
|
||||||
|
|
||||||
|
LOG_WARNING(Service_Capture, "(STUBBED) called. library_version={}, applet_resource_user_id={}",
|
||||||
|
library_version, applet_resource_user_id);
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace Service::Capture
|
} // namespace Service::Capture
|
||||||
|
@ -16,6 +16,9 @@ class CAPS_C final : public ServiceFramework<CAPS_C> {
|
|||||||
public:
|
public:
|
||||||
explicit CAPS_C();
|
explicit CAPS_C();
|
||||||
~CAPS_C() override;
|
~CAPS_C() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
void SetShimLibraryVersion(Kernel::HLERequestContext& ctx);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Service::Capture
|
} // namespace Service::Capture
|
||||||
|
@ -25,7 +25,12 @@ CAPS_SU::CAPS_SU() : ServiceFramework("caps:su") {
|
|||||||
CAPS_SU::~CAPS_SU() = default;
|
CAPS_SU::~CAPS_SU() = default;
|
||||||
|
|
||||||
void CAPS_SU::SetShimLibraryVersion(Kernel::HLERequestContext& ctx) {
|
void CAPS_SU::SetShimLibraryVersion(Kernel::HLERequestContext& ctx) {
|
||||||
LOG_WARNING(Service_Capture, "(STUBBED) called");
|
IPC::RequestParser rp{ctx};
|
||||||
|
const auto library_version{rp.Pop<u64>()};
|
||||||
|
const auto applet_resource_user_id{rp.Pop<u64>()};
|
||||||
|
|
||||||
|
LOG_WARNING(Service_Capture, "(STUBBED) called. library_version={}, applet_resource_user_id={}",
|
||||||
|
library_version, applet_resource_user_id);
|
||||||
|
|
||||||
IPC::ResponseBuilder rb{ctx, 2};
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
rb.Push(RESULT_SUCCESS);
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
@ -31,8 +31,7 @@ public:
|
|||||||
CAPS_U::CAPS_U() : ServiceFramework("caps:u") {
|
CAPS_U::CAPS_U() : ServiceFramework("caps:u") {
|
||||||
// clang-format off
|
// clang-format off
|
||||||
static const FunctionInfo functions[] = {
|
static const FunctionInfo functions[] = {
|
||||||
{31, nullptr, "GetShimLibraryVersion"},
|
{32, &CAPS_U::SetShimLibraryVersion, "SetShimLibraryVersion"},
|
||||||
{32, nullptr, "SetShimLibraryVersion"},
|
|
||||||
{102, &CAPS_U::GetAlbumContentsFileListForApplication, "GetAlbumContentsFileListForApplication"},
|
{102, &CAPS_U::GetAlbumContentsFileListForApplication, "GetAlbumContentsFileListForApplication"},
|
||||||
{103, nullptr, "DeleteAlbumContentsFileForApplication"},
|
{103, nullptr, "DeleteAlbumContentsFileForApplication"},
|
||||||
{104, nullptr, "GetAlbumContentsFileSizeForApplication"},
|
{104, nullptr, "GetAlbumContentsFileSizeForApplication"},
|
||||||
@ -53,6 +52,18 @@ CAPS_U::CAPS_U() : ServiceFramework("caps:u") {
|
|||||||
|
|
||||||
CAPS_U::~CAPS_U() = default;
|
CAPS_U::~CAPS_U() = default;
|
||||||
|
|
||||||
|
void CAPS_U::SetShimLibraryVersion(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
const auto library_version{rp.Pop<u64>()};
|
||||||
|
const auto applet_resource_user_id{rp.Pop<u64>()};
|
||||||
|
|
||||||
|
LOG_WARNING(Service_Capture, "(STUBBED) called. library_version={}, applet_resource_user_id={}",
|
||||||
|
library_version, applet_resource_user_id);
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
}
|
||||||
|
|
||||||
void CAPS_U::GetAlbumContentsFileListForApplication(Kernel::HLERequestContext& ctx) {
|
void CAPS_U::GetAlbumContentsFileListForApplication(Kernel::HLERequestContext& ctx) {
|
||||||
// Takes a type-0x6 output buffer containing an array of ApplicationAlbumFileEntry, a PID, an
|
// Takes a type-0x6 output buffer containing an array of ApplicationAlbumFileEntry, a PID, an
|
||||||
// u8 ContentType, two s64s, and an u64 AppletResourceUserId. Returns an output u64 for total
|
// u8 ContentType, two s64s, and an u64 AppletResourceUserId. Returns an output u64 for total
|
||||||
|
@ -18,6 +18,7 @@ public:
|
|||||||
~CAPS_U() override;
|
~CAPS_U() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void SetShimLibraryVersion(Kernel::HLERequestContext& ctx);
|
||||||
void GetAlbumContentsFileListForApplication(Kernel::HLERequestContext& ctx);
|
void GetAlbumContentsFileListForApplication(Kernel::HLERequestContext& ctx);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user