diff --git a/common/language.c b/common/language.c index 9d4de14..2538af7 100644 --- a/common/language.c +++ b/common/language.c @@ -7,12 +7,12 @@ #define STR_DE(_str) [SetLanguage_DE] = _str #define STR_IT(_str) [SetLanguage_IT] = _str #define STR_ES(_str) [SetLanguage_ES] = _str, [SetLanguage_ES419] = _str -#define STR_ZH(_str) [SetLanguage_ZHCN] = _str +#define STR_ZH_HANS(_str) [SetLanguage_ZHCN] = _str, [SetLanguage_ZHHANS] = _str #define STR_KO(_str) [SetLanguage_KO] = _str #define STR_NL(_str) [SetLanguage_NL] = _str #define STR_PT(_str) [SetLanguage_PT] = _str #define STR_RU(_str) [SetLanguage_RU] = _str -#define STR_TW(_str) [SetLanguage_ZHTW] = _str +#define STR_ZH_HANT(_str) [SetLanguage_ZHTW] = _str, [SetLanguage_ZHHANT] = _str #else #define STR_JP(_str) [0] = _str #define STR_EN(_str) [1] = _str @@ -20,15 +20,15 @@ #define STR_DE(_str) [3] = _str #define STR_IT(_str) [4] = _str #define STR_ES(_str) [5] = _str -#define STR_ZH(_str) [6] = _str +#define STR_ZH_HANS(_str) [6] = _str #define STR_KO(_str) [7] = _str #define STR_NL(_str) [8] = _str #define STR_PT(_str) [9] = _str #define STR_RU(_str) [10] = _str -#define STR_TW(_str) [11] = _str +#define STR_ZH_HANT(_str) [11] = _str #endif -const char* const g_strings[StrId_Max][16] = +const char* const g_strings[StrId_Max][17] = { [StrId_Loading] = { @@ -42,8 +42,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Laden…"), STR_KO("로딩중…"), STR_RU("загрузка…"), - STR_ZH("加载中…"), - STR_TW("加載中…"), + STR_ZH_HANS("加载中…"), + STR_ZH_HANT("加載中…"), }, [StrId_AppletMode] = @@ -64,8 +64,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Map"), STR_KO("디렉토리"), STR_RU("каталог"), - STR_ZH("目录"), - STR_TW("資料夾"), + STR_ZH_HANS("目录"), + STR_ZH_HANT("資料夾"), }, /*[StrId_DefaultLongTitle] = @@ -80,8 +80,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Homebrew toepassing"), STR_KO("홈브류 애플리케이션"), STR_RU("приложение хомебреw"), - STR_ZH("自制应用程序"), - STR_TW("自製程式"), + STR_ZH_HANS("自制应用程序"), + STR_ZH_HANT("自製程式"), },*/ [StrId_DefaultPublisher] = @@ -96,8 +96,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Auteur onbekend"), STR_KO("알 수 없는 개발자"), STR_RU("неизвестный автор"), - STR_ZH("未知作者"), - STR_TW("作者不詳"), + STR_ZH_HANS("未知作者"), + STR_ZH_HANT("作者不詳"), }, [StrId_IOError] = @@ -112,8 +112,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("I/O Fout"), STR_KO("입출력 오류"), STR_RU("I/O-ошибка"), - STR_ZH("读写出错"), - STR_TW("讀寫錯誤"), + STR_ZH_HANS("读写出错"), + STR_ZH_HANT("讀寫錯誤"), }, [StrId_CouldNotOpenFile] = @@ -128,8 +128,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Kan bestand niet openen:\n%s"), STR_KO("파일을 열 수 없습니다:\n%s"), STR_RU("Не могу открыть файл:\n%s"), - STR_ZH("无法打开文件:\n%s"), - STR_TW("開啓檔案失敗:\n%s"), + STR_ZH_HANS("无法打开文件:\n%s"), + STR_ZH_HANT("開啓檔案失敗:\n%s"), }, [StrId_NoAppsFound_Title] = @@ -144,8 +144,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Geen toepassingen gevonden"), STR_KO("애플리케이션을 찾을 수 없습니다"), STR_RU("приложение не найдено"), - STR_ZH("找不到可执行的自制程序"), - STR_TW("未能找到可執行的自製程式"), + STR_ZH_HANS("找不到可执行的自制程序"), + STR_ZH_HANT("未能找到可執行的自製程式"), }, [StrId_NoAppsFound_Msg] = @@ -205,12 +205,12 @@ const char* const g_strings[StrId_Max][16] = "Убедитесь, что на карте SD есть каталог с\n" "названием switch и она содержит приложения." ), - STR_ZH( + STR_ZH_HANS( "内存卡找不到任何可执行的应用程序。\n" "请在内存卡的根目录建立「switch」子目录,\n" "并存放自制应用软件至该目录。" ), - STR_TW( + STR_ZH_HANT( "記憶體找不到任何可執行的應用程式。\n" "請在記憶體建立「switch」資料夾,\n" "然後儲存自製軟體到此處。" @@ -225,7 +225,7 @@ const char* const g_strings[StrId_Max][16] = STR_FR("La dernière application a retourné une erreur:"), STR_JP("直前に実行したアプリでエラーが発生しました:"), STR_KO("최근 애플리케이션에서 오류가 발생했습니다:"), - STR_TW("程式執行時發生錯誤:"), + STR_ZH_HANT("程式執行時發生錯誤:"), }, [StrId_AppLaunchError] = @@ -247,8 +247,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Auteur"), STR_KO("개발자"), STR_RU("автор"), - STR_ZH("作者"), - STR_TW("作者"), + STR_ZH_HANS("作者"), + STR_ZH_HANT("作者"), }, [StrId_AppInfo_Version] = @@ -263,8 +263,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Versie"), STR_KO("버전"), STR_RU("Версия"), - STR_ZH("版"), - STR_TW("版"), + STR_ZH_HANS("版"), + STR_ZH_HANT("版"), }, [StrId_Actions_Launch] = @@ -279,8 +279,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Lancering"), STR_KO("실행"), STR_RU("запуск"), - STR_ZH("发射"), - STR_TW("啟動"), + STR_ZH_HANS("发射"), + STR_ZH_HANT("啟動"), }, [StrId_Actions_Open] = @@ -295,8 +295,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Open"), STR_KO("열기"), STR_RU("открыто"), - STR_ZH("打开"), - STR_TW("開啟"), + STR_ZH_HANS("打开"), + STR_ZH_HANT("開啟"), }, [StrId_Actions_Back] = @@ -311,8 +311,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Terug"), STR_KO("뒤로 가기"), STR_RU("возвращаться"), - STR_ZH("回去"), - STR_TW("回去"), + STR_ZH_HANS("回去"), + STR_ZH_HANT("回去"), }, [StrId_MsgBox_OK] = @@ -323,7 +323,7 @@ const char* const g_strings[StrId_Max][16] = STR_ES("Aceptar"), STR_JP("了解"), STR_KO("확인"), - STR_TW("確認"), + STR_ZH_HANT("確認"), }, [StrId_Actions_Apply] = @@ -334,7 +334,7 @@ const char* const g_strings[StrId_Max][16] = STR_ES("Aplicar"), STR_JP("適用"), STR_KO("적용"), - STR_TW("应用"), + STR_ZH_HANT("应用"), }, [StrId_Actions_Star] = @@ -357,7 +357,7 @@ const char* const g_strings[StrId_Max][16] = STR_ES("Menú temático"), STR_JP("テーマメニュー"), STR_KO("테마 메뉴"), - STR_TW("主题菜单"), + STR_ZH_HANT("主题菜单"), }, [StrId_ThemeNotApplied] = @@ -368,7 +368,7 @@ const char* const g_strings[StrId_Max][16] = STR_ES("El tema no se pudo aplicar porque se ha producido un error."), STR_JP("エラーが発生したため、テーマを適用できませんでした。"), STR_KO("오류가 발생 했기 때문에 테마를 적용할 수 없습니다."), - STR_TW("由于发生错误, 无法应用主题。"), + STR_ZH_HANT("由于发生错误, 无法应用主题。"), }, [StrId_DefaultThemeName] = @@ -441,13 +441,13 @@ const char* const g_strings[StrId_Max][16] = " \xEE\x80\x80 Перезагрузите\n" " \xEE\x80\x81 Отмена" ), - STR_ZH( + STR_ZH_HANS( "无法返回至主机的 \xEE\x81\xB3HOME 菜单。\n" "您需要重新启动您的 3DS 设备。\n\n" " \xEE\x80\x80 重启设备\n" " \xEE\x80\x81 取消操作" ), - STR_TW( + STR_ZH_HANT( "無法返回至主機的 \xEE\x81\xB3HOME 選單。\n" "您需要重新啓動您的 3DS 設備。\n\n" " \xEE\x80\x80 重啓設備\n" @@ -517,13 +517,13 @@ const char* const g_strings[StrId_Max][16] = " \xEE\x80\x81 Отмена\n" " \xEE\x80\x82 Перезагрузите" ), - STR_ZH( + STR_ZH_HANS( "您即将返回到主機的 \xEE\x81\xB3HOME 菜单。\n\n" " \xEE\x80\x80 确认返回\n" " \xEE\x80\x81 取消操作\n" " \xEE\x80\x82 重启设备" ), - STR_TW( + STR_ZH_HANT( "您即將返回到主機的 \xEE\x81\xB3HOME 選單。\n\n" " \xEE\x80\x80 確認返回\n" " \xEE\x80\x81 取消操作\n" @@ -543,8 +543,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Titel selector"), STR_KO("타이틀 선택기"), STR_RU("Селектор заголовков"), - STR_ZH("应用启动器"), - STR_TW("自製程式啓動器"), + STR_ZH_HANS("应用启动器"), + STR_ZH_HANT("自製程式啓動器"), }, [StrId_ErrorReadingTitleMetadata] = @@ -562,8 +562,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Fout bij het lezen van titel metadata.\n%08lX%08lX@%d"), STR_KO("타이틀 메타데이터를 읽는데 실패하였습니다.\n%08lX%08lX@%d"), STR_RU("Ошибка чтения метаданных заголовка\n.%08lX%08lX@%d"), - STR_ZH("读取软件相关信息时发生错误:\n%08lX%08lX@%d"), - STR_TW("讀取軟體相關數據時發生錯誤:\n%08lX%08lX@%d"), + STR_ZH_HANS("读取软件相关信息时发生错误:\n%08lX%08lX@%d"), + STR_ZH_HANT("讀取軟體相關數據時發生錯誤:\n%08lX%08lX@%d"), }, [StrId_NoTitlesFound] = @@ -578,8 +578,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Geen titels gevonden."), STR_KO("타이틀을 찾을 수 없습니다."), STR_RU("Заголовки не обнаружены"), - STR_ZH("主机内找不到任何软件。"), - STR_TW("主機内找不到任何軟體。"), + STR_ZH_HANS("主机内找不到任何软件。"), + STR_ZH_HANT("主機内找不到任何軟體。"), }, [StrId_SelectTitle] = @@ -634,12 +634,12 @@ const char* const g_strings[StrId_Max][16] = " \xEE\x80\x80 Выберите\n" " \xEE\x80\x81 Отмена" ), - STR_ZH( + STR_ZH_HANS( "请选择一个目标软件。\n\n" " \xEE\x80\x80 确认\n" " \xEE\x80\x81 取消" ), - STR_TW( + STR_ZH_HANT( "請選擇一個目標軟體。\n\n" " \xEE\x80\x80 確認\n" " \xEE\x80\x81 取消" @@ -698,12 +698,12 @@ const char* const g_strings[StrId_Max][16] = "приложений под целевыми заголовками.\n" "Пожалуйста, используйте другой эксплойт." ), - STR_ZH( + STR_ZH_HANS( "您所利用漏洞启动的「自制软件启动器」,\n" "无法在当前选中的软件中启动自制软件。\n" "请使用其它的漏洞来启动「自制软件启动器」。" ), - STR_TW( + STR_ZH_HANT( "您所利用漏洞開啓的「自製軟體啓動器」\n" "無法在當前選中的軟體啓動自製軟件。\n" "請利用其它漏洞來啓動「自製軟體啓動器」。" @@ -752,11 +752,11 @@ const char* const g_strings[StrId_Max][16] = "Для приложения требуется зависимость,\n" "которая не установлена." ), - STR_ZH( + STR_ZH_HANS( "主机找不到该应用程序\n" "所需求的软件。" ), - STR_TW( + STR_ZH_HANT( "主機找不到該應用程式\n" "所需求的軟體。" ), @@ -774,8 +774,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("netwerk lader"), STR_KO("네트워크 로더"), STR_RU("Загрузчик"), - STR_ZH("网络执行模块"), - STR_TW("網路執行模組"), + STR_ZH_HANS("网络执行模块"), + STR_ZH_HANT("網路執行模組"), }, [StrId_NetLoaderUnavailable] = @@ -790,8 +790,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("De netwerk lader is niet beschikbaar."), STR_KO("현재 네트워크 로더는 사용이 불가합니다."), STR_RU("Загрузчик в настоящее время недоступен."), - STR_ZH("无法启动 nxlink 网络执行模块。"), - STR_TW("無法啓動 nxlink 網路執行模組。"), + STR_ZH_HANS("无法启动 nxlink 网络执行模块。"), + STR_ZH_HANT("無法啓動 nxlink 網路執行模組。"), }, [StrId_NetLoaderError] = @@ -806,8 +806,8 @@ const char* const g_strings[StrId_Max][16] = STR_NL("Er is een fout opgetreden\nTechnische details: [%s:%d]"), STR_KO("오류가 발생했습니다.\n기술적인 세부사항: [%s:%d]"), STR_RU("Произошла ошибка.\nТехнические подробности: [%s:%d]"), - STR_ZH("发生错误。\n详细错误信息:[%s:%d]"), - STR_TW("發生錯誤。\n詳細錯誤資訊:[%s:%d]"), + STR_ZH_HANS("发生错误。\n详细错误信息:[%s:%d]"), + STR_ZH_HANT("發生錯誤。\n詳細錯誤資訊:[%s:%d]"), }, [StrId_NetLoaderOffline] = @@ -818,8 +818,8 @@ const char* const g_strings[StrId_Max][16] = STR_IT("Disconnesso, in attesa della connessione…"), STR_JP("オフラインです。ネットワーク接続を待っています…"), STR_KO("연결 끊김, 네트워크 기다리는 중…"), - STR_ZH("无法连接网络,等待网络连接…"), - STR_TW("當前離線,等待網路連線…"), + STR_ZH_HANS("无法连接网络,等待网络连接…"), + STR_ZH_HANT("當前離線,等待網路連線…"), }, [StrId_NetLoaderActive] = @@ -864,11 +864,11 @@ const char* const g_strings[StrId_Max][16] = "Ожидание подключения nxlink…\n" "айпи адрес: %lu.%lu.%lu.%lu, Порт: %d" ), - STR_ZH( + STR_ZH_HANS( "等待 nxlink 连接…\n" "IP 地址:%lu.%lu.%lu.%lu,端口:%d" ), - STR_TW( + STR_ZH_HANT( "等待 nxlink 連接…\n" "IP 位址:%lu.%lu.%lu.%lu,連接埠:%d" ), @@ -916,11 +916,11 @@ const char* const g_strings[StrId_Max][16] = "Передача…\n" "%zu из %zu КИБ написано" ), - STR_ZH( + STR_ZH_HANS( "正在传输…\n" "已完成 %zu / %zu KiB" ), - STR_TW( + STR_ZH_HANT( "正在傳輸…\n" "已完成 %zu / %zu KiB" ), diff --git a/common/language.h b/common/language.h index 95bbcd8..df44ec5 100644 --- a/common/language.h +++ b/common/language.h @@ -54,5 +54,5 @@ typedef enum StrId_Max, } StrId; -extern const char* const g_strings[StrId_Max][16]; +extern const char* const g_strings[StrId_Max][17]; diff --git a/common/text.c b/common/text.c index bd98b0d..7dfe302 100644 --- a/common/text.c +++ b/common/text.c @@ -10,14 +10,14 @@ static int s_textLang = 1; Result textInit(void) { #ifdef __SWITCH__ - s32 Language=0; + SetLanguage Language=SetLanguage_ENUS; - s_textLang = SetLanguage_ENUS; + s_textLang = Language; Result rc = setInitialize(); if (R_SUCCEEDED(rc)) rc = setGetSystemLanguage(&s_textLanguageCode); if (R_SUCCEEDED(rc)) rc = setMakeLanguage(s_textLanguageCode, &Language); - //if (R_SUCCEEDED(rc) && Language < 16) s_textLang = Language;//TODO: Re-enable this once language.c supports all used languages. + //if (R_SUCCEEDED(rc) && Language < 17) s_textLang = Language;//TODO: Re-enable this once language.c supports all used languages. setExit(); if (R_FAILED(rc)) return rc; #else