summaryrefslogtreecommitdiff
path: root/src/core/hle
diff options
context:
space:
mode:
authorGravatar Zach Hilman2019-06-24 19:20:28 -0400
committerGravatar Zach Hilman2019-06-24 19:20:28 -0400
commitdf3ee4f44431ad6b026d404a234680f51fe702b6 (patch)
tree2e04bb5de9b67b5b161d87d6092d96f8b989b698 /src/core/hle
parentglue: Add scaffolding for bgtc:t and bgtc:sc services (diff)
downloadyuzu-df3ee4f44431ad6b026d404a234680f51fe702b6.tar.gz
yuzu-df3ee4f44431ad6b026d404a234680f51fe702b6.tar.xz
yuzu-df3ee4f44431ad6b026d404a234680f51fe702b6.zip
glue: Add errors for glue/arp services
Diffstat (limited to 'src/core/hle')
-rw-r--r--src/core/hle/service/glue/errors.h17
-rw-r--r--src/core/hle/service/glue/glue.cpp25
-rw-r--r--src/core/hle/service/glue/glue.h16
3 files changed, 58 insertions, 0 deletions
diff --git a/src/core/hle/service/glue/errors.h b/src/core/hle/service/glue/errors.h
new file mode 100644
index 000000000..594e20a01
--- /dev/null
+++ b/src/core/hle/service/glue/errors.h
@@ -0,0 +1,17 @@
1// Copyright 2019 yuzu emulator team
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7#include "core/hle/result.h"
8
9namespace Service::Glue {
10
11constexpr ResultCode ERR_OUTPUT_TOO_SMALL{0x3C9D};
12constexpr ResultCode ERR_PROCESS_ID_ZERO{0x3E9D};
13constexpr ResultCode ERR_TITLE_ID_ZERO{0x3E9D};
14constexpr ResultCode ERR_ALREADY_ISSUED{0x549D};
15constexpr ResultCode ERR_NONEXISTENT{0xCC9D};
16
17} // namespace Service::Glue
diff --git a/src/core/hle/service/glue/glue.cpp b/src/core/hle/service/glue/glue.cpp
new file mode 100644
index 000000000..c728e815c
--- /dev/null
+++ b/src/core/hle/service/glue/glue.cpp
@@ -0,0 +1,25 @@
1// Copyright 2019 yuzu emulator team
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <memory>
6#include "core/core.h"
7#include "core/hle/service/glue/arp.h"
8#include "core/hle/service/glue/bgtc.h"
9#include "core/hle/service/glue/glue.h"
10
11namespace Service::Glue {
12
13void InstallInterfaces(Core::System& system) {
14 // ARP
15 std::make_shared<ARP_R>(system, system.GetARPManager())
16 ->InstallAsService(system.ServiceManager());
17 std::make_shared<ARP_W>(system, system.GetARPManager())
18 ->InstallAsService(system.ServiceManager());
19
20 // BackGround Task Controller
21 std::make_shared<BGTC_T>()->InstallAsService(system.ServiceManager());
22 std::make_shared<BGTC_SC>()->InstallAsService(system.ServiceManager());
23}
24
25} // namespace Service::Glue
diff --git a/src/core/hle/service/glue/glue.h b/src/core/hle/service/glue/glue.h
new file mode 100644
index 000000000..112cd238b
--- /dev/null
+++ b/src/core/hle/service/glue/glue.h
@@ -0,0 +1,16 @@
1// Copyright 2019 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 Core {
8class System;
9} // namespace Core
10
11namespace Service::Glue {
12
13/// Registers all Glue services with the specified service manager.
14void InstallInterfaces(Core::System& system);
15
16} // namespace Service::Glue