Browse Source
Merge pull request #190 from purpasmart96/more_services
Merge pull request #190 from purpasmart96/more_services
Add more services and general fixespull/15/merge
26 changed files with 464 additions and 17 deletions
-
12src/core/CMakeLists.txt
-
6src/core/hle/service/ac_u.cpp
-
2src/core/hle/service/ac_u.h
-
47src/core/hle/service/am_net.cpp
-
27src/core/hle/service/am_net.h
-
59src/core/hle/service/cfg_i.cpp
-
27src/core/hle/service/cfg_i.h
-
2src/core/hle/service/cfg_u.h
-
39src/core/hle/service/csnd_snd.cpp
-
27src/core/hle/service/csnd_snd.h
-
4src/core/hle/service/dsp_dsp.cpp
-
2src/core/hle/service/dsp_dsp.h
-
2src/core/hle/service/err_f.h
-
2src/core/hle/service/frd_u.h
-
36src/core/hle/service/ir_rst.cpp
-
27src/core/hle/service/ir_rst.h
-
45src/core/hle/service/ir_u.cpp
-
27src/core/hle/service/ir_u.h
-
2src/core/hle/service/mic_u.h
-
2src/core/hle/service/nwm_uds.h
-
35src/core/hle/service/pm_app.cpp
-
27src/core/hle/service/pm_app.h
-
6src/core/hle/service/ptm_u.cpp
-
2src/core/hle/service/ptm_u.h
-
12src/core/hle/service/service.cpp
-
2src/core/hle/service/soc_u.h
@ -0,0 +1,47 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/am_net.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace AM_NET
|
||||
|
|
||||
|
namespace AM_NET { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x08010000, nullptr, "OpenTicket"}, |
||||
|
{0x08020002, nullptr, "TicketAbortInstall"}, |
||||
|
{0x08030002, nullptr, "TicketFinalizeInstall"}, |
||||
|
{0x08040100, nullptr, "InstallTitleBegin"}, |
||||
|
{0x08050000, nullptr, "InstallTitleAbort"}, |
||||
|
{0x080600C0, nullptr, "InstallTitleResume"}, |
||||
|
{0x08070000, nullptr, "InstallTitleAbortTMD"}, |
||||
|
{0x08080000, nullptr, "InstallTitleFinish"}, |
||||
|
{0x080A0000, nullptr, "OpenTMD"}, |
||||
|
{0x080B0002, nullptr, "TMDAbortInstall"}, |
||||
|
{0x080C0042, nullptr, "TMDFinalizeInstall"}, |
||||
|
{0x080E0040, nullptr, "OpenContentCreate"}, |
||||
|
{0x080F0002, nullptr, "ContentAbortInstall"}, |
||||
|
{0x08100040, nullptr, "OpenContentResume"}, |
||||
|
{0x08120002, nullptr, "ContentFinalizeInstall"}, |
||||
|
{0x08130000, nullptr, "GetTotalContents"}, |
||||
|
{0x08140042, nullptr, "GetContentIndexes"}, |
||||
|
{0x08150044, nullptr, "GetContentsInfo"}, |
||||
|
{0x08190108, nullptr, "Unknown"}, |
||||
|
{0x081B00C2, nullptr, "InstallTitlesFinish"}, |
||||
|
}; |
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace AM_NET |
||||
|
|
||||
|
namespace AM_NET { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "am:net"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
@ -0,0 +1,59 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/cfg_i.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace CFG_I
|
||||
|
|
||||
|
namespace CFG_I { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x04010082, nullptr, "GetConfigInfoBlk8"}, |
||||
|
{0x04020082, nullptr, "GetConfigInfoBlk4"}, |
||||
|
{0x04030000, nullptr, "UpdateConfigNANDSavegame"}, |
||||
|
{0x04040042, nullptr, "GetLocalFriendCodeSeedData"}, |
||||
|
{0x04050000, nullptr, "GetLocalFriendCodeSeed"}, |
||||
|
{0x04060000, nullptr, "SecureInfoGetRegion"}, |
||||
|
{0x04070000, nullptr, "SecureInfoGetByte101"}, |
||||
|
{0x04080042, nullptr, "SecureInfoGetSerialNo"}, |
||||
|
{0x04090000, nullptr, "UpdateConfigBlk00040003"}, |
||||
|
{0x08010082, nullptr, "GetConfigInfoBlk8"}, |
||||
|
{0x08020082, nullptr, "GetConfigInfoBlk4"}, |
||||
|
{0x08030000, nullptr, "UpdateConfigNANDSavegame"}, |
||||
|
{0x080400C2, nullptr, "CreateConfigInfoBlk"}, |
||||
|
{0x08050000, nullptr, "DeleteConfigNANDSavefile"}, |
||||
|
{0x08060000, nullptr, "FormatConfig"}, |
||||
|
{0x08070000, nullptr, "Unknown"}, |
||||
|
{0x08080000, nullptr, "UpdateConfigBlk1"}, |
||||
|
{0x08090000, nullptr, "UpdateConfigBlk2"}, |
||||
|
{0x080A0000, nullptr, "UpdateConfigBlk3"}, |
||||
|
{0x080B0082, nullptr, "SetGetLocalFriendCodeSeedData"}, |
||||
|
{0x080C0042, nullptr, "SetLocalFriendCodeSeedSignature"}, |
||||
|
{0x080D0000, nullptr, "DeleteCreateNANDLocalFriendCodeSeed"}, |
||||
|
{0x080E0000, nullptr, "VerifySigLocalFriendCodeSeed"}, |
||||
|
{0x080F0042, nullptr, "GetLocalFriendCodeSeedData"}, |
||||
|
{0x08100000, nullptr, "GetLocalFriendCodeSeed"}, |
||||
|
{0x08110084, nullptr, "SetSecureInfo"}, |
||||
|
{0x08120000, nullptr, "DeleteCreateNANDSecureInfo"}, |
||||
|
{0x08130000, nullptr, "VerifySigSecureInfo"}, |
||||
|
{0x08140042, nullptr, "SecureInfoGetData"}, |
||||
|
{0x08150042, nullptr, "SecureInfoGetSignature"}, |
||||
|
{0x08160000, nullptr, "SecureInfoGetRegion"}, |
||||
|
{0x08170000, nullptr, "SecureInfoGetByte101"}, |
||||
|
{0x08180042, nullptr, "SecureInfoGetSerialNo"}, |
||||
|
}; |
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace CFG_I |
||||
|
|
||||
|
namespace CFG_I { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "cfg:i"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
@ -0,0 +1,39 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/csnd_snd.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace CSND_SND
|
||||
|
|
||||
|
namespace CSND_SND { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x00010140, nullptr, "Initialize"}, |
||||
|
{0x00020000, nullptr, "Shutdown"}, |
||||
|
{0x00030040, nullptr, "Unknown"}, |
||||
|
{0x00040080, nullptr, "Unknown"}, |
||||
|
{0x00050000, nullptr, "Unknown"}, |
||||
|
{0x00060000, nullptr, "Unknown"}, |
||||
|
{0x00070000, nullptr, "Unknown"}, |
||||
|
{0x00080040, nullptr, "Unknown"}, |
||||
|
{0x00090082, nullptr, "FlushDCache"}, |
||||
|
{0x000A0082, nullptr, "StoreDCache"}, |
||||
|
{0x000B0082, nullptr, "InvalidateDCache"}, |
||||
|
{0x000C0000, nullptr, "Unknown"}, |
||||
|
}; |
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace CSND_SND |
||||
|
|
||||
|
namespace CSND_SND { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "csnd:SND"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
@ -0,0 +1,36 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/ir_rst.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace IR_RST
|
||||
|
|
||||
|
namespace IR_RST { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x00010000, nullptr, "GetHandles"}, |
||||
|
{0x00020080, nullptr, "Initialize"}, |
||||
|
{0x00030000, nullptr, "Shutdown"}, |
||||
|
{0x00040000, nullptr, "Unknown"}, |
||||
|
{0x00050000, nullptr, "Unknown"}, |
||||
|
{0x00060000, nullptr, "Unknown"}, |
||||
|
{0x00070080, nullptr, "Unknown"}, |
||||
|
{0x00080000, nullptr, "Unknown"}, |
||||
|
{0x00090000, nullptr, "Unknown"}, |
||||
|
}; |
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace IR_RST |
||||
|
|
||||
|
namespace IR_RST { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "ir:rst"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
@ -0,0 +1,45 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/ir_u.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace IR_U
|
||||
|
|
||||
|
namespace IR_U { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x00010000, nullptr, "Initialize"}, |
||||
|
{0x00020000, nullptr, "Shutdown"}, |
||||
|
{0x00030042, nullptr, "StartSendTransfer"}, |
||||
|
{0x00040000, nullptr, "WaitSendTransfer"}, |
||||
|
{0x000500C2, nullptr, "StartRecvTransfer"}, |
||||
|
{0x00060000, nullptr, "WaitRecvTransfer"}, |
||||
|
{0x00070080, nullptr, "GetRecvTransferCount"}, |
||||
|
{0x00080000, nullptr, "GetSendState"}, |
||||
|
{0x00090040, nullptr, "SetBitRate"}, |
||||
|
{0x000A0000, nullptr, "GetBitRate"}, |
||||
|
{0x000B0040, nullptr, "SetIRLEDState"}, |
||||
|
{0x000C0000, nullptr, "GetIRLEDRecvState"}, |
||||
|
{0x000D0000, nullptr, "GetSendFinishedEvent"}, |
||||
|
{0x000E0000, nullptr, "GetRecvFinishedEvent"}, |
||||
|
{0x000F0000, nullptr, "GetTransferState"}, |
||||
|
{0x00100000, nullptr, "GetErrorStatus"}, |
||||
|
{0x00110040, nullptr, "SetSleepModeActive"}, |
||||
|
{0x00120040, nullptr, "SetSleepModeState"}, |
||||
|
}; |
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace IR_U |
||||
|
|
||||
|
namespace IR_U { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "ir:u"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
@ -0,0 +1,35 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project
|
||||
|
// Licensed under GPLv2
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "common/log.h"
|
||||
|
#include "core/hle/hle.h"
|
||||
|
#include "core/hle/service/pm_app.h"
|
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Namespace PM_APP
|
||||
|
|
||||
|
namespace PM_APP { |
||||
|
|
||||
|
const Interface::FunctionInfo FunctionTable[] = { |
||||
|
{0x00010140, nullptr, "LaunchTitle"}, |
||||
|
{0x00020082, nullptr, "LaunchFIRMSetParams"}, |
||||
|
{0x00030080, nullptr, "TerminateProcesse"}, |
||||
|
{0x00040100, nullptr, "TerminateProcessTID"}, |
||||
|
{0x000500C0, nullptr, "TerminateProcessTID_unknown"}, |
||||
|
{0x00070042, nullptr, "GetFIRMLaunchParams"}, |
||||
|
{0x00080100, nullptr, "GetTitleExheaderFlags"}, |
||||
|
{0x00090042, nullptr, "SetFIRMLaunchParams"}, |
||||
|
}; |
||||
|
|
||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
// Interface class
|
||||
|
|
||||
|
Interface::Interface() { |
||||
|
Register(FunctionTable, ARRAY_SIZE(FunctionTable)); |
||||
|
} |
||||
|
|
||||
|
Interface::~Interface() { |
||||
|
} |
||||
|
|
||||
|
} // namespace
|
||||
@ -0,0 +1,27 @@ |
|||||
|
// Copyright 2014 Citra Emulator Project |
||||
|
// Licensed under GPLv2 |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
||||
|
// Namespace PM_APP |
||||
|
|
||||
|
namespace PM_APP { |
||||
|
|
||||
|
class Interface : public Service::Interface { |
||||
|
public: |
||||
|
Interface(); |
||||
|
~Interface(); |
||||
|
/** |
||||
|
* Gets the string port name used by CTROS for the service |
||||
|
* @return Port name of service |
||||
|
*/ |
||||
|
std::string GetPortName() const override { |
||||
|
return "pm:app"; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue