|
@@ -11,44 +11,51 @@
|
|
|
|
|
|
|
|
namespace Service::Set {
|
|
namespace Service::Set {
|
|
|
|
|
|
|
|
|
|
+constexpr std::array<LanguageCode, 17> available_language_codes = {{
|
|
|
|
|
+ LanguageCode::JA,
|
|
|
|
|
+ LanguageCode::EN_US,
|
|
|
|
|
+ LanguageCode::FR,
|
|
|
|
|
+ LanguageCode::DE,
|
|
|
|
|
+ LanguageCode::IT,
|
|
|
|
|
+ LanguageCode::ES,
|
|
|
|
|
+ LanguageCode::ZH_CN,
|
|
|
|
|
+ LanguageCode::KO,
|
|
|
|
|
+ LanguageCode::NL,
|
|
|
|
|
+ LanguageCode::PT,
|
|
|
|
|
+ LanguageCode::RU,
|
|
|
|
|
+ LanguageCode::ZH_TW,
|
|
|
|
|
+ LanguageCode::EN_GB,
|
|
|
|
|
+ LanguageCode::FR_CA,
|
|
|
|
|
+ LanguageCode::ES_419,
|
|
|
|
|
+ LanguageCode::ZH_HANS,
|
|
|
|
|
+ LanguageCode::ZH_HANT,
|
|
|
|
|
+}};
|
|
|
|
|
+
|
|
|
void SET::GetAvailableLanguageCodes(Kernel::HLERequestContext& ctx) {
|
|
void SET::GetAvailableLanguageCodes(Kernel::HLERequestContext& ctx) {
|
|
|
- static constexpr std::array<LanguageCode, 17> available_language_codes = {{
|
|
|
|
|
- LanguageCode::JA,
|
|
|
|
|
- LanguageCode::EN_US,
|
|
|
|
|
- LanguageCode::FR,
|
|
|
|
|
- LanguageCode::DE,
|
|
|
|
|
- LanguageCode::IT,
|
|
|
|
|
- LanguageCode::ES,
|
|
|
|
|
- LanguageCode::ZH_CN,
|
|
|
|
|
- LanguageCode::KO,
|
|
|
|
|
- LanguageCode::NL,
|
|
|
|
|
- LanguageCode::PT,
|
|
|
|
|
- LanguageCode::RU,
|
|
|
|
|
- LanguageCode::ZH_TW,
|
|
|
|
|
- LanguageCode::EN_GB,
|
|
|
|
|
- LanguageCode::FR_CA,
|
|
|
|
|
- LanguageCode::ES_419,
|
|
|
|
|
- LanguageCode::ZH_HANS,
|
|
|
|
|
- LanguageCode::ZH_HANT,
|
|
|
|
|
- }};
|
|
|
|
|
ctx.WriteBuffer(available_language_codes);
|
|
ctx.WriteBuffer(available_language_codes);
|
|
|
|
|
|
|
|
- IPC::ResponseBuilder rb{ctx, 4};
|
|
|
|
|
|
|
+ IPC::ResponseBuilder rb{ctx, 3};
|
|
|
rb.Push(RESULT_SUCCESS);
|
|
rb.Push(RESULT_SUCCESS);
|
|
|
- rb.Push(static_cast<u64>(available_language_codes.size()));
|
|
|
|
|
|
|
+ rb.Push(static_cast<u32>(available_language_codes.size()));
|
|
|
|
|
|
|
|
LOG_DEBUG(Service_SET, "called");
|
|
LOG_DEBUG(Service_SET, "called");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+void SET::GetAvailableLanguageCodeCount(Kernel::HLERequestContext& ctx) {
|
|
|
|
|
+ IPC::ResponseBuilder rb{ctx, 3};
|
|
|
|
|
+ rb.Push(RESULT_SUCCESS);
|
|
|
|
|
+ rb.Push(static_cast<u32>(available_language_codes.size()));
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
SET::SET() : ServiceFramework("set") {
|
|
SET::SET() : ServiceFramework("set") {
|
|
|
static const FunctionInfo functions[] = {
|
|
static const FunctionInfo functions[] = {
|
|
|
{0, nullptr, "GetLanguageCode"},
|
|
{0, nullptr, "GetLanguageCode"},
|
|
|
{1, &SET::GetAvailableLanguageCodes, "GetAvailableLanguageCodes"},
|
|
{1, &SET::GetAvailableLanguageCodes, "GetAvailableLanguageCodes"},
|
|
|
{2, nullptr, "MakeLanguageCode"},
|
|
{2, nullptr, "MakeLanguageCode"},
|
|
|
- {3, nullptr, "GetAvailableLanguageCodeCount"},
|
|
|
|
|
|
|
+ {3, &SET::GetAvailableLanguageCodeCount, "GetAvailableLanguageCodeCount"},
|
|
|
{4, nullptr, "GetRegionCode"},
|
|
{4, nullptr, "GetRegionCode"},
|
|
|
{5, &SET::GetAvailableLanguageCodes, "GetAvailableLanguageCodes2"},
|
|
{5, &SET::GetAvailableLanguageCodes, "GetAvailableLanguageCodes2"},
|
|
|
- {6, nullptr, "GetAvailableLanguageCodeCount2"},
|
|
|
|
|
|
|
+ {6, &SET::GetAvailableLanguageCodeCount, "GetAvailableLanguageCodeCount2"},
|
|
|
{7, nullptr, "GetKeyCodeMap"},
|
|
{7, nullptr, "GetKeyCodeMap"},
|
|
|
{8, nullptr, "GetQuestFlag"},
|
|
{8, nullptr, "GetQuestFlag"},
|
|
|
};
|
|
};
|