Remove menu_hash_ files

This commit is contained in:
twinaphex 2016-06-20 03:35:09 +02:00
parent 69c82da160
commit 284f8cfd23
57 changed files with 5315 additions and 6877 deletions

View File

@ -486,20 +486,8 @@ ifeq ($(HAVE_MENU_COMMON), 1)
PSEUDO_NS := PSEUDO_NS :=
endif endif
ifeq ($(HAVE_LANGEXTRA), 1) OBJ += menu/menu_driver.o \
OBJ += menu/intl/menu_hash_de.o \
menu/intl/menu_hash_es.o \
menu/intl/menu_hash_eo.o \
menu/intl/menu_hash_fr.o \
menu/intl/menu_hash_it.o \
menu/intl/menu_hash_nl.o \
menu/intl/menu_hash_pl.o \
menu/intl/menu_hash_pt.o
endif
OBJ += menu/menu_hash.o \
menu/menu_driver.o \
menu/menu_content.o \ menu/menu_content.o \
menu/intl/menu_hash_us$(PSEUDO_NS).o \
menu/menu_input.o \ menu/menu_input.o \
menu/menu_entry.o \ menu/menu_entry.o \
menu/menu_entries.o \ menu/menu_entries.o \

View File

@ -42,7 +42,6 @@
#include "../msg_hash.h" #include "../msg_hash.h"
#ifdef HAVE_MENU #ifdef HAVE_MENU
#include "../menu/menu_hash.h"
#include "../menu/menu_setting.h" #include "../menu/menu_setting.h"
#endif #endif

View File

@ -846,7 +846,6 @@ MENU
============================================================ */ ============================================================ */
#ifdef HAVE_MENU #ifdef HAVE_MENU
#include "../menu/menu_driver.c" #include "../menu/menu_driver.c"
#include "../menu/menu_hash.c"
#include "../menu/menu_input.c" #include "../menu/menu_input.c"
#include "../menu/menu_entry.c" #include "../menu/menu_entry.c"
#include "../menu/menu_entries.c" #include "../menu/menu_entries.c"
@ -874,21 +873,6 @@ MENU
#include "../menu/menu_displaylist.c" #include "../menu/menu_displaylist.c"
#include "../menu/menu_animation.c" #include "../menu/menu_animation.c"
#ifdef HAVE_LANGEXTRA
#include "../menu/intl/menu_hash_de.c"
#include "../menu/intl/menu_hash_es.c"
#include "../menu/intl/menu_hash_eo.c"
#include "../menu/intl/menu_hash_fr.c"
#include "../menu/intl/menu_hash_it.c"
#include "../menu/intl/menu_hash_nl.c"
#include "../menu/intl/menu_hash_pl.c"
#include "../menu/intl/menu_hash_pt.c"
#ifdef HAVE_UTF8
#include "../menu/intl/menu_hash_ru.c"
#endif
#endif
#include "../menu/intl/menu_hash_us.c"
#include "../menu/drivers/null.c" #include "../menu/drivers/null.c"
#include "../menu/drivers/menu_generic.c" #include "../menu/drivers/menu_generic.c"

View File

@ -19,6 +19,418 @@
#include <compat/strl.h> #include <compat/strl.h>
#include "../msg_hash.h" #include "../msg_hash.h"
#include "../configuration.h"
/* IMPORTANT:
* For non-english characters to work without proper unicode support,
* we need this file to be encoded in ISO 8859-1 (Latin1), not UTF-8.
* If you save this file as UTF-8, you'll break non-english characters
* (e.g. German "Umlauts" and Portugese diacritics).
*/
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("äÄöÖßüÜ")==7+1 ? 1 : -1];
int menu_hash_get_help_de(uint32_t hash, char *s, size_t len)
{
uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr();
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */ (void)sizeof(force_iso_8859_1);
switch (hash)
{
case MENU_LABEL_INPUT_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->input.driver);
switch (driver_hash)
{
case MENU_LABEL_INPUT_DRIVER_UDEV:
{
/* Work around C89 limitations */
char u[501];
char t[501];
snprintf(t, sizeof(t),
"udev-Eingabetreiber. \n"
" \n"
"Dieser Treiber kann ohne X ausgeführt werden. \n"
" \n"
"Er verwende die neue evdev-Joypad-API \n"
"für die Joystick-Unterstützung und unterstützt \n"
"auch Hotplugging und Force-Feedback (wenn das \n"
"Gerät dies unterstützt). \n"
" \n"
);
snprintf(u, sizeof(u),
"Der Treiber liest evdev-Ereigniss für Tastatur- \n"
"Unterstützung und kann auch mit Tastatur-Callbacks, \n"
"Mäusen und Touchpads umgehen. \n"
" \n"
"Standardmäßig sind die /dev/input-Dateien in den \n"
"meisten Linux-Distribution nur für den Root- \n"
"Benutzer lesbar (mode 600). Du kannst eine udev- \n"
"Regel erstellen, die auch den Zugriff für andere \n"
"Benutzer erlaubt.");
strlcat(s, t, len);
strlcat(s, u, len);
}
break;
case MENU_LABEL_INPUT_DRIVER_LINUXRAW:
snprintf(s, len,
"linuxraw-Eingabetreiber. \n"
" \n"
"Dieser Treiber erforder eine aktive TTY-Schnittstelle. \n"
"Tastatur-Ereignisse werden direkt von der TTY gelesen, \n"
"was es einfacher, aber weniger flexibel als udev macht. \n"
"Mäuse, etc, werden nicht unterstützt. \n"
" \n"
"Dieser Treiber verwendet die alte Joystick-API \n"
"(/dev/input/js*).");
break;
default:
snprintf(s, len,
"Eingabetreiber.\n"
" \n"
"Abhängig vom Grafiktreiber kann ein anderer Eingabe- \n"
"treiber erzwungen werden.");
break;
}
break;
case MENU_LABEL_LOAD_CONTENT:
snprintf(s, len,
"Lade Content. \n"
"Suche nach Content. \n"
" \n"
"Um Content zu laden benötigst du den passenden \n"
"Libretro-Core und die Content-Datei. \n"
" \n"
"Um einzustellen, welcher Ordner standardmäßig \n"
"geöffnet wird, um nach Content zu suchen, solltest \n"
"du das Content-Verzeichnis setzen. Wenn es nicht \n"
"gesetzt ist, wird es im Root-Verzeichen starten. \n"
" \n"
"Der Browser wird nur Dateierweiterungen des \n"
"zuletzt geladenen Cores zeigen und diesen Core \n"
"nutzen, wenn Content geladen wird."
);
break;
case MENU_LABEL_CORE_LIST:
snprintf(s, len,
"Lade Core. \n"
" \n"
"Suche nach einer Libretro-Core- \n"
"Implementierung. In welchem Verzeichnis der \n"
"Browser startet, hängt vom deinem Core-Verzeichnis \n"
"ab. Falls du es nicht eingestellt hast, wird er \n"
"im Root-Verzeichnis starten. \n"
" \n"
"Ist das Core-Verzeichnis ein Ordner, wird das \n"
"Menü diesen als Startverzeichnis nutzen. Ist \n"
"das Core-Verzeichnis ein Pfad zu einer Datei, \n"
"wird es in dem Verzeichnis starten, in dem \n"
"sich die Datei befindet.");
break;
case MENU_LABEL_LOAD_CONTENT_HISTORY:
snprintf(s, len,
"Lade Content aus dem Verlauf. \n"
" \n"
"Wenn Content geladen wird, wird der Content \n"
"sowie der dazugehörige Core im Verlauf gespeichert. \n"
" \n"
"Der Verlauf wird im selben Verzeichnis wie die \n"
"RetroArch-Konfigurationsdatei gespeicher. Wenn \n"
"beim Start keine Konfigurationsdatei geladen wurde, \n"
"wird keine Verlauf geladen oder gespeichert und nicht \n"
"im Hauptmenü angezeigt."
);
break;
case MENU_LABEL_VIDEO_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->video.driver);
switch (driver_hash)
{
case MENU_LABEL_VIDEO_DRIVER_GL:
snprintf(s, len,
"OpenGL-Grafiktreiber. \n"
" \n"
"Dieser Treiber erlaubt es, neben software- \n"
"gerenderten Cores aus Libretro-GL-Cores zu \n"
"verwenden. \n"
" \n"
"Die Leistung, sowohl bei software-gerenderten, \n"
"als auch bei Libretro-GL-Cores, hängt von dem \n"
"GL-Treiber deiner Grafikkarte ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL2:
snprintf(s, len,
"SDL2-Grafiktreiber.\n"
" \n"
"Dies ist ein SDL2-Grafiktreiber \n"
"mit Software-Rendering."
" \n"
"Die Leistung hängt von der SDL- \n"
"Implementierung deiner Plattform ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL1:
snprintf(s, len,
"SDL-Grafiktreiber.\n"
" \n"
"Dies ist ein SDL1.2-Grafiktreiber \n"
"mit Software-Rendering."
" \n"
"Die Leistung ist suboptimal und du \n"
"solltest ihn nur als letzte \n"
"Möglichkeit verwenden.");
break;
case MENU_LABEL_VIDEO_DRIVER_D3D:
snprintf(s, len,
"Direct3D-Grafiktreiber. \n"
" \n"
"Die Leistung bei software-gerenderten \n"
"Cores hängt von dem D3D-Treiber deiner \n"
"Grafikkarte ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_EXYNOS:
snprintf(s, len,
"Exynos-G2D-Grafiktreiber. \n"
" \n"
"Dies ist ein Low-Level-Exynos-Grafiktreiber. \n"
"Er verwendet den G2D-Block in Samsung-Exynos-SoCs. \n"
"für Blitting-Operationen. \n"
" \n"
"Die Leistung bei software-gerendeten Cores sollte \n"
"optimal sein.");
break;
case MENU_LABEL_VIDEO_DRIVER_SUNXI:
snprintf(s, len,
"Sunxi-G2D-Grafiktreiber\n"
" \n"
"Dies ist ein Low-Level-Sunxi-Grafiktreiber. \n"
"Er verwendet den G2D-Block in Allwinnder-SoCs.");
break;
default:
snprintf(s, len,
"Momentaner Grafiktreiber.");
break;
}
break;
case MENU_LABEL_AUDIO_DSP_PLUGIN:
snprintf(s, len,
"Audio-DSP-Plugin.\n"
" Verarbeitet Audiodaten, bevor \n"
"sie zum Treiber gesendet werden."
);
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->audio.resampler);
switch (driver_hash)
{
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC:
snprintf(s, len,
"Windowed-SINC-Implementierung.");
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC:
snprintf(s, len,
"Convoluted-Kosinus-Implementierung.");
break;
}
break;
case MENU_LABEL_VIDEO_SHADER_PRESET:
snprintf(s, len,
"Lade Shader-Voreinstellung. \n"
" \n"
" Lade eine "
#ifdef HAVE_CG
"Cg"
#endif
#ifdef HAVE_GLSL
#ifdef HAVE_CG
"/"
#endif
"GLSL"
#endif
#ifdef HAVE_HLSL
#if defined(HAVE_CG) || defined(HAVE_HLSL)
"/"
#endif
"HLSL"
#endif
"-Voreinstellung. \n"
"Das Menüshader-Menü wird entsprechend \n"
"aktualisiert."
" \n"
"Wenn der CGP komplexe Methoden verwendet, \n"
"(also andere als Quellskalierung mit dem \n"
"selben Faktor für X/Y) kann der im Menü \n"
"angezeigte Skalierungsfaktor inkorrekt sein."
);
break;
case MENU_LABEL_VIDEO_SHADER_SCALE_PASS:
snprintf(s, len,
"Für diesen Durchgang skalieren. \n"
" \n"
"Der Skalierungsfaktor wird multipliziert, \n"
"d.h. 2x im ersten Durchgang und 2x im \n"
"zweiten Durchgang bedeute eine 4x Gesamt- \n"
"Skalierung."
" \n"
"Wenn es im letzten Durchgang einen \n"
"Skalierungsfaktor gibt, wird das Ergebnis \n"
"mit dem als 'Standardfilter' eingestellten \n"
"Filter auf die Bildschirmgröße gestreckt. \n"
" \n"
"Wenn 'Mir egal' eingestellt ist, wird \n"
"entweder einfache Skalierung or Vollbild- \n"
"Streckung verwendet - abhängig davon, ob \n"
"es der letzte Durchgang ist oder nicht."
);
break;
case MENU_LABEL_VIDEO_SHADER_NUM_PASSES:
snprintf(s, len,
"Shader-Durchgänge. \n"
" \n"
"RetroArch erlaubt es dir, verschiedene Shader \n"
"in verschiedenen Durchgängen miteinander zu \n"
"kombinieren. \n"
" \n"
"Diese Option legt die Anzahl der Shader- \n"
"Durchgänge fest. Wenn du die Anzahl auf 0 setzt, \n"
"verwendest du einen 'leeren' Shader."
" \n"
"Die 'Standardfilter'-Option beeinflusst den \n"
"Streckungsfilter");
break;
case MENU_LABEL_VIDEO_SHADER_PARAMETERS:
snprintf(s, len,
"Shader-Parameter. \n"
" \n"
"Verändert den momentanen Shader. Wird nicht in \n"
"der CGP/GLSLP-Voreinstellungs-Datei gespeichert.");
break;
case MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len,
"Shader-Voreinstellung-Parameter. \n"
" \n"
"Verändert die Shader-Voreinstellung, die aktuell \n"
"im Menü aktiv ist."
);
break;
/*
* FIXME: Some stuff still missing here.
*/
case MENU_LABEL_OSK_ENABLE:
snprintf(s, len,
"(De-)Aktiviere die Bildschirmtastatur.");
break;
case MENU_LABEL_AUDIO_MUTE:
snprintf(s, len,
"Audio stummschalten.");
break;
case MENU_LABEL_REWIND:
snprintf(s, len,
"Halte die Taste zum Zurückspulen gedrückt.\n"
" \n"
"Die Zurückspulfunktion muss eingeschaltet \n"
"sein.");
break;
case MENU_LABEL_EXIT_EMULATOR:
snprintf(s, len,
"Taste zum Beenden von RetroArch."
#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE)
"\nWenn du es stattdessen mittels SIGKILL \n"
"beendest, wird RetroArch nicht den RAM \n"
"sichern. Bei unixoiden Betriebssystemen \n"
"erlaubt SIGINT/SIGTERM ein sauberes \n"
"Beenden."
#endif
);
break;
case MENU_LABEL_LOAD_STATE:
snprintf(s, len,
"Lädt einen Savestate.");
break;
case MENU_LABEL_SAVE_STATE:
snprintf(s, len,
"Speichert einen Savestate.");
break;
case MENU_LABEL_NETPLAY_FLIP_PLAYERS:
snprintf(s, len,
"Netplay-Spieler tauschen.");
break;
case MENU_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len,
"Erhöht den Cheat-Index.\n");
break;
case MENU_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len,
"Verringert den Cheat-Index.\n");
break;
case MENU_LABEL_SHADER_PREV:
snprintf(s, len,
"Wendet vorherigen Shader im Verzeichnis an.");
break;
case MENU_LABEL_SHADER_NEXT:
snprintf(s, len,
"Wendet nächsten Shader im Verzeichnis an.");
break;
case MENU_LABEL_RESET:
snprintf(s, len,
"Setzt den Content zurück.\n");
break;
case MENU_LABEL_PAUSE_TOGGLE:
snprintf(s, len,
"Pausiert den Content und setzt ihn wieder fort.");
break;
case MENU_LABEL_CHEAT_TOGGLE:
snprintf(s, len,
"Schaltet den Cheat-Index ein und aus.\n");
break;
case MENU_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len,
"Halte den Knopf gedrückt, um vorzuspulen. Beim Loslassen \n"
"wird das Vorspulen beendet.");
break;
case MENU_LABEL_SLOWMOTION:
snprintf(s, len,
"Halte den Knopf gedrückt, um die Zeitlupe einzuschalten.");
break;
case MENU_LABEL_FRAME_ADVANCE:
snprintf(s, len,
"Frame-Advance, wenn der Content pausiert ist.");
break;
case MENU_LABEL_MOVIE_RECORD_TOGGLE:
snprintf(s, len,
"Aufnahme ein- und ausschalten.");
break;
case MENU_LABEL_L_X_PLUS:
case MENU_LABEL_L_X_MINUS:
case MENU_LABEL_L_Y_PLUS:
case MENU_LABEL_L_Y_MINUS:
case MENU_LABEL_R_X_PLUS:
case MENU_LABEL_R_X_MINUS:
case MENU_LABEL_R_Y_PLUS:
case MENU_LABEL_R_Y_MINUS:
snprintf(s, len,
"Achse für Analog-Stick (DualShock-artig).\n"
" \n"
"Zugewiesen wie gewöhnlich, wenn jedoch eine echte \n"
"Analogachse zugewiesen wird, kann sie auch wirklich \n"
"analog gelesen werden.\n"
" \n"
"Positive X-Achse ist rechts. \n"
"Positive Y-Achse ist unten.");
break;
default:
return -1;
}
return 0;
}
const char *msg_hash_to_str_de(enum msg_hash_enums msg) const char *msg_hash_to_str_de(enum msg_hash_enums msg)
{ {

View File

@ -13,8 +13,26 @@
* If not, see <http://www.gnu.org/licenses/>. * If not, see <http://www.gnu.org/licenses/>.
*/ */
#include <stdint.h>
#include <string.h>
#include "../msg_hash.h" #include "../msg_hash.h"
int menu_hash_get_help_eo(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}
const char *msg_hash_to_str_eo(enum msg_hash_enums msg) const char *msg_hash_to_str_eo(enum msg_hash_enums msg)
{ {
switch (msg) switch (msg)

File diff suppressed because it is too large Load Diff

View File

@ -30,6 +30,24 @@
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */ /* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("äÄöÖßüÜ")==7+1 ? 1 : -1]; extern const char force_iso_8859_1[sizeof("äÄöÖßüÜ")==7+1 ? 1 : -1];
int menu_hash_get_help_fr(uint32_t hash, char *s, size_t len)
{
int ret = 0;
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */
(void)sizeof(force_iso_8859_1);
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}
const char *msg_hash_to_str_fr(enum msg_hash_enums msg) const char *msg_hash_to_str_fr(enum msg_hash_enums msg)
{ {
switch (msg) switch (msg)

File diff suppressed because it is too large Load Diff

View File

@ -19,6 +19,22 @@
#include "../msg_hash.h" #include "../msg_hash.h"
int menu_hash_get_help_nl(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
strlcpy(s, "Geen informatie beschikbaar.", len);
ret = -1;
break;
}
return ret;
}
const char *msg_hash_to_str_nl(enum msg_hash_enums msg) const char *msg_hash_to_str_nl(enum msg_hash_enums msg)
{ {
switch (msg) switch (msg)

View File

@ -24,6 +24,21 @@
* (e.g. German "Umlauts" and Portugese diacritics). * (e.g. German "Umlauts" and Portugese diacritics).
*/ */
int menu_hash_get_help_pl(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}
const char *msg_hash_to_str_pl(enum msg_hash_enums msg) const char *msg_hash_to_str_pl(enum msg_hash_enums msg)
{ {
switch (msg) switch (msg)

View File

@ -31,6 +31,969 @@
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */ /* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("áÁâãçéêíÍóõú")==12+1 ? 1 : -1]; extern const char force_iso_8859_1[sizeof("áÁâãçéêíÍóõú")==12+1 ? 1 : -1];
int menu_hash_get_help_pt(uint32_t hash, char *s, size_t len)
{
uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr();
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */
(void)sizeof(force_iso_8859_1);
switch (hash)
{
case MENU_LABEL_INPUT_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->input.driver);
switch (driver_hash)
{
case MENU_LABEL_INPUT_DRIVER_UDEV:
snprintf(s, len,
"Driver de entrada udev. \n"
" \n"
"Esse driver funciona sem o X. \n"
" \n"
"Ele usa a recente API de joypads \n"
"evdev para supporte a joystick. \n"
"Suporta Hot-Swap e force feedback \n"
"(se suportado pelo dispositivo). \n"
" \n"
"O driver lê os eventos evdev para suporte a \n"
"teclado. Suporta também callback de teclado, \n"
"mouses e touchpads. \n"
" \n"
"Em geral, na maioria das distribuições, os nós \n"
"/dev/input são root-only (modo 600). Mas você pode \n"
"definir uma regra udev para dar acesso a non-roots."
);
break;
case MENU_LABEL_INPUT_DRIVER_LINUXRAW:
snprintf(s, len,
"Driver de Entrada linuxraw. \n"
" \n"
"Esse driver requer um TTY ativo. Eventos de \n"
"teclado são lidos diretamente do TTY, tornando-o \n"
"simples, mas não tão flexível quanto o udev. \n" "Mouses, etc, não são suportados. \n"
" \n"
"Esse driver usa a antiga API de joysticks \n"
"(/dev/input/js*).");
break;
default:
snprintf(s, len,
"Driver de Entrada.\n"
" \n"
"Dependendo do driver de vídeo, pode ser necessário \n"
"forçar um driver de entrada diferente.");
break;
}
break;
case MENU_LABEL_LOAD_CONTENT:
snprintf(s, len,
"Carregar Conteúdo. \n"
"Busca conteúdo. \n"
" \n"
"Para carregar conteúdo, você precisa de \n"
"um core libretro para usar, e um arquivo \n"
"de conteúdo. \n"
" \n"
"Para controlar onde o menu começa a \n"
"buscar conteúdo, defina o Diretório \n"
"de Navegação. Se não estiver definido, \n"
"o Retroarch começará no diretório raiz. \n"
" \n"
"O navegador vai filtrar pelas extensões \n"
"do mais recente core definido em 'Core', \n"
"e o usará quando o conteúdo estiver \n"
"carregado."
);
break;
case MENU_LABEL_CORE_LIST:
snprintf(s, len,
"Carregar Core. \n"
" \n"
"Busca uma implementação de um core \n"
"libretro. Onde a busca inicia depende \n"
"do caminho do seu Diretório de Cores. \n"
"Se não definido, começará no raiz. \n"
" \n"
"Se o Diretório de Cores estiver definido, \n"
"o menu o usará como pasta inicial. Se for um \n"
"caminho completo, ele começará na pasta onde \n"
"o arquivo estiver.");
break;
case MENU_LABEL_LOAD_CONTENT_HISTORY:
snprintf(s, len,
"Carregando conteúdo do histórico. \n"
" \n"
"Ao carregar conteúdos, suas combinações com \n"
"cores são salvas no histórico. \n"
" \n"
"O histórico é salvo em um arquivo no mesmo \n"
"diretório do arquivo de configuração. Se nenhuma \n"
"configuração tiver sido carregada, o histórico \n"
"não será salvo ou carregado e não vai existir no \n"
"menu principal."
);
break;
case MENU_LABEL_VIDEO_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->video.driver);
switch (driver_hash)
{
case MENU_LABEL_VIDEO_DRIVER_GL:
snprintf(s, len,
"Driver de Vídeo OpenGL. \n"
" \n"
"Esse driver permite o uso de cores libretro GL \n"
"em adição às implementações de cores de \n"
"renderização por software.\n"
" \n"
"O desempenho das implementações dos cores de\n"
"renderização por software e libretro GL \n"
"depende do driver GL instalado em sua \n"
"placa de vídeo.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL2:
snprintf(s, len,
"Driver de Vídeo SDL 2.\n"
" \n"
"Esse é um driver de vídeo SDL 2 de \n"
"renderização por software.\n"
" \n"
"O desempenho das implementações dos cores de \n"
"renderização por software depende da \n"
"implementação SDL de sua plataforma.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL1:
snprintf(s, len,
"Driver de Vídeo SDL.\n"
" \n"
"Esse é um driver de vídeo SDL 1.2 de \n"
"renderização por software.\n"
" \n"
"O desemprenho é considerado subótimo. \n"
"Considere seu uso apenas em último caso.");
break;
case MENU_LABEL_VIDEO_DRIVER_D3D:
snprintf(s, len,
"Driver de Vídeo Direct3D. \n"
" \n"
"O desempenho das implementações dos cores de\n"
"renderização por software depende do driver \n"
"D3D instalado em sua placa de vídeo.");
break;
case MENU_LABEL_VIDEO_DRIVER_EXYNOS:
snprintf(s, len,
"Driver de Vídeo Exynos-G2D. \n"
" \n"
"Esse é um driver de vídeo Exynos de baixo nível. \n"
"Usa o bloco G2D do SoC Samsung Exynos \n"
"para operações de blit. \n"
" \n"
"O desempenho para cores de renderização por \n"
"software deve ser ótimo.");
break;
case MENU_LABEL_VIDEO_DRIVER_SUNXI:
snprintf(s, len,
"Driver de Vídeo Sunxi-G2D. \n"
" \n"
"Esse é um driver de vídeo Sunxi de baixo nível. \n"
"Usa o bloco G2D dos SoCs Allwinner.");
break;
default:
snprintf(s, len,
"Driver de Vídeo em uso.");
break;
}
break;
case MENU_LABEL_AUDIO_DSP_PLUGIN:
snprintf(s, len,
"Plugin de DSP de Áudio.\n"
"Processa áudio antes de ser enviado ao \n"
"driver."
);
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->audio.resampler);
switch (driver_hash)
{
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC:
snprintf(s, len,
"Implementação Windowed SINC.");
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC:
snprintf(s, len,
"Implementação Convoluted Cosine.");
break;
}
break;
case MENU_LABEL_VIDEO_SHADER_PRESET:
snprintf(s, len,
"Carregar Predefinições de Shader. \n"
" \n"
" Carregar predefinições em "
#ifdef HAVE_CG
"Cg"
#endif
#ifdef HAVE_GLSL
#ifdef HAVE_CG
"/"
#endif
"GLSL"
#endif
#ifdef HAVE_HLSL
#if defined(HAVE_CG) || defined(HAVE_HLSL)
"/"
#endif
"HLSL"
#endif
" diretamente. \n"
"O menu de shaders é atualizado de acordo. \n"
" \n"
"Se o CGP usar métodos de interpolação complexos, \n"
"(fator de escala diferente para X e Y) o fator \n"
"de escala mostrado no menu poderá não ser \n"
"correto."
);
break;
case MENU_LABEL_VIDEO_SHADER_SCALE_PASS:
snprintf(s, len,
"Escala para este passo. \n"
" \n"
"O fator de escala se acumula, i.e. 2x \n"
"para o primeiro passo e 2x para o segundo \n"
"vai lhe fornecer uma escala total de 4x. \n"
" \n"
"Se houver um fator de escala no último \n"
"passo, o resultado será esticado na tela \n"
"com o filtro especificado em 'Filtro \n"
"Padrão'. \n"
" \n"
"Se 'Tanto faz' estiver definido, a escala \n"
"de 1x ou o esticamento para tela cheia serão \n"
"usados dependendo se o primeiro foi ou não \n"
"definido no último passo."
);
break;
case MENU_LABEL_VIDEO_SHADER_NUM_PASSES:
snprintf(s, len,
"Número de Shaders. \n"
" \n"
"O RetroArch permite que você combine vários \n"
"shaders com número arbitrário de passos, filtros \n"
"de hardware e fatores de escala personalizados. \n"
" \n"
"Essa opção especifica o número de passos a usar. \n"
"Se for definido como 0 e usada a opção Aplicar \n"
"Alterações de Shaders, será usado um shader vazio. \n"
" \n"
"A opção Filtro Padrão irá afetar o filtro \n"
"de esticamento.");
break;
case MENU_LABEL_VIDEO_SHADER_PARAMETERS:
snprintf(s, len,
"Parâmetros de Shaders. \n"
" \n"
"Modifica o shader em uso diretamente. Não será \n"
"salvo no arquivo de predefinições CGP/GLSLP.");
break;
case MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len,
"Parâmetros de Predefinições de Shader. \n"
" \n"
"Modifica as predefinições de shader em uso no menu."
);
break;
case MENU_LABEL_VIDEO_SHADER_PASS:
snprintf(s, len,
"Caminho do shader. \n"
" \n"
"Todos os shaders devem ser do mesmo \n"
"tipo (i.e. CG, GLSL ou HLSL). \n"
" \n"
"Defina o Diretório de Shaders para indicar \n"
"onde o buscador começa a procurar pelos \n"
"shaders."
);
break;
case MENU_LABEL_CONFIG_SAVE_ON_EXIT:
snprintf(s, len,
"Salva configuração ao sair. Útil para\n"
"o menu, pois as definições podem ser\n"
"modificadas. Sobrescreve a configuração.\n"
" \n"
"#includes e comentários não são \n"
"preservados. \n"
" \n"
"Por design, o arquivo de configuração \n"
"é considerado imutável, pois ele é \n"
"provavelmente mantido pelo usuário, \n"
"e não deve ser sobrescrito sem o \n"
"seu conhecimento."
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
"\nPorém, isso não funciona assim nos \n"
"consoles, pois abrir o arquivo de \n"
"configuração manualmente não é \n"
"realmente uma opção."
#endif
);
break;
case MENU_LABEL_VIDEO_SHADER_FILTER_PASS:
snprintf(s, len,
"Filtro de hardware para este passo. \n"
" \n"
"Se 'Tanto faz' estiver definido, o 'Filtro \n"
"Padrão' será usado."
);
break;
case MENU_LABEL_AUTOSAVE_INTERVAL:
snprintf(s, len,
"Salva automaticamente a SRAM \n"
"em intervalos regulares.\n"
" \n"
"Está desativado por padrão. O intervalo é \n"
"medido em segundos. \n"
" \n"
"Um valor de 0 desativa o salvamento \n"
"automático.");
break;
case MENU_LABEL_INPUT_BIND_DEVICE_TYPE:
snprintf(s, len,
"Tipo de Dispositivo de Entrada. \n"
" \n"
"Escolhe o dispositivo a usar. Isso é \n"
"relevante para o core libretro."
);
break;
case MENU_LABEL_LIBRETRO_LOG_LEVEL:
snprintf(s, len,
"Define o nível de registro para os cores \n"
"(GET_LOG_INTERFACE). \n"
" \n"
" Se o nível de registro de um core \n"
" libretro estiver abaixo de libretro_log, \n"
" esse será ignorado.\n"
" \n"
" Registros DEBUG são sempre ignorados a menos \n"
" que o modo prolixo seja ativado (--verbose).\n"
" \n"
" DEBUG = 0\n"
" INFO = 1\n"
" WARN = 2\n"
" ERROR = 3"
);
break;
case MENU_LABEL_STATE_SLOT_INCREASE:
case MENU_LABEL_STATE_SLOT_DECREASE:
snprintf(s, len,
"Slot de Savestates.\n"
" \n"
" Com o slot definido em 0, o nome do Savestate \n"
" será *.state (ou o que estiver definido em commandline).\n"
"Se diferente de 0, o nome será (caminho)(d), \n"
"em que (d) é o número do slot.");
break;
case MENU_LABEL_SHADER_APPLY_CHANGES:
snprintf(s, len,
"Aplicar Alterações de Shaders. \n"
" \n"
"Após alterar definições de shaders, use-o para \n"
"aplicar as mudanças. \n"
" \n"
"Mudar definições de shaders é uma operação \n"
"computacionalmente cara e deve ser \n"
"realizada explicitamente. \n"
" \n"
"Quando se aplicam shaders, as definições do menu \n"
"de shaders são salvas em um arquivo temporário \n"
"(menu.cgp ou menu.glslp) e carregadas. O arquivo \n"
"persiste ao fechar o RetroArch. Ele é salvo \n"
"no Diretório de Shaders."
);
break;
case MENU_LABEL_INPUT_BIND_DEVICE_ID:
snprintf(s, len,
"Dispositivo de Entrada. \n"
" \n"
"Escolhe um gamepad para o usuário N. \n"
"O nome do pad está disponível."
);
break;
case MENU_LABEL_MENU_TOGGLE:
snprintf(s, len,
"Alterna menu.");
break;
case MENU_LABEL_GRAB_MOUSE_TOGGLE:
snprintf(s, len,
"Alterna uso de mouse.\n"
" \n"
"Quando o mouse é usado, RetroArch o esconde e \n"
"mantém o seu ponteiro dentro da janela para \n"
"permitir que a entrada relativa do mouse \n"
"funcione melhor.");
break;
case MENU_LABEL_DISK_NEXT:
snprintf(s, len,
"Circula por imagens de discos. Usar \n"
"após ejetar. \n"
" \n"
" Finaliza ao usar ejetar novamente.");
break;
case MENU_LABEL_VIDEO_FILTER:
#ifdef HAVE_FILTERS_BUILTIN
snprintf(s, len,
"Filtro de vídeo baseado em CPU.");
#else
snprintf(s, len,
"Filtro de vídeo baseado em CPU.\n"
" \n"
"Caminho para uma biblioteca dinâmica.");
#endif
break;
case MENU_LABEL_AUDIO_DEVICE:
snprintf(s, len,
"Sobrepõe-se ao dispositivo de áudio padrão \n"
"que está em uso.\n"
"É dependente do driver. \n"
#ifdef HAVE_ALSA
" \n"
"ALSA precisa de um dispositivo PCM."
#endif
#ifdef HAVE_OSS
" \n"
"OSS precisa de um caminho (ex.: /dev/dsp)."
#endif
#ifdef HAVE_JACK
" \n"
"JACK precisa de portas (ex.: system:playback1\n"
",system:playback_2)."
#endif
#ifdef HAVE_RSOUND
" \n"
"RSound precisa de um endereço IP para \n"
"servidor RSound."
#endif
);
break;
case MENU_LABEL_DISK_EJECT_TOGGLE:
snprintf(s, len,
"Alterna ejeção para discos.\n"
" \n"
"Usado para conteúdos multidiscos.");
break;
case MENU_LABEL_ENABLE_HOTKEY:
snprintf(s, len,
"Ativar outras hotkeys.\n"
" \n"
" Se esta hotkey é usada por teclado, joybutton \n"
"ou joyaxis, todas as outras hotkeys serão \n"
"desativadas a menos que esta hotkey esteja sendo \n"
"usada ao mesmo tempo. \n"
" \n"
"Isso é útil para implementações RETRO_KEYBOARD que \n"
"consultam uma grande área do teclado, cujo caminho \n"
"deve estar livre das hotkeys.");
break;
case MENU_LABEL_REWIND_ENABLE:
snprintf(s, len,
"Ativa retrocesso.\n"
" \n"
"Essa opção causa uma perda de desempenho, \n"
"por isso está desativada por padrão.");
break;
case MENU_LABEL_LIBRETRO_DIR_PATH:
snprintf(s, len,
"Diretórios de Cores. \n"
" \n"
"Um diretório onde são buscadas as \n"
"implementações de cores libretro.");
break;
case MENU_LABEL_VIDEO_REFRESH_RATE_AUTO:
{
/* Work around C89 limitations */
char u[501];
char t[501];
snprintf(u, sizeof(u),
"Taxa de Atualização Automática.\n"
" \n"
"A taxa de atualização exata de nosso monitor (Hz).\n"
"É usada para calcular a taxa de entrada de áudio \n"
"com a fórmula: \n"
" \n"
"audio_input_rate = game input rate * display \n"
"refresh rate / game refresh rate\n"
" \n");
snprintf(t, sizeof(t),
"Se a implementação não informar valores, \n"
"valores NTSC serão assumidos por questão de \n"
"compatibilidade.\n"
" \n"
"Esse valor deve ficar próximo de 60Hz para \n"
"evitar grande mudanças de pitch. Se o monitor \n"
"não rodar a 60Hz, ou algo próximo a isso, desative\n"
"o VSync, e deixe-o com valores padrão.");
strlcat(s, u, len);
strlcat(s, t, len);
}
break;
case MENU_LABEL_VIDEO_ROTATION:
snprintf(s, len,
"Força uma certa rotação da tela. \n"
" \n"
"A rotação é adicionada a outras definidas\n"
"por conjuntos de cores (veja Permitir\n"
"Rotação de Vídeo).");
break;
case MENU_LABEL_VIDEO_SCALE:
snprintf(s, len,
"Resolução de tela cheia.\n"
" \n"
"Resolução 0 usa a resolução \n"
"do ambiente.\n");
break;
case MENU_LABEL_FASTFORWARD_RATIO:
snprintf(s, len,
"Taxa de Avanço Rápido."
" \n"
"A taxa máxima na qual o conteúdo será\n"
"executado ao se usar o Avanço Rápido.\n"
" \n"
" (Ex.: 5.0 para conteúdo 60 fps => 300 fps \n"
"máximo).\n"
" \n"
"RetroArch entra em modo sleep para assegurar \n"
"que a taxa máxima não será excedida.\n"
"Não confie que esse teto tenha exatidão \n"
"perfeita.");
break;
case MENU_LABEL_VIDEO_MONITOR_INDEX:
snprintf(s, len,
"Preferência de monitor.\n"
" \n"
"0 (padrão) significa nenhum monitor é \n"
"preferido, 1 e demais (1 é o primeiro \n"
"monitor), sugere ao RetroArch usar esse \n"
"monitor em particular.");
break;
case MENU_LABEL_VIDEO_CROP_OVERSCAN:
snprintf(s, len,
"Força o descarte de quadros overscanned. \n"
" \n"
"O comportamento exato dessa opção é \n"
"específico da implementação do core.");
break;
case MENU_LABEL_VIDEO_SCALE_INTEGER:
snprintf(s, len,
"Só interpola vídeo em escalas múltiplas \n"
"inteiras da resolução nativa.\n"
" \n"
"O tamanho base depende da geometria e da \n"
"relação de aspecto informadas pelo sistema.\n"
" \n"
"Se Forçar Aspecto não estiver definida, X/Y \n"
"serão escalonados em inteiros independentemente.");
break;
case MENU_LABEL_AUDIO_VOLUME:
snprintf(s, len,
"Volume de Áudio, em dB.\n"
" \n"
" 0 dB é o volume normal. Nenhum ganho aplicado.\n"
"O ganho pode ser controlado em execução com \n"
"Aumentar Volume / Baixar Volume.");
break;
case MENU_LABEL_AUDIO_RATE_CONTROL_DELTA:
snprintf(s, len,
"Controle de taxa de áudio.\n"
" \n"
"Definindo como 0 desativa o controle de taxa.\n"
"Outros valores controlam a variação da taxa \n"
"de áudio.\n"
" \n"
"Define quanto de taxa de entrada pode ser \n"
"regulada dinamicamente.\n"
" \n"
" Taxa de entrada é definida como: \n"
" input rate * (1.0 +/- (rate control delta))");
break;
case MENU_LABEL_AUDIO_MAX_TIMING_SKEW:
snprintf(s, len,
"Distorção de áudio máxima.\n"
" \n"
"Define a máxima variação da taxa de entrada.\n"
"Você pode querer aumentá-la para obter grandes\n"
"variações no compasso, por exemplo, ao rodar\n"
"cores PAL em telas NTSC, ao custo de um pitch\n"
"de áudio inexato.\n"
" \n"
" A taxa de entrada é definida como: \n"
" input rate * (1.0 +/- (max timing skew))");
break;
case MENU_LABEL_OVERLAY_NEXT:
snprintf(s, len,
"Alterna para o próximo overlay.\n"
" \n"
"Navegação circular.");
break;
case MENU_LABEL_LOG_VERBOSITY:
snprintf(s, len,
"Ativa ou desativa nível de prolixidade \n"
"do frontend.");
break;
case MENU_LABEL_VOLUME_UP:
snprintf(s, len,
"Aumenta o volume de áudio.");
break;
case MENU_LABEL_VOLUME_DOWN:
snprintf(s, len,
"Baixa o volume de áudio.");
break;
case MENU_LABEL_VIDEO_DISABLE_COMPOSITION:
snprintf(s, len,
"Desativa composition à força.\n"
"Válido somente para Windows Vista/7 atualmente.");
break;
case MENU_LABEL_PERFCNT_ENABLE:
snprintf(s, len,
"Ativa ou desativa contadores de desempenho \n"
"do frontend.");
break;
case MENU_LABEL_SYSTEM_DIRECTORY:
snprintf(s, len,
"Diretório system. \n"
" \n"
"Define o diretório 'system'.\n"
"Cores podem consultar esse diretório\n"
"para carregar BIOS, configurações\n"
"específicas de sistemas, etc.");
break;
case MENU_LABEL_SAVESTATE_AUTO_SAVE:
snprintf(s, len,
"Automaticamente salva um Savestate ao fechar \n"
"o RetroArch.\n"
" \n"
"RetroArch carregará automaticamente qualquer\n"
"Savestate com esse caminho ao iniciar se 'Carregar\n"
"Savestate Automaticamente' estiver ativado.");
break;
case MENU_LABEL_VIDEO_THREADED:
snprintf(s, len,
"Usa driver de vídeo em thread.\n"
" \n"
"Usando isso pode melhorar o desempenho ao \n"
"possível custo de latência e mais engasgos \n"
"de vídeo.");
break;
case MENU_LABEL_VIDEO_VSYNC:
snprintf(s, len,
"Sincronismo Vertical de vídeo.\n");
break;
case MENU_LABEL_VIDEO_HARD_SYNC:
snprintf(s, len,
"Tenta sincronizar CPU com GPU via \n"
"hardware.\n"
" \n"
"Pode reduzir a latência ao custo de \n"
"desempenho.");
break;
case MENU_LABEL_REWIND_GRANULARITY:
snprintf(s, len,
"Granularidade do retrocesso.\n"
" \n"
" Ao retroceder um número definido de \n"
"quadros, você pode retroceder vários \n"
"quadros por vez, aumentando a velocidade \n"
"de retrocesso.");
break;
case MENU_LABEL_SCREENSHOT:
snprintf(s, len,
"Tira uma foto da tela.");
break;
case MENU_LABEL_VIDEO_FRAME_DELAY:
snprintf(s, len,
"Define quantos milissegundos retardar \n"
"após o VSync antes de executar o core.\n"
"\n"
"Pode reduzir a latência ao custo de\n"
"um maior risco de engasgo de vídeo.\n"
" \n"
"O valor máximo é 15.");
break;
case MENU_LABEL_VIDEO_HARD_SYNC_FRAMES:
snprintf(s, len,
"Define quantos quadros a CPU pode rodar \n"
"adiante da GPU com a opção 'Sincronismo \n"
"de GPU via Hardware' ativada.\n"
" \n"
"O valor máximo é 3.\n"
" \n"
" 0: Sincroniza com GPU de imediato.\n"
" 1: Sincroniza com quadro anterior.\n"
" 2: Etc ...");
break;
case MENU_LABEL_VIDEO_BLACK_FRAME_INSERTION:
snprintf(s, len,
"Insere um quadro preto entre quadros. \n"
" \n"
"Útil para monitores de 120 Hz ao rodar \n"
"material de 60 Hz com eliminação do efeito \n"
"'ghosting'.\n"
" \n"
"A taxa de atualização de vídeo deve ainda \n"
"ser configurada como se fosse um monitor de \n"
"60 Hz (divida a taxa de atualização por 2).");
break;
case MENU_LABEL_RGUI_SHOW_START_SCREEN:
snprintf(s, len,
"Mostra a tela inicial no menu.\n"
"É definida automaticamente como falso quando\n"
"vista pela primeira vez.\n"
" \n"
"É atualizada na configuração apenas quando a\n"
"opção 'Salvar Configuração ao Sair' está ativada.\n");
break;
case MENU_LABEL_CORE_SPECIFIC_CONFIG:
snprintf(s, len,
"Carrega uma configuração específica baseada \n"
"no core que está sendo usado.\n");
break;
case MENU_LABEL_VIDEO_FULLSCREEN:
snprintf(s, len, "Alterna tela cheia.");
break;
case MENU_LABEL_BLOCK_SRAM_OVERWRITE:
snprintf(s, len,
"Previne SRAM de ser sobrescrita ao \n"
"carregar Savestates.\n"
" \n"
"Pode potencialmente levar a jogos bugados.");
break;
case MENU_LABEL_PAUSE_NONACTIVE:
snprintf(s, len,
"Pausa a jogatina quando o foco da janela \n"
"é perdido.");
break;
case MENU_LABEL_VIDEO_GPU_SCREENSHOT:
snprintf(s, len,
"Captura material gráfico de saída da \n"
"GPU se estiver disponível.");
break;
case MENU_LABEL_SCREENSHOT_DIRECTORY:
snprintf(s, len,
"Diretório de Capturas de Tela. \n"
" \n"
"Diretório para guardar as capturas de tela."
);
break;
case MENU_LABEL_VIDEO_SWAP_INTERVAL:
snprintf(s, len,
"Intervalo de Troca de VSync.\n"
" \n"
"Usa um intervalo de troca personalizado. \n"
"Use-e para reduzir à metade a taxa de \n"
"atualização do monitor.");
break;
case MENU_LABEL_SAVEFILE_DIRECTORY:
snprintf(s, len,
"Diretório de Saves. \n"
" \n"
"Salva todos os arquivos de save (*.srm) nesse \n"
"diretório. Isso inclui arquivos relacionados \n"
"como .bsv, .rt, .psrm, etc...\n"
" \n"
"Pode ser sobreposto por opções explícitas de\n"
"linha de comando.");
break;
case MENU_LABEL_SAVESTATE_DIRECTORY:
snprintf(s, len,
"Diretório de Savestates. \n"
" \n"
"Salva todos os Savestates (*.state) nesse \n"
"diretório.\n"
" \n"
"Pode ser sobreposto por opções explícitas de\n"
"linha de comando.");
break;
case MENU_LABEL_ASSETS_DIRECTORY:
snprintf(s, len,
"Diretório de Recursos (Assets). \n"
" \n"
" Essa localização é consultada quando se \n"
"tenta buscar pelo menu recursos (assets) \n"
"carregáveis, etc.");
break;
case MENU_LABEL_DYNAMIC_WALLPAPERS_DIRECTORY:
snprintf(s, len,
"Diretório de Papéis de Parede Dinâmicos. \n"
" \n"
" O lugar para armazenar papéis de parede que \n"
"serão carregados dinamicamente pelo menu \n"
"dependendo do contexto.");
break;
case MENU_LABEL_SLOWMOTION_RATIO:
snprintf(s, len,
"Taxa de câmera lenta."
" \n"
"Quando ativado, o conteúdo rodará em velocidade\n"
"reduzida por um fator.");
break;
case MENU_LABEL_INPUT_AXIS_THRESHOLD:
snprintf(s, len,
"Define o limiar de eixo.\n"
" \n"
"O quanto deve ser torcido um eixo para\n"
"resultar em um botão pressionado.\n"
" Valores possíveis são [0.0, 1.0].");
break;
case MENU_LABEL_INPUT_TURBO_PERIOD:
snprintf(s, len,
"Período de turbo.\n"
" \n"
"Descreve a velocidade na qual se alternam\n"
"os botões com turbo ativado."
);
break;
case MENU_LABEL_INPUT_AUTODETECT_ENABLE:
snprintf(s, len,
"Ativa autodetecção de entrada.\n"
" \n"
"Tentará autoconfigurar joypads \n"
"em um estilo Plug-and-Play.");
break;
case MENU_LABEL_CAMERA_ALLOW:
snprintf(s, len,
"Autorizar ou desautorizar o acesso da câmera \n"
"pelos cores.");
break;
case MENU_LABEL_LOCATION_ALLOW:
snprintf(s, len,
"Autorizar ou desautorizar o acesso de \n"
"serviços de localização pelos cores.");
break;
case MENU_LABEL_TURBO:
snprintf(s, len,
"Ativar turbo.\n"
" \n"
"Segurando o turbo enquanto se pressiona outro \n"
"botão permitirá que o botão entre em modo \n"
"turbo em que o seu estado será modulado com \n"
"um sinal periódico. \n"
" \n"
"A modulação pára quando o próprio botão \n"
"(não é o botão de turbo) é solto.");
break;
case MENU_LABEL_OSK_ENABLE:
snprintf(s, len,
"Ativar/desativar teclado na tela.");
break;
case MENU_LABEL_AUDIO_MUTE:
snprintf(s, len,
"Ligar/desligar áudio.");
break;
case MENU_LABEL_REWIND:
snprintf(s, len,
"Segure o botão para retroceder.\n"
" \n"
"Retrocesso deve estar ativado.");
break;
case MENU_LABEL_EXIT_EMULATOR:
snprintf(s, len,
"Tecla para sair corretamente do RetroArch."
#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE)
"\nFechando-o de outra forma mais agressiva \n"
"(SIGKILL, etc) sairá sem salvar RAM, etc.\n"
"Em sistemas baseados em Unix,\n"
"SIGINT/SIGTERM permite um\n"
"fechamento correto."
#endif
);
break;
case MENU_LABEL_LOAD_STATE:
snprintf(s, len,
"Carrega Savestates.");
break;
case MENU_LABEL_SAVE_STATE:
snprintf(s, len,
"Salva Savestates.");
break;
case MENU_LABEL_NETPLAY_FLIP_PLAYERS:
snprintf(s, len,
"Netplay inverte usuários.");
break;
case MENU_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len,
"Incrementa o índice de cheats.\n");
break;
case MENU_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len,
"Decrementa o índice de cheats.\n");
break;
case MENU_LABEL_SHADER_PREV:
snprintf(s, len,
"Aplica o shader anterior no diretório.");
break;
case MENU_LABEL_SHADER_NEXT:
snprintf(s, len,
"Aplica o próximo shader no diretório.");
break;
case MENU_LABEL_RESET:
snprintf(s, len,
"Reinicia o conteúdo.\n");
break;
case MENU_LABEL_PAUSE_TOGGLE:
snprintf(s, len,
"Alterna estado de pausado e não pausado.");
break;
case MENU_LABEL_CHEAT_TOGGLE:
snprintf(s, len,
"Alterna índice de cheats.\n");
break;
case MENU_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len,
"Segure para avanço rápido. Soltando o botão \n"
"desativa o avanço rápido.");
break;
case MENU_LABEL_SLOWMOTION:
snprintf(s, len,
"Segure para câmera lenta.");
break;
case MENU_LABEL_FRAME_ADVANCE:
snprintf(s, len,
"O quadro avança quando o conteúdo está pausado.");
break;
case MENU_LABEL_MOVIE_RECORD_TOGGLE:
snprintf(s, len,
"Alterna entre estar gravando ou não.");
break;
case MENU_LABEL_L_X_PLUS:
case MENU_LABEL_L_X_MINUS:
case MENU_LABEL_L_Y_PLUS:
case MENU_LABEL_L_Y_MINUS:
case MENU_LABEL_R_X_PLUS:
case MENU_LABEL_R_X_MINUS:
case MENU_LABEL_R_Y_PLUS:
case MENU_LABEL_R_Y_MINUS:
snprintf(s, len,
"Eixo para o analógico (esquema DualShock).\n"
" \n"
"Associa normalmente, porém, se um analógico real \n"
"é associado, pode ser lido como um analógico\n"
"verdadeiro. \n"
" \n"
"Eixo positivo X é para direita. \n"
"Eixo positivo Y é para baixo.");
break;
default:
if (s[0] == '\0')
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_INFORMATION_AVAILABLE), len);
return -1;
}
return 0;
}
const char *msg_hash_to_str_pt(enum msg_hash_enums msg) const char *msg_hash_to_str_pt(enum msg_hash_enums msg)
{ {
switch (msg) switch (msg)

File diff suppressed because it is too large Load Diff

View File

@ -21,7 +21,6 @@
#include "../menu_animation.h" #include "../menu_animation.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_shader.h" #include "../menu_shader.h"
#include "../menu_hash.h"
#include "../../input/input_autodetect.h" #include "../../input/input_autodetect.h"
#include "../../input/input_config.h" #include "../../input/input_config.h"

View File

@ -18,7 +18,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_hash.h"
#ifndef BIND_ACTION_INFO #ifndef BIND_ACTION_INFO
#define BIND_ACTION_INFO(cbs, name) \ #define BIND_ACTION_INFO(cbs, name) \

View File

@ -19,7 +19,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_hash.h"
#include "../menu_input.h" #include "../menu_input.h"
#include "../menu_setting.h" #include "../menu_setting.h"
#include "../menu_shader.h" #include "../menu_shader.h"

View File

@ -26,7 +26,6 @@
#include "../menu_setting.h" #include "../menu_setting.h"
#include "../menu_shader.h" #include "../menu_shader.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../menu_content.h" #include "../menu_content.h"
#include "../../core_info.h" #include "../../core_info.h"

View File

@ -15,7 +15,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_hash.h"
#ifndef BIND_ACTION_REFRESH #ifndef BIND_ACTION_REFRESH
#define BIND_ACTION_REFRESH(cbs, name) \ #define BIND_ACTION_REFRESH(cbs, name) \

View File

@ -19,7 +19,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_hash.h"
#include "../menu_input.h" #include "../menu_input.h"
#include "../menu_setting.h" #include "../menu_setting.h"
#include "../menu_shader.h" #include "../menu_shader.h"

View File

@ -22,7 +22,6 @@
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_setting.h" #include "../menu_setting.h"
#include "../menu_shader.h" #include "../menu_shader.h"
#include "../menu_hash.h"
#include "../../core_info.h" #include "../../core_info.h"
#include "../../managers/core_option_manager.h" #include "../../managers/core_option_manager.h"

View File

@ -21,7 +21,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_cbs.h" #include "../menu_cbs.h"
#include "../menu_hash.h"
#include "../../general.h" #include "../../general.h"

View File

@ -33,7 +33,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_animation.h" #include "../menu_animation.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../../core_info.h" #include "../../core_info.h"

View File

@ -25,7 +25,6 @@
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_displaylist.h" #include "../menu_displaylist.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../menu_entries.h" #include "../menu_entries.h"
#include "../../configuration.h" #include "../../configuration.h"

View File

@ -37,7 +37,6 @@
#include "../menu_driver.h" #include "../menu_driver.h"
#include "../menu_animation.h" #include "../menu_animation.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../../core_info.h" #include "../../core_info.h"

View File

@ -29,7 +29,6 @@
#include "nk_menu.h" #include "nk_menu.h"
#include "../../menu_driver.h" #include "../../menu_driver.h"
#include "../../menu_hash.h"
#include "../../frontend/frontend_driver.h" #include "../../frontend/frontend_driver.h"
static bool assets_loaded; static bool assets_loaded;

View File

@ -27,7 +27,6 @@
#include <lists/string_list.h> #include <lists/string_list.h>
#include "../../menu_driver.h" #include "../../menu_driver.h"
#include "../../menu_hash.h"
static char* out; static char* out;
static char core[PATH_MAX_LENGTH] = {0}; static char core[PATH_MAX_LENGTH] = {0};

View File

@ -27,7 +27,6 @@
#include <lists/string_list.h> #include <lists/string_list.h>
#include "../../menu_driver.h" #include "../../menu_driver.h"
#include "../../menu_hash.h"
void nk_wnd_settings(nk_menu_handle_t *nk) void nk_wnd_settings(nk_menu_handle_t *nk)
{ {

View File

@ -27,7 +27,6 @@
#include <lists/string_list.h> #include <lists/string_list.h>
#include "../../menu_driver.h" #include "../../menu_driver.h"
#include "../../menu_hash.h"
#include "../../../gfx/common/gl_common.h" #include "../../../gfx/common/gl_common.h"
#include "../../../core_info.h" #include "../../../core_info.h"

View File

@ -37,7 +37,6 @@
#include "../menu_animation.h" #include "../menu_animation.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../../gfx/drivers_font_renderer/bitmap.h" #include "../../gfx/drivers_font_renderer/bitmap.h"

View File

@ -34,7 +34,6 @@
#include "../menu_entry.h" #include "../menu_entry.h"
#include "../menu_animation.h" #include "../menu_animation.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_hash.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"

View File

@ -44,7 +44,6 @@
#include "../menu_entry.h" #include "../menu_entry.h"
#include "../menu_display.h" #include "../menu_display.h"
#include "../menu_navigation.h" #include "../menu_navigation.h"
#include "../menu_hash.h"
#include "../../retroarch.h" #include "../../retroarch.h"
#include "../../gfx/font_driver.h" #include "../../gfx/font_driver.h"

View File

@ -1,434 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include <compat/strl.h>
#include "../menu_hash.h"
#include "../../msg_hash.h"
#include "../../configuration.h"
/* IMPORTANT:
* For non-english characters to work without proper unicode support,
* we need this file to be encoded in ISO 8859-1 (Latin1), not UTF-8.
* If you save this file as UTF-8, you'll break non-english characters
* (e.g. German "Umlauts" and Portugese diacritics).
*/
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("äÄöÖßüÜ")==7+1 ? 1 : -1];
int menu_hash_get_help_de(uint32_t hash, char *s, size_t len)
{
uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr();
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */ (void)sizeof(force_iso_8859_1);
switch (hash)
{
case MENU_LABEL_INPUT_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->input.driver);
switch (driver_hash)
{
case MENU_LABEL_INPUT_DRIVER_UDEV:
{
/* Work around C89 limitations */
char u[501];
char t[501];
snprintf(t, sizeof(t),
"udev-Eingabetreiber. \n"
" \n"
"Dieser Treiber kann ohne X ausgeführt werden. \n"
" \n"
"Er verwende die neue evdev-Joypad-API \n"
"für die Joystick-Unterstützung und unterstützt \n"
"auch Hotplugging und Force-Feedback (wenn das \n"
"Gerät dies unterstützt). \n"
" \n"
);
snprintf(u, sizeof(u),
"Der Treiber liest evdev-Ereigniss für Tastatur- \n"
"Unterstützung und kann auch mit Tastatur-Callbacks, \n"
"Mäusen und Touchpads umgehen. \n"
" \n"
"Standardmäßig sind die /dev/input-Dateien in den \n"
"meisten Linux-Distribution nur für den Root- \n"
"Benutzer lesbar (mode 600). Du kannst eine udev- \n"
"Regel erstellen, die auch den Zugriff für andere \n"
"Benutzer erlaubt.");
strlcat(s, t, len);
strlcat(s, u, len);
}
break;
case MENU_LABEL_INPUT_DRIVER_LINUXRAW:
snprintf(s, len,
"linuxraw-Eingabetreiber. \n"
" \n"
"Dieser Treiber erforder eine aktive TTY-Schnittstelle. \n"
"Tastatur-Ereignisse werden direkt von der TTY gelesen, \n"
"was es einfacher, aber weniger flexibel als udev macht. \n"
"Mäuse, etc, werden nicht unterstützt. \n"
" \n"
"Dieser Treiber verwendet die alte Joystick-API \n"
"(/dev/input/js*).");
break;
default:
snprintf(s, len,
"Eingabetreiber.\n"
" \n"
"Abhängig vom Grafiktreiber kann ein anderer Eingabe- \n"
"treiber erzwungen werden.");
break;
}
break;
case MENU_LABEL_LOAD_CONTENT:
snprintf(s, len,
"Lade Content. \n"
"Suche nach Content. \n"
" \n"
"Um Content zu laden benötigst du den passenden \n"
"Libretro-Core und die Content-Datei. \n"
" \n"
"Um einzustellen, welcher Ordner standardmäßig \n"
"geöffnet wird, um nach Content zu suchen, solltest \n"
"du das Content-Verzeichnis setzen. Wenn es nicht \n"
"gesetzt ist, wird es im Root-Verzeichen starten. \n"
" \n"
"Der Browser wird nur Dateierweiterungen des \n"
"zuletzt geladenen Cores zeigen und diesen Core \n"
"nutzen, wenn Content geladen wird."
);
break;
case MENU_LABEL_CORE_LIST:
snprintf(s, len,
"Lade Core. \n"
" \n"
"Suche nach einer Libretro-Core- \n"
"Implementierung. In welchem Verzeichnis der \n"
"Browser startet, hängt vom deinem Core-Verzeichnis \n"
"ab. Falls du es nicht eingestellt hast, wird er \n"
"im Root-Verzeichnis starten. \n"
" \n"
"Ist das Core-Verzeichnis ein Ordner, wird das \n"
"Menü diesen als Startverzeichnis nutzen. Ist \n"
"das Core-Verzeichnis ein Pfad zu einer Datei, \n"
"wird es in dem Verzeichnis starten, in dem \n"
"sich die Datei befindet.");
break;
case MENU_LABEL_LOAD_CONTENT_HISTORY:
snprintf(s, len,
"Lade Content aus dem Verlauf. \n"
" \n"
"Wenn Content geladen wird, wird der Content \n"
"sowie der dazugehörige Core im Verlauf gespeichert. \n"
" \n"
"Der Verlauf wird im selben Verzeichnis wie die \n"
"RetroArch-Konfigurationsdatei gespeicher. Wenn \n"
"beim Start keine Konfigurationsdatei geladen wurde, \n"
"wird keine Verlauf geladen oder gespeichert und nicht \n"
"im Hauptmenü angezeigt."
);
break;
case MENU_LABEL_VIDEO_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->video.driver);
switch (driver_hash)
{
case MENU_LABEL_VIDEO_DRIVER_GL:
snprintf(s, len,
"OpenGL-Grafiktreiber. \n"
" \n"
"Dieser Treiber erlaubt es, neben software- \n"
"gerenderten Cores aus Libretro-GL-Cores zu \n"
"verwenden. \n"
" \n"
"Die Leistung, sowohl bei software-gerenderten, \n"
"als auch bei Libretro-GL-Cores, hängt von dem \n"
"GL-Treiber deiner Grafikkarte ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL2:
snprintf(s, len,
"SDL2-Grafiktreiber.\n"
" \n"
"Dies ist ein SDL2-Grafiktreiber \n"
"mit Software-Rendering."
" \n"
"Die Leistung hängt von der SDL- \n"
"Implementierung deiner Plattform ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL1:
snprintf(s, len,
"SDL-Grafiktreiber.\n"
" \n"
"Dies ist ein SDL1.2-Grafiktreiber \n"
"mit Software-Rendering."
" \n"
"Die Leistung ist suboptimal und du \n"
"solltest ihn nur als letzte \n"
"Möglichkeit verwenden.");
break;
case MENU_LABEL_VIDEO_DRIVER_D3D:
snprintf(s, len,
"Direct3D-Grafiktreiber. \n"
" \n"
"Die Leistung bei software-gerenderten \n"
"Cores hängt von dem D3D-Treiber deiner \n"
"Grafikkarte ab.");
break;
case MENU_LABEL_VIDEO_DRIVER_EXYNOS:
snprintf(s, len,
"Exynos-G2D-Grafiktreiber. \n"
" \n"
"Dies ist ein Low-Level-Exynos-Grafiktreiber. \n"
"Er verwendet den G2D-Block in Samsung-Exynos-SoCs. \n"
"für Blitting-Operationen. \n"
" \n"
"Die Leistung bei software-gerendeten Cores sollte \n"
"optimal sein.");
break;
case MENU_LABEL_VIDEO_DRIVER_SUNXI:
snprintf(s, len,
"Sunxi-G2D-Grafiktreiber\n"
" \n"
"Dies ist ein Low-Level-Sunxi-Grafiktreiber. \n"
"Er verwendet den G2D-Block in Allwinnder-SoCs.");
break;
default:
snprintf(s, len,
"Momentaner Grafiktreiber.");
break;
}
break;
case MENU_LABEL_AUDIO_DSP_PLUGIN:
snprintf(s, len,
"Audio-DSP-Plugin.\n"
" Verarbeitet Audiodaten, bevor \n"
"sie zum Treiber gesendet werden."
);
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->audio.resampler);
switch (driver_hash)
{
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC:
snprintf(s, len,
"Windowed-SINC-Implementierung.");
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC:
snprintf(s, len,
"Convoluted-Kosinus-Implementierung.");
break;
}
break;
case MENU_LABEL_VIDEO_SHADER_PRESET:
snprintf(s, len,
"Lade Shader-Voreinstellung. \n"
" \n"
" Lade eine "
#ifdef HAVE_CG
"Cg"
#endif
#ifdef HAVE_GLSL
#ifdef HAVE_CG
"/"
#endif
"GLSL"
#endif
#ifdef HAVE_HLSL
#if defined(HAVE_CG) || defined(HAVE_HLSL)
"/"
#endif
"HLSL"
#endif
"-Voreinstellung. \n"
"Das Menüshader-Menü wird entsprechend \n"
"aktualisiert."
" \n"
"Wenn der CGP komplexe Methoden verwendet, \n"
"(also andere als Quellskalierung mit dem \n"
"selben Faktor für X/Y) kann der im Menü \n"
"angezeigte Skalierungsfaktor inkorrekt sein."
);
break;
case MENU_LABEL_VIDEO_SHADER_SCALE_PASS:
snprintf(s, len,
"Für diesen Durchgang skalieren. \n"
" \n"
"Der Skalierungsfaktor wird multipliziert, \n"
"d.h. 2x im ersten Durchgang und 2x im \n"
"zweiten Durchgang bedeute eine 4x Gesamt- \n"
"Skalierung."
" \n"
"Wenn es im letzten Durchgang einen \n"
"Skalierungsfaktor gibt, wird das Ergebnis \n"
"mit dem als 'Standardfilter' eingestellten \n"
"Filter auf die Bildschirmgröße gestreckt. \n"
" \n"
"Wenn 'Mir egal' eingestellt ist, wird \n"
"entweder einfache Skalierung or Vollbild- \n"
"Streckung verwendet - abhängig davon, ob \n"
"es der letzte Durchgang ist oder nicht."
);
break;
case MENU_LABEL_VIDEO_SHADER_NUM_PASSES:
snprintf(s, len,
"Shader-Durchgänge. \n"
" \n"
"RetroArch erlaubt es dir, verschiedene Shader \n"
"in verschiedenen Durchgängen miteinander zu \n"
"kombinieren. \n"
" \n"
"Diese Option legt die Anzahl der Shader- \n"
"Durchgänge fest. Wenn du die Anzahl auf 0 setzt, \n"
"verwendest du einen 'leeren' Shader."
" \n"
"Die 'Standardfilter'-Option beeinflusst den \n"
"Streckungsfilter");
break;
case MENU_LABEL_VIDEO_SHADER_PARAMETERS:
snprintf(s, len,
"Shader-Parameter. \n"
" \n"
"Verändert den momentanen Shader. Wird nicht in \n"
"der CGP/GLSLP-Voreinstellungs-Datei gespeichert.");
break;
case MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len,
"Shader-Voreinstellung-Parameter. \n"
" \n"
"Verändert die Shader-Voreinstellung, die aktuell \n"
"im Menü aktiv ist."
);
break;
/*
* FIXME: Some stuff still missing here.
*/
case MENU_LABEL_OSK_ENABLE:
snprintf(s, len,
"(De-)Aktiviere die Bildschirmtastatur.");
break;
case MENU_LABEL_AUDIO_MUTE:
snprintf(s, len,
"Audio stummschalten.");
break;
case MENU_LABEL_REWIND:
snprintf(s, len,
"Halte die Taste zum Zurückspulen gedrückt.\n"
" \n"
"Die Zurückspulfunktion muss eingeschaltet \n"
"sein.");
break;
case MENU_LABEL_EXIT_EMULATOR:
snprintf(s, len,
"Taste zum Beenden von RetroArch."
#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE)
"\nWenn du es stattdessen mittels SIGKILL \n"
"beendest, wird RetroArch nicht den RAM \n"
"sichern. Bei unixoiden Betriebssystemen \n"
"erlaubt SIGINT/SIGTERM ein sauberes \n"
"Beenden."
#endif
);
break;
case MENU_LABEL_LOAD_STATE:
snprintf(s, len,
"Lädt einen Savestate.");
break;
case MENU_LABEL_SAVE_STATE:
snprintf(s, len,
"Speichert einen Savestate.");
break;
case MENU_LABEL_NETPLAY_FLIP_PLAYERS:
snprintf(s, len,
"Netplay-Spieler tauschen.");
break;
case MENU_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len,
"Erhöht den Cheat-Index.\n");
break;
case MENU_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len,
"Verringert den Cheat-Index.\n");
break;
case MENU_LABEL_SHADER_PREV:
snprintf(s, len,
"Wendet vorherigen Shader im Verzeichnis an.");
break;
case MENU_LABEL_SHADER_NEXT:
snprintf(s, len,
"Wendet nächsten Shader im Verzeichnis an.");
break;
case MENU_LABEL_RESET:
snprintf(s, len,
"Setzt den Content zurück.\n");
break;
case MENU_LABEL_PAUSE_TOGGLE:
snprintf(s, len,
"Pausiert den Content und setzt ihn wieder fort.");
break;
case MENU_LABEL_CHEAT_TOGGLE:
snprintf(s, len,
"Schaltet den Cheat-Index ein und aus.\n");
break;
case MENU_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len,
"Halte den Knopf gedrückt, um vorzuspulen. Beim Loslassen \n"
"wird das Vorspulen beendet.");
break;
case MENU_LABEL_SLOWMOTION:
snprintf(s, len,
"Halte den Knopf gedrückt, um die Zeitlupe einzuschalten.");
break;
case MENU_LABEL_FRAME_ADVANCE:
snprintf(s, len,
"Frame-Advance, wenn der Content pausiert ist.");
break;
case MENU_LABEL_MOVIE_RECORD_TOGGLE:
snprintf(s, len,
"Aufnahme ein- und ausschalten.");
break;
case MENU_LABEL_L_X_PLUS:
case MENU_LABEL_L_X_MINUS:
case MENU_LABEL_L_Y_PLUS:
case MENU_LABEL_L_Y_MINUS:
case MENU_LABEL_R_X_PLUS:
case MENU_LABEL_R_X_MINUS:
case MENU_LABEL_R_Y_PLUS:
case MENU_LABEL_R_Y_MINUS:
snprintf(s, len,
"Achse für Analog-Stick (DualShock-artig).\n"
" \n"
"Zugewiesen wie gewöhnlich, wenn jedoch eine echte \n"
"Analogachse zugewiesen wird, kann sie auch wirklich \n"
"analog gelesen werden.\n"
" \n"
"Positive X-Achse ist rechts. \n"
"Positive Y-Achse ist unten.");
break;
default:
return -1;
}
return 0;
}

View File

@ -1,34 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include "../menu_hash.h"
int menu_hash_get_help_eo(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,46 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include "../menu_hash.h"
/* IMPORTANT:
* For non-english characters to work without proper unicode support,
* we need this file to be encoded in ISO 8859-1 (Latin1), not UTF-8.
* If you save this file as UTF-8, you'll break non-english characters
* (e.g. German "Umlauts" and Portugese diacritics).
*/
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("àéÉèêô")==6+1 ? 1 : -1];
int menu_hash_get_help_fr(uint32_t hash, char *s, size_t len)
{
int ret = 0;
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */
(void)sizeof(force_iso_8859_1);
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,37 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include <compat/strl.h>
#include "../menu_hash.h"
int menu_hash_get_help_nl(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
strlcpy(s, "Geen informatie beschikbaar.", len);
ret = -1;
break;
}
return ret;
}

View File

@ -1,35 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include "../menu_hash.h"
#include "../../configuration.h"
int menu_hash_get_help_pl(uint32_t hash, char *s, size_t len)
{
int ret = 0;
switch (hash)
{
case 0:
default:
ret = -1;
break;
}
return ret;
}

View File

@ -1,995 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include <retro_assert.h>
#include <compat/strl.h>
#include "../menu_hash.h"
#include "../../msg_hash.h"
#include "../../configuration.h"
/* IMPORTANT:
* For non-english characters to work without proper unicode support,
* we need this file to be encoded in ISO 8859-1 (Latin1), not UTF-8.
* If you save this file as UTF-8, you'll break non-english characters
* (e.g. German "Umlauts" and Portugese diacritics).
*/
/* DO NOT REMOVE THIS. If it causes build failure, it's because you saved the file as UTF-8. Read the above comment. */
extern const char force_iso_8859_1[sizeof("áÁâãçéêíÍóõú")==12+1 ? 1 : -1];
int menu_hash_get_help_pt(uint32_t hash, char *s, size_t len)
{
uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr();
/* If this one throws errors, stop sledgehammering square pegs into round holes and */
/* READ THE COMMENTS at the top of the file. */ (void)sizeof(force_iso_8859_1);
switch (hash)
{
case MENU_LABEL_INPUT_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->input.driver);
switch (driver_hash)
{
case MENU_LABEL_INPUT_DRIVER_UDEV:
snprintf(s, len,
"Driver de entrada udev. \n"
" \n"
"Esse driver funciona sem o X. \n"
" \n"
"Ele usa a recente API de joypads \n"
"evdev para supporte a joystick. \n"
"Suporta Hot-Swap e force feedback \n"
"(se suportado pelo dispositivo). \n"
" \n"
"O driver lê os eventos evdev para suporte a \n"
"teclado. Suporta também callback de teclado, \n"
"mouses e touchpads. \n"
" \n"
"Em geral, na maioria das distribuições, os nós \n"
"/dev/input são root-only (modo 600). Mas você pode \n"
"definir uma regra udev para dar acesso a non-roots."
);
break;
case MENU_LABEL_INPUT_DRIVER_LINUXRAW:
snprintf(s, len,
"Driver de Entrada linuxraw. \n"
" \n"
"Esse driver requer um TTY ativo. Eventos de \n"
"teclado são lidos diretamente do TTY, tornando-o \n"
"simples, mas não tão flexível quanto o udev. \n" "Mouses, etc, não são suportados. \n"
" \n"
"Esse driver usa a antiga API de joysticks \n"
"(/dev/input/js*).");
break;
default:
snprintf(s, len,
"Driver de Entrada.\n"
" \n"
"Dependendo do driver de vídeo, pode ser necessário \n"
"forçar um driver de entrada diferente.");
break;
}
break;
case MENU_LABEL_LOAD_CONTENT:
snprintf(s, len,
"Carregar Conteúdo. \n"
"Busca conteúdo. \n"
" \n"
"Para carregar conteúdo, você precisa de \n"
"um core libretro para usar, e um arquivo \n"
"de conteúdo. \n"
" \n"
"Para controlar onde o menu começa a \n"
"buscar conteúdo, defina o Diretório \n"
"de Navegação. Se não estiver definido, \n"
"o Retroarch começará no diretório raiz. \n"
" \n"
"O navegador vai filtrar pelas extensões \n"
"do mais recente core definido em 'Core', \n"
"e o usará quando o conteúdo estiver \n"
"carregado."
);
break;
case MENU_LABEL_CORE_LIST:
snprintf(s, len,
"Carregar Core. \n"
" \n"
"Busca uma implementação de um core \n"
"libretro. Onde a busca inicia depende \n"
"do caminho do seu Diretório de Cores. \n"
"Se não definido, começará no raiz. \n"
" \n"
"Se o Diretório de Cores estiver definido, \n"
"o menu o usará como pasta inicial. Se for um \n"
"caminho completo, ele começará na pasta onde \n"
"o arquivo estiver.");
break;
case MENU_LABEL_LOAD_CONTENT_HISTORY:
snprintf(s, len,
"Carregando conteúdo do histórico. \n"
" \n"
"Ao carregar conteúdos, suas combinações com \n"
"cores são salvas no histórico. \n"
" \n"
"O histórico é salvo em um arquivo no mesmo \n"
"diretório do arquivo de configuração. Se nenhuma \n"
"configuração tiver sido carregada, o histórico \n"
"não será salvo ou carregado e não vai existir no \n"
"menu principal."
);
break;
case MENU_LABEL_VIDEO_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->video.driver);
switch (driver_hash)
{
case MENU_LABEL_VIDEO_DRIVER_GL:
snprintf(s, len,
"Driver de Vídeo OpenGL. \n"
" \n"
"Esse driver permite o uso de cores libretro GL \n"
"em adição às implementações de cores de \n"
"renderização por software.\n"
" \n"
"O desempenho das implementações dos cores de\n"
"renderização por software e libretro GL \n"
"depende do driver GL instalado em sua \n"
"placa de vídeo.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL2:
snprintf(s, len,
"Driver de Vídeo SDL 2.\n"
" \n"
"Esse é um driver de vídeo SDL 2 de \n"
"renderização por software.\n"
" \n"
"O desempenho das implementações dos cores de \n"
"renderização por software depende da \n"
"implementação SDL de sua plataforma.");
break;
case MENU_LABEL_VIDEO_DRIVER_SDL1:
snprintf(s, len,
"Driver de Vídeo SDL.\n"
" \n"
"Esse é um driver de vídeo SDL 1.2 de \n"
"renderização por software.\n"
" \n"
"O desemprenho é considerado subótimo. \n"
"Considere seu uso apenas em último caso.");
break;
case MENU_LABEL_VIDEO_DRIVER_D3D:
snprintf(s, len,
"Driver de Vídeo Direct3D. \n"
" \n"
"O desempenho das implementações dos cores de\n"
"renderização por software depende do driver \n"
"D3D instalado em sua placa de vídeo.");
break;
case MENU_LABEL_VIDEO_DRIVER_EXYNOS:
snprintf(s, len,
"Driver de Vídeo Exynos-G2D. \n"
" \n"
"Esse é um driver de vídeo Exynos de baixo nível. \n"
"Usa o bloco G2D do SoC Samsung Exynos \n"
"para operações de blit. \n"
" \n"
"O desempenho para cores de renderização por \n"
"software deve ser ótimo.");
break;
case MENU_LABEL_VIDEO_DRIVER_SUNXI:
snprintf(s, len,
"Driver de Vídeo Sunxi-G2D. \n"
" \n"
"Esse é um driver de vídeo Sunxi de baixo nível. \n"
"Usa o bloco G2D dos SoCs Allwinner.");
break;
default:
snprintf(s, len,
"Driver de Vídeo em uso.");
break;
}
break;
case MENU_LABEL_AUDIO_DSP_PLUGIN:
snprintf(s, len,
"Plugin de DSP de Áudio.\n"
"Processa áudio antes de ser enviado ao \n"
"driver."
);
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER:
if (settings)
driver_hash = msg_hash_calculate(settings->audio.resampler);
switch (driver_hash)
{
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC:
snprintf(s, len,
"Implementação Windowed SINC.");
break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC:
snprintf(s, len,
"Implementação Convoluted Cosine.");
break;
}
break;
case MENU_LABEL_VIDEO_SHADER_PRESET:
snprintf(s, len,
"Carregar Predefinições de Shader. \n"
" \n"
" Carregar predefinições em "
#ifdef HAVE_CG
"Cg"
#endif
#ifdef HAVE_GLSL
#ifdef HAVE_CG
"/"
#endif
"GLSL"
#endif
#ifdef HAVE_HLSL
#if defined(HAVE_CG) || defined(HAVE_HLSL)
"/"
#endif
"HLSL"
#endif
" diretamente. \n"
"O menu de shaders é atualizado de acordo. \n"
" \n"
"Se o CGP usar métodos de interpolação complexos, \n"
"(fator de escala diferente para X e Y) o fator \n"
"de escala mostrado no menu poderá não ser \n"
"correto."
);
break;
case MENU_LABEL_VIDEO_SHADER_SCALE_PASS:
snprintf(s, len,
"Escala para este passo. \n"
" \n"
"O fator de escala se acumula, i.e. 2x \n"
"para o primeiro passo e 2x para o segundo \n"
"vai lhe fornecer uma escala total de 4x. \n"
" \n"
"Se houver um fator de escala no último \n"
"passo, o resultado será esticado na tela \n"
"com o filtro especificado em 'Filtro \n"
"Padrão'. \n"
" \n"
"Se 'Tanto faz' estiver definido, a escala \n"
"de 1x ou o esticamento para tela cheia serão \n"
"usados dependendo se o primeiro foi ou não \n"
"definido no último passo."
);
break;
case MENU_LABEL_VIDEO_SHADER_NUM_PASSES:
snprintf(s, len,
"Número de Shaders. \n"
" \n"
"O RetroArch permite que você combine vários \n"
"shaders com número arbitrário de passos, filtros \n"
"de hardware e fatores de escala personalizados. \n"
" \n"
"Essa opção especifica o número de passos a usar. \n"
"Se for definido como 0 e usada a opção Aplicar \n"
"Alterações de Shaders, será usado um shader vazio. \n"
" \n"
"A opção Filtro Padrão irá afetar o filtro \n"
"de esticamento.");
break;
case MENU_LABEL_VIDEO_SHADER_PARAMETERS:
snprintf(s, len,
"Parâmetros de Shaders. \n"
" \n"
"Modifica o shader em uso diretamente. Não será \n"
"salvo no arquivo de predefinições CGP/GLSLP.");
break;
case MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len,
"Parâmetros de Predefinições de Shader. \n"
" \n"
"Modifica as predefinições de shader em uso no menu."
);
break;
case MENU_LABEL_VIDEO_SHADER_PASS:
snprintf(s, len,
"Caminho do shader. \n"
" \n"
"Todos os shaders devem ser do mesmo \n"
"tipo (i.e. CG, GLSL ou HLSL). \n"
" \n"
"Defina o Diretório de Shaders para indicar \n"
"onde o buscador começa a procurar pelos \n"
"shaders."
);
break;
case MENU_LABEL_CONFIG_SAVE_ON_EXIT:
snprintf(s, len,
"Salva configuração ao sair. Útil para\n"
"o menu, pois as definições podem ser\n"
"modificadas. Sobrescreve a configuração.\n"
" \n"
"#includes e comentários não são \n"
"preservados. \n"
" \n"
"Por design, o arquivo de configuração \n"
"é considerado imutável, pois ele é \n"
"provavelmente mantido pelo usuário, \n"
"e não deve ser sobrescrito sem o \n"
"seu conhecimento."
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
"\nPorém, isso não funciona assim nos \n"
"consoles, pois abrir o arquivo de \n"
"configuração manualmente não é \n"
"realmente uma opção."
#endif
);
break;
case MENU_LABEL_VIDEO_SHADER_FILTER_PASS:
snprintf(s, len,
"Filtro de hardware para este passo. \n"
" \n"
"Se 'Tanto faz' estiver definido, o 'Filtro \n"
"Padrão' será usado."
);
break;
case MENU_LABEL_AUTOSAVE_INTERVAL:
snprintf(s, len,
"Salva automaticamente a SRAM \n"
"em intervalos regulares.\n"
" \n"
"Está desativado por padrão. O intervalo é \n"
"medido em segundos. \n"
" \n"
"Um valor de 0 desativa o salvamento \n"
"automático.");
break;
case MENU_LABEL_INPUT_BIND_DEVICE_TYPE:
snprintf(s, len,
"Tipo de Dispositivo de Entrada. \n"
" \n"
"Escolhe o dispositivo a usar. Isso é \n"
"relevante para o core libretro."
);
break;
case MENU_LABEL_LIBRETRO_LOG_LEVEL:
snprintf(s, len,
"Define o nível de registro para os cores \n"
"(GET_LOG_INTERFACE). \n"
" \n"
" Se o nível de registro de um core \n"
" libretro estiver abaixo de libretro_log, \n"
" esse será ignorado.\n"
" \n"
" Registros DEBUG são sempre ignorados a menos \n"
" que o modo prolixo seja ativado (--verbose).\n"
" \n"
" DEBUG = 0\n"
" INFO = 1\n"
" WARN = 2\n"
" ERROR = 3"
);
break;
case MENU_LABEL_STATE_SLOT_INCREASE:
case MENU_LABEL_STATE_SLOT_DECREASE:
snprintf(s, len,
"Slot de Savestates.\n"
" \n"
" Com o slot definido em 0, o nome do Savestate \n"
" será *.state (ou o que estiver definido em commandline).\n"
"Se diferente de 0, o nome será (caminho)(d), \n"
"em que (d) é o número do slot.");
break;
case MENU_LABEL_SHADER_APPLY_CHANGES:
snprintf(s, len,
"Aplicar Alterações de Shaders. \n"
" \n"
"Após alterar definições de shaders, use-o para \n"
"aplicar as mudanças. \n"
" \n"
"Mudar definições de shaders é uma operação \n"
"computacionalmente cara e deve ser \n"
"realizada explicitamente. \n"
" \n"
"Quando se aplicam shaders, as definições do menu \n"
"de shaders são salvas em um arquivo temporário \n"
"(menu.cgp ou menu.glslp) e carregadas. O arquivo \n"
"persiste ao fechar o RetroArch. Ele é salvo \n"
"no Diretório de Shaders."
);
break;
case MENU_LABEL_INPUT_BIND_DEVICE_ID:
snprintf(s, len,
"Dispositivo de Entrada. \n"
" \n"
"Escolhe um gamepad para o usuário N. \n"
"O nome do pad está disponível."
);
break;
case MENU_LABEL_MENU_TOGGLE:
snprintf(s, len,
"Alterna menu.");
break;
case MENU_LABEL_GRAB_MOUSE_TOGGLE:
snprintf(s, len,
"Alterna uso de mouse.\n"
" \n"
"Quando o mouse é usado, RetroArch o esconde e \n"
"mantém o seu ponteiro dentro da janela para \n"
"permitir que a entrada relativa do mouse \n"
"funcione melhor.");
break;
case MENU_LABEL_DISK_NEXT:
snprintf(s, len,
"Circula por imagens de discos. Usar \n"
"após ejetar. \n"
" \n"
" Finaliza ao usar ejetar novamente.");
break;
case MENU_LABEL_VIDEO_FILTER:
#ifdef HAVE_FILTERS_BUILTIN
snprintf(s, len,
"Filtro de vídeo baseado em CPU.");
#else
snprintf(s, len,
"Filtro de vídeo baseado em CPU.\n"
" \n"
"Caminho para uma biblioteca dinâmica.");
#endif
break;
case MENU_LABEL_AUDIO_DEVICE:
snprintf(s, len,
"Sobrepõe-se ao dispositivo de áudio padrão \n"
"que está em uso.\n"
"É dependente do driver. \n"
#ifdef HAVE_ALSA
" \n"
"ALSA precisa de um dispositivo PCM."
#endif
#ifdef HAVE_OSS
" \n"
"OSS precisa de um caminho (ex.: /dev/dsp)."
#endif
#ifdef HAVE_JACK
" \n"
"JACK precisa de portas (ex.: system:playback1\n"
",system:playback_2)."
#endif
#ifdef HAVE_RSOUND
" \n"
"RSound precisa de um endereço IP para \n"
"servidor RSound."
#endif
);
break;
case MENU_LABEL_DISK_EJECT_TOGGLE:
snprintf(s, len,
"Alterna ejeção para discos.\n"
" \n"
"Usado para conteúdos multidiscos.");
break;
case MENU_LABEL_ENABLE_HOTKEY:
snprintf(s, len,
"Ativar outras hotkeys.\n"
" \n"
" Se esta hotkey é usada por teclado, joybutton \n"
"ou joyaxis, todas as outras hotkeys serão \n"
"desativadas a menos que esta hotkey esteja sendo \n"
"usada ao mesmo tempo. \n"
" \n"
"Isso é útil para implementações RETRO_KEYBOARD que \n"
"consultam uma grande área do teclado, cujo caminho \n"
"deve estar livre das hotkeys.");
break;
case MENU_LABEL_REWIND_ENABLE:
snprintf(s, len,
"Ativa retrocesso.\n"
" \n"
"Essa opção causa uma perda de desempenho, \n"
"por isso está desativada por padrão.");
break;
case MENU_LABEL_LIBRETRO_DIR_PATH:
snprintf(s, len,
"Diretórios de Cores. \n"
" \n"
"Um diretório onde são buscadas as \n"
"implementações de cores libretro.");
break;
case MENU_LABEL_VIDEO_REFRESH_RATE_AUTO:
{
/* Work around C89 limitations */
char u[501];
char t[501];
snprintf(u, sizeof(u),
"Taxa de Atualização Automática.\n"
" \n"
"A taxa de atualização exata de nosso monitor (Hz).\n"
"É usada para calcular a taxa de entrada de áudio \n"
"com a fórmula: \n"
" \n"
"audio_input_rate = game input rate * display \n"
"refresh rate / game refresh rate\n"
" \n");
snprintf(t, sizeof(t),
"Se a implementação não informar valores, \n"
"valores NTSC serão assumidos por questão de \n"
"compatibilidade.\n"
" \n"
"Esse valor deve ficar próximo de 60Hz para \n"
"evitar grande mudanças de pitch. Se o monitor \n"
"não rodar a 60Hz, ou algo próximo a isso, desative\n"
"o VSync, e deixe-o com valores padrão.");
strlcat(s, u, len);
strlcat(s, t, len);
}
break;
case MENU_LABEL_VIDEO_ROTATION:
snprintf(s, len,
"Força uma certa rotação da tela. \n"
" \n"
"A rotação é adicionada a outras definidas\n"
"por conjuntos de cores (veja Permitir\n"
"Rotação de Vídeo).");
break;
case MENU_LABEL_VIDEO_SCALE:
snprintf(s, len,
"Resolução de tela cheia.\n"
" \n"
"Resolução 0 usa a resolução \n"
"do ambiente.\n");
break;
case MENU_LABEL_FASTFORWARD_RATIO:
snprintf(s, len,
"Taxa de Avanço Rápido."
" \n"
"A taxa máxima na qual o conteúdo será\n"
"executado ao se usar o Avanço Rápido.\n"
" \n"
" (Ex.: 5.0 para conteúdo 60 fps => 300 fps \n"
"máximo).\n"
" \n"
"RetroArch entra em modo sleep para assegurar \n"
"que a taxa máxima não será excedida.\n"
"Não confie que esse teto tenha exatidão \n"
"perfeita.");
break;
case MENU_LABEL_VIDEO_MONITOR_INDEX:
snprintf(s, len,
"Preferência de monitor.\n"
" \n"
"0 (padrão) significa nenhum monitor é \n"
"preferido, 1 e demais (1 é o primeiro \n"
"monitor), sugere ao RetroArch usar esse \n"
"monitor em particular.");
break;
case MENU_LABEL_VIDEO_CROP_OVERSCAN:
snprintf(s, len,
"Força o descarte de quadros overscanned. \n"
" \n"
"O comportamento exato dessa opção é \n"
"específico da implementação do core.");
break;
case MENU_LABEL_VIDEO_SCALE_INTEGER:
snprintf(s, len,
"Só interpola vídeo em escalas múltiplas \n"
"inteiras da resolução nativa.\n"
" \n"
"O tamanho base depende da geometria e da \n"
"relação de aspecto informadas pelo sistema.\n"
" \n"
"Se Forçar Aspecto não estiver definida, X/Y \n"
"serão escalonados em inteiros independentemente.");
break;
case MENU_LABEL_AUDIO_VOLUME:
snprintf(s, len,
"Volume de Áudio, em dB.\n"
" \n"
" 0 dB é o volume normal. Nenhum ganho aplicado.\n"
"O ganho pode ser controlado em execução com \n"
"Aumentar Volume / Baixar Volume.");
break;
case MENU_LABEL_AUDIO_RATE_CONTROL_DELTA:
snprintf(s, len,
"Controle de taxa de áudio.\n"
" \n"
"Definindo como 0 desativa o controle de taxa.\n"
"Outros valores controlam a variação da taxa \n"
"de áudio.\n"
" \n"
"Define quanto de taxa de entrada pode ser \n"
"regulada dinamicamente.\n"
" \n"
" Taxa de entrada é definida como: \n"
" input rate * (1.0 +/- (rate control delta))");
break;
case MENU_LABEL_AUDIO_MAX_TIMING_SKEW:
snprintf(s, len,
"Distorção de áudio máxima.\n"
" \n"
"Define a máxima variação da taxa de entrada.\n"
"Você pode querer aumentá-la para obter grandes\n"
"variações no compasso, por exemplo, ao rodar\n"
"cores PAL em telas NTSC, ao custo de um pitch\n"
"de áudio inexato.\n"
" \n"
" A taxa de entrada é definida como: \n"
" input rate * (1.0 +/- (max timing skew))");
break;
case MENU_LABEL_OVERLAY_NEXT:
snprintf(s, len,
"Alterna para o próximo overlay.\n"
" \n"
"Navegação circular.");
break;
case MENU_LABEL_LOG_VERBOSITY:
snprintf(s, len,
"Ativa ou desativa nível de prolixidade \n"
"do frontend.");
break;
case MENU_LABEL_VOLUME_UP:
snprintf(s, len,
"Aumenta o volume de áudio.");
break;
case MENU_LABEL_VOLUME_DOWN:
snprintf(s, len,
"Baixa o volume de áudio.");
break;
case MENU_LABEL_VIDEO_DISABLE_COMPOSITION:
snprintf(s, len,
"Desativa composition à força.\n"
"Válido somente para Windows Vista/7 atualmente.");
break;
case MENU_LABEL_PERFCNT_ENABLE:
snprintf(s, len,
"Ativa ou desativa contadores de desempenho \n"
"do frontend.");
break;
case MENU_LABEL_SYSTEM_DIRECTORY:
snprintf(s, len,
"Diretório system. \n"
" \n"
"Define o diretório 'system'.\n"
"Cores podem consultar esse diretório\n"
"para carregar BIOS, configurações\n"
"específicas de sistemas, etc.");
break;
case MENU_LABEL_SAVESTATE_AUTO_SAVE:
snprintf(s, len,
"Automaticamente salva um Savestate ao fechar \n"
"o RetroArch.\n"
" \n"
"RetroArch carregará automaticamente qualquer\n"
"Savestate com esse caminho ao iniciar se 'Carregar\n"
"Savestate Automaticamente' estiver ativado.");
break;
case MENU_LABEL_VIDEO_THREADED:
snprintf(s, len,
"Usa driver de vídeo em thread.\n"
" \n"
"Usando isso pode melhorar o desempenho ao \n"
"possível custo de latência e mais engasgos \n"
"de vídeo.");
break;
case MENU_LABEL_VIDEO_VSYNC:
snprintf(s, len,
"Sincronismo Vertical de vídeo.\n");
break;
case MENU_LABEL_VIDEO_HARD_SYNC:
snprintf(s, len,
"Tenta sincronizar CPU com GPU via \n"
"hardware.\n"
" \n"
"Pode reduzir a latência ao custo de \n"
"desempenho.");
break;
case MENU_LABEL_REWIND_GRANULARITY:
snprintf(s, len,
"Granularidade do retrocesso.\n"
" \n"
" Ao retroceder um número definido de \n"
"quadros, você pode retroceder vários \n"
"quadros por vez, aumentando a velocidade \n"
"de retrocesso.");
break;
case MENU_LABEL_SCREENSHOT:
snprintf(s, len,
"Tira uma foto da tela.");
break;
case MENU_LABEL_VIDEO_FRAME_DELAY:
snprintf(s, len,
"Define quantos milissegundos retardar \n"
"após o VSync antes de executar o core.\n"
"\n"
"Pode reduzir a latência ao custo de\n"
"um maior risco de engasgo de vídeo.\n"
" \n"
"O valor máximo é 15.");
break;
case MENU_LABEL_VIDEO_HARD_SYNC_FRAMES:
snprintf(s, len,
"Define quantos quadros a CPU pode rodar \n"
"adiante da GPU com a opção 'Sincronismo \n"
"de GPU via Hardware' ativada.\n"
" \n"
"O valor máximo é 3.\n"
" \n"
" 0: Sincroniza com GPU de imediato.\n"
" 1: Sincroniza com quadro anterior.\n"
" 2: Etc ...");
break;
case MENU_LABEL_VIDEO_BLACK_FRAME_INSERTION:
snprintf(s, len,
"Insere um quadro preto entre quadros. \n"
" \n"
"Útil para monitores de 120 Hz ao rodar \n"
"material de 60 Hz com eliminação do efeito \n"
"'ghosting'.\n"
" \n"
"A taxa de atualização de vídeo deve ainda \n"
"ser configurada como se fosse um monitor de \n"
"60 Hz (divida a taxa de atualização por 2).");
break;
case MENU_LABEL_RGUI_SHOW_START_SCREEN:
snprintf(s, len,
"Mostra a tela inicial no menu.\n"
"É definida automaticamente como falso quando\n"
"vista pela primeira vez.\n"
" \n"
"É atualizada na configuração apenas quando a\n"
"opção 'Salvar Configuração ao Sair' está ativada.\n");
break;
case MENU_LABEL_CORE_SPECIFIC_CONFIG:
snprintf(s, len,
"Carrega uma configuração específica baseada \n"
"no core que está sendo usado.\n");
break;
case MENU_LABEL_VIDEO_FULLSCREEN:
snprintf(s, len, "Alterna tela cheia.");
break;
case MENU_LABEL_BLOCK_SRAM_OVERWRITE:
snprintf(s, len,
"Previne SRAM de ser sobrescrita ao \n"
"carregar Savestates.\n"
" \n"
"Pode potencialmente levar a jogos bugados.");
break;
case MENU_LABEL_PAUSE_NONACTIVE:
snprintf(s, len,
"Pausa a jogatina quando o foco da janela \n"
"é perdido.");
break;
case MENU_LABEL_VIDEO_GPU_SCREENSHOT:
snprintf(s, len,
"Captura material gráfico de saída da \n"
"GPU se estiver disponível.");
break;
case MENU_LABEL_SCREENSHOT_DIRECTORY:
snprintf(s, len,
"Diretório de Capturas de Tela. \n"
" \n"
"Diretório para guardar as capturas de tela."
);
break;
case MENU_LABEL_VIDEO_SWAP_INTERVAL:
snprintf(s, len,
"Intervalo de Troca de VSync.\n"
" \n"
"Usa um intervalo de troca personalizado. \n"
"Use-e para reduzir à metade a taxa de \n"
"atualização do monitor.");
break;
case MENU_LABEL_SAVEFILE_DIRECTORY:
snprintf(s, len,
"Diretório de Saves. \n"
" \n"
"Salva todos os arquivos de save (*.srm) nesse \n"
"diretório. Isso inclui arquivos relacionados \n"
"como .bsv, .rt, .psrm, etc...\n"
" \n"
"Pode ser sobreposto por opções explícitas de\n"
"linha de comando.");
break;
case MENU_LABEL_SAVESTATE_DIRECTORY:
snprintf(s, len,
"Diretório de Savestates. \n"
" \n"
"Salva todos os Savestates (*.state) nesse \n"
"diretório.\n"
" \n"
"Pode ser sobreposto por opções explícitas de\n"
"linha de comando.");
break;
case MENU_LABEL_ASSETS_DIRECTORY:
snprintf(s, len,
"Diretório de Recursos (Assets). \n"
" \n"
" Essa localização é consultada quando se \n"
"tenta buscar pelo menu recursos (assets) \n"
"carregáveis, etc.");
break;
case MENU_LABEL_DYNAMIC_WALLPAPERS_DIRECTORY:
snprintf(s, len,
"Diretório de Papéis de Parede Dinâmicos. \n"
" \n"
" O lugar para armazenar papéis de parede que \n"
"serão carregados dinamicamente pelo menu \n"
"dependendo do contexto.");
break;
case MENU_LABEL_SLOWMOTION_RATIO:
snprintf(s, len,
"Taxa de câmera lenta."
" \n"
"Quando ativado, o conteúdo rodará em velocidade\n"
"reduzida por um fator.");
break;
case MENU_LABEL_INPUT_AXIS_THRESHOLD:
snprintf(s, len,
"Define o limiar de eixo.\n"
" \n"
"O quanto deve ser torcido um eixo para\n"
"resultar em um botão pressionado.\n"
" Valores possíveis são [0.0, 1.0].");
break;
case MENU_LABEL_INPUT_TURBO_PERIOD:
snprintf(s, len,
"Período de turbo.\n"
" \n"
"Descreve a velocidade na qual se alternam\n"
"os botões com turbo ativado."
);
break;
case MENU_LABEL_INPUT_AUTODETECT_ENABLE:
snprintf(s, len,
"Ativa autodetecção de entrada.\n"
" \n"
"Tentará autoconfigurar joypads \n"
"em um estilo Plug-and-Play.");
break;
case MENU_LABEL_CAMERA_ALLOW:
snprintf(s, len,
"Autorizar ou desautorizar o acesso da câmera \n"
"pelos cores.");
break;
case MENU_LABEL_LOCATION_ALLOW:
snprintf(s, len,
"Autorizar ou desautorizar o acesso de \n"
"serviços de localização pelos cores.");
break;
case MENU_LABEL_TURBO:
snprintf(s, len,
"Ativar turbo.\n"
" \n"
"Segurando o turbo enquanto se pressiona outro \n"
"botão permitirá que o botão entre em modo \n"
"turbo em que o seu estado será modulado com \n"
"um sinal periódico. \n"
" \n"
"A modulação pára quando o próprio botão \n"
"(não é o botão de turbo) é solto.");
break;
case MENU_LABEL_OSK_ENABLE:
snprintf(s, len,
"Ativar/desativar teclado na tela.");
break;
case MENU_LABEL_AUDIO_MUTE:
snprintf(s, len,
"Ligar/desligar áudio.");
break;
case MENU_LABEL_REWIND:
snprintf(s, len,
"Segure o botão para retroceder.\n"
" \n"
"Retrocesso deve estar ativado.");
break;
case MENU_LABEL_EXIT_EMULATOR:
snprintf(s, len,
"Tecla para sair corretamente do RetroArch."
#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE)
"\nFechando-o de outra forma mais agressiva \n"
"(SIGKILL, etc) sairá sem salvar RAM, etc.\n"
"Em sistemas baseados em Unix,\n"
"SIGINT/SIGTERM permite um\n"
"fechamento correto."
#endif
);
break;
case MENU_LABEL_LOAD_STATE:
snprintf(s, len,
"Carrega Savestates.");
break;
case MENU_LABEL_SAVE_STATE:
snprintf(s, len,
"Salva Savestates.");
break;
case MENU_LABEL_NETPLAY_FLIP_PLAYERS:
snprintf(s, len,
"Netplay inverte usuários.");
break;
case MENU_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len,
"Incrementa o índice de cheats.\n");
break;
case MENU_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len,
"Decrementa o índice de cheats.\n");
break;
case MENU_LABEL_SHADER_PREV:
snprintf(s, len,
"Aplica o shader anterior no diretório.");
break;
case MENU_LABEL_SHADER_NEXT:
snprintf(s, len,
"Aplica o próximo shader no diretório.");
break;
case MENU_LABEL_RESET:
snprintf(s, len,
"Reinicia o conteúdo.\n");
break;
case MENU_LABEL_PAUSE_TOGGLE:
snprintf(s, len,
"Alterna estado de pausado e não pausado.");
break;
case MENU_LABEL_CHEAT_TOGGLE:
snprintf(s, len,
"Alterna índice de cheats.\n");
break;
case MENU_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len,
"Segure para avanço rápido. Soltando o botão \n"
"desativa o avanço rápido.");
break;
case MENU_LABEL_SLOWMOTION:
snprintf(s, len,
"Segure para câmera lenta.");
break;
case MENU_LABEL_FRAME_ADVANCE:
snprintf(s, len,
"O quadro avança quando o conteúdo está pausado.");
break;
case MENU_LABEL_MOVIE_RECORD_TOGGLE:
snprintf(s, len,
"Alterna entre estar gravando ou não.");
break;
case MENU_LABEL_L_X_PLUS:
case MENU_LABEL_L_X_MINUS:
case MENU_LABEL_L_Y_PLUS:
case MENU_LABEL_L_Y_MINUS:
case MENU_LABEL_R_X_PLUS:
case MENU_LABEL_R_X_MINUS:
case MENU_LABEL_R_Y_PLUS:
case MENU_LABEL_R_Y_MINUS:
snprintf(s, len,
"Eixo para o analógico (esquema DualShock).\n"
" \n"
"Associa normalmente, porém, se um analógico real \n"
"é associado, pode ser lido como um analógico\n"
"verdadeiro. \n"
" \n"
"Eixo positivo X é para direita. \n"
"Eixo positivo Y é para baixo.");
break;
default:
if (s[0] == '\0')
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_INFORMATION_AVAILABLE), len);
return -1;
}
return 0;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,120 +0,0 @@
#!/usr/bin/env python
# coding=UTF-8
# RetroArch - A frontend for libretro.
# Copyright (C) 2011-2016 - Daniel De Matteis
#
# RetroArch is free software: you can redistribute it and/or modify it under the terms
# of the GNU General Public License as published by the Free Software Found-
# ation, either version 3 of the License, or (at your option) any later version.
#
# RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
# without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along with RetroArch.
# If not, see <http://www.gnu.org/licenses/>.
# You probably don't need this script. It's only needed to update menu_hash_uspseudo.c,
# and that's not necessary either, because outdated translations fall back to English.
# Usage: ./pseudolocalize.py < menu_hash_us.c > menu_hash_uspseudo.c
replacements = {
# These characters all exist in ISO-8859-1.
#" ": "´¨¯¸",
"!": "¡",
"?": "¿",
"a": "áàâåäã",
"A": "ÁÀÂÅÄÃ",
"c": "ç",
"C": "Ç",
"D": "Ð",
"e": "éèêë",
"E": "ÉÈÊË",
"i": "íìîï",
"I": "ÍÌÎÏ",
"n": "ñ",
"N": "Ñ",
"o": "óòôöõø",
"O": "ÓÒÔÖÕØ",
"u": "úùûü",
"U": "ÚÙÛÜ",
"y": "ýÿ",
"Y": "Ý",
}
import sys,random
if sys.version_info >= (3, 0):
import io
sys.stdin = io.TextIOWrapper(sys.stdin.buffer, encoding='ISO-8859-1')
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='ISO-8859-1')
else:
import codecs
sys.stdin = codecs.getreader('ISO-8859-1')(sys.stdin)
sys.stdout = codecs.getwriter('UTF-8')(sys.stdout)
nreplacements = {}
for k in replacements:
nreplacements[k] = replacements[k].decode("UTF-8")
replacements = nreplacements
def pseudolocalize(string):
ret = ""
it = iter(string)
for ch in it:
if ch == '\\' or ch == '%':
ret += ch
ret += next(it)
continue
try:
if random.randint(0,2) == 0:
cand = replacements[ch]
ret += random.choice(cand)
else:
ret += ch
except KeyError:
ret += ch
return ret
def pseudolocalize_code(string):
if '"' not in string: return string
if '"null"' in string: return string
if '"Main Menu"' in string: return string # RetroArch bug, this string can't be translated.
parts = string.split('"')
parts[1] = pseudolocalize(parts[1])
return '"'.join(parts);
print("/* Autogenerated, do not edit. Your changes will be undone. */")
localize = False
for line in sys.stdin:
line = line.strip("\n")
if 'force_iso_8859_1' in line: # nuke this because we're UTF-8 now
continue
elif 'menu_hash_to_str_' in line or 'menu_hash_get_help_' in line:
#line = line.replace("_us", "_pseudo")
if '_label' not in line: localize = True
if localize:
line = pseudolocalize_code(line)
print(line)
# look for const char *menu_hash_to_str_us(uint32_t hash) and add a 'pseudo'
for line in sys.stdin:
line = line.strip("\n")
if 'menu_hash_to_str' in line:
print(line.replace("(", "pseudo("))
break
print(line)
# screw with all strings in the rest of the file
# and add 'pseudo' to int menu_hash_get_help_us(uint32_t hash, char *s, size_t len)
for line in sys.stdin:
line = line.strip("\n")
if 'force_iso_8859_1' in line: pass
elif 'menu_hash_get_help' in line:
print(line.replace("(", "pseudo("))
else:
print(pseudolocalize_code(line))

View File

@ -18,7 +18,6 @@
#include <lists/string_list.h> #include <lists/string_list.h>
#include "menu_driver.h" #include "menu_driver.h"
#include "menu_hash.h"
#include "menu_cbs.h" #include "menu_cbs.h"
#include "../verbosity.h" #include "../verbosity.h"

View File

@ -21,7 +21,6 @@
#include <boolean.h> #include <boolean.h>
#include "menu_entries.h" #include "menu_entries.h"
#include "menu_hash.h"
enum enum
{ {

View File

@ -22,7 +22,6 @@
#include "menu_content.h" #include "menu_content.h"
#include "menu_driver.h" #include "menu_driver.h"
#include "menu_display.h" #include "menu_display.h"
#include "menu_hash.h"
#include "menu_shader.h" #include "menu_shader.h"
#include "../core_info.h" #include "../core_info.h"

View File

@ -25,7 +25,6 @@
#include "menu_driver.h" #include "menu_driver.h"
#include "menu_navigation.h" #include "menu_navigation.h"
#include "menu_hash.h"
#ifdef HAVE_LIBRETRODB #ifdef HAVE_LIBRETRODB
#include "../database_info.h" #include "../database_info.h"

View File

@ -22,7 +22,6 @@
#include <retro_common_api.h> #include <retro_common_api.h>
#include <lists/file_list.h> #include <lists/file_list.h>
#include "menu_hash.h"
#include "../msg_hash.h" #include "../msg_hash.h"
#ifndef COLLECTION_SIZE #ifndef COLLECTION_SIZE

View File

@ -24,7 +24,6 @@
#include "menu_cbs.h" #include "menu_cbs.h"
#include "menu_display.h" #include "menu_display.h"
#include "menu_navigation.h" #include "menu_navigation.h"
#include "menu_hash.h"
#include "menu_shader.h" #include "menu_shader.h"
#include "../content.h" #include "../content.h"

View File

@ -21,7 +21,6 @@
#include "menu_driver.h" #include "menu_driver.h"
#include "menu_cbs.h" #include "menu_cbs.h"
#include "menu_hash.h"
#include "menu_navigation.h" #include "menu_navigation.h"
#include "../general.h" #include "../general.h"

View File

@ -1,70 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <string.h>
#include <rhash.h>
#include <string/stdstring.h>
#include "menu_hash.h"
#include "../configuration.h"
int menu_hash_get_help(uint32_t hash, char *s, size_t len)
{
int ret = -1;
settings_t *settings = config_get_ptr();
if (!settings)
return -1;
#ifdef HAVE_LANGEXTRA
switch (settings->user_language)
{
case RETRO_LANGUAGE_FRENCH:
ret = menu_hash_get_help_fr(hash, s, len);
break;
case RETRO_LANGUAGE_GERMAN:
ret = menu_hash_get_help_de(hash, s, len);
break;
case RETRO_LANGUAGE_SPANISH:
ret = menu_hash_get_help_es(hash, s, len);
break;
case RETRO_LANGUAGE_ITALIAN:
ret = menu_hash_get_help_it(hash, s, len);
break;
case RETRO_LANGUAGE_PORTUGUESE:
ret = menu_hash_get_help_pt(hash, s, len);
break;
case RETRO_LANGUAGE_DUTCH:
ret = menu_hash_get_help_nl(hash, s, len);
break;
case RETRO_LANGUAGE_ESPERANTO:
ret = menu_hash_get_help_eo(hash, s, len);
break;
case RETRO_LANGUAGE_POLISH:
ret = menu_hash_get_help_pl(hash, s, len);
break;
default:
break;
}
#endif
if (ret == 0)
return ret;
return menu_hash_get_help_us(hash, s, len);
}

View File

@ -1,492 +0,0 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2016 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef MENU_HASH_H__
#define MENU_HASH_H__
#include <retro_common_api.h>
RETRO_BEGIN_DECLS
/* Callback strings */
#define CB_CORE_UPDATER_DOWNLOAD 0x7412da7dU
#define CB_UPDATE_ASSETS 0xbf85795eU
/* Deferred */
#define MENU_LABEL_DEFERRED_THUMBNAILS_UPDATER_LIST 0x364dfa2bU
#define MENU_LABEL_DEFERRED_VIDEO_FILTER 0x966ad201U
#define MENU_LABEL_DEFERRED_CORE_LIST_SET 0xa6d5fdb4U
#define MENU_LABEL_DEFERRED_DATABASE_MANAGER_LIST 0x7c0b704fU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST 0x45446638U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_DEVELOPER 0xcbd89be5U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_PUBLISHER 0x125e594dU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ORIGIN 0x4ebaa767U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_FRANCHISE 0x77f9eff2U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_EDGE_MAGAZINE_RATING 0x1c7f8a43U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_EDGE_MAGAZINE_ISSUE 0xaaeebde7U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_FAMITSU_MAGAZINE_RATING 0xbf7ff5e7U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ENHANCEMENT_HW 0x9866bda3U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_RELEASEMONTH 0x2b36ce66U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_RELEASEYEAR 0x9c7c6e91U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ESRB_RATING 0x68eba20fU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ELSPA_RATING 0x8bf6ab18U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_PEGI_RATING 0x5fc77328U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_CERO_RATING 0x24f6172cU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_BBFC_RATING 0x0a8e67f0U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_MAX_USERS 0xbfcba816U
#define MENU_LABEL_DEFERRED_RDB_ENTRY_DETAIL 0xc35416c0U
#define MENU_LABEL_DEFERRED_RPL_ENTRY_ACTIONS 0x358a7494U
#define MENU_LABEL_DEFERRED_CORE_LIST 0xf157d289U
#define MENU_LABEL_DEFERRED_CORE_UPDATER_LIST 0xc315f682U
#define MENU_LABEL_DEFERRED_DRIVER_SETTINGS_LIST 0xaa5efefcU
#define MENU_LABEL_DEFERRED_VIDEO_SETTINGS_LIST 0x83c65827U
#define MENU_LABEL_DEFERRED_AUDIO_SETTINGS_LIST 0x5bba25e2U
#define MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST 0x9518e0c7U
#define MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST 0x050bec60U
#define MENU_LABEL_DEFERRED_USER_BINDS_LIST 0x28c5750eU
#define MENU_LABEL_DEFERRED_ACCOUNTS_CHEEVOS_LIST 0x1322324cU
#define MENU_LABEL_DEFERRED_ACCOUNTS_LIST 0x3d2b8860U
#define MENU_LABEL_DEFERRED_ARCHIVE_ACTION_DETECT_CORE 0xdc9c0064U
#define MENU_LABEL_DEFERRED_ARCHIVE_ACTION 0x7faf0284U
#define MENU_LABEL_DEFERRED_ARCHIVE_OPEN_DETECT_CORE 0xd9452498U
#define MENU_LABEL_DEFERRED_ARCHIVE_OPEN 0xfa0938b8U
#define MENU_LABEL_DEFERRED_CORE_CONTENT_LIST 0x76150c63U
#define MENU_LABEL_DEFERRED_LAKKA_LIST 0x3db437c4U
#define MENU_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST 0x10b41d97U
/* Cheevos settings */
#define MENU_LABEL_CHEEVOS_DESCRIPTION 0x7e00e0f5U
/* Playlist settings */
#define MENU_LABEL_PLAYLIST_SETTINGS_BEGIN 0x80a8d2cbU
/* Accounts settings */
#define MENU_LABEL_ACCOUNTS_CHEEVOS_PASSWORD 0x45cf62e3U
#define MENU_LABEL_ACCOUNTS_CHEEVOS_USERNAME 0x2bf153f0U
#define MENU_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS 0xe6b7c16cU
#define MENU_LABEL_ACCOUNTS_LIST 0x774c15a0U
#define MENU_LABEL_VALUE_ACCOUNTS_LIST_END 0x3d559522U
#define MENU_LABEL_DOWNLOADED_FILE_DETECT_CORE_LIST 0xb4f82700U
/* Scan values */
#define MENU_LABEL_SCAN_THIS_DIRECTORY 0x6921b775U
#define MENU_LABEL_SCAN_DIRECTORY 0x57de303eU
#define MENU_LABEL_SCAN_FILE 0xd5d1eee9U
/* Online updater settings */
#define MENU_LABEL_UPDATE_LAKKA 0x19b51eebU
/* Information settings */
#define MENU_LABEL_INFORMATION_LIST 0x225e7606U
#define MENU_LABEL_SYSTEM_INFORMATION 0x206ebf0fU
#define MENU_LABEL_NETWORK_INFORMATION 0x73ae3cb4U
#define MENU_LABEL_DEBUG_INFORMATION 0xeb0d82b1U
#define MENU_LABEL_CONTENT_SETTINGS 0xe789f7f6U
#define MENU_LABEL_RESET 0x10474288U
#define MENU_LABEL_ARCHIVE_MODE 0x7fac00cbU
#define MENU_LABEL_USE_THIS_DIRECTORY 0xc51d351dU
#define MENU_LABEL_SAVE_STATE 0x3a4849b5U
#define MENU_LABEL_LOAD_STATE 0xa39eb286U
#define MENU_LABEL_REWIND 0x1931d5aeU
#define MENU_LABEL_SHADER_NEXT 0x54d359baU
#define MENU_LABEL_SHADER_PREV 0x54d4a758U
#define MENU_LABEL_FRAME_ADVANCE 0xd80302a1U
#define MENU_LABEL_MOVIE_RECORD_TOGGLE 0xa2d2ff04U
#define MENU_LABEL_L_X_PLUS 0xd7370d4bU
#define MENU_LABEL_L_X_MINUS 0xbde0aaf3U
#define MENU_LABEL_L_Y_PLUS 0xd98c35ecU
#define MENU_LABEL_L_Y_MINUS 0x0adae7b4U
#define MENU_LABEL_R_X_PLUS 0x60c20a91U
#define MENU_LABEL_R_X_MINUS 0x78cb50f9U
#define MENU_LABEL_R_Y_MINUS 0xc5c58dbaU
#define MENU_LABEL_R_Y_PLUS 0x63173332U
#define MENU_LABEL_BLOCK_SRAM_OVERWRITE 0xc4e88d08U
#define MENU_LABEL_CORE_SPECIFIC_CONFIG 0x3c9a55e8U
#define MENU_LABEL_GAME_SPECIFIC_OPTIONS 0x142ec90fU
#define MENU_LABEL_SCREENSHOT 0x9a37f083U
#define MENU_LABEL_SCREEN_RESOLUTION 0x5c9b3a58U
/* Menu settings */
#define MENU_LABEL_THUMBNAILS 0x0a3ec67cU
#define MENU_LABEL_SAVESTATE_AUTO_SAVE 0xf6f4a05bU
#define MENU_LABEL_SAVESTATE_AUTO_LOAD 0xf6f1028cU
#define MENU_LABEL_SAVESTATE_AUTO_INDEX 0xd4da8b84U
#define MENU_LABEL_XMB_FONT 0x0ECA56CA2
#define MENU_LABEL_XMB_THEME 0x824c5a7eU
#define MENU_LABEL_XMB_GRADIENT 0x18e63099U
#define MENU_LABEL_XMB_RIBBON_ENABLE 0x8e89c3edU
#define MENU_LABEL_PERFCNT_ENABLE 0x6823dbddU
/* Video settings */
#define MENU_LABEL_VIDEO_FONT_PATH 0xd0de729eU
#define MENU_LABEL_VIDEO_VI_WIDTH 0x6e4a6d3aU
#define MENU_LABEL_VIDEO_VFILTER 0x664f8397U
#define MENU_LABEL_VIDEO_GAMMA 0x08a951beU
#define MENU_LABEL_VIDEO_SHADER_PRESET_SAVE_AS 0x3d6e5ce5U
#define MENU_LABEL_VIDEO_SHADER_DEFAULT_FILTER 0x4468cb1bU
#define MENU_LABEL_VIDEO_SHADER_FILTER_PASS 0x1906c38dU
#define MENU_LABEL_VIDEO_SHADER_SCALE_PASS 0x18f7b82fU
#define MENU_LABEL_VIDEO_SHADER_NUM_PASSES 0x79b2992fU
#define MENU_LABEL_VIDEO_SHADER_PARAMETERS 0x9895c3e5U
#define MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS 0xd18158d7U
#define MENU_LABEL_VIDEO_SHADER_PASS 0x4fa31028U
#define MENU_LABEL_VIDEO_SHADER_PRESET 0xc5d3bae4U
/* Netplay settings */
#define MENU_LABEL_NETPLAY_FLIP_PLAYERS 0x801425abU
/* Input settings */
#define MENU_LABEL_INPUT_OVERLAY 0x24e24796U
#define MENU_LABEL_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE 0x3665cbb0U
#define MENU_LABEL_INPUT_HOTKEY_BINDS_BEGIN 0x5a56139bU
#define MENU_LABEL_INPUT_SMALL_KEYBOARD_ENABLE 0xe6736fc3U
#define MENU_LABEL_INPUT_ICADE_ENABLE 0xcd534dd0U
#define MENU_LABEL_INPUT_AUTODETECT_ENABLE 0xb1e07facU
#define MENU_LABEL_INPUT_DUTY_CYCLE 0xec787129U
#define MENU_LABEL_INPUT_BIND_DEVICE_ID 0xd1ea94ecU
#define MENU_LABEL_INPUT_BIND_DEVICE_TYPE 0xf6e9f041U
#define MENU_LABEL_INPUT_AXIS_THRESHOLD 0xe95c2095U
#define MENU_LABEL_INPUT_OSK_OVERLAY 0x11f1c582U
/* Record settings */
#define MENU_LABEL_RECORD_USE_OUTPUT_DIRECTORY 0x8343eff4U
#define MENU_LABEL_RECORD_CONFIG 0x11c3daf9U
#define MENU_LABEL_RECORD_PATH 0x016d7afaU
#define MENU_LABEL_RECORD_ENABLE 0x1654e22aU
/* Cheat options */
#define MENU_LABEL_CHEAT_DATABASE_PATH 0x01388b8aU
#define MENU_LABEL_CHEAT_FILE_LOAD 0x57336148U
#define MENU_LABEL_CHEAT_INDEX_MINUS 0x57f58b6cU
#define MENU_LABEL_CHEAT_INDEX_PLUS 0x678542a4U
#define MENU_LABEL_CHEAT_TOGGLE 0xe515e0cbU
#define MENU_LABEL_CHEAT_FILE_SAVE_AS 0x1f58dccaU
#define MENU_LABEL_CHEAT_APPLY_CHANGES 0xde88aa27U
/* Disk settings */
#define MENU_LABEL_DISK_EJECT_TOGGLE 0x49633fbbU
#define MENU_LABEL_DISK_NEXT 0xeeaf6c6eU
#define MENU_LABEL_DISK_CYCLE_TRAY_STATUS 0x3035cdc1U
#define MENU_LABEL_DISK_INDEX 0x6c14bf54U
#define MENU_LABEL_DISK_OPTIONS 0xc61ab5fbU
#define MENU_LABEL_DISK_IMAGE_APPEND 0x5af7d709U
/* Menu settings */
#define MENU_LABEL_MENU_TOGGLE 0xfb22e3dbU
#define MENU_LABEL_MENU_WALLPAPER 0x3b84de01U
#define MENU_LABEL_MENU_LINEAR_FILTER 0x5fe9128cU
#define MENU_LABEL_MENU_THROTTLE_FRAMERATE 0x9a8681c5U
#define MENU_LABEL_MENU_SETTINGS 0x61e4544bU
#define MENU_LABEL_ENABLE_HOTKEY 0xc04037bfU
#define MENU_LABEL_GRAB_MOUSE_TOGGLE 0xb2869aaaU
#define MENU_LABEL_STATE_SLOT_DECREASE 0xe48b8082U
#define MENU_LABEL_STATE_SLOT_INCREASE 0x36a0cbb0U
/* Libretro settings */
#define MENU_LABEL_LIBRETRO_LOG_LEVEL 0x57971ac0U
/* Directory settings */
#define MENU_LABEL_CURSOR_DIRECTORY 0xdee8d377U
#define MENU_LABEL_OSK_OVERLAY_DIRECTORY 0xcce86287U
#define MENU_LABEL_JOYPAD_AUTOCONFIG_DIR 0x2f4822d8U
#define MENU_LABEL_RECORDING_OUTPUT_DIRECTORY 0x30bece06U
#define MENU_LABEL_RECORDING_CONFIG_DIRECTORY 0x3c3f274bU
#define MENU_LABEL_LIBRETRO_DIR_PATH 0x1af1eb72U
#define MENU_LABEL_AUDIO_FILTER_DIR 0x4bd96ebaU
#define MENU_LABEL_VIDEO_SHADER_DIR 0x30f53b10U
#define MENU_LABEL_VIDEO_FILTER_DIR 0x67603f1fU
#define MENU_LABEL_SCREENSHOT_DIRECTORY 0x552612d7U
#define MENU_LABEL_SYSTEM_DIRECTORY 0x35a6fb9eU
#define MENU_LABEL_INPUT_REMAPPING_DIRECTORY 0x5233c20bU
#define MENU_LABEL_OVERLAY_DIRECTORY 0xc4ed3d1bU
#define MENU_LABEL_SAVEFILE_DIRECTORY 0x92773488U
#define MENU_LABEL_SAVESTATE_DIRECTORY 0x90551289U
#define MENU_LABEL_DYNAMIC_WALLPAPERS_DIRECTORY 0x62f975b8U
#define MENU_LABEL_THUMBNAILS_DIRECTORY 0xdea77410U
#define MENU_LABEL_RGUI_BROWSER_DIRECTORY 0xa86cba73U
#define MENU_LABEL_CONTENT_DATABASE_DIRECTORY 0x6b443f80U
#define MENU_LABEL_PLAYLIST_DIRECTORY 0x6361820bU
#define MENU_LABEL_CORE_ASSETS_DIRECTORY 0x8ba5ee54U
#define MENU_LABEL_CONTENT_DIRECTORY 0x7738dc14U
#define MENU_LABEL_RGUI_CONFIG_DIRECTORY 0x0cb3e005U
#define MENU_LABEL_ASSETS_DIRECTORY 0xde1ae8ecU
#define MENU_LABEL_CACHE_DIRECTORY 0x851dfb8dU
/* RDB settings */
#define MENU_LABEL_NO_PLAYLIST_ENTRIES_AVAILABLE 0x8888c5acU
#define MENU_LABEL_RDB_ENTRY_START_CONTENT 0x95025a55U
#define MENU_LABEL_RDB_ENTRY_PUBLISHER 0x4d7bcdfbU
#define MENU_LABEL_RDB_ENTRY_DEVELOPER 0x06f61093U
#define MENU_LABEL_RDB_ENTRY_ORIGIN 0xb176aad5U
#define MENU_LABEL_RDB_ENTRY_FRANCHISE 0xb31764a0U
#define MENU_LABEL_RDB_ENTRY_ENHANCEMENT_HW 0x79ee4f11U
#define MENU_LABEL_RDB_ENTRY_ESRB_RATING 0xe138fa3dU
#define MENU_LABEL_RDB_ENTRY_BBFC_RATING 0x82dbc01eU
#define MENU_LABEL_RDB_ENTRY_ELSPA_RATING 0x0def0906U
#define MENU_LABEL_RDB_ENTRY_PEGI_RATING 0xd814cb56U
#define MENU_LABEL_RDB_ENTRY_CERO_RATING 0x9d436f5aU
#define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_RATING 0x9735f631U
#define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_ISSUE 0xd5706415U
#define MENU_LABEL_RDB_ENTRY_FAMITSU_MAGAZINE_RATING 0x01a50315U
#define MENU_LABEL_RDB_ENTRY_RELEASE_MONTH 0xad2f2c54U
#define MENU_LABEL_RDB_ENTRY_RELEASE_YEAR 0x14c9c6bfU
#define MENU_LABEL_RDB_ENTRY_MAX_USERS 0xfae91cc4U
#define MENU_LABEL_DETECT_CORE_LIST 0xaa07c341U
#define MENU_LABEL_DETECT_CORE_LIST_OK 0xabba2a7aU
#define MENU_LABEL_CLOSE_CONTENT 0x4b622170U
#define MENU_LABEL_CORE_LIST 0xa22bb14dU
#define MENU_LABEL_MANAGEMENT 0x2516c88aU
#define MENU_LABEL_FRONTEND_COUNTERS 0xe5696877U
#define MENU_LABEL_CORE_COUNTERS 0x64cc83e0U
#define MENU_LABEL_ACHIEVEMENT_LIST 0x7b90fc49U
#define MENU_LABEL_CORE_INFORMATION 0xb638e0d3U
#define MENU_LABEL_CORE_OPTIONS 0xf65e60f9U
#define MENU_LABEL_SHADER_OPTIONS 0x1f7d2fc7U
#define MENU_LABEL_CORE_CHEAT_OPTIONS 0x9293171dU
#define MENU_LABEL_CORE_INPUT_REMAPPING_OPTIONS 0x7836a8caU
#define MENU_LABEL_DATABASE_MANAGER_LIST 0x7f853d8fU
#define MENU_LABEL_CURSOR_MANAGER_LIST 0xa969e378U
#define MENU_LABEL_REMAP_FILE_LOAD 0x9c2799b8U
#define MENU_LABEL_INFO_SCREEN 0xd97853d0U
#define MENU_LABEL_CUSTOM_RATIO 0xf038731eU
#define MENU_LABEL_PAL60_ENABLE 0x62bc416eU
#define MENU_LABEL_CONTENT_HISTORY_PATH 0x6f22fb9dU
#define MENU_LABEL_RECORDING_SETTINGS 0x1a80b313U
#define MENU_LABEL_ONSCREEN_KEYBOARD_OVERLAY_SETTINGS 0xa6de9ba6U
#define MENU_LABEL_PLAYLIST_SETTINGS 0xdb3e0e07U
#define MENU_LABEL_ARCHIVE_SETTINGS 0x78e85398U
#define MENU_LABEL_DIRECTORY_SETTINGS 0xb817bd2bU
#define MENU_LABEL_SHADER_APPLY_CHANGES 0x4f7306b9U
#define MENU_LABEL_ONSCREEN_DISPLAY_SETTINGS 0x67571029U
#define MENU_LABEL_CUSTOM_BIND 0x1e84b3fcU
#define MENU_LABEL_CUSTOM_BIND_ALL 0x79ac14f4U
#define MENU_LABEL_CUSTOM_BIND_DEFAULTS 0xe88f7b13U
#define MENU_LABEL_CONFIGURATIONS 0x3e930a50U
#define MENU_LABEL_REMAP_FILE_SAVE_CORE 0x7c9d4c8fU
#define MENU_LABEL_REMAP_FILE_SAVE_GAME 0x7c9f41e0U
#define MENU_LABEL_CONTENT_COLLECTION_LIST 0x32d1df83U
#define MENU_LABEL_OSK_ENABLE 0x8e208498U
#define MENU_LABEL_EXIT_EMULATOR 0x86d5d467U
#define MENU_LABEL_COLLECTION 0x5fea5991U
#define MENU_LABEL_OPEN_ARCHIVE 0x78c0ca58U
#define MENU_LABEL_OPEN_ARCHIVE_DETECT_CORE 0x92442638U
#define MENU_LABEL_LOAD_ARCHIVE_DETECT_CORE 0x681f2f46U
#define MENU_LABEL_LOAD_ARCHIVE 0xc3834e66U
/* Help */
#define MENU_LABEL_REWIND_ENABLE 0x9761e074U
#define MENU_LABEL_REWIND_GRANULARITY 0xe859cbdfU
#define MENU_LABEL_LIBRETRO_INFO_PATH 0xe552b25fU
#define MENU_LABEL_AUTOSAVE_INTERVAL 0xecc87351U
#define MENU_LABEL_CONFIG_SAVE_ON_EXIT 0x79b590feU
#define MENU_LABEL_CAMERA_ALLOW 0xc14d302cU
#define MENU_LABEL_LOCATION_ALLOW 0xf089275cU
#define MENU_LABEL_OVERLAY_NEXT 0x7a459145U
#define MENU_LABEL_INPUT_DRIVER 0x4c087840U
#define MENU_LABEL_INPUT_DRIVER_LINUXRAW 0xc33c6b9fU
#define MENU_LABEL_INPUT_DRIVER_UDEV 0x7c9eeeb9U
#define MENU_LABEL_AUDIO_MUTE 0xe0ca1151U
#define MENU_LABEL_AUDIO_DSP_PLUGIN 0x4a69572bU
#define MENU_LABEL_AUDIO_MAX_TIMING_SKEW 0x4c96f75cU
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER 0xedcba9ecU
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC 0x7c9dec52U
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC 0x0059732bU
#define MENU_LABEL_VIDEO_DRIVER 0x1805a5e7U
#define MENU_LABEL_VIDEO_DRIVER_GL 0x005977f8U
#define MENU_LABEL_VIDEO_DRIVER_SDL2 0x7c9dd69aU
#define MENU_LABEL_VIDEO_DRIVER_SDL1 0x0b88a968U
#define MENU_LABEL_VIDEO_DRIVER_D3D 0x0b886340U
#define MENU_LABEL_VIDEO_DRIVER_EXYNOS 0xfc37c54bU
#define MENU_LABEL_VIDEO_DRIVER_SUNXI 0x10620e3cU
#define MENU_LABEL_VIDEO_ROTATION 0x4ce6882bU
#define MENU_LABEL_VIDEO_SCALE 0x09835d63U
#define MENU_LABEL_VIDEO_CROP_OVERSCAN 0x861f7a2fU
#define MENU_LABEL_VIDEO_SCALE_INTEGER 0x65c4b090U
#define MENU_LABEL_VIDEO_VSYNC 0x09c2d34eU
#define MENU_LABEL_VIDEO_BLACK_FRAME_INSERTION 0x53477f5cU
#define MENU_LABEL_VIDEO_HARD_SYNC_FRAMES 0xce0ece13U
#define MENU_LABEL_VIDEO_FRAME_DELAY 0xd4aa9df4U
#define MENU_LABEL_VIDEO_FULLSCREEN 0x9506dd4eU
#define MENU_LABEL_VIDEO_SWAP_INTERVAL 0x5673ff9aU
#define MENU_LABEL_VIDEO_GPU_SCREENSHOT 0xee2fcb44U
#define MENU_LABEL_VIDEO_FILTER 0x1c0eb741U
#define MENU_LABEL_VIDEO_REFRESH_RATE_AUTO 0x9addb6cdU
#define MENU_LABEL_VIDEO_THREADED 0x0626179cU
#define MENU_LABEL_VIDEO_MONITOR_INDEX 0xb6fcdc9aU
#define MENU_LABEL_VIDEO_HARD_SYNC 0xdcd623b6U
#define MENU_LABEL_RGUI_SHOW_START_SCREEN 0x6b38f0e8U
#define MENU_LABEL_PAUSE_NONACTIVE 0x580bf549U
#define MENU_LABEL_AUDIO_DEVICE 0x2574eac6U
#define MENU_LABEL_AUDIO_VOLUME 0x502173aeU
#define MENU_LABEL_AUDIO_RATE_CONTROL_DELTA 0xc8bde3cbU
#define MENU_LABEL_SLOWMOTION_RATIO 0x626b3ffeU
#define MENU_LABEL_FASTFORWARD_RATIO 0x3a0c2706U
#define MENU_LABEL_INPUT_TURBO_PERIOD 0xf7a97482U
#define MENU_LABEL_LOG_VERBOSITY 0x6648c96dU
#define MENU_LABEL_SLOWMOTION 0x6a269ea0U
#define MENU_LABEL_HOLD_FAST_FORWARD 0xebe2e4cdU
#define MENU_LABEL_PAUSE_TOGGLE 0x557634e4U
#define MENU_LABEL_WELCOME_TO_RETROARCH 0xbcff0b3cU
#define MENU_LABEL_HELP_CONTROLS 0x04859221U
#define MENU_LABEL_HELP_LIST 0x006af669U
#define MENU_LABEL_HELP_WHAT_IS_A_CORE 0x83fcbc44U
#define MENU_LABEL_HELP_LOADING_CONTENT 0x231d8245U
#define MENU_LABEL_HELP_SCANNING_CONTENT 0x1dec52b8U
#define MENU_LABEL_HELP_CHANGE_VIRTUAL_GAMEPAD 0x6e66ef07U
#define MENU_LABEL_HELP_AUDIO_VIDEO_TROUBLESHOOTING 0xd44d395cU
#define MENU_LABEL_TURBO 0x107434f1U
#define MENU_LABEL_VOLUME_UP 0xa66e9681U
#define MENU_LABEL_VOLUME_DOWN 0xfc64f3d4U
#define MENU_LABEL_VALUE_EXTRACTING_PLEASE_WAIT 0xec5a348bU
#define MENU_LABEL_VIDEO_DISABLE_COMPOSITION 0x5cbb6222U
#define MENU_LABEL_VALUE_MENU_CONTROLS_PROLOG 0x72674cdfU
#define MENU_LABEL_VALUE_HELP_WHAT_IS_A_CORE 0xf3b0f77eU
#define MENU_LABEL_VALUE_HELP_LOADING_CONTENT 0x70bab027U
#define MENU_LABEL_VALUE_HELP_LIST 0x6c57426aU
#define MENU_LABEL_VALUE_HELP_CONTROLS 0xe5c9f6a2U
#define MENU_LABEL_VALUE_WHAT_IS_A_CORE_DESC 0xc832957eU
#define MENU_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD 0x27ed0204U
#define MENU_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD_DESC 0x9d0e79dbU
#define MENU_LABEL_VALUE_HELP_AUDIO_VIDEO_TROUBLESHOOTING 0xd0e5c3ffU
#define MENU_LABEL_VALUE_HELP_AUDIO_VIDEO_TROUBLESHOOTING_DESC 0x60031d7aU
#define MENU_LABEL_VALUE_HELP_SCANNING_CONTENT 0x74b36f11U
#define MENU_LABEL_VALUE_HELP_SCANNING_CONTENT_DESC 0xac947056U
/* Main menu */
#define MENU_LABEL_LOAD_CONTENT 0x828943c3U
#define MENU_LABEL_LOAD_CONTENT_LIST 0x5745de1fU
#define MENU_LABEL_LOAD_CONTENT_HISTORY 0xfe1d79e5U
#define MENU_LABEL_ADD_CONTENT_LIST 0x046f4668U
#define MENU_LABEL_ONLINE_UPDATER 0xcac0025eU
#define MENU_LABEL_SETTINGS 0x1304dc16U
#define MENU_LABEL_SAVE_CURRENT_CONFIG 0x8840ba8bU
#define MENU_LABEL_SAVE_NEW_CONFIG 0xcce9ab72U
#define MENU_LABEL_HELP 0x7c97d2eeU
#define MENU_LABEL_QUIT_RETROARCH 0x84b0bc71U
/* File values */
#define MENU_VALUE_FILE_WEBM 0x7ca00b50U
#define MENU_VALUE_FILE_F4F 0x0b886be5U
#define MENU_VALUE_FILE_F4V 0x0b886bf5U
#define MENU_VALUE_FILE_OGM 0x0b8898c8U
#define MENU_VALUE_FILE_MKV 0x0b8890d3U
#define MENU_VALUE_FILE_AVI 0x0b885f25U
#define MENU_VALUE_FILE_M4A 0x0b8889a7U
#define MENU_VALUE_FILE_3GP 0x0b87998fU
#define MENU_VALUE_FILE_MP4 0x0b889136U
#define MENU_VALUE_FILE_MP3 0x0b889135U
#define MENU_VALUE_FILE_FLAC 0x7c96d67bU
#define MENU_VALUE_FILE_OGG 0x0b8898c2U
#define MENU_VALUE_FILE_FLV 0x0b88732dU
#define MENU_VALUE_FILE_WAV 0x0b88ba13U
#define MENU_VALUE_FILE_MOV 0x0b889157U
#define MENU_VALUE_FILE_WMV 0x0b88bb9fU
#define MENU_VALUE_FILE_JPG 0x0b8884a6U
#define MENU_VALUE_FILE_JPEG 0x7c99198bU
#define MENU_VALUE_FILE_JPG_CAPS 0x0b87f846U
#define MENU_VALUE_FILE_JPEG_CAPS 0x7c87010bU
#define MENU_VALUE_FILE_PNG 0x0b889deaU
#define MENU_VALUE_FILE_PNG_CAPS 0x0b88118aU
#define MENU_VALUE_FILE_TGA 0x0b88ae01U
#define MENU_VALUE_FILE_BMP 0x0b886244U
#define MENU_VALUE_MD5 0x0b888fabU
#define MENU_VALUE_SHA1 0x7c9de632U
#define MENU_VALUE_CRC 0x0b88671dU
#define MENU_VALUE_MORE 0x0b877cafU
#define MENU_VALUE_HORIZONTAL_MENU 0x35761704U
#define MENU_VALUE_ON 0x005974c2U
#define MENU_VALUE_OFF 0x0b880c40U
#define MENU_VALUE_COMP 0x6a166ba5U
#define MENU_VALUE_MUSIC 0xc4a73997U
#define MENU_VALUE_IMAGE 0xbab7ebf9U
#define MENU_VALUE_MOVIE 0xc43c4bf6U
#define MENU_VALUE_CORE 0x6a167f7fU
#define MENU_VALUE_CURSOR 0x57bba8b4U
#define MENU_VALUE_FILE 0x6a496536U
#define MENU_VALUE_RDB 0x0b00f54eU
#define MENU_VALUE_DIR 0x0af95f55U
#define MENU_VALUE_NO_CORE 0x7d5472cbU
#define MENU_VALUE_GLSLP 0x0f840c87U
#define MENU_VALUE_CGP 0x0b8865bfU
#define MENU_VALUE_GLSL 0x7c976537U
#define MENU_VALUE_HLSL 0x7c97f198U
#define MENU_VALUE_HLSLP 0x0f962508U
#define MENU_VALUE_CG 0x0059776fU
#define MENU_VALUE_SLANG 0x105ce63aU
#define MENU_VALUE_SLANGP 0x1bf9adeaU
int menu_hash_get_help_de(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_es(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_fr(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_it(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_nl(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_pl(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_pt(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_eo(uint32_t hash, char *s, size_t len);
int menu_hash_get_help_us(uint32_t hash, char *s, size_t len);
int menu_hash_get_help(uint32_t hash, char *s, size_t len);
RETRO_END_DECLS
#endif

View File

@ -38,7 +38,6 @@
#include "menu_setting.h" #include "menu_setting.h"
#include "menu_shader.h" #include "menu_shader.h"
#include "menu_navigation.h" #include "menu_navigation.h"
#include "menu_hash.h"
#include "../general.h" #include "../general.h"
#include "../managers/cheat_manager.h" #include "../managers/cheat_manager.h"

View File

@ -43,7 +43,6 @@
#include "menu_display.h" #include "menu_display.h"
#include "menu_input.h" #include "menu_input.h"
#include "menu_navigation.h" #include "menu_navigation.h"
#include "menu_hash.h"
#include "../msg_hash.h" #include "../msg_hash.h"
#include "../defaults.h" #include "../defaults.h"

View File

@ -26,7 +26,6 @@
#include "../command.h" #include "../command.h"
#include "../input/input_driver.h" #include "../input/input_driver.h"
#include "menu_hash.h"
#include "../msg_hash.h" #include "../msg_hash.h"
RETRO_BEGIN_DECLS RETRO_BEGIN_DECLS

View File

@ -21,7 +21,6 @@
#include <file/file_path.h> #include <file/file_path.h>
#include "menu_driver.h" #include "menu_driver.h"
#include "menu_hash.h"
#include "menu_shader.h" #include "menu_shader.h"
#include "../configuration.h" #include "../configuration.h"
#include "../runloop.h" #include "../runloop.h"

View File

@ -22,6 +22,53 @@
#include "configuration.h" #include "configuration.h"
int menu_hash_get_help(uint32_t hash, char *s, size_t len)
{
int ret = -1;
settings_t *settings = config_get_ptr();
if (!settings)
goto end;
#ifdef HAVE_LANGEXTRA
switch (settings->user_language)
{
case RETRO_LANGUAGE_FRENCH:
ret = menu_hash_get_help_fr(hash, s, len);
break;
case RETRO_LANGUAGE_GERMAN:
ret = menu_hash_get_help_de(hash, s, len);
break;
case RETRO_LANGUAGE_SPANISH:
ret = menu_hash_get_help_es(hash, s, len);
break;
case RETRO_LANGUAGE_ITALIAN:
ret = menu_hash_get_help_it(hash, s, len);
break;
case RETRO_LANGUAGE_PORTUGUESE:
ret = menu_hash_get_help_pt(hash, s, len);
break;
case RETRO_LANGUAGE_DUTCH:
ret = menu_hash_get_help_nl(hash, s, len);
break;
case RETRO_LANGUAGE_ESPERANTO:
ret = menu_hash_get_help_eo(hash, s, len);
break;
case RETRO_LANGUAGE_POLISH:
ret = menu_hash_get_help_pl(hash, s, len);
break;
default:
break;
}
#endif
if (ret == 0)
return ret;
end:
return menu_hash_get_help_us(hash, s, len);
}
const char *msg_hash_to_str(enum msg_hash_enums msg) const char *msg_hash_to_str(enum msg_hash_enums msg)
{ {
const char *ret = NULL; const char *ret = NULL;

View File

@ -22,6 +22,8 @@
#include <retro_common_api.h> #include <retro_common_api.h>
RETRO_BEGIN_DECLS
enum msg_hash_enums enum msg_hash_enums
{ {
MSG_UNKNOWN = 0, MSG_UNKNOWN = 0,
@ -1402,31 +1404,488 @@ enum msg_hash_enums
MENU_ENUM_LABEL_CB_CORE_THUMBNAILS_DOWNLOAD MENU_ENUM_LABEL_CB_CORE_THUMBNAILS_DOWNLOAD
}; };
RETRO_BEGIN_DECLS
/* Callback strings */
#define CB_CORE_UPDATER_DOWNLOAD 0x7412da7dU
#define CB_UPDATE_ASSETS 0xbf85795eU
/* Deferred */
#define MENU_LABEL_DEFERRED_THUMBNAILS_UPDATER_LIST 0x364dfa2bU
#define MENU_LABEL_DEFERRED_VIDEO_FILTER 0x966ad201U
#define MENU_LABEL_DEFERRED_CORE_LIST_SET 0xa6d5fdb4U
#define MENU_LABEL_DEFERRED_DATABASE_MANAGER_LIST 0x7c0b704fU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST 0x45446638U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_DEVELOPER 0xcbd89be5U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_PUBLISHER 0x125e594dU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ORIGIN 0x4ebaa767U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_FRANCHISE 0x77f9eff2U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_EDGE_MAGAZINE_RATING 0x1c7f8a43U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_EDGE_MAGAZINE_ISSUE 0xaaeebde7U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_FAMITSU_MAGAZINE_RATING 0xbf7ff5e7U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ENHANCEMENT_HW 0x9866bda3U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_RELEASEMONTH 0x2b36ce66U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_RELEASEYEAR 0x9c7c6e91U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ESRB_RATING 0x68eba20fU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_ELSPA_RATING 0x8bf6ab18U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_PEGI_RATING 0x5fc77328U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_CERO_RATING 0x24f6172cU
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_BBFC_RATING 0x0a8e67f0U
#define MENU_LABEL_DEFERRED_CURSOR_MANAGER_LIST_RDB_ENTRY_MAX_USERS 0xbfcba816U
#define MENU_LABEL_DEFERRED_RDB_ENTRY_DETAIL 0xc35416c0U
#define MENU_LABEL_DEFERRED_RPL_ENTRY_ACTIONS 0x358a7494U
#define MENU_LABEL_DEFERRED_CORE_LIST 0xf157d289U
#define MENU_LABEL_DEFERRED_CORE_UPDATER_LIST 0xc315f682U
#define MENU_LABEL_DEFERRED_DRIVER_SETTINGS_LIST 0xaa5efefcU
#define MENU_LABEL_DEFERRED_VIDEO_SETTINGS_LIST 0x83c65827U
#define MENU_LABEL_DEFERRED_AUDIO_SETTINGS_LIST 0x5bba25e2U
#define MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST 0x9518e0c7U
#define MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST 0x050bec60U
#define MENU_LABEL_DEFERRED_USER_BINDS_LIST 0x28c5750eU
#define MENU_LABEL_DEFERRED_ACCOUNTS_CHEEVOS_LIST 0x1322324cU
#define MENU_LABEL_DEFERRED_ACCOUNTS_LIST 0x3d2b8860U
#define MENU_LABEL_DEFERRED_ARCHIVE_ACTION_DETECT_CORE 0xdc9c0064U
#define MENU_LABEL_DEFERRED_ARCHIVE_ACTION 0x7faf0284U
#define MENU_LABEL_DEFERRED_ARCHIVE_OPEN_DETECT_CORE 0xd9452498U
#define MENU_LABEL_DEFERRED_ARCHIVE_OPEN 0xfa0938b8U
#define MENU_LABEL_DEFERRED_CORE_CONTENT_LIST 0x76150c63U
#define MENU_LABEL_DEFERRED_LAKKA_LIST 0x3db437c4U
#define MENU_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST 0x10b41d97U
/* Cheevos settings */
#define MENU_LABEL_CHEEVOS_DESCRIPTION 0x7e00e0f5U
/* Playlist settings */
#define MENU_LABEL_PLAYLIST_SETTINGS_BEGIN 0x80a8d2cbU
/* Accounts settings */
#define MENU_LABEL_ACCOUNTS_CHEEVOS_PASSWORD 0x45cf62e3U
#define MENU_LABEL_ACCOUNTS_CHEEVOS_USERNAME 0x2bf153f0U
#define MENU_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS 0xe6b7c16cU
#define MENU_LABEL_ACCOUNTS_LIST 0x774c15a0U
#define MENU_LABEL_VALUE_ACCOUNTS_LIST_END 0x3d559522U
#define MENU_LABEL_DOWNLOADED_FILE_DETECT_CORE_LIST 0xb4f82700U
/* Scan values */
#define MENU_LABEL_SCAN_THIS_DIRECTORY 0x6921b775U
#define MENU_LABEL_SCAN_DIRECTORY 0x57de303eU
#define MENU_LABEL_SCAN_FILE 0xd5d1eee9U
/* Online updater settings */
#define MENU_LABEL_UPDATE_LAKKA 0x19b51eebU
/* Information settings */
#define MENU_LABEL_INFORMATION_LIST 0x225e7606U
#define MENU_LABEL_SYSTEM_INFORMATION 0x206ebf0fU
#define MENU_LABEL_NETWORK_INFORMATION 0x73ae3cb4U
#define MENU_LABEL_DEBUG_INFORMATION 0xeb0d82b1U
#define MENU_LABEL_CONTENT_SETTINGS 0xe789f7f6U
#define MENU_LABEL_RESET 0x10474288U
#define MENU_LABEL_ARCHIVE_MODE 0x7fac00cbU
#define MENU_LABEL_USE_THIS_DIRECTORY 0xc51d351dU
#define MENU_LABEL_SAVE_STATE 0x3a4849b5U
#define MENU_LABEL_LOAD_STATE 0xa39eb286U
#define MENU_LABEL_REWIND 0x1931d5aeU
#define MENU_LABEL_SHADER_NEXT 0x54d359baU
#define MENU_LABEL_SHADER_PREV 0x54d4a758U
#define MENU_LABEL_FRAME_ADVANCE 0xd80302a1U
#define MENU_LABEL_MOVIE_RECORD_TOGGLE 0xa2d2ff04U
#define MENU_LABEL_L_X_PLUS 0xd7370d4bU
#define MENU_LABEL_L_X_MINUS 0xbde0aaf3U
#define MENU_LABEL_L_Y_PLUS 0xd98c35ecU
#define MENU_LABEL_L_Y_MINUS 0x0adae7b4U
#define MENU_LABEL_R_X_PLUS 0x60c20a91U
#define MENU_LABEL_R_X_MINUS 0x78cb50f9U
#define MENU_LABEL_R_Y_MINUS 0xc5c58dbaU
#define MENU_LABEL_R_Y_PLUS 0x63173332U
#define MENU_LABEL_BLOCK_SRAM_OVERWRITE 0xc4e88d08U
#define MENU_LABEL_CORE_SPECIFIC_CONFIG 0x3c9a55e8U
#define MENU_LABEL_GAME_SPECIFIC_OPTIONS 0x142ec90fU
#define MENU_LABEL_SCREENSHOT 0x9a37f083U
#define MENU_LABEL_SCREEN_RESOLUTION 0x5c9b3a58U
/* Menu settings */
#define MENU_LABEL_THUMBNAILS 0x0a3ec67cU
#define MENU_LABEL_SAVESTATE_AUTO_SAVE 0xf6f4a05bU
#define MENU_LABEL_SAVESTATE_AUTO_LOAD 0xf6f1028cU
#define MENU_LABEL_SAVESTATE_AUTO_INDEX 0xd4da8b84U
#define MENU_LABEL_XMB_FONT 0x0ECA56CA2
#define MENU_LABEL_XMB_THEME 0x824c5a7eU
#define MENU_LABEL_XMB_GRADIENT 0x18e63099U
#define MENU_LABEL_XMB_RIBBON_ENABLE 0x8e89c3edU
#define MENU_LABEL_PERFCNT_ENABLE 0x6823dbddU
/* Video settings */
#define MENU_LABEL_VIDEO_FONT_PATH 0xd0de729eU
#define MENU_LABEL_VIDEO_VI_WIDTH 0x6e4a6d3aU
#define MENU_LABEL_VIDEO_VFILTER 0x664f8397U
#define MENU_LABEL_VIDEO_GAMMA 0x08a951beU
#define MENU_LABEL_VIDEO_SHADER_PRESET_SAVE_AS 0x3d6e5ce5U
#define MENU_LABEL_VIDEO_SHADER_DEFAULT_FILTER 0x4468cb1bU
#define MENU_LABEL_VIDEO_SHADER_FILTER_PASS 0x1906c38dU
#define MENU_LABEL_VIDEO_SHADER_SCALE_PASS 0x18f7b82fU
#define MENU_LABEL_VIDEO_SHADER_NUM_PASSES 0x79b2992fU
#define MENU_LABEL_VIDEO_SHADER_PARAMETERS 0x9895c3e5U
#define MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS 0xd18158d7U
#define MENU_LABEL_VIDEO_SHADER_PASS 0x4fa31028U
#define MENU_LABEL_VIDEO_SHADER_PRESET 0xc5d3bae4U
/* Netplay settings */
#define MENU_LABEL_NETPLAY_FLIP_PLAYERS 0x801425abU
/* Input settings */
#define MENU_LABEL_INPUT_OVERLAY 0x24e24796U
#define MENU_LABEL_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE 0x3665cbb0U
#define MENU_LABEL_INPUT_HOTKEY_BINDS_BEGIN 0x5a56139bU
#define MENU_LABEL_INPUT_SMALL_KEYBOARD_ENABLE 0xe6736fc3U
#define MENU_LABEL_INPUT_ICADE_ENABLE 0xcd534dd0U
#define MENU_LABEL_INPUT_AUTODETECT_ENABLE 0xb1e07facU
#define MENU_LABEL_INPUT_DUTY_CYCLE 0xec787129U
#define MENU_LABEL_INPUT_BIND_DEVICE_ID 0xd1ea94ecU
#define MENU_LABEL_INPUT_BIND_DEVICE_TYPE 0xf6e9f041U
#define MENU_LABEL_INPUT_AXIS_THRESHOLD 0xe95c2095U
#define MENU_LABEL_INPUT_OSK_OVERLAY 0x11f1c582U
/* Record settings */
#define MENU_LABEL_RECORD_USE_OUTPUT_DIRECTORY 0x8343eff4U
#define MENU_LABEL_RECORD_CONFIG 0x11c3daf9U
#define MENU_LABEL_RECORD_PATH 0x016d7afaU
#define MENU_LABEL_RECORD_ENABLE 0x1654e22aU
/* Cheat options */
#define MENU_LABEL_CHEAT_DATABASE_PATH 0x01388b8aU
#define MENU_LABEL_CHEAT_FILE_LOAD 0x57336148U
#define MENU_LABEL_CHEAT_INDEX_MINUS 0x57f58b6cU
#define MENU_LABEL_CHEAT_INDEX_PLUS 0x678542a4U
#define MENU_LABEL_CHEAT_TOGGLE 0xe515e0cbU
#define MENU_LABEL_CHEAT_FILE_SAVE_AS 0x1f58dccaU
#define MENU_LABEL_CHEAT_APPLY_CHANGES 0xde88aa27U
/* Disk settings */
#define MENU_LABEL_DISK_EJECT_TOGGLE 0x49633fbbU
#define MENU_LABEL_DISK_NEXT 0xeeaf6c6eU
#define MENU_LABEL_DISK_CYCLE_TRAY_STATUS 0x3035cdc1U
#define MENU_LABEL_DISK_INDEX 0x6c14bf54U
#define MENU_LABEL_DISK_OPTIONS 0xc61ab5fbU
#define MENU_LABEL_DISK_IMAGE_APPEND 0x5af7d709U
/* Menu settings */
#define MENU_LABEL_MENU_TOGGLE 0xfb22e3dbU
#define MENU_LABEL_MENU_WALLPAPER 0x3b84de01U
#define MENU_LABEL_MENU_LINEAR_FILTER 0x5fe9128cU
#define MENU_LABEL_MENU_THROTTLE_FRAMERATE 0x9a8681c5U
#define MENU_LABEL_MENU_SETTINGS 0x61e4544bU
#define MENU_LABEL_ENABLE_HOTKEY 0xc04037bfU
#define MENU_LABEL_GRAB_MOUSE_TOGGLE 0xb2869aaaU
#define MENU_LABEL_STATE_SLOT_DECREASE 0xe48b8082U
#define MENU_LABEL_STATE_SLOT_INCREASE 0x36a0cbb0U
/* Libretro settings */
#define MENU_LABEL_LIBRETRO_LOG_LEVEL 0x57971ac0U
/* Directory settings */
#define MENU_LABEL_CURSOR_DIRECTORY 0xdee8d377U
#define MENU_LABEL_OSK_OVERLAY_DIRECTORY 0xcce86287U
#define MENU_LABEL_JOYPAD_AUTOCONFIG_DIR 0x2f4822d8U
#define MENU_LABEL_RECORDING_OUTPUT_DIRECTORY 0x30bece06U
#define MENU_LABEL_RECORDING_CONFIG_DIRECTORY 0x3c3f274bU
#define MENU_LABEL_LIBRETRO_DIR_PATH 0x1af1eb72U
#define MENU_LABEL_AUDIO_FILTER_DIR 0x4bd96ebaU
#define MENU_LABEL_VIDEO_SHADER_DIR 0x30f53b10U
#define MENU_LABEL_VIDEO_FILTER_DIR 0x67603f1fU
#define MENU_LABEL_SCREENSHOT_DIRECTORY 0x552612d7U
#define MENU_LABEL_SYSTEM_DIRECTORY 0x35a6fb9eU
#define MENU_LABEL_INPUT_REMAPPING_DIRECTORY 0x5233c20bU
#define MENU_LABEL_OVERLAY_DIRECTORY 0xc4ed3d1bU
#define MENU_LABEL_SAVEFILE_DIRECTORY 0x92773488U
#define MENU_LABEL_SAVESTATE_DIRECTORY 0x90551289U
#define MENU_LABEL_DYNAMIC_WALLPAPERS_DIRECTORY 0x62f975b8U
#define MENU_LABEL_THUMBNAILS_DIRECTORY 0xdea77410U
#define MENU_LABEL_RGUI_BROWSER_DIRECTORY 0xa86cba73U
#define MENU_LABEL_CONTENT_DATABASE_DIRECTORY 0x6b443f80U
#define MENU_LABEL_PLAYLIST_DIRECTORY 0x6361820bU
#define MENU_LABEL_CORE_ASSETS_DIRECTORY 0x8ba5ee54U
#define MENU_LABEL_CONTENT_DIRECTORY 0x7738dc14U
#define MENU_LABEL_RGUI_CONFIG_DIRECTORY 0x0cb3e005U
#define MENU_LABEL_ASSETS_DIRECTORY 0xde1ae8ecU
#define MENU_LABEL_CACHE_DIRECTORY 0x851dfb8dU
/* RDB settings */
#define MENU_LABEL_NO_PLAYLIST_ENTRIES_AVAILABLE 0x8888c5acU
#define MENU_LABEL_RDB_ENTRY_START_CONTENT 0x95025a55U
#define MENU_LABEL_RDB_ENTRY_PUBLISHER 0x4d7bcdfbU
#define MENU_LABEL_RDB_ENTRY_DEVELOPER 0x06f61093U
#define MENU_LABEL_RDB_ENTRY_ORIGIN 0xb176aad5U
#define MENU_LABEL_RDB_ENTRY_FRANCHISE 0xb31764a0U
#define MENU_LABEL_RDB_ENTRY_ENHANCEMENT_HW 0x79ee4f11U
#define MENU_LABEL_RDB_ENTRY_ESRB_RATING 0xe138fa3dU
#define MENU_LABEL_RDB_ENTRY_BBFC_RATING 0x82dbc01eU
#define MENU_LABEL_RDB_ENTRY_ELSPA_RATING 0x0def0906U
#define MENU_LABEL_RDB_ENTRY_PEGI_RATING 0xd814cb56U
#define MENU_LABEL_RDB_ENTRY_CERO_RATING 0x9d436f5aU
#define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_RATING 0x9735f631U
#define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_ISSUE 0xd5706415U
#define MENU_LABEL_RDB_ENTRY_FAMITSU_MAGAZINE_RATING 0x01a50315U
#define MENU_LABEL_RDB_ENTRY_RELEASE_MONTH 0xad2f2c54U
#define MENU_LABEL_RDB_ENTRY_RELEASE_YEAR 0x14c9c6bfU
#define MENU_LABEL_RDB_ENTRY_MAX_USERS 0xfae91cc4U
#define MENU_LABEL_DETECT_CORE_LIST 0xaa07c341U
#define MENU_LABEL_DETECT_CORE_LIST_OK 0xabba2a7aU
#define MENU_LABEL_CLOSE_CONTENT 0x4b622170U
#define MENU_LABEL_CORE_LIST 0xa22bb14dU
#define MENU_LABEL_MANAGEMENT 0x2516c88aU
#define MENU_LABEL_FRONTEND_COUNTERS 0xe5696877U
#define MENU_LABEL_CORE_COUNTERS 0x64cc83e0U
#define MENU_LABEL_ACHIEVEMENT_LIST 0x7b90fc49U
#define MENU_LABEL_CORE_INFORMATION 0xb638e0d3U
#define MENU_LABEL_CORE_OPTIONS 0xf65e60f9U
#define MENU_LABEL_SHADER_OPTIONS 0x1f7d2fc7U
#define MENU_LABEL_CORE_CHEAT_OPTIONS 0x9293171dU
#define MENU_LABEL_CORE_INPUT_REMAPPING_OPTIONS 0x7836a8caU
#define MENU_LABEL_DATABASE_MANAGER_LIST 0x7f853d8fU
#define MENU_LABEL_CURSOR_MANAGER_LIST 0xa969e378U
#define MENU_LABEL_REMAP_FILE_LOAD 0x9c2799b8U
#define MENU_LABEL_INFO_SCREEN 0xd97853d0U
#define MENU_LABEL_CUSTOM_RATIO 0xf038731eU
#define MENU_LABEL_PAL60_ENABLE 0x62bc416eU
#define MENU_LABEL_CONTENT_HISTORY_PATH 0x6f22fb9dU
#define MENU_LABEL_RECORDING_SETTINGS 0x1a80b313U
#define MENU_LABEL_ONSCREEN_KEYBOARD_OVERLAY_SETTINGS 0xa6de9ba6U
#define MENU_LABEL_PLAYLIST_SETTINGS 0xdb3e0e07U
#define MENU_LABEL_ARCHIVE_SETTINGS 0x78e85398U
#define MENU_LABEL_DIRECTORY_SETTINGS 0xb817bd2bU
#define MENU_LABEL_SHADER_APPLY_CHANGES 0x4f7306b9U
#define MENU_LABEL_ONSCREEN_DISPLAY_SETTINGS 0x67571029U
#define MENU_LABEL_CUSTOM_BIND 0x1e84b3fcU
#define MENU_LABEL_CUSTOM_BIND_ALL 0x79ac14f4U
#define MENU_LABEL_CUSTOM_BIND_DEFAULTS 0xe88f7b13U
#define MENU_LABEL_CONFIGURATIONS 0x3e930a50U
#define MENU_LABEL_REMAP_FILE_SAVE_CORE 0x7c9d4c8fU
#define MENU_LABEL_REMAP_FILE_SAVE_GAME 0x7c9f41e0U
#define MENU_LABEL_CONTENT_COLLECTION_LIST 0x32d1df83U
#define MENU_LABEL_OSK_ENABLE 0x8e208498U
#define MENU_LABEL_EXIT_EMULATOR 0x86d5d467U
#define MENU_LABEL_COLLECTION 0x5fea5991U
#define MENU_LABEL_OPEN_ARCHIVE 0x78c0ca58U
#define MENU_LABEL_OPEN_ARCHIVE_DETECT_CORE 0x92442638U
#define MENU_LABEL_LOAD_ARCHIVE_DETECT_CORE 0x681f2f46U
#define MENU_LABEL_LOAD_ARCHIVE 0xc3834e66U
/* Help */
#define MENU_LABEL_REWIND_ENABLE 0x9761e074U
#define MENU_LABEL_REWIND_GRANULARITY 0xe859cbdfU
#define MENU_LABEL_LIBRETRO_INFO_PATH 0xe552b25fU
#define MENU_LABEL_AUTOSAVE_INTERVAL 0xecc87351U
#define MENU_LABEL_CONFIG_SAVE_ON_EXIT 0x79b590feU
#define MENU_LABEL_CAMERA_ALLOW 0xc14d302cU
#define MENU_LABEL_LOCATION_ALLOW 0xf089275cU
#define MENU_LABEL_OVERLAY_NEXT 0x7a459145U
#define MENU_LABEL_INPUT_DRIVER 0x4c087840U
#define MENU_LABEL_INPUT_DRIVER_LINUXRAW 0xc33c6b9fU
#define MENU_LABEL_INPUT_DRIVER_UDEV 0x7c9eeeb9U
#define MENU_LABEL_AUDIO_MUTE 0xe0ca1151U
#define MENU_LABEL_AUDIO_DSP_PLUGIN 0x4a69572bU
#define MENU_LABEL_AUDIO_MAX_TIMING_SKEW 0x4c96f75cU
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER 0xedcba9ecU
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC 0x7c9dec52U
#define MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC 0x0059732bU
#define MENU_LABEL_VIDEO_DRIVER 0x1805a5e7U
#define MENU_LABEL_VIDEO_DRIVER_GL 0x005977f8U
#define MENU_LABEL_VIDEO_DRIVER_SDL2 0x7c9dd69aU
#define MENU_LABEL_VIDEO_DRIVER_SDL1 0x0b88a968U
#define MENU_LABEL_VIDEO_DRIVER_D3D 0x0b886340U
#define MENU_LABEL_VIDEO_DRIVER_EXYNOS 0xfc37c54bU
#define MENU_LABEL_VIDEO_DRIVER_SUNXI 0x10620e3cU
#define MENU_LABEL_VIDEO_ROTATION 0x4ce6882bU
#define MENU_LABEL_VIDEO_SCALE 0x09835d63U
#define MENU_LABEL_VIDEO_CROP_OVERSCAN 0x861f7a2fU
#define MENU_LABEL_VIDEO_SCALE_INTEGER 0x65c4b090U
#define MENU_LABEL_VIDEO_VSYNC 0x09c2d34eU
#define MENU_LABEL_VIDEO_BLACK_FRAME_INSERTION 0x53477f5cU
#define MENU_LABEL_VIDEO_HARD_SYNC_FRAMES 0xce0ece13U
#define MENU_LABEL_VIDEO_FRAME_DELAY 0xd4aa9df4U
#define MENU_LABEL_VIDEO_FULLSCREEN 0x9506dd4eU
#define MENU_LABEL_VIDEO_SWAP_INTERVAL 0x5673ff9aU
#define MENU_LABEL_VIDEO_GPU_SCREENSHOT 0xee2fcb44U
#define MENU_LABEL_VIDEO_FILTER 0x1c0eb741U
#define MENU_LABEL_VIDEO_REFRESH_RATE_AUTO 0x9addb6cdU
#define MENU_LABEL_VIDEO_THREADED 0x0626179cU
#define MENU_LABEL_VIDEO_MONITOR_INDEX 0xb6fcdc9aU
#define MENU_LABEL_VIDEO_HARD_SYNC 0xdcd623b6U
#define MENU_LABEL_RGUI_SHOW_START_SCREEN 0x6b38f0e8U
#define MENU_LABEL_PAUSE_NONACTIVE 0x580bf549U
#define MENU_LABEL_AUDIO_DEVICE 0x2574eac6U
#define MENU_LABEL_AUDIO_VOLUME 0x502173aeU
#define MENU_LABEL_AUDIO_RATE_CONTROL_DELTA 0xc8bde3cbU
#define MENU_LABEL_SLOWMOTION_RATIO 0x626b3ffeU
#define MENU_LABEL_FASTFORWARD_RATIO 0x3a0c2706U
#define MENU_LABEL_INPUT_TURBO_PERIOD 0xf7a97482U
#define MENU_LABEL_LOG_VERBOSITY 0x6648c96dU
#define MENU_LABEL_SLOWMOTION 0x6a269ea0U
#define MENU_LABEL_HOLD_FAST_FORWARD 0xebe2e4cdU
#define MENU_LABEL_PAUSE_TOGGLE 0x557634e4U
#define MENU_LABEL_WELCOME_TO_RETROARCH 0xbcff0b3cU
#define MENU_LABEL_HELP_CONTROLS 0x04859221U
#define MENU_LABEL_HELP_LIST 0x006af669U
#define MENU_LABEL_HELP_WHAT_IS_A_CORE 0x83fcbc44U
#define MENU_LABEL_HELP_LOADING_CONTENT 0x231d8245U
#define MENU_LABEL_HELP_SCANNING_CONTENT 0x1dec52b8U
#define MENU_LABEL_HELP_CHANGE_VIRTUAL_GAMEPAD 0x6e66ef07U
#define MENU_LABEL_HELP_AUDIO_VIDEO_TROUBLESHOOTING 0xd44d395cU
#define MENU_LABEL_TURBO 0x107434f1U
#define MENU_LABEL_VOLUME_UP 0xa66e9681U
#define MENU_LABEL_VOLUME_DOWN 0xfc64f3d4U
#define MENU_LABEL_VALUE_EXTRACTING_PLEASE_WAIT 0xec5a348bU
#define MENU_LABEL_VIDEO_DISABLE_COMPOSITION 0x5cbb6222U
#define MENU_LABEL_VALUE_MENU_CONTROLS_PROLOG 0x72674cdfU
#define MENU_LABEL_VALUE_HELP_WHAT_IS_A_CORE 0xf3b0f77eU
#define MENU_LABEL_VALUE_HELP_LOADING_CONTENT 0x70bab027U
#define MENU_LABEL_VALUE_HELP_LIST 0x6c57426aU
#define MENU_LABEL_VALUE_HELP_CONTROLS 0xe5c9f6a2U
#define MENU_LABEL_VALUE_WHAT_IS_A_CORE_DESC 0xc832957eU
#define MENU_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD 0x27ed0204U
#define MENU_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD_DESC 0x9d0e79dbU
#define MENU_LABEL_VALUE_HELP_AUDIO_VIDEO_TROUBLESHOOTING 0xd0e5c3ffU
#define MENU_LABEL_VALUE_HELP_AUDIO_VIDEO_TROUBLESHOOTING_DESC 0x60031d7aU
#define MENU_LABEL_VALUE_HELP_SCANNING_CONTENT 0x74b36f11U
#define MENU_LABEL_VALUE_HELP_SCANNING_CONTENT_DESC 0xac947056U
/* Main menu */
#define MENU_LABEL_LOAD_CONTENT 0x828943c3U
#define MENU_LABEL_LOAD_CONTENT_LIST 0x5745de1fU
#define MENU_LABEL_LOAD_CONTENT_HISTORY 0xfe1d79e5U
#define MENU_LABEL_ADD_CONTENT_LIST 0x046f4668U
#define MENU_LABEL_ONLINE_UPDATER 0xcac0025eU
#define MENU_LABEL_SETTINGS 0x1304dc16U
#define MENU_LABEL_SAVE_CURRENT_CONFIG 0x8840ba8bU
#define MENU_LABEL_SAVE_NEW_CONFIG 0xcce9ab72U
#define MENU_LABEL_HELP 0x7c97d2eeU
#define MENU_LABEL_QUIT_RETROARCH 0x84b0bc71U
/* File values */
#define MENU_VALUE_FILE_WEBM 0x7ca00b50U
#define MENU_VALUE_FILE_F4F 0x0b886be5U
#define MENU_VALUE_FILE_F4V 0x0b886bf5U
#define MENU_VALUE_FILE_OGM 0x0b8898c8U
#define MENU_VALUE_FILE_MKV 0x0b8890d3U
#define MENU_VALUE_FILE_AVI 0x0b885f25U
#define MENU_VALUE_FILE_M4A 0x0b8889a7U
#define MENU_VALUE_FILE_3GP 0x0b87998fU
#define MENU_VALUE_FILE_MP4 0x0b889136U
#define MENU_VALUE_FILE_MP3 0x0b889135U
#define MENU_VALUE_FILE_FLAC 0x7c96d67bU
#define MENU_VALUE_FILE_OGG 0x0b8898c2U
#define MENU_VALUE_FILE_FLV 0x0b88732dU
#define MENU_VALUE_FILE_WAV 0x0b88ba13U
#define MENU_VALUE_FILE_MOV 0x0b889157U
#define MENU_VALUE_FILE_WMV 0x0b88bb9fU
#define MENU_VALUE_FILE_JPG 0x0b8884a6U
#define MENU_VALUE_FILE_JPEG 0x7c99198bU
#define MENU_VALUE_FILE_JPG_CAPS 0x0b87f846U
#define MENU_VALUE_FILE_JPEG_CAPS 0x7c87010bU
#define MENU_VALUE_FILE_PNG 0x0b889deaU
#define MENU_VALUE_FILE_PNG_CAPS 0x0b88118aU
#define MENU_VALUE_FILE_TGA 0x0b88ae01U
#define MENU_VALUE_FILE_BMP 0x0b886244U
#define MENU_VALUE_MD5 0x0b888fabU
#define MENU_VALUE_SHA1 0x7c9de632U
#define MENU_VALUE_CRC 0x0b88671dU
#define MENU_VALUE_MORE 0x0b877cafU
#define MENU_VALUE_HORIZONTAL_MENU 0x35761704U
#define MENU_VALUE_ON 0x005974c2U
#define MENU_VALUE_OFF 0x0b880c40U
#define MENU_VALUE_COMP 0x6a166ba5U
#define MENU_VALUE_MUSIC 0xc4a73997U
#define MENU_VALUE_IMAGE 0xbab7ebf9U
#define MENU_VALUE_MOVIE 0xc43c4bf6U
#define MENU_VALUE_CORE 0x6a167f7fU
#define MENU_VALUE_CURSOR 0x57bba8b4U
#define MENU_VALUE_FILE 0x6a496536U
#define MENU_VALUE_RDB 0x0b00f54eU
#define MENU_VALUE_DIR 0x0af95f55U
#define MENU_VALUE_NO_CORE 0x7d5472cbU
#define MENU_VALUE_GLSLP 0x0f840c87U
#define MENU_VALUE_CGP 0x0b8865bfU
#define MENU_VALUE_GLSL 0x7c976537U
#define MENU_VALUE_HLSL 0x7c97f198U
#define MENU_VALUE_HLSLP 0x0f962508U
#define MENU_VALUE_CG 0x0059776fU
#define MENU_VALUE_SLANG 0x105ce63aU
#define MENU_VALUE_SLANGP 0x1bf9adeaU
const char *msg_hash_to_str(enum msg_hash_enums msg); const char *msg_hash_to_str(enum msg_hash_enums msg);
const char *msg_hash_to_str_fr(enum msg_hash_enums msg); const char *msg_hash_to_str_fr(enum msg_hash_enums msg);
int menu_hash_get_help_fr(uint32_t hash, char *s, size_t len);
#ifdef HAVE_UTF8 #ifdef HAVE_UTF8
const char *msg_hash_to_str_ru(enum msg_hash_enums msg); const char *msg_hash_to_str_ru(enum msg_hash_enums msg);
#endif #endif
const char *msg_hash_to_str_de(enum msg_hash_enums msg); const char *msg_hash_to_str_de(enum msg_hash_enums msg);
int menu_hash_get_help_de(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_es(enum msg_hash_enums msg); const char *msg_hash_to_str_es(enum msg_hash_enums msg);
int menu_hash_get_help_es(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_eo(enum msg_hash_enums msg); const char *msg_hash_to_str_eo(enum msg_hash_enums msg);
int menu_hash_get_help_eo(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_it(enum msg_hash_enums msg); const char *msg_hash_to_str_it(enum msg_hash_enums msg);
int menu_hash_get_help_it(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_pt(enum msg_hash_enums msg); const char *msg_hash_to_str_pt(enum msg_hash_enums msg);
int menu_hash_get_help_pt(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_pl(enum msg_hash_enums msg); const char *msg_hash_to_str_pl(enum msg_hash_enums msg);
int menu_hash_get_help_pl(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_nl(enum msg_hash_enums msg); const char *msg_hash_to_str_nl(enum msg_hash_enums msg);
int menu_hash_get_help_nl(uint32_t hash, char *s, size_t len);
const char *msg_hash_to_str_us(enum msg_hash_enums msg); const char *msg_hash_to_str_us(enum msg_hash_enums msg);
int menu_hash_get_help_us(uint32_t hash, char *s, size_t len);
int menu_hash_get_help(uint32_t hash, char *s, size_t len);
uint32_t msg_hash_calculate(const char *s); uint32_t msg_hash_calculate(const char *s);

View File

@ -76,7 +76,6 @@
#ifdef HAVE_MENU #ifdef HAVE_MENU
#include "menu/menu_driver.h" #include "menu/menu_driver.h"
#include "menu/menu_content.h" #include "menu/menu_content.h"
#include "menu/menu_hash.h"
#endif #endif
#include "config.features.h" #include "config.features.h"