7 changed files with 77 additions and 42 deletions
-
6src/core/CMakeLists.txt
-
16src/core/hle/service/ns/ns.cpp
-
16src/core/hle/service/ns/ns.h
-
34src/core/hle/service/ns/ns_s.cpp
-
9src/core/hle/service/ns/ns_s.h
-
33src/core/hle/service/ns_s.cpp
-
5src/core/hle/service/service.cpp
@ -0,0 +1,16 @@ |
|||
// Copyright 2017 Citra Emulator Project
|
|||
// Licensed under GPLv2 or any later version
|
|||
// Refer to the license.txt file included.
|
|||
|
|||
#include "core/hle/service/ns/ns.h"
|
|||
#include "core/hle/service/ns/ns_s.h"
|
|||
|
|||
namespace Service { |
|||
namespace NS { |
|||
|
|||
void InstallInterfaces(SM::ServiceManager& service_manager) { |
|||
std::make_shared<NS_S>()->InstallAsService(service_manager); |
|||
} |
|||
|
|||
} // namespace NS
|
|||
} // namespace Service
|
|||
@ -0,0 +1,16 @@ |
|||
// Copyright 2017 Citra Emulator Project |
|||
// Licensed under GPLv2 or any later version |
|||
// Refer to the license.txt file included. |
|||
|
|||
#pragma once |
|||
|
|||
#include "core/hle/service/service.h" |
|||
|
|||
namespace Service { |
|||
namespace NS { |
|||
|
|||
/// Registers all NS services with the specified service manager. |
|||
void InstallInterfaces(SM::ServiceManager& service_manager); |
|||
|
|||
} // namespace NS |
|||
} // namespace Service |
|||
@ -0,0 +1,34 @@ |
|||
// Copyright 2015 Citra Emulator Project
|
|||
// Licensed under GPLv2 or any later version
|
|||
// Refer to the license.txt file included.
|
|||
|
|||
#include "core/hle/service/ns/ns_s.h"
|
|||
|
|||
namespace Service { |
|||
namespace NS { |
|||
|
|||
NS_S::NS_S() : ServiceFramework("ns:s", 2) { |
|||
static const FunctionInfo functions[] = { |
|||
{0x000100C0, nullptr, "LaunchFIRM"}, |
|||
{0x000200C0, nullptr, "LaunchTitle"}, |
|||
{0x00030000, nullptr, "TerminateApplication"}, |
|||
{0x00040040, nullptr, "TerminateProcess"}, |
|||
{0x000500C0, nullptr, "LaunchApplicationFIRM"}, |
|||
{0x00060042, nullptr, "SetFIRMParams4A0"}, |
|||
{0x00070042, nullptr, "CardUpdateInitialize"}, |
|||
{0x00080000, nullptr, "CardUpdateShutdown"}, |
|||
{0x000D0140, nullptr, "SetTWLBannerHMAC"}, |
|||
{0x000E0000, nullptr, "ShutdownAsync"}, |
|||
{0x00100180, nullptr, "RebootSystem"}, |
|||
{0x00110100, nullptr, "TerminateTitle"}, |
|||
{0x001200C0, nullptr, "SetApplicationCpuTimeLimit"}, |
|||
{0x00150140, nullptr, "LaunchApplication"}, |
|||
{0x00160000, nullptr, "RebootSystemClean"}, |
|||
}; |
|||
RegisterHandlers(functions); |
|||
} |
|||
|
|||
NS_S::~NS_S() = default; |
|||
|
|||
} // namespace NS
|
|||
} // namespace Service
|
|||
@ -1,33 +0,0 @@ |
|||
// Copyright 2015 Citra Emulator Project
|
|||
// Licensed under GPLv2 or any later version
|
|||
// Refer to the license.txt file included.
|
|||
|
|||
#include "core/hle/service/ns_s.h"
|
|||
|
|||
namespace Service { |
|||
namespace NS { |
|||
|
|||
const Interface::FunctionInfo FunctionTable[] = { |
|||
{0x000100C0, nullptr, "LaunchFIRM"}, |
|||
{0x000200C0, nullptr, "LaunchTitle"}, |
|||
{0x00030000, nullptr, "TerminateApplication"}, |
|||
{0x00040040, nullptr, "TerminateProcess"}, |
|||
{0x000500C0, nullptr, "LaunchApplicationFIRM"}, |
|||
{0x00060042, nullptr, "SetFIRMParams4A0"}, |
|||
{0x00070042, nullptr, "CardUpdateInitialize"}, |
|||
{0x00080000, nullptr, "CardUpdateShutdown"}, |
|||
{0x000D0140, nullptr, "SetTWLBannerHMAC"}, |
|||
{0x000E0000, nullptr, "ShutdownAsync"}, |
|||
{0x00100180, nullptr, "RebootSystem"}, |
|||
{0x00110100, nullptr, "TerminateTitle"}, |
|||
{0x001200C0, nullptr, "SetApplicationCpuTimeLimit"}, |
|||
{0x00150140, nullptr, "LaunchApplication"}, |
|||
{0x00160000, nullptr, "RebootSystemClean"}, |
|||
}; |
|||
|
|||
NS_S::NS_S() { |
|||
Register(FunctionTable); |
|||
} |
|||
|
|||
} // namespace NS
|
|||
} // namespace Service
|
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue