diff options
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/applets/mii_selector.cpp | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/src/core/hle/applets/mii_selector.cpp b/src/core/hle/applets/mii_selector.cpp deleted file mode 100644 index f225c23a5..000000000 --- a/src/core/hle/applets/mii_selector.cpp +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2016 Citra Emulator Project -// Licensed under GPLv2 or any later version -// Refer to the license.txt file included. - -#include <cstring> -#include <string> -#include "common/assert.h" -#include "common/logging/log.h" -#include "common/string_util.h" -#include "core/hle/applets/mii_selector.h" -#include "core/hle/kernel/kernel.h" -#include "core/hle/kernel/shared_memory.h" -#include "core/hle/result.h" - -//////////////////////////////////////////////////////////////////////////////////////////////////// - -namespace HLE { -namespace Applets { - -ResultCode MiiSelector::ReceiveParameter(const Service::APT::MessageParameter& parameter) { - if (parameter.signal != static_cast<u32>(Service::APT::SignalType::Request)) { - LOG_ERROR(Service_APT, "unsupported signal %u", parameter.signal); - UNIMPLEMENTED(); - // TODO(Subv): Find the right error code - return ResultCode(-1); - } - - // The LibAppJustStarted message contains a buffer with the size of the framebuffer shared - // memory. - // Create the SharedMemory that will hold the framebuffer data - Service::APT::CaptureBufferInfo capture_info; - ASSERT(sizeof(capture_info) == parameter.buffer.size()); - - memcpy(&capture_info, parameter.buffer.data(), sizeof(capture_info)); - - using Kernel::MemoryPermission; - // Allocate a heap block of the required size for this applet. - heap_memory = std::make_shared<std::vector<u8>>(capture_info.size); - // Create a SharedMemory that directly points to this heap block. - framebuffer_memory = Kernel::SharedMemory::CreateForApplet( - heap_memory, 0, capture_info.size, MemoryPermission::ReadWrite, MemoryPermission::ReadWrite, - "MiiSelector Memory"); - - // Send the response message with the newly created SharedMemory - Service::APT::MessageParameter result; - result.signal = static_cast<u32>(Service::APT::SignalType::Response); - result.buffer.clear(); - result.destination_id = static_cast<u32>(Service::APT::AppletId::Application); - result.sender_id = static_cast<u32>(id); - result.object = framebuffer_memory; - - Service::APT::SendParameter(result); - return RESULT_SUCCESS; -} - -ResultCode MiiSelector::StartImpl(const Service::APT::AppletStartupParameter& parameter) { - is_running = true; - - // TODO(Subv): Set the expected fields in the response buffer before resending it to the - // application. - // TODO(Subv): Reverse the parameter format for the Mii Selector - - memcpy(&config, parameter.buffer.data(), parameter.buffer.size()); - - // TODO(Subv): Find more about this structure, result code 0 is enough to let most games - // continue. - MiiResult result; - memset(&result, 0, sizeof(result)); - result.return_code = 0; - - // Let the application know that we're closing - Service::APT::MessageParameter message; - message.buffer.resize(sizeof(MiiResult)); - std::memcpy(message.buffer.data(), &result, message.buffer.size()); - message.signal = static_cast<u32>(Service::APT::SignalType::WakeupByExit); - message.destination_id = static_cast<u32>(Service::APT::AppletId::Application); - message.sender_id = static_cast<u32>(id); - Service::APT::SendParameter(message); - - is_running = false; - return RESULT_SUCCESS; -} - -void MiiSelector::Update() {} -} // namespace Applets -} // namespace HLE |