summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/logging/backend.cpp1
-rw-r--r--src/common/logging/log.h1
-rw-r--r--src/core/CMakeLists.txt2
-rw-r--r--src/core/hle/service/mig/mig.cpp34
-rw-r--r--src/core/hle/service/mig/mig.h15
-rw-r--r--src/core/hle/service/service.cpp2
6 files changed, 55 insertions, 0 deletions
diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp
index 43561d607..c6a21d993 100644
--- a/src/common/logging/backend.cpp
+++ b/src/common/logging/backend.cpp
@@ -180,6 +180,7 @@ void FileBackend::Write(const Entry& entry) {
180 SUB(Service, LBL) \ 180 SUB(Service, LBL) \
181 SUB(Service, LDN) \ 181 SUB(Service, LDN) \
182 SUB(Service, LM) \ 182 SUB(Service, LM) \
183 SUB(Service, Migration) \
183 SUB(Service, Mii) \ 184 SUB(Service, Mii) \
184 SUB(Service, MM) \ 185 SUB(Service, MM) \
185 SUB(Service, NCM) \ 186 SUB(Service, NCM) \
diff --git a/src/common/logging/log.h b/src/common/logging/log.h
index b5891fb15..3d6a161a5 100644
--- a/src/common/logging/log.h
+++ b/src/common/logging/log.h
@@ -67,6 +67,7 @@ enum class Class : ClassType {
67 Service_LBL, ///< The LBL (LCD backlight) service 67 Service_LBL, ///< The LBL (LCD backlight) service
68 Service_LDN, ///< The LDN (Local domain network) service 68 Service_LDN, ///< The LDN (Local domain network) service
69 Service_LM, ///< The LM (Logger) service 69 Service_LM, ///< The LM (Logger) service
70 Service_Migration, ///< The migration service
70 Service_Mii, ///< The Mii service 71 Service_Mii, ///< The Mii service
71 Service_MM, ///< The MM (Multimedia) service 72 Service_MM, ///< The MM (Multimedia) service
72 Service_NCM, ///< The NCM service 73 Service_NCM, ///< The NCM service
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index d29f6a84f..780a3affe 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -206,6 +206,8 @@ add_library(core STATIC
206 hle/service/ldr/ldr.h 206 hle/service/ldr/ldr.h
207 hle/service/lm/lm.cpp 207 hle/service/lm/lm.cpp
208 hle/service/lm/lm.h 208 hle/service/lm/lm.h
209 hle/service/mig/mig.cpp
210 hle/service/mig/mig.h
209 hle/service/mii/mii.cpp 211 hle/service/mii/mii.cpp
210 hle/service/mii/mii.h 212 hle/service/mii/mii.h
211 hle/service/mm/mm_u.cpp 213 hle/service/mm/mm_u.cpp
diff --git a/src/core/hle/service/mig/mig.cpp b/src/core/hle/service/mig/mig.cpp
new file mode 100644
index 000000000..d16367f2c
--- /dev/null
+++ b/src/core/hle/service/mig/mig.cpp
@@ -0,0 +1,34 @@
1// Copyright 2018 yuzu emulator team
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <memory>
6
7#include "core/hle/service/mig/mig.h"
8#include "core/hle/service/service.h"
9#include "core/hle/service/sm/sm.h"
10
11namespace Service::Migration {
12
13class MIG_USR final : public ServiceFramework<MIG_USR> {
14public:
15 explicit MIG_USR() : ServiceFramework{"mig:usr"} {
16 // clang-format off
17 static const FunctionInfo functions[] = {
18 {10, nullptr, "TryGetLastMigrationInfo"},
19 {100, nullptr, "CreateServer"},
20 {101, nullptr, "ResumeServer"},
21 {200, nullptr, "CreateClient"},
22 {201, nullptr, "ResumeClient"},
23 };
24 // clang-format on
25
26 RegisterHandlers(functions);
27 }
28};
29
30void InstallInterfaces(SM::ServiceManager& sm) {
31 std::make_shared<MIG_USR>()->InstallAsService(sm);
32}
33
34} // namespace Service::Migration
diff --git a/src/core/hle/service/mig/mig.h b/src/core/hle/service/mig/mig.h
new file mode 100644
index 000000000..288c1c1b3
--- /dev/null
+++ b/src/core/hle/service/mig/mig.h
@@ -0,0 +1,15 @@
1// Copyright 2018 yuzu emulator team
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7namespace Service::SM {
8class ServiceManager;
9}
10
11namespace Service::Migration {
12
13void InstallInterfaces(SM::ServiceManager& sm);
14
15} // namespace Service::Migration
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp
index 025f0c696..61e0c34a0 100644
--- a/src/core/hle/service/service.cpp
+++ b/src/core/hle/service/service.cpp
@@ -38,6 +38,7 @@
38#include "core/hle/service/ldn/ldn.h" 38#include "core/hle/service/ldn/ldn.h"
39#include "core/hle/service/ldr/ldr.h" 39#include "core/hle/service/ldr/ldr.h"
40#include "core/hle/service/lm/lm.h" 40#include "core/hle/service/lm/lm.h"
41#include "core/hle/service/mig/mig.h"
41#include "core/hle/service/mii/mii.h" 42#include "core/hle/service/mii/mii.h"
42#include "core/hle/service/mm/mm_u.h" 43#include "core/hle/service/mm/mm_u.h"
43#include "core/hle/service/ncm/ncm.h" 44#include "core/hle/service/ncm/ncm.h"
@@ -225,6 +226,7 @@ void Init(std::shared_ptr<SM::ServiceManager>& sm) {
225 LDN::InstallInterfaces(*sm); 226 LDN::InstallInterfaces(*sm);
226 LDR::InstallInterfaces(*sm); 227 LDR::InstallInterfaces(*sm);
227 LM::InstallInterfaces(*sm); 228 LM::InstallInterfaces(*sm);
229 Migration::InstallInterfaces(*sm);
228 Mii::InstallInterfaces(*sm); 230 Mii::InstallInterfaces(*sm);
229 MM::InstallInterfaces(*sm); 231 MM::InstallInterfaces(*sm);
230 NCM::InstallInterfaces(*sm); 232 NCM::InstallInterfaces(*sm);