diff options
| author | 2014-11-23 14:32:55 -0500 | |
|---|---|---|
| committer | 2014-11-23 14:32:55 -0500 | |
| commit | aa986370f3d19d93c24fcd158c551f2a994eec58 (patch) | |
| tree | 1d1d0a92efa278d7254c99245c10aa3b78ed700d | |
| parent | Merge pull request #211 from linkmauve/master (diff) | |
| parent | Add more services and some fixes, along with more "override" (diff) | |
| download | yuzu-aa986370f3d19d93c24fcd158c551f2a994eec58.tar.gz yuzu-aa986370f3d19d93c24fcd158c551f2a994eec58.tar.xz yuzu-aa986370f3d19d93c24fcd158c551f2a994eec58.zip | |
Merge pull request #190 from purpasmart96/more_services
Add more services and general fixes
Diffstat (limited to '')
26 files changed, 464 insertions, 17 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 2315cc791..b3bfbca9e 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt | |||
| @@ -31,18 +31,24 @@ set(SRCS | |||
| 31 | hle/kernel/shared_memory.cpp | 31 | hle/kernel/shared_memory.cpp |
| 32 | hle/kernel/thread.cpp | 32 | hle/kernel/thread.cpp |
| 33 | hle/service/ac_u.cpp | 33 | hle/service/ac_u.cpp |
| 34 | hle/service/am_net.cpp | ||
| 34 | hle/service/apt_u.cpp | 35 | hle/service/apt_u.cpp |
| 35 | hle/service/boss_u.cpp | 36 | hle/service/boss_u.cpp |
| 37 | hle/service/cfg_i.cpp | ||
| 36 | hle/service/cfg_u.cpp | 38 | hle/service/cfg_u.cpp |
| 39 | hle/service/csnd_snd.cpp | ||
| 37 | hle/service/dsp_dsp.cpp | 40 | hle/service/dsp_dsp.cpp |
| 38 | hle/service/err_f.cpp | 41 | hle/service/err_f.cpp |
| 39 | hle/service/fs_user.cpp | 42 | hle/service/fs_user.cpp |
| 40 | hle/service/frd_u.cpp | 43 | hle/service/frd_u.cpp |
| 41 | hle/service/gsp_gpu.cpp | 44 | hle/service/gsp_gpu.cpp |
| 42 | hle/service/hid_user.cpp | 45 | hle/service/hid_user.cpp |
| 46 | hle/service/ir_rst.cpp | ||
| 47 | hle/service/ir_u.cpp | ||
| 43 | hle/service/mic_u.cpp | 48 | hle/service/mic_u.cpp |
| 44 | hle/service/ndm_u.cpp | 49 | hle/service/ndm_u.cpp |
| 45 | hle/service/nwm_uds.cpp | 50 | hle/service/nwm_uds.cpp |
| 51 | hle/service/pm_app.cpp | ||
| 46 | hle/service/ptm_u.cpp | 52 | hle/service/ptm_u.cpp |
| 47 | hle/service/service.cpp | 53 | hle/service/service.cpp |
| 48 | hle/service/soc_u.cpp | 54 | hle/service/soc_u.cpp |
| @@ -103,18 +109,24 @@ set(HEADERS | |||
| 103 | hle/kernel/shared_memory.h | 109 | hle/kernel/shared_memory.h |
| 104 | hle/kernel/thread.h | 110 | hle/kernel/thread.h |
| 105 | hle/service/ac_u.h | 111 | hle/service/ac_u.h |
| 112 | hle/service/am_net.h | ||
| 106 | hle/service/apt_u.h | 113 | hle/service/apt_u.h |
| 107 | hle/service/boss_u.h | 114 | hle/service/boss_u.h |
| 115 | hle/service/cfg_i.h | ||
| 108 | hle/service/cfg_u.h | 116 | hle/service/cfg_u.h |
| 117 | hle/service/csnd_snd.h | ||
| 109 | hle/service/dsp_dsp.h | 118 | hle/service/dsp_dsp.h |
| 110 | hle/service/err_f.h | 119 | hle/service/err_f.h |
| 111 | hle/service/fs_user.h | 120 | hle/service/fs_user.h |
| 112 | hle/service/frd_u.h | 121 | hle/service/frd_u.h |
| 113 | hle/service/gsp_gpu.h | 122 | hle/service/gsp_gpu.h |
| 114 | hle/service/hid_user.h | 123 | hle/service/hid_user.h |
| 124 | hle/service/ir_rst.h | ||
| 125 | hle/service/ir_u.h | ||
| 115 | hle/service/mic_u.h | 126 | hle/service/mic_u.h |
| 116 | hle/service/ndm_u.h | 127 | hle/service/ndm_u.h |
| 117 | hle/service/nwm_uds.h | 128 | hle/service/nwm_uds.h |
| 129 | hle/service/pm_app.h | ||
| 118 | hle/service/ptm_u.h | 130 | hle/service/ptm_u.h |
| 119 | hle/service/service.h | 131 | hle/service/service.h |
| 120 | hle/service/soc_u.h | 132 | hle/service/soc_u.h |
diff --git a/src/core/hle/service/ac_u.cpp b/src/core/hle/service/ac_u.cpp index b39603bdf..9af96f6b8 100644 --- a/src/core/hle/service/ac_u.cpp +++ b/src/core/hle/service/ac_u.cpp | |||
| @@ -22,12 +22,12 @@ const Interface::FunctionInfo FunctionTable[] = { | |||
| 22 | {0x000E0042, nullptr, "GetCurrentAPInfo"}, | 22 | {0x000E0042, nullptr, "GetCurrentAPInfo"}, |
| 23 | {0x00100042, nullptr, "GetCurrentNZoneInfo"}, | 23 | {0x00100042, nullptr, "GetCurrentNZoneInfo"}, |
| 24 | {0x00110042, nullptr, "GetNZoneApNumService"}, | 24 | {0x00110042, nullptr, "GetNZoneApNumService"}, |
| 25 | {0x00240042, nullptr, "AddDenyApType "}, | 25 | {0x00240042, nullptr, "AddDenyApType"}, |
| 26 | {0x00270002, nullptr, "GetInfraPriority "}, | 26 | {0x00270002, nullptr, "GetInfraPriority"}, |
| 27 | {0x002D0082, nullptr, "SetRequestEulaVersion"}, | 27 | {0x002D0082, nullptr, "SetRequestEulaVersion"}, |
| 28 | {0x00300004, nullptr, "RegisterDisconnectEvent"}, | 28 | {0x00300004, nullptr, "RegisterDisconnectEvent"}, |
| 29 | {0x003C0042, nullptr, "GetAPSSIDList"}, | 29 | {0x003C0042, nullptr, "GetAPSSIDList"}, |
| 30 | {0x003E0042, nullptr, "IsConnected "}, | 30 | {0x003E0042, nullptr, "IsConnected"}, |
| 31 | {0x00400042, nullptr, "SetClientVersion"}, | 31 | {0x00400042, nullptr, "SetClientVersion"}, |
| 32 | }; | 32 | }; |
| 33 | 33 | ||
diff --git a/src/core/hle/service/ac_u.h b/src/core/hle/service/ac_u.h index 8509a793e..c91b28353 100644 --- a/src/core/hle/service/ac_u.h +++ b/src/core/hle/service/ac_u.h | |||
| @@ -21,7 +21,7 @@ public: | |||
| 21 | * Gets the string port name used by CTROS for the service | 21 | * Gets the string port name used by CTROS for the service |
| 22 | * @return Port name of service | 22 | * @return Port name of service |
| 23 | */ | 23 | */ |
| 24 | std::string GetPortName() const { | 24 | std::string GetPortName() const override { |
| 25 | return "ac:u"; | 25 | return "ac:u"; |
| 26 | } | 26 | } |
| 27 | }; | 27 | }; |
diff --git a/src/core/hle/service/am_net.cpp b/src/core/hle/service/am_net.cpp new file mode 100644 index 000000000..403cac353 --- /dev/null +++ b/src/core/hle/service/am_net.cpp | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/am_net.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace AM_NET | ||
| 11 | |||
| 12 | namespace AM_NET { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x08010000, nullptr, "OpenTicket"}, | ||
| 16 | {0x08020002, nullptr, "TicketAbortInstall"}, | ||
| 17 | {0x08030002, nullptr, "TicketFinalizeInstall"}, | ||
| 18 | {0x08040100, nullptr, "InstallTitleBegin"}, | ||
| 19 | {0x08050000, nullptr, "InstallTitleAbort"}, | ||
| 20 | {0x080600C0, nullptr, "InstallTitleResume"}, | ||
| 21 | {0x08070000, nullptr, "InstallTitleAbortTMD"}, | ||
| 22 | {0x08080000, nullptr, "InstallTitleFinish"}, | ||
| 23 | {0x080A0000, nullptr, "OpenTMD"}, | ||
| 24 | {0x080B0002, nullptr, "TMDAbortInstall"}, | ||
| 25 | {0x080C0042, nullptr, "TMDFinalizeInstall"}, | ||
| 26 | {0x080E0040, nullptr, "OpenContentCreate"}, | ||
| 27 | {0x080F0002, nullptr, "ContentAbortInstall"}, | ||
| 28 | {0x08100040, nullptr, "OpenContentResume"}, | ||
| 29 | {0x08120002, nullptr, "ContentFinalizeInstall"}, | ||
| 30 | {0x08130000, nullptr, "GetTotalContents"}, | ||
| 31 | {0x08140042, nullptr, "GetContentIndexes"}, | ||
| 32 | {0x08150044, nullptr, "GetContentsInfo"}, | ||
| 33 | {0x08190108, nullptr, "Unknown"}, | ||
| 34 | {0x081B00C2, nullptr, "InstallTitlesFinish"}, | ||
| 35 | }; | ||
| 36 | |||
| 37 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 38 | // Interface class | ||
| 39 | |||
| 40 | Interface::Interface() { | ||
| 41 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 42 | } | ||
| 43 | |||
| 44 | Interface::~Interface() { | ||
| 45 | } | ||
| 46 | |||
| 47 | } // namespace | ||
diff --git a/src/core/hle/service/am_net.h b/src/core/hle/service/am_net.h new file mode 100644 index 000000000..4816e1697 --- /dev/null +++ b/src/core/hle/service/am_net.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace AM_NET | ||
| 11 | |||
| 12 | namespace AM_NET { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "am:net"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/cfg_i.cpp b/src/core/hle/service/cfg_i.cpp new file mode 100644 index 000000000..88d13d459 --- /dev/null +++ b/src/core/hle/service/cfg_i.cpp | |||
| @@ -0,0 +1,59 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/cfg_i.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace CFG_I | ||
| 11 | |||
| 12 | namespace CFG_I { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x04010082, nullptr, "GetConfigInfoBlk8"}, | ||
| 16 | {0x04020082, nullptr, "GetConfigInfoBlk4"}, | ||
| 17 | {0x04030000, nullptr, "UpdateConfigNANDSavegame"}, | ||
| 18 | {0x04040042, nullptr, "GetLocalFriendCodeSeedData"}, | ||
| 19 | {0x04050000, nullptr, "GetLocalFriendCodeSeed"}, | ||
| 20 | {0x04060000, nullptr, "SecureInfoGetRegion"}, | ||
| 21 | {0x04070000, nullptr, "SecureInfoGetByte101"}, | ||
| 22 | {0x04080042, nullptr, "SecureInfoGetSerialNo"}, | ||
| 23 | {0x04090000, nullptr, "UpdateConfigBlk00040003"}, | ||
| 24 | {0x08010082, nullptr, "GetConfigInfoBlk8"}, | ||
| 25 | {0x08020082, nullptr, "GetConfigInfoBlk4"}, | ||
| 26 | {0x08030000, nullptr, "UpdateConfigNANDSavegame"}, | ||
| 27 | {0x080400C2, nullptr, "CreateConfigInfoBlk"}, | ||
| 28 | {0x08050000, nullptr, "DeleteConfigNANDSavefile"}, | ||
| 29 | {0x08060000, nullptr, "FormatConfig"}, | ||
| 30 | {0x08070000, nullptr, "Unknown"}, | ||
| 31 | {0x08080000, nullptr, "UpdateConfigBlk1"}, | ||
| 32 | {0x08090000, nullptr, "UpdateConfigBlk2"}, | ||
| 33 | {0x080A0000, nullptr, "UpdateConfigBlk3"}, | ||
| 34 | {0x080B0082, nullptr, "SetGetLocalFriendCodeSeedData"}, | ||
| 35 | {0x080C0042, nullptr, "SetLocalFriendCodeSeedSignature"}, | ||
| 36 | {0x080D0000, nullptr, "DeleteCreateNANDLocalFriendCodeSeed"}, | ||
| 37 | {0x080E0000, nullptr, "VerifySigLocalFriendCodeSeed"}, | ||
| 38 | {0x080F0042, nullptr, "GetLocalFriendCodeSeedData"}, | ||
| 39 | {0x08100000, nullptr, "GetLocalFriendCodeSeed"}, | ||
| 40 | {0x08110084, nullptr, "SetSecureInfo"}, | ||
| 41 | {0x08120000, nullptr, "DeleteCreateNANDSecureInfo"}, | ||
| 42 | {0x08130000, nullptr, "VerifySigSecureInfo"}, | ||
| 43 | {0x08140042, nullptr, "SecureInfoGetData"}, | ||
| 44 | {0x08150042, nullptr, "SecureInfoGetSignature"}, | ||
| 45 | {0x08160000, nullptr, "SecureInfoGetRegion"}, | ||
| 46 | {0x08170000, nullptr, "SecureInfoGetByte101"}, | ||
| 47 | {0x08180042, nullptr, "SecureInfoGetSerialNo"}, | ||
| 48 | }; | ||
| 49 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 50 | // Interface class | ||
| 51 | |||
| 52 | Interface::Interface() { | ||
| 53 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 54 | } | ||
| 55 | |||
| 56 | Interface::~Interface() { | ||
| 57 | } | ||
| 58 | |||
| 59 | } // namespace | ||
diff --git a/src/core/hle/service/cfg_i.h b/src/core/hle/service/cfg_i.h new file mode 100644 index 000000000..fe343c968 --- /dev/null +++ b/src/core/hle/service/cfg_i.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace CFG_I | ||
| 11 | |||
| 12 | namespace CFG_I { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "cfg:i"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/cfg_u.h b/src/core/hle/service/cfg_u.h index 7525bd7c6..8075d19a8 100644 --- a/src/core/hle/service/cfg_u.h +++ b/src/core/hle/service/cfg_u.h | |||
| @@ -19,7 +19,7 @@ public: | |||
| 19 | * Gets the string port name used by CTROS for the service | 19 | * Gets the string port name used by CTROS for the service |
| 20 | * @return Port name of service | 20 | * @return Port name of service |
| 21 | */ | 21 | */ |
| 22 | std::string GetPortName() const { | 22 | std::string GetPortName() const override { |
| 23 | return "cfg:u"; | 23 | return "cfg:u"; |
| 24 | } | 24 | } |
| 25 | }; | 25 | }; |
diff --git a/src/core/hle/service/csnd_snd.cpp b/src/core/hle/service/csnd_snd.cpp new file mode 100644 index 000000000..6e59a9bf3 --- /dev/null +++ b/src/core/hle/service/csnd_snd.cpp | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/csnd_snd.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace CSND_SND | ||
| 11 | |||
| 12 | namespace CSND_SND { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x00010140, nullptr, "Initialize"}, | ||
| 16 | {0x00020000, nullptr, "Shutdown"}, | ||
| 17 | {0x00030040, nullptr, "Unknown"}, | ||
| 18 | {0x00040080, nullptr, "Unknown"}, | ||
| 19 | {0x00050000, nullptr, "Unknown"}, | ||
| 20 | {0x00060000, nullptr, "Unknown"}, | ||
| 21 | {0x00070000, nullptr, "Unknown"}, | ||
| 22 | {0x00080040, nullptr, "Unknown"}, | ||
| 23 | {0x00090082, nullptr, "FlushDCache"}, | ||
| 24 | {0x000A0082, nullptr, "StoreDCache"}, | ||
| 25 | {0x000B0082, nullptr, "InvalidateDCache"}, | ||
| 26 | {0x000C0000, nullptr, "Unknown"}, | ||
| 27 | }; | ||
| 28 | |||
| 29 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 30 | // Interface class | ||
| 31 | |||
| 32 | Interface::Interface() { | ||
| 33 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 34 | } | ||
| 35 | |||
| 36 | Interface::~Interface() { | ||
| 37 | } | ||
| 38 | |||
| 39 | } // namespace | ||
diff --git a/src/core/hle/service/csnd_snd.h b/src/core/hle/service/csnd_snd.h new file mode 100644 index 000000000..31cc85b07 --- /dev/null +++ b/src/core/hle/service/csnd_snd.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace CSND_SND | ||
| 11 | |||
| 12 | namespace CSND_SND { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "csnd:SND"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/dsp_dsp.cpp b/src/core/hle/service/dsp_dsp.cpp index 9e84ac938..bbcf26f61 100644 --- a/src/core/hle/service/dsp_dsp.cpp +++ b/src/core/hle/service/dsp_dsp.cpp | |||
| @@ -26,12 +26,12 @@ const Interface::FunctionInfo FunctionTable[] = { | |||
| 26 | {0x001100C2, nullptr, "LoadComponent"}, | 26 | {0x001100C2, nullptr, "LoadComponent"}, |
| 27 | {0x00120000, nullptr, "UnloadComponent"}, | 27 | {0x00120000, nullptr, "UnloadComponent"}, |
| 28 | {0x00130082, nullptr, "FlushDataCache"}, | 28 | {0x00130082, nullptr, "FlushDataCache"}, |
| 29 | {0x00140082, nullptr, "InvalidateDCache "}, | 29 | {0x00140082, nullptr, "InvalidateDCache"}, |
| 30 | {0x00150082, nullptr, "RegisterInterruptEvents"}, | 30 | {0x00150082, nullptr, "RegisterInterruptEvents"}, |
| 31 | {0x00160000, nullptr, "GetSemaphoreEventHandle"}, | 31 | {0x00160000, nullptr, "GetSemaphoreEventHandle"}, |
| 32 | {0x00170040, nullptr, "SetSemaphoreMask"}, | 32 | {0x00170040, nullptr, "SetSemaphoreMask"}, |
| 33 | {0x00180040, nullptr, "GetPhysicalAddress"}, | 33 | {0x00180040, nullptr, "GetPhysicalAddress"}, |
| 34 | {0x00190040, nullptr, "GetVirtualAddress" }, | 34 | {0x00190040, nullptr, "GetVirtualAddress"}, |
| 35 | {0x001A0042, nullptr, "SetIirFilterI2S1_cmd1"}, | 35 | {0x001A0042, nullptr, "SetIirFilterI2S1_cmd1"}, |
| 36 | {0x001B0042, nullptr, "SetIirFilterI2S1_cmd2"}, | 36 | {0x001B0042, nullptr, "SetIirFilterI2S1_cmd2"}, |
| 37 | {0x001C0082, nullptr, "SetIirFilterEQ"}, | 37 | {0x001C0082, nullptr, "SetIirFilterEQ"}, |
diff --git a/src/core/hle/service/dsp_dsp.h b/src/core/hle/service/dsp_dsp.h index c439ed266..c4ce44245 100644 --- a/src/core/hle/service/dsp_dsp.h +++ b/src/core/hle/service/dsp_dsp.h | |||
| @@ -19,7 +19,7 @@ public: | |||
| 19 | * Gets the string port name used by CTROS for the service | 19 | * Gets the string port name used by CTROS for the service |
| 20 | * @return Port name of service | 20 | * @return Port name of service |
| 21 | */ | 21 | */ |
| 22 | std::string GetPortName() const { | 22 | std::string GetPortName() const override { |
| 23 | return "dsp:DSP"; | 23 | return "dsp:DSP"; |
| 24 | } | 24 | } |
| 25 | }; | 25 | }; |
diff --git a/src/core/hle/service/err_f.h b/src/core/hle/service/err_f.h index 8b636b96c..6d7141c1b 100644 --- a/src/core/hle/service/err_f.h +++ b/src/core/hle/service/err_f.h | |||
| @@ -19,7 +19,7 @@ namespace ERR_F { | |||
| 19 | * Gets the string port name used by CTROS for the service | 19 | * Gets the string port name used by CTROS for the service |
| 20 | * @return Port name of service | 20 | * @return Port name of service |
| 21 | */ | 21 | */ |
| 22 | std::string GetPortName() const { | 22 | std::string GetPortName() const override { |
| 23 | return "err:f"; | 23 | return "err:f"; |
| 24 | } | 24 | } |
| 25 | }; | 25 | }; |
diff --git a/src/core/hle/service/frd_u.h b/src/core/hle/service/frd_u.h index 9df8a815a..4020c6664 100644 --- a/src/core/hle/service/frd_u.h +++ b/src/core/hle/service/frd_u.h | |||
| @@ -19,7 +19,7 @@ namespace FRD_U { | |||
| 19 | * Gets the string port name used by CTROS for the service | 19 | * Gets the string port name used by CTROS for the service |
| 20 | * @return Port name of service | 20 | * @return Port name of service |
| 21 | */ | 21 | */ |
| 22 | std::string GetPortName() const { | 22 | std::string GetPortName() const override { |
| 23 | return "frd:u"; | 23 | return "frd:u"; |
| 24 | } | 24 | } |
| 25 | }; | 25 | }; |
diff --git a/src/core/hle/service/ir_rst.cpp b/src/core/hle/service/ir_rst.cpp new file mode 100644 index 000000000..be15db231 --- /dev/null +++ b/src/core/hle/service/ir_rst.cpp | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/ir_rst.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace IR_RST | ||
| 11 | |||
| 12 | namespace IR_RST { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x00010000, nullptr, "GetHandles"}, | ||
| 16 | {0x00020080, nullptr, "Initialize"}, | ||
| 17 | {0x00030000, nullptr, "Shutdown"}, | ||
| 18 | {0x00040000, nullptr, "Unknown"}, | ||
| 19 | {0x00050000, nullptr, "Unknown"}, | ||
| 20 | {0x00060000, nullptr, "Unknown"}, | ||
| 21 | {0x00070080, nullptr, "Unknown"}, | ||
| 22 | {0x00080000, nullptr, "Unknown"}, | ||
| 23 | {0x00090000, nullptr, "Unknown"}, | ||
| 24 | }; | ||
| 25 | |||
| 26 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 27 | // Interface class | ||
| 28 | |||
| 29 | Interface::Interface() { | ||
| 30 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 31 | } | ||
| 32 | |||
| 33 | Interface::~Interface() { | ||
| 34 | } | ||
| 35 | |||
| 36 | } // namespace | ||
diff --git a/src/core/hle/service/ir_rst.h b/src/core/hle/service/ir_rst.h new file mode 100644 index 000000000..73effd7e3 --- /dev/null +++ b/src/core/hle/service/ir_rst.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace IR_RST | ||
| 11 | |||
| 12 | namespace IR_RST { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "ir:rst"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/ir_u.cpp b/src/core/hle/service/ir_u.cpp new file mode 100644 index 000000000..aa9db6f6d --- /dev/null +++ b/src/core/hle/service/ir_u.cpp | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/ir_u.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace IR_U | ||
| 11 | |||
| 12 | namespace IR_U { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x00010000, nullptr, "Initialize"}, | ||
| 16 | {0x00020000, nullptr, "Shutdown"}, | ||
| 17 | {0x00030042, nullptr, "StartSendTransfer"}, | ||
| 18 | {0x00040000, nullptr, "WaitSendTransfer"}, | ||
| 19 | {0x000500C2, nullptr, "StartRecvTransfer"}, | ||
| 20 | {0x00060000, nullptr, "WaitRecvTransfer"}, | ||
| 21 | {0x00070080, nullptr, "GetRecvTransferCount"}, | ||
| 22 | {0x00080000, nullptr, "GetSendState"}, | ||
| 23 | {0x00090040, nullptr, "SetBitRate"}, | ||
| 24 | {0x000A0000, nullptr, "GetBitRate"}, | ||
| 25 | {0x000B0040, nullptr, "SetIRLEDState"}, | ||
| 26 | {0x000C0000, nullptr, "GetIRLEDRecvState"}, | ||
| 27 | {0x000D0000, nullptr, "GetSendFinishedEvent"}, | ||
| 28 | {0x000E0000, nullptr, "GetRecvFinishedEvent"}, | ||
| 29 | {0x000F0000, nullptr, "GetTransferState"}, | ||
| 30 | {0x00100000, nullptr, "GetErrorStatus"}, | ||
| 31 | {0x00110040, nullptr, "SetSleepModeActive"}, | ||
| 32 | {0x00120040, nullptr, "SetSleepModeState"}, | ||
| 33 | }; | ||
| 34 | |||
| 35 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 36 | // Interface class | ||
| 37 | |||
| 38 | Interface::Interface() { | ||
| 39 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 40 | } | ||
| 41 | |||
| 42 | Interface::~Interface() { | ||
| 43 | } | ||
| 44 | |||
| 45 | } // namespace | ||
diff --git a/src/core/hle/service/ir_u.h b/src/core/hle/service/ir_u.h new file mode 100644 index 000000000..86d98d079 --- /dev/null +++ b/src/core/hle/service/ir_u.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace IR_U | ||
| 11 | |||
| 12 | namespace IR_U { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "ir:u"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/mic_u.h b/src/core/hle/service/mic_u.h index 72ba048ef..2a495f3a9 100644 --- a/src/core/hle/service/mic_u.h +++ b/src/core/hle/service/mic_u.h | |||
| @@ -21,7 +21,7 @@ public: | |||
| 21 | * Gets the string port name used by CTROS for the service | 21 | * Gets the string port name used by CTROS for the service |
| 22 | * @return Port name of service | 22 | * @return Port name of service |
| 23 | */ | 23 | */ |
| 24 | std::string GetPortName() const { | 24 | std::string GetPortName() const override { |
| 25 | return "mic:u"; | 25 | return "mic:u"; |
| 26 | } | 26 | } |
| 27 | }; | 27 | }; |
diff --git a/src/core/hle/service/nwm_uds.h b/src/core/hle/service/nwm_uds.h index a956ca812..69d2c2002 100644 --- a/src/core/hle/service/nwm_uds.h +++ b/src/core/hle/service/nwm_uds.h | |||
| @@ -21,7 +21,7 @@ public: | |||
| 21 | * Gets the string port name used by CTROS for the service | 21 | * Gets the string port name used by CTROS for the service |
| 22 | * @return Port name of service | 22 | * @return Port name of service |
| 23 | */ | 23 | */ |
| 24 | std::string GetPortName() const { | 24 | std::string GetPortName() const override { |
| 25 | return "nwm:UDS"; | 25 | return "nwm:UDS"; |
| 26 | } | 26 | } |
| 27 | }; | 27 | }; |
diff --git a/src/core/hle/service/pm_app.cpp b/src/core/hle/service/pm_app.cpp new file mode 100644 index 000000000..90e9b1bfa --- /dev/null +++ b/src/core/hle/service/pm_app.cpp | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "common/log.h" | ||
| 6 | #include "core/hle/hle.h" | ||
| 7 | #include "core/hle/service/pm_app.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace PM_APP | ||
| 11 | |||
| 12 | namespace PM_APP { | ||
| 13 | |||
| 14 | const Interface::FunctionInfo FunctionTable[] = { | ||
| 15 | {0x00010140, nullptr, "LaunchTitle"}, | ||
| 16 | {0x00020082, nullptr, "LaunchFIRMSetParams"}, | ||
| 17 | {0x00030080, nullptr, "TerminateProcesse"}, | ||
| 18 | {0x00040100, nullptr, "TerminateProcessTID"}, | ||
| 19 | {0x000500C0, nullptr, "TerminateProcessTID_unknown"}, | ||
| 20 | {0x00070042, nullptr, "GetFIRMLaunchParams"}, | ||
| 21 | {0x00080100, nullptr, "GetTitleExheaderFlags"}, | ||
| 22 | {0x00090042, nullptr, "SetFIRMLaunchParams"}, | ||
| 23 | }; | ||
| 24 | |||
| 25 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 26 | // Interface class | ||
| 27 | |||
| 28 | Interface::Interface() { | ||
| 29 | Register(FunctionTable, ARRAY_SIZE(FunctionTable)); | ||
| 30 | } | ||
| 31 | |||
| 32 | Interface::~Interface() { | ||
| 33 | } | ||
| 34 | |||
| 35 | } // namespace | ||
diff --git a/src/core/hle/service/pm_app.h b/src/core/hle/service/pm_app.h new file mode 100644 index 000000000..28c38f582 --- /dev/null +++ b/src/core/hle/service/pm_app.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 10 | // Namespace PM_APP | ||
| 11 | |||
| 12 | namespace PM_APP { | ||
| 13 | |||
| 14 | class Interface : public Service::Interface { | ||
| 15 | public: | ||
| 16 | Interface(); | ||
| 17 | ~Interface(); | ||
| 18 | /** | ||
| 19 | * Gets the string port name used by CTROS for the service | ||
| 20 | * @return Port name of service | ||
| 21 | */ | ||
| 22 | std::string GetPortName() const override { | ||
| 23 | return "pm:app"; | ||
| 24 | } | ||
| 25 | }; | ||
| 26 | |||
| 27 | } // namespace | ||
diff --git a/src/core/hle/service/ptm_u.cpp b/src/core/hle/service/ptm_u.cpp index f6a14d509..d9122dbbc 100644 --- a/src/core/hle/service/ptm_u.cpp +++ b/src/core/hle/service/ptm_u.cpp | |||
| @@ -17,13 +17,13 @@ const Interface::FunctionInfo FunctionTable[] = { | |||
| 17 | {0x00030000, nullptr, "GetRtcAlarm"}, | 17 | {0x00030000, nullptr, "GetRtcAlarm"}, |
| 18 | {0x00040000, nullptr, "CancelRtcAlarm"}, | 18 | {0x00040000, nullptr, "CancelRtcAlarm"}, |
| 19 | {0x00050000, nullptr, "GetAdapterState"}, | 19 | {0x00050000, nullptr, "GetAdapterState"}, |
| 20 | {0x00060000, nullptr, "GetShellState "}, | 20 | {0x00060000, nullptr, "GetShellState"}, |
| 21 | {0x00070000, nullptr, "GetBatteryLevel"}, | 21 | {0x00070000, nullptr, "GetBatteryLevel"}, |
| 22 | {0x00080000, nullptr, "GetBatteryChargeState"}, | 22 | {0x00080000, nullptr, "GetBatteryChargeState"}, |
| 23 | {0x00090000, nullptr, "GetPedometerState"}, | 23 | {0x00090000, nullptr, "GetPedometerState"}, |
| 24 | {0x000A0042, nullptr, "GetStepHistoryEntry"}, | 24 | {0x000A0042, nullptr, "GetStepHistoryEntry"}, |
| 25 | {0x000B00C2, nullptr, "GetStepHistory "}, | 25 | {0x000B00C2, nullptr, "GetStepHistory"}, |
| 26 | {0x000C0000, nullptr, "GetTotalStepCount "}, | 26 | {0x000C0000, nullptr, "GetTotalStepCount"}, |
| 27 | {0x000D0040, nullptr, "SetPedometerRecordingMode"}, | 27 | {0x000D0040, nullptr, "SetPedometerRecordingMode"}, |
| 28 | {0x000E0000, nullptr, "GetPedometerRecordingMode"}, | 28 | {0x000E0000, nullptr, "GetPedometerRecordingMode"}, |
| 29 | {0x000F0084, nullptr, "GetStepHistoryAll"}, | 29 | {0x000F0084, nullptr, "GetStepHistoryAll"}, |
diff --git a/src/core/hle/service/ptm_u.h b/src/core/hle/service/ptm_u.h index 82749fa39..f8d9f57be 100644 --- a/src/core/hle/service/ptm_u.h +++ b/src/core/hle/service/ptm_u.h | |||
| @@ -21,7 +21,7 @@ public: | |||
| 21 | * Gets the string port name used by CTROS for the service | 21 | * Gets the string port name used by CTROS for the service |
| 22 | * @return Port name of service | 22 | * @return Port name of service |
| 23 | */ | 23 | */ |
| 24 | std::string GetPortName() const { | 24 | std::string GetPortName() const override { |
| 25 | return "ptm:u"; | 25 | return "ptm:u"; |
| 26 | } | 26 | } |
| 27 | }; | 27 | }; |
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp index 5906e2060..abc8d5edb 100644 --- a/src/core/hle/service/service.cpp +++ b/src/core/hle/service/service.cpp | |||
| @@ -7,18 +7,24 @@ | |||
| 7 | 7 | ||
| 8 | #include "core/hle/service/service.h" | 8 | #include "core/hle/service/service.h" |
| 9 | #include "core/hle/service/ac_u.h" | 9 | #include "core/hle/service/ac_u.h" |
| 10 | #include "core/hle/service/am_net.h" | ||
| 10 | #include "core/hle/service/apt_u.h" | 11 | #include "core/hle/service/apt_u.h" |
| 11 | #include "core/hle/service/boss_u.h" | 12 | #include "core/hle/service/boss_u.h" |
| 13 | #include "core/hle/service/cfg_i.h" | ||
| 12 | #include "core/hle/service/cfg_u.h" | 14 | #include "core/hle/service/cfg_u.h" |
| 15 | #include "core/hle/service/csnd_snd.h" | ||
| 13 | #include "core/hle/service/dsp_dsp.h" | 16 | #include "core/hle/service/dsp_dsp.h" |
| 14 | #include "core/hle/service/err_f.h" | 17 | #include "core/hle/service/err_f.h" |
| 15 | #include "core/hle/service/fs_user.h" | 18 | #include "core/hle/service/fs_user.h" |
| 16 | #include "core/hle/service/frd_u.h" | 19 | #include "core/hle/service/frd_u.h" |
| 17 | #include "core/hle/service/gsp_gpu.h" | 20 | #include "core/hle/service/gsp_gpu.h" |
| 18 | #include "core/hle/service/hid_user.h" | 21 | #include "core/hle/service/hid_user.h" |
| 22 | #include "core/hle/service/ir_rst.h" | ||
| 23 | #include "core/hle/service/ir_u.h" | ||
| 19 | #include "core/hle/service/mic_u.h" | 24 | #include "core/hle/service/mic_u.h" |
| 20 | #include "core/hle/service/ndm_u.h" | 25 | #include "core/hle/service/ndm_u.h" |
| 21 | #include "core/hle/service/nwm_uds.h" | 26 | #include "core/hle/service/nwm_uds.h" |
| 27 | #include "core/hle/service/pm_app.h" | ||
| 22 | #include "core/hle/service/ptm_u.h" | 28 | #include "core/hle/service/ptm_u.h" |
| 23 | #include "core/hle/service/soc_u.h" | 29 | #include "core/hle/service/soc_u.h" |
| 24 | #include "core/hle/service/srv.h" | 30 | #include "core/hle/service/srv.h" |
| @@ -78,18 +84,24 @@ void Init() { | |||
| 78 | 84 | ||
| 79 | g_manager->AddService(new SRV::Interface); | 85 | g_manager->AddService(new SRV::Interface); |
| 80 | g_manager->AddService(new AC_U::Interface); | 86 | g_manager->AddService(new AC_U::Interface); |
| 87 | g_manager->AddService(new AM_NET::Interface); | ||
| 81 | g_manager->AddService(new APT_U::Interface); | 88 | g_manager->AddService(new APT_U::Interface); |
| 82 | g_manager->AddService(new BOSS_U::Interface); | 89 | g_manager->AddService(new BOSS_U::Interface); |
| 90 | g_manager->AddService(new CFG_I::Interface); | ||
| 83 | g_manager->AddService(new CFG_U::Interface); | 91 | g_manager->AddService(new CFG_U::Interface); |
| 92 | g_manager->AddService(new CSND_SND::Interface); | ||
| 84 | g_manager->AddService(new DSP_DSP::Interface); | 93 | g_manager->AddService(new DSP_DSP::Interface); |
| 85 | g_manager->AddService(new ERR_F::Interface); | 94 | g_manager->AddService(new ERR_F::Interface); |
| 86 | g_manager->AddService(new FRD_U::Interface); | 95 | g_manager->AddService(new FRD_U::Interface); |
| 87 | g_manager->AddService(new FS_User::Interface); | 96 | g_manager->AddService(new FS_User::Interface); |
| 88 | g_manager->AddService(new GSP_GPU::Interface); | 97 | g_manager->AddService(new GSP_GPU::Interface); |
| 89 | g_manager->AddService(new HID_User::Interface); | 98 | g_manager->AddService(new HID_User::Interface); |
| 99 | g_manager->AddService(new IR_RST::Interface); | ||
| 100 | g_manager->AddService(new IR_U::Interface); | ||
| 90 | g_manager->AddService(new MIC_U::Interface); | 101 | g_manager->AddService(new MIC_U::Interface); |
| 91 | g_manager->AddService(new NDM_U::Interface); | 102 | g_manager->AddService(new NDM_U::Interface); |
| 92 | g_manager->AddService(new NWM_UDS::Interface); | 103 | g_manager->AddService(new NWM_UDS::Interface); |
| 104 | g_manager->AddService(new PM_APP::Interface); | ||
| 93 | g_manager->AddService(new PTM_U::Interface); | 105 | g_manager->AddService(new PTM_U::Interface); |
| 94 | g_manager->AddService(new SOC_U::Interface); | 106 | g_manager->AddService(new SOC_U::Interface); |
| 95 | g_manager->AddService(new SSL_C::Interface); | 107 | g_manager->AddService(new SSL_C::Interface); |
diff --git a/src/core/hle/service/soc_u.h b/src/core/hle/service/soc_u.h index e27a2b1fe..d5590a683 100644 --- a/src/core/hle/service/soc_u.h +++ b/src/core/hle/service/soc_u.h | |||
| @@ -19,7 +19,7 @@ public: | |||
| 19 | * Gets the string port name used by CTROS for the service | 19 | * Gets the string port name used by CTROS for the service |
| 20 | * @return Port name of service | 20 | * @return Port name of service |
| 21 | */ | 21 | */ |
| 22 | std::string GetPortName() const { | 22 | std::string GetPortName() const override { |
| 23 | return "soc:U"; | 23 | return "soc:U"; |
| 24 | } | 24 | } |
| 25 | }; | 25 | }; |