Initial utf8 support for rgui/xmb. Only supports first 256 codepoints due to current freetype atlas limitation

This commit is contained in:
Brad Parker 2016-08-23 14:45:29 -04:00
parent db36b40b20
commit 35e67e69e5
13 changed files with 1835 additions and 1794 deletions

View File

@ -530,7 +530,7 @@ ifeq ($(HAVE_MENU_COMMON), 1)
menu/drivers/null.o menu/drivers/null.o
endif endif
ifeq ($(UTF8), 1) ifneq ($(NO_UTF8), 1)
DEFINES += -DHAVE_UTF8 DEFINES += -DHAVE_UTF8
OBJ += intl/msg_hash_ru.o OBJ += intl/msg_hash_ru.o
DEFINES += -finput-charset=UTF-8 DEFINES += -finput-charset=UTF-8

View File

@ -35,6 +35,10 @@
#define MAX_MSG_LEN_CHUNK 64 #define MAX_MSG_LEN_CHUNK 64
#define ONEMASK ((size_t)(-1) / 0xFF)
static uint8_t gl_strlen(const char **string);
typedef struct typedef struct
{ {
gl_t *gl; gl_t *gl;
@ -216,7 +220,7 @@ static int gl_get_message_width(void *data, const char *msg,
for (i = 0; i < msg_len; i++) for (i = 0; i < msg_len; i++)
{ {
const struct font_glyph *glyph = const struct font_glyph *glyph =
font->font_driver->get_glyph(font->font_data, (uint8_t)msg[i]); font->font_driver->get_glyph(font->font_data, msg[i]);
if (!glyph) /* Do something smarter here ... */ if (!glyph) /* Do something smarter here ... */
glyph = font->font_driver->get_glyph(font->font_data, '?'); glyph = font->font_driver->get_glyph(font->font_data, '?');
@ -252,6 +256,102 @@ static void gl_raster_font_draw_vertices(gl_t *gl, const video_coords_t *coords)
glDrawArrays(GL_TRIANGLES, 0, coords->vertices); glDrawArrays(GL_TRIANGLES, 0, coords->vertices);
} }
static uint8_t string_walkbyte(const char **string)
{
return *((*string)++);
}
#ifdef HAVE_UTF8
/* Does not validate the input, returns garbage if it's not UTF-8. */
static uint32_t string_walk(const char **string)
{
uint8_t first = string_walkbyte(string);
uint32_t ret;
if (first<128)
return first;
ret = 0;
ret = (ret<<6) | (string_walkbyte(string) & 0x3F);
if (first >= 0xE0)
ret = (ret<<6) | (string_walkbyte(string) & 0x3F);
if (first >= 0xF0)
ret = (ret<<6) | (string_walkbyte(string) & 0x3F);
if (first >= 0xF0)
return ret | (first&31)<<18;
if (first >= 0xE0)
return ret | (first&15)<<12;
return ret | (first&7)<<6;
}
static uint32_t gl_strlen_utf8(const char **string)
{
const char * _s = *string;
const char * s;
size_t count = 0;
size_t u;
unsigned char b;
/* Handle any initial misaligned bytes. */
for (s = _s; (uintptr_t)(s) & (sizeof(size_t) - 1); s++) {
b = *s;
/* Exit if we hit a zero byte. */
if (b == '\0')
goto done;
/* Is this byte NOT the first byte of a character? */
count += (b >> 7) & ((~b) >> 6);
}
/* Handle complete blocks. */
for (; ; s += sizeof(size_t)) {
/* Prefetch 256 bytes ahead. */
__builtin_prefetch(&s[256], 0, 0);
/* Grab 4 or 8 bytes of UTF-8 data. */
u = *(size_t *)(s);
/* Exit the loop if there are any zero bytes. */
if ((u - ONEMASK) & (~u) & (ONEMASK * 0x80))
break;
/* Count bytes which are NOT the first byte of a character. */
u = ((u & (ONEMASK * 0x80)) >> 7) & ((~u) >> 6);
count += (u * ONEMASK) >> ((sizeof(size_t) - 1) * 8);
}
/* Take care of any left-over bytes. */
for (; ; s++) {
b = *s;
/* Exit if we hit a zero byte. */
if (b == '\0')
break;
/* Is this byte NOT the first byte of a character? */
count += (b >> 7) & ((~b) >> 6);
}
done:
return ((s - _s) - count);
}
static uint8_t gl_strlen(const char **string)
{
return gl_strlen_utf8(string);
}
#else
#define string_walk string_walkbyte
#define gl_strlen gl_strlen_byte
static uint8_t gl_strlen_byte(const char **string)
{
return strlen(*string);
}
#endif
static void gl_raster_font_render_line( static void gl_raster_font_render_line(
gl_raster_t *font, const char *msg, unsigned msg_len_full, gl_raster_t *font, const char *msg, unsigned msg_len_full,
GLfloat scale, const GLfloat color[4], GLfloat pos_x, GLfloat scale, const GLfloat color[4], GLfloat pos_x,
@ -262,7 +362,7 @@ static void gl_raster_font_render_line(
unsigned i, msg_len; unsigned i, msg_len;
struct video_coords coords; struct video_coords coords;
GLfloat font_tex_coords[2 * 6 * MAX_MSG_LEN_CHUNK]; GLfloat font_tex_coords[2 * 6 * MAX_MSG_LEN_CHUNK];
GLfloat font_vertex[2 * 6 * MAX_MSG_LEN_CHUNK]; GLfloat font_vertex[2 * 6 * MAX_MSG_LEN_CHUNK];
GLfloat font_color[4 * 6 * MAX_MSG_LEN_CHUNK]; GLfloat font_color[4 * 6 * MAX_MSG_LEN_CHUNK];
GLfloat font_lut_tex_coord[2 * 6 * MAX_MSG_LEN_CHUNK]; GLfloat font_lut_tex_coord[2 * 6 * MAX_MSG_LEN_CHUNK];
gl_t *gl = font ? font->gl : NULL; gl_t *gl = font ? font->gl : NULL;
@ -298,7 +398,7 @@ static void gl_raster_font_render_line(
{ {
int off_x, off_y, tex_x, tex_y, width, height; int off_x, off_y, tex_x, tex_y, width, height;
const struct font_glyph *glyph = const struct font_glyph *glyph =
font->font_driver->get_glyph(font->font_data, (uint8_t)msg[i]); font->font_driver->get_glyph(font->font_data, string_walk(&msg));
if (!glyph) /* Do something smarter here ... */ if (!glyph) /* Do something smarter here ... */
glyph = font->font_driver->get_glyph(font->font_data, '?'); glyph = font->font_driver->get_glyph(font->font_data, '?');
@ -360,7 +460,7 @@ static void gl_raster_font_render_message(
/* If the font height is not supported just draw as usual */ /* If the font height is not supported just draw as usual */
if (!font->font_driver->get_line_height) if (!font->font_driver->get_line_height)
{ {
gl_raster_font_render_line(font, msg, strlen(msg), gl_raster_font_render_line(font, msg, gl_strlen(&msg),
scale, color, pos_x, pos_y, text_align); scale, color, pos_x, pos_y, text_align);
return; return;
} }
@ -384,7 +484,7 @@ static void gl_raster_font_render_message(
} }
else else
{ {
unsigned msg_len = strlen(msg); unsigned msg_len = gl_strlen(&msg);
gl_raster_font_render_line(font, msg, msg_len, scale, color, pos_x, gl_raster_font_render_line(font, msg, msg_len, scale, color, pos_x,
pos_y - (float)lines*line_height, text_align); pos_y - (float)lines*line_height, text_align);
break; break;

View File

@ -17,15 +17,6 @@
#ifndef __INTL_FRENCH_H #ifndef __INTL_FRENCH_H
#define __INTL_FRENCH_H #define __INTL_FRENCH_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];
#define RETRO_LBL_JOYPAD_B "Bouton RetroPad B" #define RETRO_LBL_JOYPAD_B "Bouton RetroPad B"
#define RETRO_LBL_JOYPAD_Y "Bouton RetroPad Y" #define RETRO_LBL_JOYPAD_Y "Bouton RetroPad Y"
#define RETRO_LBL_JOYPAD_SELECT "Bouton RetroPad Select" #define RETRO_LBL_JOYPAD_SELECT "Bouton RetroPad Select"
@ -42,7 +33,7 @@ extern const char force_iso_8859_1[sizeof("
#define RETRO_LBL_JOYPAD_R2 "Bouton RetroPad R2" #define RETRO_LBL_JOYPAD_R2 "Bouton RetroPad R2"
#define RETRO_LBL_JOYPAD_L3 "Bouton RetroPad L3" #define RETRO_LBL_JOYPAD_L3 "Bouton RetroPad L3"
#define RETRO_LBL_JOYPAD_R3 "Bouton RetroPad R3" #define RETRO_LBL_JOYPAD_R3 "Bouton RetroPad R3"
#define RETRO_LBL_TURBO_ENABLE "Turbo Activé" #define RETRO_LBL_TURBO_ENABLE "Turbo Activé"
#define RETRO_LBL_ANALOG_LEFT_X "Analogue Gauche X" #define RETRO_LBL_ANALOG_LEFT_X "Analogue Gauche X"
#define RETRO_LBL_ANALOG_LEFT_Y "Analogue Gauche Y" #define RETRO_LBL_ANALOG_LEFT_Y "Analogue Gauche Y"
#define RETRO_LBL_ANALOG_RIGHT_X "Analogue Droite X" #define RETRO_LBL_ANALOG_RIGHT_X "Analogue Droite X"
@ -59,21 +50,21 @@ extern const char force_iso_8859_1[sizeof("
#define RETRO_LBL_FAST_FORWARD_HOLD_KEY "Avance Rapide Appui Maintenu" #define RETRO_LBL_FAST_FORWARD_HOLD_KEY "Avance Rapide Appui Maintenu"
#define RETRO_LBL_LOAD_STATE_KEY "Charger une savestate" #define RETRO_LBL_LOAD_STATE_KEY "Charger une savestate"
#define RETRO_LBL_SAVE_STATE_KEY "Sauvegarder une savestate" #define RETRO_LBL_SAVE_STATE_KEY "Sauvegarder une savestate"
#define RETRO_LBL_FULLSCREEN_TOGGLE_KEY "Mode plein écran" #define RETRO_LBL_FULLSCREEN_TOGGLE_KEY "Mode plein écran"
#define RETRO_LBL_QUIT_KEY "Quitter" #define RETRO_LBL_QUIT_KEY "Quitter"
#define RETRO_LBL_STATE_SLOT_PLUS "État Slot Suivant" #define RETRO_LBL_STATE_SLOT_PLUS "État Slot Suivant"
#define RETRO_LBL_STATE_SLOT_MINUS "État Slot Antérieur" #define RETRO_LBL_STATE_SLOT_MINUS "État Slot Antérieur"
#define RETRO_LBL_REWIND "Rembobinage" #define RETRO_LBL_REWIND "Rembobinage"
#define RETRO_LBL_MOVIE_RECORD_TOGGLE "Commutateur enregistrement vidéo" #define RETRO_LBL_MOVIE_RECORD_TOGGLE "Commutateur enregistrement vidéo"
#define RETRO_LBL_PAUSE_TOGGLE "Pause" #define RETRO_LBL_PAUSE_TOGGLE "Pause"
#define RETRO_LBL_FRAMEADVANCE "Défiler image" #define RETRO_LBL_FRAMEADVANCE "Défiler image"
#define RETRO_LBL_RESET "Reset" #define RETRO_LBL_RESET "Reset"
#define RETRO_LBL_SHADER_NEXT "Prochain Shader" #define RETRO_LBL_SHADER_NEXT "Prochain Shader"
#define RETRO_LBL_SHADER_PREV "Précédent Shader" #define RETRO_LBL_SHADER_PREV "Précédent Shader"
#define RETRO_LBL_CHEAT_INDEX_PLUS "Index Cheat Suivant" #define RETRO_LBL_CHEAT_INDEX_PLUS "Index Cheat Suivant"
#define RETRO_LBL_CHEAT_INDEX_MINUS "Index Cheat Antérieur" #define RETRO_LBL_CHEAT_INDEX_MINUS "Index Cheat Antérieur"
#define RETRO_LBL_CHEAT_TOGGLE "Commutateur Mode Triche" #define RETRO_LBL_CHEAT_TOGGLE "Commutateur Mode Triche"
#define RETRO_LBL_SCREENSHOT "Capture d'écran" #define RETRO_LBL_SCREENSHOT "Capture d'écran"
#define RETRO_LBL_MUTE "Couper le son" #define RETRO_LBL_MUTE "Couper le son"
#define RETRO_LBL_OSK "Active le clavier visuel" #define RETRO_LBL_OSK "Active le clavier visuel"
#define RETRO_LBL_NETPLAY_FLIP "Inversement des joueurs Netplay" #define RETRO_LBL_NETPLAY_FLIP "Inversement des joueurs Netplay"
@ -82,9 +73,9 @@ extern const char force_iso_8859_1[sizeof("
#define RETRO_LBL_VOLUME_UP "Augmenter le volume" #define RETRO_LBL_VOLUME_UP "Augmenter le volume"
#define RETRO_LBL_VOLUME_DOWN "Diminuer le volume" #define RETRO_LBL_VOLUME_DOWN "Diminuer le volume"
#define RETRO_LBL_OVERLAY_NEXT "Prochain Overlay" #define RETRO_LBL_OVERLAY_NEXT "Prochain Overlay"
#define RETRO_LBL_DISK_EJECT_TOGGLE "Commutateur éjecter le disque" #define RETRO_LBL_DISK_EJECT_TOGGLE "Commutateur éjecter le disque"
#define RETRO_LBL_DISK_NEXT "Prochain Changement Disque" #define RETRO_LBL_DISK_NEXT "Prochain Changement Disque"
#define RETRO_LBL_DISK_PREV "Précédent Changement Disque" #define RETRO_LBL_DISK_PREV "Précédent Changement Disque"
#define RETRO_LBL_GRAB_MOUSE_TOGGLE "Commutateur capturer la souris" #define RETRO_LBL_GRAB_MOUSE_TOGGLE "Commutateur capturer la souris"
#define RETRO_LBL_MENU_TOGGLE "Commutateur Menu" #define RETRO_LBL_MENU_TOGGLE "Commutateur Menu"

15
intl/italian.h Executable file → Normal file
View File

@ -17,21 +17,12 @@
#ifndef __INTL_ITALIAN_H #ifndef __INTL_ITALIAN_H
#define __INTL_ITALIAN_H #define __INTL_ITALIAN_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];
#define RETRO_LBL_JOYPAD_B "Tasto B RetroPad" #define RETRO_LBL_JOYPAD_B "Tasto B RetroPad"
#define RETRO_LBL_JOYPAD_Y "Tasto Y RetroPad" #define RETRO_LBL_JOYPAD_Y "Tasto Y RetroPad"
#define RETRO_LBL_JOYPAD_SELECT "Tasto Select RetroPad" #define RETRO_LBL_JOYPAD_SELECT "Tasto Select RetroPad"
#define RETRO_LBL_JOYPAD_START "Tasto Start RetroPad" #define RETRO_LBL_JOYPAD_START "Tasto Start RetroPad"
#define RETRO_LBL_JOYPAD_UP "Croce direzionale Sù RetroPad" #define RETRO_LBL_JOYPAD_UP "Croce direzionale Sù RetroPad"
#define RETRO_LBL_JOYPAD_DOWN "Croce direzionale Giù RetroPad" #define RETRO_LBL_JOYPAD_DOWN "Croce direzionale Giù RetroPad"
#define RETRO_LBL_JOYPAD_LEFT "Croce direzionale Sinistra RetroPad" #define RETRO_LBL_JOYPAD_LEFT "Croce direzionale Sinistra RetroPad"
#define RETRO_LBL_JOYPAD_RIGHT "Croce direzionale Destra RetroPad" #define RETRO_LBL_JOYPAD_RIGHT "Croce direzionale Destra RetroPad"
#define RETRO_LBL_JOYPAD_A "Tasto A RetroPad" #define RETRO_LBL_JOYPAD_A "Tasto A RetroPad"
@ -86,6 +77,6 @@ extern const char force_iso_8859_1[sizeof("
#define RETRO_LBL_DISK_NEXT "Cambia Disco Successivo" #define RETRO_LBL_DISK_NEXT "Cambia Disco Successivo"
#define RETRO_LBL_DISK_PREV "Cambia Disco Precedente" #define RETRO_LBL_DISK_PREV "Cambia Disco Precedente"
#define RETRO_LBL_GRAB_MOUSE_TOGGLE "Attiva presa mouse" #define RETRO_LBL_GRAB_MOUSE_TOGGLE "Attiva presa mouse"
#define RETRO_LBL_MENU_TOGGLE "Menù a comparsa" #define RETRO_LBL_MENU_TOGGLE "Menù a comparsa"
#endif #endif

View File

@ -26,22 +26,11 @@
#pragma clang diagnostic ignored "-Winvalid-source-encoding" #pragma clang diagnostic ignored "-Winvalid-source-encoding"
#endif #endif
/* 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_enum(enum msg_hash_enums msg, char *s, size_t len) int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
{ {
uint32_t driver_hash = 0; uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr(); settings_t *settings = config_get_ptr();
(void)sizeof(force_iso_8859_1);
switch (msg) switch (msg)
{ {
case MENU_ENUM_LABEL_CORE_LIST: case MENU_ENUM_LABEL_CORE_LIST:
@ -50,12 +39,12 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n" " \n"
"Suche nach einer Libretro-Core- \n" "Suche nach einer Libretro-Core- \n"
"Implementierung. In welchem Verzeichnis der \n" "Implementierung. In welchem Verzeichnis der \n"
"Browser startet, hängt vom deinem Core-Verzeichnis \n" "Browser startet, hängt vom deinem Core-Verzeichnis \n"
"ab. Falls du es nicht eingestellt hast, wird er \n" "ab. Falls du es nicht eingestellt hast, wird er \n"
"im Root-Verzeichnis starten. \n" "im Root-Verzeichnis starten. \n"
" \n" " \n"
"Ist das Core-Verzeichnis ein Ordner, wird das \n" "Ist das Core-Verzeichnis ein Ordner, wird das \n"
"Menü diesen als Startverzeichnis nutzen. Ist \n" "Menü diesen als Startverzeichnis nutzen. Ist \n"
"das Core-Verzeichnis ein Pfad zu einer Datei, \n" "das Core-Verzeichnis ein Pfad zu einer Datei, \n"
"wird es in dem Verzeichnis starten, in dem \n" "wird es in dem Verzeichnis starten, in dem \n"
"sich die Datei befindet."); "sich die Datei befindet.");
@ -75,23 +64,23 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(t, sizeof(t), snprintf(t, sizeof(t),
"udev-Eingabetreiber. \n" "udev-Eingabetreiber. \n"
" \n" " \n"
"Dieser Treiber kann ohne X ausgeführt werden. \n" "Dieser Treiber kann ohne X ausgeführt werden. \n"
" \n" " \n"
"Er verwende die neue evdev-Joypad-API \n" "Er verwende die neue evdev-Joypad-API \n"
"für die Joystick-Unterstützung und unterstützt \n" "für die Joystick-Unterstützung und unterstützt \n"
"auch Hotplugging und Force-Feedback (wenn das \n" "auch Hotplugging und Force-Feedback (wenn das \n"
"Gerät dies unterstützt). \n" "Gerät dies unterstützt). \n"
" \n" " \n"
); );
snprintf(u, sizeof(u), snprintf(u, sizeof(u),
"Der Treiber liest evdev-Ereigniss für Tastatur- \n" "Der Treiber liest evdev-Ereigniss für Tastatur- \n"
"Unterstützung und kann auch mit Tastatur-Callbacks, \n" "Unterstützung und kann auch mit Tastatur-Callbacks, \n"
"Mäusen und Touchpads umgehen. \n" "Mäusen und Touchpads umgehen. \n"
" \n" " \n"
"Standardmäßig sind die /dev/input-Dateien in den \n" "Standardmäßig sind die /dev/input-Dateien in den \n"
"meisten Linux-Distribution nur für den Root- \n" "meisten Linux-Distribution nur für den Root- \n"
"Benutzer lesbar (mode 600). Du kannst eine udev- \n" "Benutzer lesbar (mode 600). Du kannst eine udev- \n"
"Regel erstellen, die auch den Zugriff für andere \n" "Regel erstellen, die auch den Zugriff für andere \n"
"Benutzer erlaubt."); "Benutzer erlaubt.");
strlcat(s, t, len); strlcat(s, t, len);
strlcat(s, u, len); strlcat(s, u, len);
@ -104,7 +93,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Dieser Treiber erforder eine aktive TTY-Schnittstelle. \n" "Dieser Treiber erforder eine aktive TTY-Schnittstelle. \n"
"Tastatur-Ereignisse werden direkt von der TTY gelesen, \n" "Tastatur-Ereignisse werden direkt von der TTY gelesen, \n"
"was es einfacher, aber weniger flexibel als udev macht. \n" "was es einfacher, aber weniger flexibel als udev macht. \n"
"Mäuse, etc, werden nicht unterstützt. \n" "Mäuse, etc, werden nicht unterstützt. \n"
" \n" " \n"
"Dieser Treiber verwendet die alte Joystick-API \n" "Dieser Treiber verwendet die alte Joystick-API \n"
"(/dev/input/js*)."); "(/dev/input/js*).");
@ -113,7 +102,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Eingabetreiber.\n" "Eingabetreiber.\n"
" \n" " \n"
"Abhängig vom Grafiktreiber kann ein anderer Eingabe- \n" "Abhängig vom Grafiktreiber kann ein anderer Eingabe- \n"
"treiber erzwungen werden."); "treiber erzwungen werden.");
break; break;
} }
@ -123,11 +112,11 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Lade Content. \n" "Lade Content. \n"
"Suche nach Content. \n" "Suche nach Content. \n"
" \n" " \n"
"Um Content zu laden benötigst du den passenden \n" "Um Content zu laden benötigst du den passenden \n"
"Libretro-Core und die Content-Datei. \n" "Libretro-Core und die Content-Datei. \n"
" \n" " \n"
"Um einzustellen, welcher Ordner standardmäßig \n" "Um einzustellen, welcher Ordner standardmäßig \n"
"geöffnet wird, um nach Content zu suchen, solltest \n" "geöffnet wird, um nach Content zu suchen, solltest \n"
"du das Content-Verzeichnis setzen. Wenn es nicht \n" "du das Content-Verzeichnis setzen. Wenn es nicht \n"
"gesetzt ist, wird es im Root-Verzeichen starten. \n" "gesetzt ist, wird es im Root-Verzeichen starten. \n"
" \n" " \n"
@ -141,13 +130,13 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Lade Content aus dem Verlauf. \n" "Lade Content aus dem Verlauf. \n"
" \n" " \n"
"Wenn Content geladen wird, wird der Content \n" "Wenn Content geladen wird, wird der Content \n"
"sowie der dazugehörige Core im Verlauf gespeichert. \n" "sowie der dazugehörige Core im Verlauf gespeichert. \n"
" \n" " \n"
"Der Verlauf wird im selben Verzeichnis wie die \n" "Der Verlauf wird im selben Verzeichnis wie die \n"
"RetroArch-Konfigurationsdatei gespeicher. Wenn \n" "RetroArch-Konfigurationsdatei gespeicher. Wenn \n"
"beim Start keine Konfigurationsdatei geladen wurde, \n" "beim Start keine Konfigurationsdatei geladen wurde, \n"
"wird keine Verlauf geladen oder gespeichert und nicht \n" "wird keine Verlauf geladen oder gespeichert und nicht \n"
"im Hauptmenü angezeigt." "im Hauptmenü angezeigt."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_DRIVER: case MENU_ENUM_LABEL_VIDEO_DRIVER:
@ -164,7 +153,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"verwenden. \n" "verwenden. \n"
" \n" " \n"
"Die Leistung, sowohl bei software-gerenderten, \n" "Die Leistung, sowohl bei software-gerenderten, \n"
"als auch bei Libretro-GL-Cores, hängt von dem \n" "als auch bei Libretro-GL-Cores, hängt von dem \n"
"GL-Treiber deiner Grafikkarte ab."); "GL-Treiber deiner Grafikkarte ab.");
} }
else if (string_is_equal(settings->video.driver, "sdl2")) else if (string_is_equal(settings->video.driver, "sdl2"))
@ -175,7 +164,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Dies ist ein SDL2-Grafiktreiber \n" "Dies ist ein SDL2-Grafiktreiber \n"
"mit Software-Rendering." "mit Software-Rendering."
" \n" " \n"
"Die Leistung hängt von der SDL- \n" "Die Leistung hängt von der SDL- \n"
"Implementierung deiner Plattform ab."); "Implementierung deiner Plattform ab.");
} }
else if (string_is_equal(settings->video.driver, "sdl1")) else if (string_is_equal(settings->video.driver, "sdl1"))
@ -188,7 +177,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n" " \n"
"Die Leistung ist suboptimal und du \n" "Die Leistung ist suboptimal und du \n"
"solltest ihn nur als letzte \n" "solltest ihn nur als letzte \n"
"Möglichkeit verwenden."); "Möglichkeit verwenden.");
} }
else if (string_is_equal(settings->video.driver, "d3d")) else if (string_is_equal(settings->video.driver, "d3d"))
{ {
@ -196,7 +185,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Direct3D-Grafiktreiber. \n" "Direct3D-Grafiktreiber. \n"
" \n" " \n"
"Die Leistung bei software-gerenderten \n" "Die Leistung bei software-gerenderten \n"
"Cores hängt von dem D3D-Treiber deiner \n" "Cores hängt von dem D3D-Treiber deiner \n"
"Grafikkarte ab."); "Grafikkarte ab.");
} }
else if (string_is_equal(settings->video.driver, "exynos")) else if (string_is_equal(settings->video.driver, "exynos"))
@ -206,7 +195,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n" " \n"
"Dies ist ein Low-Level-Exynos-Grafiktreiber. \n" "Dies ist ein Low-Level-Exynos-Grafiktreiber. \n"
"Er verwendet den G2D-Block in Samsung-Exynos-SoCs. \n" "Er verwendet den G2D-Block in Samsung-Exynos-SoCs. \n"
"für Blitting-Operationen. \n" "für Blitting-Operationen. \n"
" \n" " \n"
"Die Leistung bei software-gerendeten Cores sollte \n" "Die Leistung bei software-gerendeten Cores sollte \n"
"optimal sein."); "optimal sein.");
@ -264,18 +253,18 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"HLSL" "HLSL"
#endif #endif
"-Voreinstellung. \n" "-Voreinstellung. \n"
"Das Menüshader-Menü wird entsprechend \n" "Das Menüshader-Menü wird entsprechend \n"
"aktualisiert." "aktualisiert."
" \n" " \n"
"Wenn der CGP komplexe Methoden verwendet, \n" "Wenn der CGP komplexe Methoden verwendet, \n"
"(also andere als Quellskalierung mit dem \n" "(also andere als Quellskalierung mit dem \n"
"selben Faktor für X/Y) kann der im Menü \n" "selben Faktor für X/Y) kann der im Menü \n"
"angezeigte Skalierungsfaktor inkorrekt sein." "angezeigte Skalierungsfaktor inkorrekt sein."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS: case MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS:
snprintf(s, len, snprintf(s, len,
"Für diesen Durchgang skalieren. \n" "Für diesen Durchgang skalieren. \n"
" \n" " \n"
"Der Skalierungsfaktor wird multipliziert, \n" "Der Skalierungsfaktor wird multipliziert, \n"
"d.h. 2x im ersten Durchgang und 2x im \n" "d.h. 2x im ersten Durchgang und 2x im \n"
@ -285,24 +274,24 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
"Wenn es im letzten Durchgang einen \n" "Wenn es im letzten Durchgang einen \n"
"Skalierungsfaktor gibt, wird das Ergebnis \n" "Skalierungsfaktor gibt, wird das Ergebnis \n"
"mit dem als 'Standardfilter' eingestellten \n" "mit dem als 'Standardfilter' eingestellten \n"
"Filter auf die Bildschirmgröße gestreckt. \n" "Filter auf die Bildschirmgröße gestreckt. \n"
" \n" " \n"
"Wenn 'Mir egal' eingestellt ist, wird \n" "Wenn 'Mir egal' eingestellt ist, wird \n"
"entweder einfache Skalierung or Vollbild- \n" "entweder einfache Skalierung or Vollbild- \n"
"Streckung verwendet - abhängig davon, ob \n" "Streckung verwendet - abhängig davon, ob \n"
"es der letzte Durchgang ist oder nicht." "es der letzte Durchgang ist oder nicht."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES: case MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES:
snprintf(s, len, snprintf(s, len,
"Shader-Durchgänge. \n" "Shader-Durchgänge. \n"
" \n" " \n"
"RetroArch erlaubt es dir, verschiedene Shader \n" "RetroArch erlaubt es dir, verschiedene Shader \n"
"in verschiedenen Durchgängen miteinander zu \n" "in verschiedenen Durchgängen miteinander zu \n"
"kombinieren. \n" "kombinieren. \n"
" \n" " \n"
"Diese Option legt die Anzahl der Shader- \n" "Diese Option legt die Anzahl der Shader- \n"
"Durchgänge fest. Wenn du die Anzahl auf 0 setzt, \n" "Durchgänge fest. Wenn du die Anzahl auf 0 setzt, \n"
"verwendest du einen 'leeren' Shader." "verwendest du einen 'leeren' Shader."
" \n" " \n"
"Die 'Standardfilter'-Option beeinflusst den \n" "Die 'Standardfilter'-Option beeinflusst den \n"
@ -312,15 +301,15 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Shader-Parameter. \n" "Shader-Parameter. \n"
" \n" " \n"
"Verändert den momentanen Shader. Wird nicht in \n" "Verändert den momentanen Shader. Wird nicht in \n"
"der CGP/GLSLP-Voreinstellungs-Datei gespeichert."); "der CGP/GLSLP-Voreinstellungs-Datei gespeichert.");
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_PARAMETERS: case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len, snprintf(s, len,
"Shader-Voreinstellung-Parameter. \n" "Shader-Voreinstellung-Parameter. \n"
" \n" " \n"
"Verändert die Shader-Voreinstellung, die aktuell \n" "Verändert die Shader-Voreinstellung, die aktuell \n"
"im Menü aktiv ist." "im Menü aktiv ist."
); );
break; break;
/* /*
@ -336,9 +325,9 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
break; break;
case MENU_ENUM_LABEL_REWIND: case MENU_ENUM_LABEL_REWIND:
snprintf(s, len, snprintf(s, len,
"Halte die Taste zum Zurückspulen gedrückt.\n" "Halte die Taste zum Zurückspulen gedrückt.\n"
" \n" " \n"
"Die Zurückspulfunktion muss eingeschaltet \n" "Die Zurückspulfunktion muss eingeschaltet \n"
"sein."); "sein.");
break; break;
case MENU_ENUM_LABEL_EXIT_EMULATOR: case MENU_ENUM_LABEL_EXIT_EMULATOR:
@ -355,7 +344,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
break; break;
case MENU_ENUM_LABEL_LOAD_STATE: case MENU_ENUM_LABEL_LOAD_STATE:
snprintf(s, len, snprintf(s, len,
"Lädt einen Savestate."); "Lädt einen Savestate.");
break; break;
case MENU_ENUM_LABEL_SAVE_STATE: case MENU_ENUM_LABEL_SAVE_STATE:
snprintf(s, len, snprintf(s, len,
@ -367,7 +356,7 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
break; break;
case MENU_ENUM_LABEL_CHEAT_INDEX_PLUS: case MENU_ENUM_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len, snprintf(s, len,
"Erhöht den Cheat-Index.\n"); "Erhöht den Cheat-Index.\n");
break; break;
case MENU_ENUM_LABEL_CHEAT_INDEX_MINUS: case MENU_ENUM_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len, snprintf(s, len,
@ -379,11 +368,11 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
break; break;
case MENU_ENUM_LABEL_SHADER_NEXT: case MENU_ENUM_LABEL_SHADER_NEXT:
snprintf(s, len, snprintf(s, len,
"Wendet nächsten Shader im Verzeichnis an."); "Wendet nächsten Shader im Verzeichnis an.");
break; break;
case MENU_ENUM_LABEL_RESET: case MENU_ENUM_LABEL_RESET:
snprintf(s, len, snprintf(s, len,
"Setzt den Content zurück.\n"); "Setzt den Content zurück.\n");
break; break;
case MENU_ENUM_LABEL_PAUSE_TOGGLE: case MENU_ENUM_LABEL_PAUSE_TOGGLE:
snprintf(s, len, snprintf(s, len,
@ -395,12 +384,12 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
break; break;
case MENU_ENUM_LABEL_HOLD_FAST_FORWARD: case MENU_ENUM_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len, snprintf(s, len,
"Halte den Knopf gedrückt, um vorzuspulen. Beim Loslassen \n" "Halte den Knopf gedrückt, um vorzuspulen. Beim Loslassen \n"
"wird das Vorspulen beendet."); "wird das Vorspulen beendet.");
break; break;
case MENU_ENUM_LABEL_SLOWMOTION: case MENU_ENUM_LABEL_SLOWMOTION:
snprintf(s, len, snprintf(s, len,
"Halte den Knopf gedrückt, um die Zeitlupe einzuschalten."); "Halte den Knopf gedrückt, um die Zeitlupe einzuschalten.");
break; break;
case MENU_ENUM_LABEL_FRAME_ADVANCE: case MENU_ENUM_LABEL_FRAME_ADVANCE:
snprintf(s, len, snprintf(s, len,
@ -419,9 +408,9 @@ int menu_hash_get_help_de_enum(enum msg_hash_enums msg, char *s, size_t len)
case MENU_ENUM_LABEL_R_Y_PLUS: case MENU_ENUM_LABEL_R_Y_PLUS:
case MENU_ENUM_LABEL_R_Y_MINUS: case MENU_ENUM_LABEL_R_Y_MINUS:
snprintf(s, len, snprintf(s, len,
"Achse für Analog-Stick (DualShock-artig).\n" "Achse für Analog-Stick (DualShock-artig).\n"
" \n" " \n"
"Zugewiesen wie gewöhnlich, wenn jedoch eine echte \n" "Zugewiesen wie gewöhnlich, wenn jedoch eine echte \n"
"Analogachse zugewiesen wird, kann sie auch wirklich \n" "Analogachse zugewiesen wird, kann sie auch wirklich \n"
"analog gelesen werden.\n" "analog gelesen werden.\n"
" \n" " \n"
@ -458,17 +447,17 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LOAD_ARCHIVE: case MENU_ENUM_LABEL_VALUE_LOAD_ARCHIVE:
return "Lade Archiv"; return "Lade Archiv";
case MENU_ENUM_LABEL_VALUE_OPEN_ARCHIVE: case MENU_ENUM_LABEL_VALUE_OPEN_ARCHIVE:
return "Öffne Archiv"; return "Öffne Archiv";
case MENU_ENUM_LABEL_VALUE_ASK_ARCHIVE: case MENU_ENUM_LABEL_VALUE_ASK_ARCHIVE:
return "Nachfragen"; return "Nachfragen";
case MENU_ENUM_LABEL_VALUE_PRIVACY_SETTINGS: case MENU_ENUM_LABEL_VALUE_PRIVACY_SETTINGS:
return "Privatsphäre-Einstellungen"; return "Privatsphäre-Einstellungen";
case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU: /* Don't change. Breaks everything. (Would be: "Horizontales Menu") */ case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU: /* Don't change. Breaks everything. (Would be: "Horizontales Menu") */
return "Horizontal Menu"; return "Horizontal Menu";
case MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND: case MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND:
return "Keine Einstellungen gefunden."; return "Keine Einstellungen gefunden.";
case MENU_ENUM_LABEL_VALUE_NO_PERFORMANCE_COUNTERS: case MENU_ENUM_LABEL_VALUE_NO_PERFORMANCE_COUNTERS:
return "Keine Leistungszähler."; return "Keine Leistungszähler.";
case MENU_ENUM_LABEL_VALUE_DRIVER_SETTINGS: case MENU_ENUM_LABEL_VALUE_DRIVER_SETTINGS:
return "Treiber-Einstellungen"; return "Treiber-Einstellungen";
case MENU_ENUM_LABEL_VALUE_CONFIGURATION_SETTINGS: case MENU_ENUM_LABEL_VALUE_CONFIGURATION_SETTINGS:
@ -482,7 +471,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS: case MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS:
return "Spielstand-Einstellungen"; return "Spielstand-Einstellungen";
case MENU_ENUM_LABEL_VALUE_REWIND_SETTINGS: case MENU_ENUM_LABEL_VALUE_REWIND_SETTINGS:
return "Zurückspul-Einstellungen"; return "Zurückspul-Einstellungen";
case MENU_ENUM_LABEL_VALUE_SHADER: case MENU_ENUM_LABEL_VALUE_SHADER:
return "Shader"; return "Shader";
case MENU_ENUM_LABEL_VALUE_CHEAT: case MENU_ENUM_LABEL_VALUE_CHEAT:
@ -506,7 +495,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_FONT_PATH: case MENU_ENUM_LABEL_VALUE_VIDEO_FONT_PATH:
return "Schriftart der OSD-Nachrichten"; return "Schriftart der OSD-Nachrichten";
case MENU_ENUM_LABEL_VALUE_VIDEO_FONT_SIZE: case MENU_ENUM_LABEL_VALUE_VIDEO_FONT_SIZE:
return "Schriftgröße der OSD-Nachrichten"; return "Schriftgröße der OSD-Nachrichten";
case MENU_ENUM_LABEL_VALUE_VIDEO_MESSAGE_POS_X: case MENU_ENUM_LABEL_VALUE_VIDEO_MESSAGE_POS_X:
return "X-Position der OSD-Nachrichten"; return "X-Position der OSD-Nachrichten";
case MENU_ENUM_LABEL_VALUE_VIDEO_MESSAGE_POS_Y: case MENU_ENUM_LABEL_VALUE_VIDEO_MESSAGE_POS_Y:
@ -524,17 +513,17 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LINEAR: case MENU_ENUM_LABEL_VALUE_LINEAR:
return "Linear"; return "Linear";
case MENU_ENUM_LABEL_VALUE_NEAREST: case MENU_ENUM_LABEL_VALUE_NEAREST:
return "Nächster"; return "Nächster";
case MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT: case MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT:
return "<Voreinstellung>"; return "<Voreinstellung>";
case MENU_ENUM_LABEL_VALUE_DIRECTORY_NONE: case MENU_ENUM_LABEL_VALUE_DIRECTORY_NONE:
return "<Keins>"; return "<Keins>";
case MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE:
return "Nicht verfügbar"; return "Nicht verfügbar";
case MENU_ENUM_LABEL_VALUE_INPUT_REMAPPING_DIRECTORY: /* UPDATE/FIXME */ case MENU_ENUM_LABEL_VALUE_INPUT_REMAPPING_DIRECTORY: /* UPDATE/FIXME */
return "Eingabebelegungs-Verzeichnis"; return "Eingabebelegungs-Verzeichnis";
case MENU_ENUM_LABEL_VALUE_JOYPAD_AUTOCONFIG_DIR: case MENU_ENUM_LABEL_VALUE_JOYPAD_AUTOCONFIG_DIR:
return "Eingabegerät-Autoconfig-Verzeichnis"; return "Eingabegerät-Autoconfig-Verzeichnis";
case MENU_ENUM_LABEL_VALUE_RECORDING_CONFIG_DIRECTORY: case MENU_ENUM_LABEL_VALUE_RECORDING_CONFIG_DIRECTORY:
return "Aufnahme-Konfigurationsverzeichnis"; return "Aufnahme-Konfigurationsverzeichnis";
case MENU_ENUM_LABEL_VALUE_RECORDING_OUTPUT_DIRECTORY: case MENU_ENUM_LABEL_VALUE_RECORDING_OUTPUT_DIRECTORY:
@ -568,7 +557,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_ASSETS_DIRECTORY: case MENU_ENUM_LABEL_VALUE_ASSETS_DIRECTORY:
return "Assets-Verzeichnis"; return "Assets-Verzeichnis";
case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPERS_DIRECTORY: case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPERS_DIRECTORY:
return "Dynamische-Bildschirmhintergründe-Verzeichnis"; return "Dynamische-Bildschirmhintergründe-Verzeichnis";
case MENU_ENUM_LABEL_VALUE_RGUI_BROWSER_DIRECTORY: case MENU_ENUM_LABEL_VALUE_RGUI_BROWSER_DIRECTORY:
return "Browser-Directory"; return "Browser-Directory";
case MENU_ENUM_LABEL_VALUE_RGUI_CONFIG_DIRECTORY: case MENU_ENUM_LABEL_VALUE_RGUI_CONFIG_DIRECTORY:
@ -602,35 +591,35 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_NETPLAY_SPECTATOR_MODE_ENABLE: case MENU_ENUM_LABEL_VALUE_NETPLAY_SPECTATOR_MODE_ENABLE:
return "Aktiviere Netplay-Zuschauermodus"; return "Aktiviere Netplay-Zuschauermodus";
case MENU_ENUM_LABEL_VALUE_NETPLAY_IP_ADDRESS: case MENU_ENUM_LABEL_VALUE_NETPLAY_IP_ADDRESS:
return "IP-Addresse für Netplay"; return "IP-Addresse für Netplay";
case MENU_ENUM_LABEL_VALUE_NETPLAY_TCP_UDP_PORT: case MENU_ENUM_LABEL_VALUE_NETPLAY_TCP_UDP_PORT:
return "TCP/UDP-Port für Netplay"; return "TCP/UDP-Port für Netplay";
case MENU_ENUM_LABEL_VALUE_NETPLAY_ENABLE: case MENU_ENUM_LABEL_VALUE_NETPLAY_ENABLE:
return "Aktiviere Netplay"; return "Aktiviere Netplay";
case MENU_ENUM_LABEL_VALUE_NETPLAY_DELAY_FRAMES: case MENU_ENUM_LABEL_VALUE_NETPLAY_DELAY_FRAMES:
return "Verzögere Netplay-Frames"; return "Verzögere Netplay-Frames";
case MENU_ENUM_LABEL_VALUE_NETPLAY_MODE: case MENU_ENUM_LABEL_VALUE_NETPLAY_MODE:
return "Aktiviere Netplay-Client"; return "Aktiviere Netplay-Client";
case MENU_ENUM_LABEL_VALUE_RGUI_SHOW_START_SCREEN: case MENU_ENUM_LABEL_VALUE_RGUI_SHOW_START_SCREEN:
return "Zeige Startbildschirm"; return "Zeige Startbildschirm";
case MENU_ENUM_LABEL_VALUE_TITLE_COLOR: case MENU_ENUM_LABEL_VALUE_TITLE_COLOR:
return "Menü-Titel-Farbe"; return "Menü-Titel-Farbe";
case MENU_ENUM_LABEL_VALUE_ENTRY_HOVER_COLOR: case MENU_ENUM_LABEL_VALUE_ENTRY_HOVER_COLOR:
return "Hover-Farbe für Menü-Einträge"; return "Hover-Farbe für Menü-Einträge";
case MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE: case MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE:
return "Zeige Uhrzeit / Datum"; return "Zeige Uhrzeit / Datum";
case MENU_ENUM_LABEL_VALUE_THREADED_DATA_RUNLOOP_ENABLE: case MENU_ENUM_LABEL_VALUE_THREADED_DATA_RUNLOOP_ENABLE:
return "Threaded Data Runloop"; return "Threaded Data Runloop";
case MENU_ENUM_LABEL_VALUE_ENTRY_NORMAL_COLOR: case MENU_ENUM_LABEL_VALUE_ENTRY_NORMAL_COLOR:
return "Normale Farbe für Menü-Einträge"; return "Normale Farbe für Menü-Einträge";
case MENU_ENUM_LABEL_VALUE_SHOW_ADVANCED_SETTINGS: case MENU_ENUM_LABEL_VALUE_SHOW_ADVANCED_SETTINGS:
return "Zeige erweitere Einstellungen"; return "Zeige erweitere Einstellungen";
case MENU_ENUM_LABEL_VALUE_COLLAPSE_SUBGROUPS_ENABLE: case MENU_ENUM_LABEL_VALUE_COLLAPSE_SUBGROUPS_ENABLE:
return "Untergruppen einklappen"; return "Untergruppen einklappen";
case MENU_ENUM_LABEL_VALUE_MOUSE_ENABLE: case MENU_ENUM_LABEL_VALUE_MOUSE_ENABLE:
return "Maus-Unterstützung"; return "Maus-Unterstützung";
case MENU_ENUM_LABEL_VALUE_POINTER_ENABLE: case MENU_ENUM_LABEL_VALUE_POINTER_ENABLE:
return "Touch-Unterstützung"; return "Touch-Unterstützung";
case MENU_ENUM_LABEL_VALUE_CORE_ENABLE: case MENU_ENUM_LABEL_VALUE_CORE_ENABLE:
return "Zeige Core-Namen"; return "Zeige Core-Namen";
case MENU_ENUM_LABEL_VALUE_DPI_OVERRIDE_ENABLE: case MENU_ENUM_LABEL_VALUE_DPI_OVERRIDE_ENABLE:
@ -646,31 +635,31 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_UI_COMPANION_START_ON_BOOT: case MENU_ENUM_LABEL_VALUE_UI_COMPANION_START_ON_BOOT:
return "UI-Companion beim Hochfahren starten"; return "UI-Companion beim Hochfahren starten";
case MENU_ENUM_LABEL_VALUE_UI_MENUBAR_ENABLE: case MENU_ENUM_LABEL_VALUE_UI_MENUBAR_ENABLE:
return "Menüleiste"; return "Menüleiste";
case MENU_ENUM_LABEL_VALUE_ARCHIVE_MODE: case MENU_ENUM_LABEL_VALUE_ARCHIVE_MODE:
return "Verknüpfte Aktion bei Archivdateien"; return "Verknüpfte Aktion bei Archivdateien";
case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_ENABLE: case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_ENABLE:
return "Netzwerk-Befehle"; return "Netzwerk-Befehle";
case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_PORT: case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_PORT:
return "Port für Netzwerk-Befehle"; return "Port für Netzwerk-Befehle";
case MENU_ENUM_LABEL_VALUE_HISTORY_LIST_ENABLE: case MENU_ENUM_LABEL_VALUE_HISTORY_LIST_ENABLE:
return "Aktiviere Verlaufsliste"; return "Aktiviere Verlaufsliste";
case MENU_ENUM_LABEL_VALUE_CONTENT_HISTORY_SIZE: case MENU_ENUM_LABEL_VALUE_CONTENT_HISTORY_SIZE:
return "Länge der Verlaufsliste"; return "Länge der Verlaufsliste";
case MENU_ENUM_LABEL_VALUE_VIDEO_REFRESH_RATE_AUTO: case MENU_ENUM_LABEL_VALUE_VIDEO_REFRESH_RATE_AUTO:
return "Geschätzte Monitor-Bildrate"; return "Geschätzte Monitor-Bildrate";
case MENU_ENUM_LABEL_VALUE_DUMMY_ON_CORE_SHUTDOWN: case MENU_ENUM_LABEL_VALUE_DUMMY_ON_CORE_SHUTDOWN:
return "Dummy bei Core-Abschaltung"; return "Dummy bei Core-Abschaltung";
case MENU_ENUM_LABEL_VALUE_CORE_SET_SUPPORTS_NO_CONTENT_ENABLE: /* TODO/FIXME */ case MENU_ENUM_LABEL_VALUE_CORE_SET_SUPPORTS_NO_CONTENT_ENABLE: /* TODO/FIXME */
return "Cores nicht automatisch starten"; return "Cores nicht automatisch starten";
case MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_ENABLE: case MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_ENABLE:
return "Begrenze maximale Ausführungsgeschwindigkeit"; return "Begrenze maximale Ausführungsgeschwindigkeit";
case MENU_ENUM_LABEL_VALUE_FASTFORWARD_RATIO: case MENU_ENUM_LABEL_VALUE_FASTFORWARD_RATIO:
return "Maximale Ausführungsgeschwindigkeitd"; return "Maximale Ausführungsgeschwindigkeitd";
case MENU_ENUM_LABEL_VALUE_AUTO_REMAPS_ENABLE: case MENU_ENUM_LABEL_VALUE_AUTO_REMAPS_ENABLE:
return "Lade Remap-Dateien automatisch"; return "Lade Remap-Dateien automatisch";
case MENU_ENUM_LABEL_VALUE_SLOWMOTION_RATIO: case MENU_ENUM_LABEL_VALUE_SLOWMOTION_RATIO:
return "Zeitlupen-Verhältnis"; return "Zeitlupen-Verhältnis";
case MENU_ENUM_LABEL_VALUE_CORE_SPECIFIC_CONFIG: case MENU_ENUM_LABEL_VALUE_CORE_SPECIFIC_CONFIG:
return "Core-Spezifische Konfiguration"; return "Core-Spezifische Konfiguration";
case MENU_ENUM_LABEL_VALUE_AUTO_OVERRIDES_ENABLE: case MENU_ENUM_LABEL_VALUE_AUTO_OVERRIDES_ENABLE:
@ -696,13 +685,13 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_GPU_SCREENSHOT: case MENU_ENUM_LABEL_VALUE_VIDEO_GPU_SCREENSHOT:
return "Aktiviere GPU-Bildschirmfotos"; return "Aktiviere GPU-Bildschirmfotos";
case MENU_ENUM_LABEL_VALUE_VIDEO_CROP_OVERSCAN: case MENU_ENUM_LABEL_VALUE_VIDEO_CROP_OVERSCAN:
return "Bildränder (Overscan) zuschneiden (Neustart erforderlich)"; return "Bildränder (Overscan) zuschneiden (Neustart erforderlich)";
case MENU_ENUM_LABEL_VALUE_VIDEO_ASPECT_RATIO_INDEX: case MENU_ENUM_LABEL_VALUE_VIDEO_ASPECT_RATIO_INDEX:
return "Bildseitenverhältnis-Index"; return "Bildseitenverhältnis-Index";
case MENU_ENUM_LABEL_VALUE_VIDEO_ASPECT_RATIO_AUTO: case MENU_ENUM_LABEL_VALUE_VIDEO_ASPECT_RATIO_AUTO:
return "Automatisches Bildseitenverhältnis"; return "Automatisches Bildseitenverhältnis";
case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_ASPECT: case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_ASPECT:
return "Erzwinge Bildseitenverhältnis"; return "Erzwinge Bildseitenverhältnis";
case MENU_ENUM_LABEL_VALUE_VIDEO_REFRESH_RATE: case MENU_ENUM_LABEL_VALUE_VIDEO_REFRESH_RATE:
return "Bildwiederholrate"; return "Bildwiederholrate";
case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_SRGB_DISABLE: case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_SRGB_DISABLE:
@ -734,7 +723,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LIBRETRO_LOG_LEVEL: case MENU_ENUM_LABEL_VALUE_LIBRETRO_LOG_LEVEL:
return "Core-Logging-Stufe"; return "Core-Logging-Stufe";
case MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY: case MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY:
return "Log-Ausführlichkeit"; return "Log-Ausführlichkeit";
case MENU_ENUM_LABEL_VALUE_SAVESTATE_AUTO_LOAD: case MENU_ENUM_LABEL_VALUE_SAVESTATE_AUTO_LOAD:
return "Automatisches Laden von Save States"; return "Automatisches Laden von Save States";
case MENU_ENUM_LABEL_VALUE_SAVESTATE_AUTO_INDEX: case MENU_ENUM_LABEL_VALUE_SAVESTATE_AUTO_INDEX:
@ -744,7 +733,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_AUTOSAVE_INTERVAL: case MENU_ENUM_LABEL_VALUE_AUTOSAVE_INTERVAL:
return "Autospeicherungsintervall"; return "Autospeicherungsintervall";
case MENU_ENUM_LABEL_VALUE_BLOCK_SRAM_OVERWRITE: case MENU_ENUM_LABEL_VALUE_BLOCK_SRAM_OVERWRITE:
return "Blockiere SRAM-Überschreibung"; return "Blockiere SRAM-Überschreibung";
case MENU_ENUM_LABEL_VALUE_VIDEO_SHARED_CONTEXT: case MENU_ENUM_LABEL_VALUE_VIDEO_SHARED_CONTEXT:
return "HW-Shared-Context aktivieren"; return "HW-Shared-Context aktivieren";
case MENU_ENUM_LABEL_VALUE_RESTART_RETROARCH: case MENU_ENUM_LABEL_VALUE_RESTART_RETROARCH:
@ -758,7 +747,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LOCATION_ALLOW: case MENU_ENUM_LABEL_VALUE_LOCATION_ALLOW:
return "Erlaube Standort-Lokalisierung"; return "Erlaube Standort-Lokalisierung";
case MENU_ENUM_LABEL_VALUE_PAUSE_LIBRETRO: case MENU_ENUM_LABEL_VALUE_PAUSE_LIBRETRO:
return "Pausiere, wenn das Menü aktiv ist"; return "Pausiere, wenn das Menü aktiv ist";
case MENU_ENUM_LABEL_VALUE_INPUT_OSK_OVERLAY_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_OSK_OVERLAY_ENABLE:
return "Zeige Tastatur-Overlay"; return "Zeige Tastatur-Overlay";
case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_ENABLE:
@ -766,7 +755,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_MONITOR_INDEX: case MENU_ENUM_LABEL_VALUE_VIDEO_MONITOR_INDEX:
return "Monitor-Index"; return "Monitor-Index";
case MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY: case MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY:
return "Bildverzögerung"; return "Bildverzögerung";
case MENU_ENUM_LABEL_VALUE_INPUT_DUTY_CYCLE: case MENU_ENUM_LABEL_VALUE_INPUT_DUTY_CYCLE:
return "Auslastungsgrad"; return "Auslastungsgrad";
case MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD: case MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD:
@ -784,17 +773,17 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_AUDIO_MAX_TIMING_SKEW: case MENU_ENUM_LABEL_VALUE_AUDIO_MAX_TIMING_SKEW:
return "Maximaler Audioversatz"; return "Maximaler Audioversatz";
case MENU_ENUM_LABEL_VALUE_CHEAT_NUM_PASSES: case MENU_ENUM_LABEL_VALUE_CHEAT_NUM_PASSES:
return "Cheat-Durchgänge"; return "Cheat-Durchgänge";
case MENU_ENUM_LABEL_VALUE_REMAP_FILE_SAVE_CORE: case MENU_ENUM_LABEL_VALUE_REMAP_FILE_SAVE_CORE:
return "Speichere Core-Remap-Datei"; return "Speichere Core-Remap-Datei";
case MENU_ENUM_LABEL_VALUE_REMAP_FILE_SAVE_GAME: case MENU_ENUM_LABEL_VALUE_REMAP_FILE_SAVE_GAME:
return "Speichere Spiel-Remap-Datei"; return "Speichere Spiel-Remap-Datei";
case MENU_ENUM_LABEL_VALUE_CHEAT_APPLY_CHANGES: case MENU_ENUM_LABEL_VALUE_CHEAT_APPLY_CHANGES:
return "Änderungen übernehmen"; return "Änderungen übernehmen";
case MENU_ENUM_LABEL_VALUE_SHADER_APPLY_CHANGES: case MENU_ENUM_LABEL_VALUE_SHADER_APPLY_CHANGES:
return "Änderungen übernehmen"; return "Änderungen übernehmen";
case MENU_ENUM_LABEL_VALUE_REWIND_ENABLE: case MENU_ENUM_LABEL_VALUE_REWIND_ENABLE:
return "Zurückspulen (Rewind) aktivieren"; return "Zurückspulen (Rewind) aktivieren";
case MENU_ENUM_LABEL_VALUE_CONTENT_COLLECTION_LIST: case MENU_ENUM_LABEL_VALUE_CONTENT_COLLECTION_LIST:
return "Lade Content (Sammlung)"; /* FIXME */ return "Lade Content (Sammlung)"; /* FIXME */
case MENU_ENUM_LABEL_VALUE_DETECT_CORE_LIST: case MENU_ENUM_LABEL_VALUE_DETECT_CORE_LIST:
@ -808,29 +797,29 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_AUDIO_MUTE: case MENU_ENUM_LABEL_VALUE_AUDIO_MUTE:
return "Stumm"; return "Stumm";
case MENU_ENUM_LABEL_VALUE_AUDIO_VOLUME: case MENU_ENUM_LABEL_VALUE_AUDIO_VOLUME:
return "Lautstärke (dB)"; return "Lautstärke (dB)";
case MENU_ENUM_LABEL_VALUE_AUDIO_SYNC: case MENU_ENUM_LABEL_VALUE_AUDIO_SYNC:
return "Synchronisiere Audio"; return "Synchronisiere Audio";
case MENU_ENUM_LABEL_VALUE_AUDIO_RATE_CONTROL_DELTA: case MENU_ENUM_LABEL_VALUE_AUDIO_RATE_CONTROL_DELTA:
return "Audio Rate Control Delta"; return "Audio Rate Control Delta";
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_NUM_PASSES: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_NUM_PASSES:
return "Shader-Durchgänge"; /* FIXME */ return "Shader-Durchgänge"; /* FIXME */
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_SHA1: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_SHA1:
return "SHA1"; return "SHA1";
case MENU_ENUM_LABEL_VALUE_CONFIGURATIONS: case MENU_ENUM_LABEL_VALUE_CONFIGURATIONS:
return "Lade Konfigurationsdatei"; /* FIXME/UPDATE */ return "Lade Konfigurationsdatei"; /* FIXME/UPDATE */
case MENU_ENUM_LABEL_VALUE_REWIND_GRANULARITY: case MENU_ENUM_LABEL_VALUE_REWIND_GRANULARITY:
return "Genauigkeit des Zurückspulens (Rewind)"; return "Genauigkeit des Zurückspulens (Rewind)";
case MENU_ENUM_LABEL_VALUE_REMAP_FILE_LOAD: case MENU_ENUM_LABEL_VALUE_REMAP_FILE_LOAD:
return "Lade Remap-Datei"; return "Lade Remap-Datei";
case MENU_ENUM_LABEL_VALUE_CUSTOM_RATIO: case MENU_ENUM_LABEL_VALUE_CUSTOM_RATIO:
return "Benutzerdefiniertes Verhältnis"; return "Benutzerdefiniertes Verhältnis";
case MENU_ENUM_LABEL_VALUE_USE_THIS_DIRECTORY: case MENU_ENUM_LABEL_VALUE_USE_THIS_DIRECTORY:
return "<Diesen Ordner verwenden>"; return "<Diesen Ordner verwenden>";
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_START_CONTENT: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_START_CONTENT:
return "Starte Content"; return "Starte Content";
case MENU_ENUM_LABEL_VALUE_DISK_OPTIONS: /* UPDATE/FIXME */ case MENU_ENUM_LABEL_VALUE_DISK_OPTIONS: /* UPDATE/FIXME */
return "Datenträger-Optionen"; return "Datenträger-Optionen";
case MENU_ENUM_LABEL_VALUE_CORE_OPTIONS: case MENU_ENUM_LABEL_VALUE_CORE_OPTIONS:
return "Optionen"; return "Optionen";
case MENU_ENUM_LABEL_VALUE_CORE_CHEAT_OPTIONS: case MENU_ENUM_LABEL_VALUE_CORE_CHEAT_OPTIONS:
@ -840,27 +829,27 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_CHEAT_FILE_SAVE_AS: case MENU_ENUM_LABEL_VALUE_CHEAT_FILE_SAVE_AS:
return "Speichere Cheat-Datei unter..."; return "Speichere Cheat-Datei unter...";
case MENU_ENUM_LABEL_VALUE_CORE_COUNTERS: case MENU_ENUM_LABEL_VALUE_CORE_COUNTERS:
return "Core-Zähler"; return "Core-Zähler";
case MENU_ENUM_LABEL_VALUE_TAKE_SCREENSHOT: case MENU_ENUM_LABEL_VALUE_TAKE_SCREENSHOT:
return "Bildschirmfoto"; return "Bildschirmfoto";
case MENU_ENUM_LABEL_VALUE_RESUME: case MENU_ENUM_LABEL_VALUE_RESUME:
return "Fortsetzen"; return "Fortsetzen";
case MENU_ENUM_LABEL_VALUE_DISK_INDEX: case MENU_ENUM_LABEL_VALUE_DISK_INDEX:
return "Datenträger-Nummer"; return "Datenträger-Nummer";
case MENU_ENUM_LABEL_VALUE_FRONTEND_COUNTERS: case MENU_ENUM_LABEL_VALUE_FRONTEND_COUNTERS:
return "Frontendzähler"; return "Frontendzähler";
case MENU_ENUM_LABEL_VALUE_DISK_IMAGE_APPEND: case MENU_ENUM_LABEL_VALUE_DISK_IMAGE_APPEND:
return "Füge Datenträgerabbild hinzu"; return "Füge Datenträgerabbild hinzu";
case MENU_ENUM_LABEL_VALUE_DISK_CYCLE_TRAY_STATUS: case MENU_ENUM_LABEL_VALUE_DISK_CYCLE_TRAY_STATUS:
return "Datenträgerstatus"; return "Datenträgerstatus";
case MENU_ENUM_LABEL_VALUE_NO_PLAYLIST_ENTRIES_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NO_PLAYLIST_ENTRIES_AVAILABLE:
return "Keine Wiedergabelisten-Eintrage verfügbar."; return "Keine Wiedergabelisten-Eintrage verfügbar.";
case MENU_ENUM_LABEL_VALUE_NO_CORE_INFORMATION_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NO_CORE_INFORMATION_AVAILABLE:
return "Keine Core-Informationen verfügbar."; return "Keine Core-Informationen verfügbar.";
case MENU_ENUM_LABEL_VALUE_NO_CORE_OPTIONS_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NO_CORE_OPTIONS_AVAILABLE:
return "Keine Core-Optionen verfügbar."; return "Keine Core-Optionen verfügbar.";
case MENU_ENUM_LABEL_VALUE_NO_CORES_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NO_CORES_AVAILABLE:
return "Kein Core verfügbar."; return "Kein Core verfügbar.";
case MENU_ENUM_LABEL_VALUE_NO_CORE: case MENU_ENUM_LABEL_VALUE_NO_CORE:
return "Kein Core"; return "Kein Core";
case MENU_ENUM_LABEL_VALUE_DATABASE_MANAGER: case MENU_ENUM_LABEL_VALUE_DATABASE_MANAGER:
@ -868,7 +857,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_CURSOR_MANAGER: case MENU_ENUM_LABEL_VALUE_CURSOR_MANAGER:
return "Cursormanager"; return "Cursormanager";
case MENU_ENUM_LABEL_VALUE_MAIN_MENU: case MENU_ENUM_LABEL_VALUE_MAIN_MENU:
return "Hauptmenü"; return "Hauptmenü";
case MENU_ENUM_LABEL_VALUE_SETTINGS: case MENU_ENUM_LABEL_VALUE_SETTINGS:
return "Einstellungen"; return "Einstellungen";
case MENU_ENUM_LABEL_VALUE_QUIT_RETROARCH: case MENU_ENUM_LABEL_VALUE_QUIT_RETROARCH:
@ -900,13 +889,13 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_DIRECTORY_NOT_FOUND: case MENU_ENUM_LABEL_VALUE_DIRECTORY_NOT_FOUND:
return "Ordner nicht gefunden."; return "Ordner nicht gefunden.";
case MENU_ENUM_LABEL_VALUE_NO_ITEMS: case MENU_ENUM_LABEL_VALUE_NO_ITEMS:
return "Keine Einträge."; return "Keine Einträge.";
case MENU_ENUM_LABEL_VALUE_CORE_LIST: case MENU_ENUM_LABEL_VALUE_CORE_LIST:
return "Lade Core"; return "Lade Core";
case MENU_ENUM_LABEL_VALUE_LOAD_CONTENT: case MENU_ENUM_LABEL_VALUE_LOAD_CONTENT:
return "Lade Content"; /* FIXME */ return "Lade Content"; /* FIXME */
case MENU_ENUM_LABEL_VALUE_CLOSE_CONTENT: case MENU_ENUM_LABEL_VALUE_CLOSE_CONTENT:
return "Schließe"; return "Schließe";
case MENU_ENUM_LABEL_VALUE_MANAGEMENT: case MENU_ENUM_LABEL_VALUE_MANAGEMENT:
return "Datenbank-Einstellungen"; return "Datenbank-Einstellungen";
case MENU_ENUM_LABEL_VALUE_SAVE_STATE: case MENU_ENUM_LABEL_VALUE_SAVE_STATE:
@ -926,7 +915,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_RECORD_DRIVER: case MENU_ENUM_LABEL_VALUE_RECORD_DRIVER:
return "Aufnahme-Treiber"; return "Aufnahme-Treiber";
case MENU_ENUM_LABEL_VALUE_MENU_DRIVER: case MENU_ENUM_LABEL_VALUE_MENU_DRIVER:
return "Menü-Treiber"; return "Menü-Treiber";
case MENU_ENUM_LABEL_VALUE_CAMERA_DRIVER: case MENU_ENUM_LABEL_VALUE_CAMERA_DRIVER:
return "Kamera-Treiber"; return "Kamera-Treiber";
case MENU_ENUM_LABEL_VALUE_LOCATION_DRIVER: case MENU_ENUM_LABEL_VALUE_LOCATION_DRIVER:
@ -946,7 +935,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_OVERLAY_OPACITY: case MENU_ENUM_LABEL_VALUE_OVERLAY_OPACITY:
return "Overlay-Transparenz"; return "Overlay-Transparenz";
case MENU_ENUM_LABEL_VALUE_MENU_WALLPAPER: case MENU_ENUM_LABEL_VALUE_MENU_WALLPAPER:
return "Menühintergrund"; return "Menühintergrund";
case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPER: case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPER:
return "Dynamischer Hintergrund"; return "Dynamischer Hintergrund";
case MENU_ENUM_LABEL_VALUE_CORE_INPUT_REMAPPING_OPTIONS: /* UPDATE/FIXME */ case MENU_ENUM_LABEL_VALUE_CORE_INPUT_REMAPPING_OPTIONS: /* UPDATE/FIXME */
@ -956,7 +945,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS:
return "Momentane Shaderparameter"; /* FIXME/UPDATE */ return "Momentane Shaderparameter"; /* FIXME/UPDATE */
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_PARAMETERS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_PARAMETERS:
return "Menü Shaderparameter (Menü)"; return "Menü Shaderparameter (Menü)";
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS:
return "Speiche Shader-Voreinstellung unter..."; return "Speiche Shader-Voreinstellung unter...";
case MENU_ENUM_LABEL_VALUE_NO_SHADER_PARAMETERS: case MENU_ENUM_LABEL_VALUE_NO_SHADER_PARAMETERS:
@ -1006,7 +995,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_CORE_INFO_LICENSES: case MENU_ENUM_LABEL_VALUE_CORE_INFO_LICENSES:
return "Lizenz(en)"; return "Lizenz(en)";
case MENU_ENUM_LABEL_VALUE_CORE_INFO_SUPPORTED_EXTENSIONS: case MENU_ENUM_LABEL_VALUE_CORE_INFO_SUPPORTED_EXTENSIONS:
return "Unterstütze Erweiterungen"; return "Unterstütze Erweiterungen";
case MENU_ENUM_LABEL_VALUE_CORE_INFO_FIRMWARE: case MENU_ENUM_LABEL_VALUE_CORE_INFO_FIRMWARE:
return "Firmware"; return "Firmware";
case MENU_ENUM_LABEL_VALUE_CORE_INFO_CORE_NOTES: case MENU_ENUM_LABEL_VALUE_CORE_INFO_CORE_NOTES:
@ -1030,115 +1019,115 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_NO_SOURCE: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_NO_SOURCE:
return "Keine Quelle"; return "Keine Quelle";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_CHARGING: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_CHARGING:
return "Lädt"; return "Lädt";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_CHARGED: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_CHARGED:
return "Geladen"; return "Geladen";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_DISCHARGING: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_POWER_SOURCE_DISCHARGING:
return "Entlädt"; return "Entlädt";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_VIDEO_CONTEXT_DRIVER: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_VIDEO_CONTEXT_DRIVER:
return "Video-Context-Treiber"; return "Video-Context-Treiber";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_MM_WIDTH: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_MM_WIDTH:
return "Bildschirmbreite (mm)"; return "Bildschirmbreite (mm)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_MM_HEIGHT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_MM_HEIGHT:
return "Bildschirmhöhe (mm)"; return "Bildschirmhöhe (mm)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_DPI: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DISPLAY_METRIC_DPI:
return "Bildschirm-DPI"; return "Bildschirm-DPI";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBRETRODB_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBRETRODB_SUPPORT:
return "LibretroDB-Unterstützung"; return "LibretroDB-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OVERLAY_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OVERLAY_SUPPORT:
return "Overlay-Unterstützung"; return "Overlay-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COMMAND_IFACE_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COMMAND_IFACE_SUPPORT:
return "Befehlsinterface-Unterstützung"; return "Befehlsinterface-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETWORK_COMMAND_IFACE_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETWORK_COMMAND_IFACE_SUPPORT:
return "Netzwerk-Befehlsinterface-Unterstützung"; return "Netzwerk-Befehlsinterface-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COCOA_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COCOA_SUPPORT:
return "Cocoa-Unterstützung"; return "Cocoa-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RPNG_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RPNG_SUPPORT:
return "PNG-Unterstützung (RPNG)"; return "PNG-Unterstützung (RPNG)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_SUPPORT:
return "SDL1.2-Unterstützung"; return "SDL1.2-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL2_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL2_SUPPORT:
return "SDL2-Unterstützung"; return "SDL2-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGL_SUPPORT:
return "OpenGL-Unterstützung"; return "OpenGL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGLES_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGLES_SUPPORT:
return "OpenGL-ES-Unterstützung"; return "OpenGL-ES-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_THREADING_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_THREADING_SUPPORT:
return "Threading-Unterstützung"; return "Threading-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_KMS_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_KMS_SUPPORT:
return "KMS/EGL-Unterstützung"; return "KMS/EGL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_UDEV_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_UDEV_SUPPORT:
return "Udev-Unterstützung"; return "Udev-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENVG_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENVG_SUPPORT:
return "OpenVG-Unterstützung"; return "OpenVG-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_EGL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_EGL_SUPPORT:
return "EGL-Unterstützung"; return "EGL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_X11_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_X11_SUPPORT:
return "X11-Unterstützung"; return "X11-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_WAYLAND_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_WAYLAND_SUPPORT:
return "Wayland-Unterstützung"; return "Wayland-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XVIDEO_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XVIDEO_SUPPORT:
return "XVideo-Unterstützung"; return "XVideo-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ALSA_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ALSA_SUPPORT:
return "ALSA-Unterstützung"; return "ALSA-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OSS_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OSS_SUPPORT:
return "OSS-Unterstützung"; return "OSS-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENAL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENAL_SUPPORT:
return "OpenAL-Unterstützung"; return "OpenAL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENSL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENSL_SUPPORT:
return "OpenSL-Unterstützung"; return "OpenSL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RSOUND_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RSOUND_SUPPORT:
return "RSound-Unterstützung"; return "RSound-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ROARAUDIO_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ROARAUDIO_SUPPORT:
return "RoarAudio-Unterstützung"; return "RoarAudio-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_JACK_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_JACK_SUPPORT:
return "JACK-Unterstützung"; return "JACK-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PULSEAUDIO_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PULSEAUDIO_SUPPORT:
return "PulseAudio-Unterstützung"; return "PulseAudio-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DSOUND_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DSOUND_SUPPORT:
return "DirectSound-Unterstützung"; return "DirectSound-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XAUDIO2_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XAUDIO2_SUPPORT:
return "XAudio2-Unterstützung"; return "XAudio2-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ZLIB_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ZLIB_SUPPORT:
return "Zlib-Unterstützung"; return "Zlib-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_7ZIP_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_7ZIP_SUPPORT:
return "7zip-Unterstützung"; return "7zip-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DYLIB_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DYLIB_SUPPORT:
return "Dynamic-Library-Unterstützung"; return "Dynamic-Library-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CG_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CG_SUPPORT:
return "Cg-Unterstützung"; return "Cg-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_GLSL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_GLSL_SUPPORT:
return "GLSL-Unterstützung"; return "GLSL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_HLSL_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_HLSL_SUPPORT:
return "HLSL-Unterstützung"; return "HLSL-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBXML2_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBXML2_SUPPORT:
return "Libxml2-XML-Parsing-Unterstützung"; return "Libxml2-XML-Parsing-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_IMAGE_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_IMAGE_SUPPORT:
return "SDL-Image-Unterstützung"; return "SDL-Image-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FBO_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FBO_SUPPORT:
return "Unterstützung für OpenGL/Direct3D Render-to-Texture (Multi-Pass Shader)"; return "Unterstützung für OpenGL/Direct3D Render-to-Texture (Multi-Pass Shader)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FFMPEG_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FFMPEG_SUPPORT:
return "FFmpeg-Unterstützung"; return "FFmpeg-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CORETEXT_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CORETEXT_SUPPORT:
return "CoreText-Unterstützung"; return "CoreText-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FREETYPE_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FREETYPE_SUPPORT:
return "FreeType-Unterstützung"; return "FreeType-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETPLAY_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETPLAY_SUPPORT:
return "Netplay-Unterstützung (Peer-to-Peer)"; return "Netplay-Unterstützung (Peer-to-Peer)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PYTHON_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PYTHON_SUPPORT:
return "Python-Unterstützung (Script-Unterstützung in Shadern)"; return "Python-Unterstützung (Script-Unterstützung in Shadern)";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_V4L2_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_V4L2_SUPPORT:
return "Video4Linux2-Unterstützung"; return "Video4Linux2-Unterstützung";
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBUSB_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBUSB_SUPPORT:
return "Libusb-Unterstützung"; return "Libusb-Unterstützung";
case MENU_ENUM_LABEL_VALUE_YES: case MENU_ENUM_LABEL_VALUE_YES:
return "Ja"; return "Ja";
case MENU_ENUM_LABEL_VALUE_NO: case MENU_ENUM_LABEL_VALUE_NO:
return "Nein"; return "Nein";
case MENU_ENUM_LABEL_VALUE_BACK: case MENU_ENUM_LABEL_VALUE_BACK:
return "ZURÜCK"; return "ZURÜCK";
case MENU_ENUM_LABEL_VALUE_SCREEN_RESOLUTION: case MENU_ENUM_LABEL_VALUE_SCREEN_RESOLUTION:
return "Bildschirmauflösung"; return "Bildschirmauflösung";
case MENU_ENUM_LABEL_VALUE_DISABLED: case MENU_ENUM_LABEL_VALUE_DISABLED:
return "Deaktiviert"; return "Deaktiviert";
case MENU_ENUM_LABEL_VALUE_PORT: case MENU_ENUM_LABEL_VALUE_PORT:
@ -1158,9 +1147,9 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_FRANCHISE: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_FRANCHISE:
return "Franchise"; return "Franchise";
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_RELEASE_MONTH: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_RELEASE_MONTH:
return "Veröffentlichungsmonat"; return "Veröffentlichungsmonat";
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_RELEASE_YEAR: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_RELEASE_YEAR:
return "Veröffentlichungsjahr"; return "Veröffentlichungsjahr";
case MENU_ENUM_LABEL_VALUE_TRUE: case MENU_ENUM_LABEL_VALUE_TRUE:
return "True"; return "True";
case MENU_ENUM_LABEL_VALUE_FALSE: case MENU_ENUM_LABEL_VALUE_FALSE:
@ -1184,13 +1173,13 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_OVERLAY_SETTINGS: case MENU_ENUM_LABEL_VALUE_OVERLAY_SETTINGS:
return "Overlay-Einstellungen"; return "Overlay-Einstellungen";
case MENU_ENUM_LABEL_VALUE_MENU_SETTINGS: case MENU_ENUM_LABEL_VALUE_MENU_SETTINGS:
return "Menü-Einstellungen"; return "Menü-Einstellungen";
case MENU_ENUM_LABEL_VALUE_MULTIMEDIA_SETTINGS: case MENU_ENUM_LABEL_VALUE_MULTIMEDIA_SETTINGS:
return "Media-Player-Einstellungen"; /* UPDATE/FIXME */ return "Media-Player-Einstellungen"; /* UPDATE/FIXME */
case MENU_ENUM_LABEL_VALUE_USER_INTERFACE_SETTINGS: case MENU_ENUM_LABEL_VALUE_USER_INTERFACE_SETTINGS:
return "Benutzeroberflächen-Einstellungen"; return "Benutzeroberflächen-Einstellungen";
case MENU_ENUM_LABEL_VALUE_MENU_FILE_BROWSER_SETTINGS: case MENU_ENUM_LABEL_VALUE_MENU_FILE_BROWSER_SETTINGS:
return "Menü-Dateibrowser-Einstellungen"; return "Menü-Dateibrowser-Einstellungen";
case MENU_ENUM_LABEL_VALUE_CORE_UPDATER_SETTINGS: case MENU_ENUM_LABEL_VALUE_CORE_UPDATER_SETTINGS:
return "Core-Updater-Einstellungen"; /* UPDATE/FIXME */ return "Core-Updater-Einstellungen"; /* UPDATE/FIXME */
case MENU_ENUM_LABEL_VALUE_NETWORK_SETTINGS: case MENU_ENUM_LABEL_VALUE_NETWORK_SETTINGS:
@ -1204,7 +1193,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS: case MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS:
return "Aufnahme-Einstellungen"; return "Aufnahme-Einstellungen";
case MENU_ENUM_LABEL_VALUE_NO_INFORMATION_AVAILABLE: case MENU_ENUM_LABEL_VALUE_NO_INFORMATION_AVAILABLE:
return "Keine Informationen verfügbar."; return "Keine Informationen verfügbar.";
case MENU_ENUM_LABEL_VALUE_INPUT_USER_BINDS: case MENU_ENUM_LABEL_VALUE_INPUT_USER_BINDS:
return "Spieler %u Tastenbelegung"; return "Spieler %u Tastenbelegung";
case MENU_ENUM_LABEL_VALUE_LANG_ENGLISH: case MENU_ENUM_LABEL_VALUE_LANG_ENGLISH:
@ -1212,7 +1201,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LANG_JAPANESE: case MENU_ENUM_LABEL_VALUE_LANG_JAPANESE:
return "Japanisch"; return "Japanisch";
case MENU_ENUM_LABEL_VALUE_LANG_FRENCH: case MENU_ENUM_LABEL_VALUE_LANG_FRENCH:
return "Französisch"; return "Französisch";
case MENU_ENUM_LABEL_VALUE_LANG_SPANISH: case MENU_ENUM_LABEL_VALUE_LANG_SPANISH:
return "Spanisch"; return "Spanisch";
case MENU_ENUM_LABEL_VALUE_LANG_GERMAN: case MENU_ENUM_LABEL_VALUE_LANG_GERMAN:
@ -1220,7 +1209,7 @@ const char *msg_hash_to_str_de(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LANG_ITALIAN: case MENU_ENUM_LABEL_VALUE_LANG_ITALIAN:
return "Italienisch"; return "Italienisch";
case MENU_ENUM_LABEL_VALUE_LANG_DUTCH: case MENU_ENUM_LABEL_VALUE_LANG_DUTCH:
return "Niederländisch"; return "Niederländisch";
case MENU_ENUM_LABEL_VALUE_LANG_PORTUGUESE: case MENU_ENUM_LABEL_VALUE_LANG_PORTUGUESE:
return "Portugiesisch"; return "Portugiesisch";
case MENU_ENUM_LABEL_VALUE_LANG_RUSSIAN: case MENU_ENUM_LABEL_VALUE_LANG_RUSSIAN:

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

189
intl/msg_hash_it.c Executable file → Normal file
View File

@ -21,22 +21,11 @@
#include "../msg_hash.h" #include "../msg_hash.h"
#include "../configuration.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("àèéìòù")==6+1 ? 1 : -1];
int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len) int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
{ {
uint32_t driver_hash = 0; uint32_t driver_hash = 0;
settings_t *settings = config_get_ptr(); settings_t *settings = config_get_ptr();
(void)sizeof(force_iso_8859_1);
switch (msg) switch (msg)
{ {
case MENU_ENUM_LABEL_CORE_LIST: case MENU_ENUM_LABEL_CORE_LIST:
@ -46,18 +35,18 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"Sfoglia per una implementazione per il \n" "Sfoglia per una implementazione per il \n"
"core libretro. Dove il browser \n" "core libretro. Dove il browser \n"
"si avvia dipende dal percorso impostato per \n" "si avvia dipende dal percorso impostato per \n"
"Core Directory. Se vuoto, si avvierà nella root. \n" "Core Directory. Se vuoto, si avvierà nella root. \n"
" \n" " \n"
"Se la Core Directory è una directory, il menù \n" "Se la Core Directory è una directory, il menù \n"
"userà quella come cartella principale. Se la Core \n" "userà quella come cartella principale. Se la Core \n"
"Directory è un percorso completo, si avvierà \n" "Directory è un percorso completo, si avvierà \n"
"nella cartella dove si trova il file."); "nella cartella dove si trova il file.");
break; break;
case MENU_ENUM_LABEL_VALUE_MENU_ENUM_CONTROLS_PROLOG: case MENU_ENUM_LABEL_VALUE_MENU_ENUM_CONTROLS_PROLOG:
snprintf(s, len, snprintf(s, len,
"Puoi usare i seguenti controlli sotto \n" "Puoi usare i seguenti controlli sotto \n"
"sia su gamepad che su tastiera\n" "sia su gamepad che su tastiera\n"
"per controllare il menù: \n" "per controllare il menù: \n"
" \n" " \n"
); );
break; break;
@ -86,8 +75,8 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n", sizeof(t)); " \n", sizeof(t));
snprintf(u, sizeof(u), snprintf(u, sizeof(u),
"a) Vai su '%s' -> '%s', e abilita\n" "a) Vai su '%s' -> '%s', e abilita\n"
"'Threaded Video'. La frequenza di aggiornamento non sarà\n" "'Threaded Video'. La frequenza di aggiornamento non sarà\n"
"influenzata in questo modo, il framerate sarà più alto,\n" "influenzata in questo modo, il framerate sarà più alto,\n"
"ma il video potrebbe risultare meno fluido.\n" "ma il video potrebbe risultare meno fluido.\n"
"b) Vai su '%s' -> '%s', e guarda su\n" "b) Vai su '%s' -> '%s', e guarda su\n"
"'%s'. Lascia caricare per\n" "'%s'. Lascia caricare per\n"
@ -107,7 +96,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"seleziona '%s' oppure '%s'.\n" "seleziona '%s' oppure '%s'.\n"
" \n" " \n"
"I files saranno comparati alle entrate del database.\n" "I files saranno comparati alle entrate del database.\n"
"Se c'è un riscontro, sarà aggiunta un'entrata\n" "Se c'è un riscontro, sarà aggiunta un'entrata\n"
"alla collezione.\n" "alla collezione.\n"
" \n" " \n"
"Puoi accedere facilmente a questo contenuto\n" "Puoi accedere facilmente a questo contenuto\n"
@ -140,7 +129,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"udev Input driver. \n" "udev Input driver. \n"
" \n" " \n"
"Questo driver può caricare senza X. \n" "Questo driver può caricare senza X. \n"
" \n" " \n"
"Usa la recente evdev joypad API \n" "Usa la recente evdev joypad API \n"
"per il supporto del joystick. Supporta \n" "per il supporto del joystick. Supporta \n"
@ -152,7 +141,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"mouse e touchpads. \n" "mouse e touchpads. \n"
" \n" " \n"
"Come predefinito nella maggior parte delle distribuzioni, i nodi /dev/input \n" "Come predefinito nella maggior parte delle distribuzioni, i nodi /dev/input \n"
"sono only-root (modalità 600). Puoi settare una regola udev \n" "sono only-root (modalità 600). Puoi settare una regola udev \n"
"che fa queste accessibili ai non-root." "che fa queste accessibili ai non-root."
); );
break; break;
@ -162,9 +151,9 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n" " \n"
"questo driver richiede un'attiva TTY. Gli eventi \n" "questo driver richiede un'attiva TTY. Gli eventi \n"
"della tastiera sono letti direttamente dal TTY che \n" "della tastiera sono letti direttamente dal TTY che \n"
"che lo rende più semplice, ma non tanto flessibile quanto udev. \n" "Mouse, ecc., non sono supportati. \n" "che lo rende più semplice, ma non tanto flessibile quanto udev. \n" "Mouse, ecc., non sono supportati. \n"
" \n" " \n"
"Questo driver usa la più vecchia API per il joystick \n" "Questo driver usa la più vecchia API per il joystick \n"
"(/dev/input/js*)."); "(/dev/input/js*).");
break; break;
default: default:
@ -184,14 +173,14 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"Per caricare i giochi, hai bisogno di \n" "Per caricare i giochi, hai bisogno di \n"
"un 'Core' da usare, e un gioco per quel core.\n" "un 'Core' da usare, e un gioco per quel core.\n"
" \n" " \n"
"Per controllare dove il menù comincia \n" "Per controllare dove il menù comincia \n"
" a selezionare per contenuto, imposta \n" " a selezionare per contenuto, imposta \n"
"'File Browser Directory'. \n" "'File Browser Directory'. \n"
"Se non impostato, si avvierà nella root. \n" "Se non impostato, si avvierà nella root. \n"
" \n" " \n"
"Il browser filtrerà le\n" "Il browser filtrerà le\n"
"estensioni per l'ultimo core impostato \n" "estensioni per l'ultimo core impostato \n"
"in 'Carica Core', e userà quel core \n" "in 'Carica Core', e userà quel core \n"
"quando il gioco viene caricato." "quando il gioco viene caricato."
); );
break; break;
@ -199,14 +188,14 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Caricando contenuto dalla cronologia. \n" "Caricando contenuto dalla cronologia. \n"
" \n" " \n"
"Quando il contenuto è caricato, le combinazioni \n" "Quando il contenuto è caricato, le combinazioni \n"
"contenuto e core sono salvati nella cronologia. \n" "contenuto e core sono salvati nella cronologia. \n"
" \n" " \n"
"La cronologia è salvata in un file nella stessa \n" "La cronologia è salvata in un file nella stessa \n"
"directory come il file di configurazione RetroArch. Se \n" "directory come il file di configurazione RetroArch. Se \n"
"nessun file di configurazione viene caricato all'avvio, la \n" "nessun file di configurazione viene caricato all'avvio, la \n"
"cronologia non sarà salvata o caricata, e non apparirà \n" "cronologia non sarà salvata o caricata, e non apparirà \n"
"nel menù principale." "nel menù principale."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_DRIVER: case MENU_ENUM_LABEL_VIDEO_DRIVER:
@ -232,7 +221,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Driver video SDL 2.\n" "Driver video SDL 2.\n"
" \n" " \n"
"Questo è un driver video SDL 2 renderizzato \n" "Questo è un driver video SDL 2 renderizzato \n"
"via software.\n" "via software.\n"
" \n" " \n"
"Le performance per le implementazioni dei core \n" "Le performance per le implementazioni dei core \n"
@ -244,7 +233,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Driver video SDL.\n" "Driver video SDL.\n"
" \n" " \n"
"Questo è un driver video SDL 1.2 renderizzato \n" "Questo è un driver video SDL 1.2 renderizzato \n"
"via software.\n" "via software.\n"
" \n" " \n"
"Le performance sono considerate quasi ottimali. \n" "Le performance sono considerate quasi ottimali. \n"
@ -264,7 +253,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Exynos-G2D Video Driver. \n" "Exynos-G2D Video Driver. \n"
" \n" " \n"
"Questo è un driver video Exynos a basso livello. \n" "Questo è un driver video Exynos a basso livello. \n"
"Usa il blocco G2D nei SoC Samsung Exynos \n" "Usa il blocco G2D nei SoC Samsung Exynos \n"
"per operazioni blit. \n" "per operazioni blit. \n"
" \n" " \n"
@ -276,7 +265,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Driver video Sunxi-G2D. \n" "Driver video Sunxi-G2D. \n"
" \n" " \n"
"Questo è un driver video Sunxi a basso livello. \n" "Questo è un driver video Sunxi a basso livello. \n"
"Usa il blocco G2D nei Soc Allwinner."); "Usa il blocco G2D nei Soc Allwinner.");
} }
break; break;
@ -295,7 +284,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
{ {
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC: case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_SINC:
snprintf(s, len, snprintf(s, len,
"Implementazione SINC in modalità finestra."); "Implementazione SINC in modalità finestra.");
break; break;
case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC: case MENU_LABEL_AUDIO_RESAMPLER_DRIVER_CC:
snprintf(s, len, snprintf(s, len,
@ -324,12 +313,12 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"HLSL" "HLSL"
#endif #endif
" preimposta direttamente. \n" " preimposta direttamente. \n"
"Il menù degli shader è aggiornato di conseguenza. \n" "Il menù degli shader è aggiornato di conseguenza. \n"
" \n" " \n"
"Se la CGP usa metodi di scala che non sono \n" "Se la CGP usa metodi di scala che non sono \n"
"semplici, (es. scala fonte, stessa scala \n" "semplici, (es. scala fonte, stessa scala \n"
"fattore per X/Y), il fattore di scala mostrato \n" "fattore per X/Y), il fattore di scala mostrato \n"
"nel menù potrebbe non essere corretto." "nel menù potrebbe non essere corretto."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS: case MENU_ENUM_LABEL_VIDEO_SHADER_SCALE_PASS:
@ -338,16 +327,16 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
" \n" " \n"
"Il fattore di scala accumula, es. 2x \n" "Il fattore di scala accumula, es. 2x \n"
"per il primo passaggio e 2x per il secondo \n" "per il primo passaggio e 2x per il secondo \n"
"passaggio darà una scala totale di 4x. \n" "passaggio darà una scala totale di 4x. \n"
" \n" " \n"
"Se c'è un fattore di scala per l'ultimo \n" "Se c'è un fattore di scala per l'ultimo \n"
"passaggio, il risultato è allungare lo \n" "passaggio, il risultato è allungare lo \n"
"schermo con il filtro specificato in \n" "schermo con il filtro specificato in \n"
"'Filtro Predefinito'. \n" "'Filtro Predefinito'. \n"
" \n" " \n"
"Se 'Non considerare' è impostato, sia la scala \n" "Se 'Non considerare' è impostato, sia la scala \n"
"1x che allunga a pieno schermo saranno \n" "1x che allunga a pieno schermo saranno \n"
"usati a seconda se è o non è l'ultimo \n" "usati a seconda se è o non è l'ultimo \n"
"passaggio." "passaggio."
); );
break; break;
@ -363,21 +352,21 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"shader da usare. Se imposti questo a 0, e usi \n" "shader da usare. Se imposti questo a 0, e usi \n"
"Applica modifiche agli shader, usi uno shader 'vuoto'. \n" "Applica modifiche agli shader, usi uno shader 'vuoto'. \n"
" \n" " \n"
"L'opzione Filtro Predefinito riguarderà il \n" "L'opzione Filtro Predefinito riguarderà il \n"
"filtro di allungamento immagine."); "filtro di allungamento immagine.");
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS: case MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS:
snprintf(s, len, snprintf(s, len,
"Parametri shader. \n" "Parametri shader. \n"
" \n" " \n"
"Modifica direttamente l'attuale shader. Non sarà \n" "Modifica direttamente l'attuale shader. Non sarà \n"
"salvato al file preimpostato CGP/GLSLP."); "salvato al file preimpostato CGP/GLSLP.");
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_PARAMETERS: case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_PARAMETERS:
snprintf(s, len, snprintf(s, len,
"Parametri Shader Preimpostati. \n" "Parametri Shader Preimpostati. \n"
" \n" " \n"
"Modifica lo shader preimpostato attualmente nel menù." "Modifica lo shader preimpostato attualmente nel menù."
); );
break; break;
case MENU_ENUM_LABEL_VIDEO_SHADER_PASS: case MENU_ENUM_LABEL_VIDEO_SHADER_PASS:
@ -395,22 +384,22 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
case MENU_ENUM_LABEL_CONFIG_SAVE_ON_EXIT: case MENU_ENUM_LABEL_CONFIG_SAVE_ON_EXIT:
snprintf(s, len, snprintf(s, len,
"Salva la configurazione sul disco all'uscita.\n" "Salva la configurazione sul disco all'uscita.\n"
"Utile per i menù in quanto i settaggi possono \n" "Utile per i menù in quanto i settaggi possono \n"
"essere modificati. Sovrascrive la configurazione.\n" "essere modificati. Sovrascrive la configurazione.\n"
" \n" " \n"
"#include ed i commenti non sono \n" "#include ed i commenti non sono \n"
"conservati. \n" "conservati. \n"
" \n" " \n"
"Per design, il file di configurazione è \n" "Per design, il file di configurazione è \n"
"considerato immutabile in quanto è \n" "considerato immutabile in quanto è \n"
"piacevolmente mantenuto dall'utente, \n" "piacevolmente mantenuto dall'utente, \n"
"e non dovrebbe essere sovrascritto \n" "e non dovrebbe essere sovrascritto \n"
"alle spalle dell'utente." "alle spalle dell'utente."
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE) #if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
"\nQuesto non è il caso per le \n" "\nQuesto non è il caso per le \n"
"console comunque, dove \n" "console comunque, dove \n"
"guardare al file di configurazione \n" "guardare al file di configurazione \n"
"manualmente non è veramente un'opzione." "manualmente non è veramente un'opzione."
#endif #endif
); );
break; break;
@ -418,8 +407,8 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Filtro hardware per questo passaggio. \n" "Filtro hardware per questo passaggio. \n"
" \n" " \n"
"Se 'Non prendere cura' è impostato, allora il \n" "Se 'Non prendere cura' è impostato, allora il \n"
"'Filtro Predefinito' sarà usato." "'Filtro Predefinito' sarà usato."
); );
break; break;
case MENU_ENUM_LABEL_AUTOSAVE_INTERVAL: case MENU_ENUM_LABEL_AUTOSAVE_INTERVAL:
@ -427,8 +416,8 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"Salva automaticamente la SRAM non-volatile \n" "Salva automaticamente la SRAM non-volatile \n"
"ad un itervallo regolare.\n" "ad un itervallo regolare.\n"
" \n" " \n"
"Questo è disattivato come predefinito a meno che non \n" "Questo è disattivato come predefinito a meno che non \n"
"è impostato diversamente. L'intervallo è misurato in \n" "è impostato diversamente. L'intervallo è misurato in \n"
"secondi. \n" "secondi. \n"
" \n" " \n"
"Il valore 0 disattiva il salvataggio automatico."); "Il valore 0 disattiva il salvataggio automatico.");
@ -437,7 +426,7 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Tipo di dispositivo di input. \n" "Tipo di dispositivo di input. \n"
" \n" " \n"
"Sceglie quale tipo di dispositivo usare. Questo è \n" "Sceglie quale tipo di dispositivo usare. Questo è \n"
"rilevante per il libretro core." "rilevante per il libretro core."
); );
break; break;
@ -447,11 +436,11 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"(GET_LOG_INTERFACE). \n" "(GET_LOG_INTERFACE). \n"
" \n" " \n"
" Se il livello dei log rilasciato da un libretro \n" " Se il livello dei log rilasciato da un libretro \n"
" core è sotto il livello libretro_log, \n" " core è sotto il livello libretro_log, \n"
" sarà ignorato.\n" " sarà ignorato.\n"
" \n" " \n"
" DEBUG log sono sempre ignorati a meno che \n" " DEBUG log sono sempre ignorati a meno che \n"
" la modalità verbose mode è attivata (--verbose).\n" " la modalità verbose mode è attivata (--verbose).\n"
" \n" " \n"
" DEBUG = 0\n" " DEBUG = 0\n"
" INFO = 1\n" " INFO = 1\n"
@ -464,10 +453,10 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
snprintf(s, len, snprintf(s, len,
"Slot dello stato di salvataggio.\n" "Slot dello stato di salvataggio.\n"
" \n" " \n"
" Con lo slot impostato a 0, il nome dello stato di salvataggio è *.state \n" " Con lo slot impostato a 0, il nome dello stato di salvataggio è *.state \n"
" (o che cosa è stato impostato sulla riga di comando).\n" " (o che cosa è stato impostato sulla riga di comando).\n"
"Quando lo slot è != 0, il percorso sarà (percorso)(d), \n" "Quando lo slot è != 0, il percorso sarà (percorso)(d), \n"
"dove (d) è il numero dello slot."); "dove (d) è il numero dello slot.");
break; break;
case MENU_ENUM_LABEL_SHADER_APPLY_CHANGES: case MENU_ENUM_LABEL_SHADER_APPLY_CHANGES:
snprintf(s, len, snprintf(s, len,
@ -476,14 +465,14 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"Dopo che modifichi i settaggi dello shader, usa questo per \n" "Dopo che modifichi i settaggi dello shader, usa questo per \n"
"applicare i cambiamenti. \n" "applicare i cambiamenti. \n"
" \n" " \n"
"Modificare i settaggi dello shader è un \n" "Modificare i settaggi dello shader è un \n"
"operazione costosa quindi deve essere \n" "operazione costosa quindi deve essere \n"
"fatta esplicitamente. \n" "fatta esplicitamente. \n"
" \n" " \n"
"Quando applichi gli shader, i settaggi del menù \n" "Quando applichi gli shader, i settaggi del menù \n"
"degli shader sono salvati ad un file temporaneo (sia \n" "degli shader sono salvati ad un file temporaneo (sia \n"
"menu.cgp che menu.glslp) e caricati. Il file \n" "menu.cgp che menu.glslp) e caricati. Il file \n"
"rimane dopo che RetroArch esce. Il file è \n" "rimane dopo che RetroArch esce. Il file è \n"
"salvato alla Directory Shader." "salvato alla Directory Shader."
); );
break; break;
@ -492,12 +481,12 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"Dispositivo di input. \n" "Dispositivo di input. \n"
" \n" " \n"
"Scegli quale gamepad usare per l'utente N. \n" "Scegli quale gamepad usare per l'utente N. \n"
"Il nome del pad è disponibile." "Il nome del pad è disponibile."
); );
break; break;
case MENU_ENUM_LABEL_MENU_TOGGLE: case MENU_ENUM_LABEL_MENU_TOGGLE:
snprintf(s, len, snprintf(s, len,
"Attiva menù."); "Attiva menù.");
break; break;
case MENU_ENUM_LABEL_GRAB_MOUSE_TOGGLE: case MENU_ENUM_LABEL_GRAB_MOUSE_TOGGLE:
snprintf(s, len, snprintf(s, len,
@ -1087,11 +1076,11 @@ int menu_hash_get_help_it_enum(enum msg_hash_enums msg, char *s, size_t len)
"andando su '%s' \n" "andando su '%s' \n"
"-> '%s'." "-> '%s'."
" \n" " \n"
"Da lì puoi cambiare lo schema,\n" "Da lì puoi cambiare lo schema,\n"
"la dimensione e l'opacità dei tasti, ecc.\n" "la dimensione e l'opacità dei tasti, ecc.\n"
" \n" " \n"
"NOTA: Come predefinito, gli schemi del gamepad virtuale\n" "NOTA: Come predefinito, gli schemi del gamepad virtuale\n"
"sono nascosti nel menù.\n" "sono nascosti nel menù.\n"
"Se vorresti cambiare questa impostazione,\n" "Se vorresti cambiare questa impostazione,\n"
"puoi impostare '%s' a spento/OFF.", "puoi impostare '%s' a spento/OFF.",
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SETTINGS), msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SETTINGS),
@ -1146,15 +1135,15 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD: case MENU_ENUM_LABEL_VALUE_HELP_CHANGE_VIRTUAL_GAMEPAD:
return "Cambia i settaggi del gamepad virtuale"; return "Cambia i settaggi del gamepad virtuale";
case MENU_ENUM_LABEL_VALUE_HELP_WHAT_IS_A_CORE: case MENU_ENUM_LABEL_VALUE_HELP_WHAT_IS_A_CORE:
return "Che cosa è un core?"; return "Che cosa è un core?";
case MENU_ENUM_LABEL_VALUE_HELP_LOADING_CONTENT: case MENU_ENUM_LABEL_VALUE_HELP_LOADING_CONTENT:
return "Carica Contenuto"; return "Carica Contenuto";
case MENU_ENUM_LABEL_VALUE_HELP_LIST: case MENU_ENUM_LABEL_VALUE_HELP_LIST:
return "Aiuto"; return "Aiuto";
case MENU_ENUM_LABEL_VALUE_HELP_CONTROLS: case MENU_ENUM_LABEL_VALUE_HELP_CONTROLS:
return "Menù di base dei controlli"; return "Menù di base dei controlli";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS:
return "Menù di base dei controlli"; return "Menù di base dei controlli";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_SCROLL_UP: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_SCROLL_UP:
return "Scorri verso l'alto"; return "Scorri verso l'alto";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_SCROLL_DOWN: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_SCROLL_DOWN:
@ -1168,7 +1157,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_INFO: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_INFO:
return "Info"; return "Info";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_TOGGLE_MENU: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_TOGGLE_MENU:
return "Menù a comparsa"; return "Menù a comparsa";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_QUIT: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_QUIT:
return "Esci"; return "Esci";
case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_TOGGLE_KEYBOARD: case MENU_ENUM_LABEL_VALUE_BASIC_MENU_CONTROLS_TOGGLE_KEYBOARD:
@ -1178,11 +1167,11 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LOAD_ARCHIVE: case MENU_ENUM_LABEL_VALUE_LOAD_ARCHIVE:
return "Carica archivio con il core"; return "Carica archivio con il core";
case MENU_ENUM_LABEL_VALUE_INPUT_BACK_AS_MENU_TOGGLE_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_BACK_AS_MENU_TOGGLE_ENABLE:
return "Indietro quando il menù a comparsa è abilitato"; return "Indietro quando il menù a comparsa è abilitato";
case MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO: case MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO:
return "Combo gamepad per il menù a comparsa"; return "Combo gamepad per il menù a comparsa";
case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_HIDE_IN_MENU: case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_HIDE_IN_MENU:
return "Nascondi overlay nel menù"; return "Nascondi overlay nel menù";
case MENU_ENUM_LABEL_VALUE_LANG_POLISH: case MENU_ENUM_LABEL_VALUE_LANG_POLISH:
return "Polacco"; return "Polacco";
case MENU_ENUM_LABEL_VALUE_OVERLAY_AUTOLOAD_PREFERRED: case MENU_ENUM_LABEL_VALUE_OVERLAY_AUTOLOAD_PREFERRED:
@ -1204,7 +1193,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_USE_BUILTIN_PLAYER: case MENU_ENUM_LABEL_VALUE_USE_BUILTIN_PLAYER:
return "Usa Media Player interno"; return "Usa Media Player interno";
case MENU_ENUM_LABEL_VALUE_CONTENT_SETTINGS: case MENU_ENUM_LABEL_VALUE_CONTENT_SETTINGS:
return "Menù rapido"; return "Menù rapido";
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_CRC32: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_CRC32:
return "CRC32"; return "CRC32";
case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_MD5: case MENU_ENUM_LABEL_VALUE_RDB_ENTRY_MD5:
@ -1217,7 +1206,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
return "Privacy"; return "Privacy";
#if 0 #if 0
case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU: case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU:
return "Menú orizzontale"; return "Menú orizzontale";
#else #else
case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU: case MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU:
return "Horizontal Menu"; return "Horizontal Menu";
@ -1283,7 +1272,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_AUDIO_BLOCK_FRAMES: case MENU_ENUM_LABEL_VALUE_AUDIO_BLOCK_FRAMES:
return "Blocco fotogrammi"; return "Blocco fotogrammi";
case MENU_ENUM_LABEL_VALUE_INPUT_BIND_MODE: case MENU_ENUM_LABEL_VALUE_INPUT_BIND_MODE:
return "Modalità di collegamento"; return "Modalità di collegamento";
case MENU_ENUM_LABEL_VALUE_INPUT_DESCRIPTOR_LABEL_SHOW: case MENU_ENUM_LABEL_VALUE_INPUT_DESCRIPTOR_LABEL_SHOW:
return "Mostra le etichette descrittive degli input del core"; return "Mostra le etichette descrittive degli input del core";
case MENU_ENUM_LABEL_VALUE_INPUT_DESCRIPTOR_HIDE_UNBOUND: case MENU_ENUM_LABEL_VALUE_INPUT_DESCRIPTOR_HIDE_UNBOUND:
@ -1311,7 +1300,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LINEAR: case MENU_ENUM_LABEL_VALUE_LINEAR:
return "Lineare"; return "Lineare";
case MENU_ENUM_LABEL_VALUE_NEAREST: case MENU_ENUM_LABEL_VALUE_NEAREST:
return "Più vicino"; return "Più vicino";
case MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT: case MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT:
return "<Predefinito>"; return "<Predefinito>";
case MENU_ENUM_LABEL_VALUE_DIRECTORY_NONE: case MENU_ENUM_LABEL_VALUE_DIRECTORY_NONE:
@ -1401,15 +1390,15 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_RGUI_SHOW_START_SCREEN: case MENU_ENUM_LABEL_VALUE_RGUI_SHOW_START_SCREEN:
return "Mostra schermata di avvio"; return "Mostra schermata di avvio";
case MENU_ENUM_LABEL_VALUE_TITLE_COLOR: case MENU_ENUM_LABEL_VALUE_TITLE_COLOR:
return "Colore dei titoli dei menù"; return "Colore dei titoli dei menù";
case MENU_ENUM_LABEL_VALUE_ENTRY_HOVER_COLOR: case MENU_ENUM_LABEL_VALUE_ENTRY_HOVER_COLOR:
return "Colore evidenziato delle voci dei menù"; return "Colore evidenziato delle voci dei menù";
case MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE: case MENU_ENUM_LABEL_VALUE_TIMEDATE_ENABLE:
return "Mostra ora / data"; return "Mostra ora / data";
case MENU_ENUM_LABEL_VALUE_THREADED_DATA_RUNLOOP_ENABLE: case MENU_ENUM_LABEL_VALUE_THREADED_DATA_RUNLOOP_ENABLE:
return "Carica ciclo di dati nei thread"; return "Carica ciclo di dati nei thread";
case MENU_ENUM_LABEL_VALUE_ENTRY_NORMAL_COLOR: case MENU_ENUM_LABEL_VALUE_ENTRY_NORMAL_COLOR:
return "Colore normale voce dei menù"; return "Colore normale voce dei menù";
case MENU_ENUM_LABEL_VALUE_SHOW_ADVANCED_SETTINGS: case MENU_ENUM_LABEL_VALUE_SHOW_ADVANCED_SETTINGS:
return "Mostra settaggi avanzati"; return "Mostra settaggi avanzati";
case MENU_ENUM_LABEL_VALUE_MOUSE_ENABLE: case MENU_ENUM_LABEL_VALUE_MOUSE_ENABLE:
@ -1433,7 +1422,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_UI_COMPANION_ENABLE: case MENU_ENUM_LABEL_VALUE_UI_COMPANION_ENABLE:
return "Abilita UI Companion"; return "Abilita UI Companion";
case MENU_ENUM_LABEL_VALUE_UI_MENUBAR_ENABLE: case MENU_ENUM_LABEL_VALUE_UI_MENUBAR_ENABLE:
return "Barra dei menù"; return "Barra dei menù";
case MENU_ENUM_LABEL_VALUE_ARCHIVE_MODE: case MENU_ENUM_LABEL_VALUE_ARCHIVE_MODE:
return "Azione per associare i tipi di archivio"; return "Azione per associare i tipi di archivio";
case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_ENABLE: case MENU_ENUM_LABEL_VALUE_NETWORK_CMD_ENABLE:
@ -1451,9 +1440,9 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_CORE_SET_SUPPORTS_NO_CONTENT_ENABLE: /* TODO/FIXME */ case MENU_ENUM_LABEL_VALUE_CORE_SET_SUPPORTS_NO_CONTENT_ENABLE: /* TODO/FIXME */
return "Non avviare automaticamente un core"; return "Non avviare automaticamente un core";
case MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_ENABLE: case MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_ENABLE:
return "Limita la velocità massima di caricamento"; return "Limita la velocità massima di caricamento";
case MENU_ENUM_LABEL_VALUE_FASTFORWARD_RATIO: case MENU_ENUM_LABEL_VALUE_FASTFORWARD_RATIO:
return "Velocità massima di caricamento"; return "Velocità massima di caricamento";
case MENU_ENUM_LABEL_VALUE_AUTO_REMAPS_ENABLE: case MENU_ENUM_LABEL_VALUE_AUTO_REMAPS_ENABLE:
return "Carica file di rimappatura automaticamente"; return "Carica file di rimappatura automaticamente";
case MENU_ENUM_LABEL_VALUE_SLOWMOTION_RATIO: case MENU_ENUM_LABEL_VALUE_SLOWMOTION_RATIO:
@ -1499,9 +1488,9 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_SRGB_DISABLE: case MENU_ENUM_LABEL_VALUE_VIDEO_FORCE_SRGB_DISABLE:
return "Forza-disattiva sRGB FBO"; return "Forza-disattiva sRGB FBO";
case MENU_ENUM_LABEL_VALUE_VIDEO_WINDOWED_FULLSCREEN: case MENU_ENUM_LABEL_VALUE_VIDEO_WINDOWED_FULLSCREEN:
return "Modalità schermo intero con finestra"; return "Modalità schermo intero con finestra";
case MENU_ENUM_LABEL_VALUE_PAL60_ENABLE: case MENU_ENUM_LABEL_VALUE_PAL60_ENABLE:
return "Usa modalità PAL60"; return "Usa modalità PAL60";
case MENU_ENUM_LABEL_VALUE_VIDEO_VFILTER: case MENU_ENUM_LABEL_VALUE_VIDEO_VFILTER:
return "Deflicker"; return "Deflicker";
case MENU_ENUM_LABEL_VALUE_VIDEO_VI_WIDTH: case MENU_ENUM_LABEL_VALUE_VIDEO_VI_WIDTH:
@ -1515,7 +1504,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_SORT_SAVESTATES_ENABLE: case MENU_ENUM_LABEL_VALUE_SORT_SAVESTATES_ENABLE:
return "Ordina gli stati di salvataggio nelle cartelle"; return "Ordina gli stati di salvataggio nelle cartelle";
case MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN: case MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN:
return "Usa modalità a schermo intero"; return "Usa modalità a schermo intero";
case MENU_ENUM_LABEL_VALUE_VIDEO_SCALE: case MENU_ENUM_LABEL_VALUE_VIDEO_SCALE:
return "Scala a finestra"; return "Scala a finestra";
case MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER: case MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER:
@ -1549,7 +1538,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_LOCATION_ALLOW: case MENU_ENUM_LABEL_VALUE_LOCATION_ALLOW:
return "Consenti posizionamento"; return "Consenti posizionamento";
case MENU_ENUM_LABEL_VALUE_PAUSE_LIBRETRO: case MENU_ENUM_LABEL_VALUE_PAUSE_LIBRETRO:
return "In pausa quando il menù è attivato"; return "In pausa quando il menù è attivato";
case MENU_ENUM_LABEL_VALUE_INPUT_OSK_OVERLAY_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_OSK_OVERLAY_ENABLE:
return "Mostra Overlay Tastiera"; return "Mostra Overlay Tastiera";
case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_ENABLE:
@ -1561,7 +1550,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_INPUT_DUTY_CYCLE: case MENU_ENUM_LABEL_VALUE_INPUT_DUTY_CYCLE:
return "Ciclo dati"; return "Ciclo dati";
case MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD: case MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD:
return "Modalità Turbo"; return "Modalità Turbo";
case MENU_ENUM_LABEL_VALUE_INPUT_AXIS_THRESHOLD: case MENU_ENUM_LABEL_VALUE_INPUT_AXIS_THRESHOLD:
return "Soglia Input Axis"; return "Soglia Input Axis";
case MENU_ENUM_LABEL_VALUE_INPUT_REMAP_BINDS_ENABLE: case MENU_ENUM_LABEL_VALUE_INPUT_REMAP_BINDS_ENABLE:
@ -1661,7 +1650,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_CURSOR_MANAGER: case MENU_ENUM_LABEL_VALUE_CURSOR_MANAGER:
return "Gestore cursori"; return "Gestore cursori";
case MENU_ENUM_LABEL_VALUE_MAIN_MENU: case MENU_ENUM_LABEL_VALUE_MAIN_MENU:
return "Menú principale"; return "Menú principale";
case MENU_ENUM_LABEL_VALUE_SETTINGS: case MENU_ENUM_LABEL_VALUE_SETTINGS:
return "Settaggi"; return "Settaggi";
case MENU_ENUM_LABEL_VALUE_QUIT_RETROARCH: case MENU_ENUM_LABEL_VALUE_QUIT_RETROARCH:
@ -1727,7 +1716,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_RECORD_DRIVER: case MENU_ENUM_LABEL_VALUE_RECORD_DRIVER:
return "Driver di Registrazione"; return "Driver di Registrazione";
case MENU_ENUM_LABEL_VALUE_MENU_DRIVER: case MENU_ENUM_LABEL_VALUE_MENU_DRIVER:
return "Driver Menù"; return "Driver Menù";
case MENU_ENUM_LABEL_VALUE_CAMERA_DRIVER: case MENU_ENUM_LABEL_VALUE_CAMERA_DRIVER:
return "Driver Fotocamera"; return "Driver Fotocamera";
case MENU_ENUM_LABEL_VALUE_LOCATION_DRIVER: case MENU_ENUM_LABEL_VALUE_LOCATION_DRIVER:
@ -1745,9 +1734,9 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_KEYBOARD_OVERLAY_PRESET: case MENU_ENUM_LABEL_VALUE_KEYBOARD_OVERLAY_PRESET:
return "Preimpostato Overlay Tastiera"; return "Preimpostato Overlay Tastiera";
case MENU_ENUM_LABEL_VALUE_OVERLAY_OPACITY: case MENU_ENUM_LABEL_VALUE_OVERLAY_OPACITY:
return "Opacità Overlay"; return "Opacità Overlay";
case MENU_ENUM_LABEL_VALUE_MENU_WALLPAPER: case MENU_ENUM_LABEL_VALUE_MENU_WALLPAPER:
return "Menù sfondi"; return "Menù sfondi";
case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPER: case MENU_ENUM_LABEL_VALUE_DYNAMIC_WALLPAPER:
return "Sfondo dinamico"; return "Sfondo dinamico";
case MENU_ENUM_LABEL_VALUE_CORE_INPUT_REMAPPING_OPTIONS: case MENU_ENUM_LABEL_VALUE_CORE_INPUT_REMAPPING_OPTIONS:
@ -1757,7 +1746,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PARAMETERS:
return "Antemprima Parametri Shader"; return "Antemprima Parametri Shader";
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_PARAMETERS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_PARAMETERS:
return "Parametri shader del menù"; return "Parametri shader del menù";
case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS: case MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_PRESET_SAVE_AS:
return "Salva Shader Preimpostati come"; return "Salva Shader Preimpostati come";
case MENU_ENUM_LABEL_VALUE_NO_SHADER_PARAMETERS: case MENU_ENUM_LABEL_VALUE_NO_SHADER_PARAMETERS:
@ -1945,7 +1934,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBUSB_SUPPORT: case MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBUSB_SUPPORT:
return "Supporto Libusb"; return "Supporto Libusb";
case MENU_ENUM_LABEL_VALUE_YES: case MENU_ENUM_LABEL_VALUE_YES:
return ""; return "";
case MENU_ENUM_LABEL_VALUE_NO: case MENU_ENUM_LABEL_VALUE_NO:
return "No"; return "No";
case MENU_ENUM_LABEL_VALUE_BACK: case MENU_ENUM_LABEL_VALUE_BACK:
@ -1999,7 +1988,7 @@ const char *msg_hash_to_str_it(enum msg_hash_enums msg)
case MENU_ENUM_LABEL_VALUE_ONSCREEN_OVERLAY_SETTINGS: case MENU_ENUM_LABEL_VALUE_ONSCREEN_OVERLAY_SETTINGS:
return "Overlay sullo schermo"; return "Overlay sullo schermo";
case MENU_ENUM_LABEL_VALUE_MENU_SETTINGS: case MENU_ENUM_LABEL_VALUE_MENU_SETTINGS:
return "Menù"; return "Menù";
case MENU_ENUM_LABEL_VALUE_MULTIMEDIA_SETTINGS: case MENU_ENUM_LABEL_VALUE_MULTIMEDIA_SETTINGS:
return "Multimedia"; return "Multimedia";
case MENU_ENUM_LABEL_VALUE_USER_INTERFACE_SETTINGS: case MENU_ENUM_LABEL_VALUE_USER_INTERFACE_SETTINGS:

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -23,8 +23,8 @@
#include "../configuration.h" #include "../configuration.h"
#include "../verbosity.h" #include "../verbosity.h"
#ifdef HAVE_UTF8 #if 0
#include "msg_hash_uspseudo.c" //#include "msg_hash_uspseudo.c"
#else #else
int menu_hash_get_help_us_enum(enum msg_hash_enums msg, char *s, size_t len) int menu_hash_get_help_us_enum(enum msg_hash_enums msg, char *s, size_t len)

View File

@ -17,75 +17,66 @@
#ifndef __INTL_SPANISH_H #ifndef __INTL_SPANISH_H
#define __INTL_SPANISH_H #define __INTL_SPANISH_H
/* IMPORTANT: #define RETRO_LBL_JOYPAD_B "Botón B RetroPad"
* For non-english characters to work without proper unicode support, #define RETRO_LBL_JOYPAD_Y "Botón Y RetroPad"
* we need this file to be encoded in ISO 8859-1 (Latin1), not UTF-8. #define RETRO_LBL_JOYPAD_SELECT "Botón Select RetroPad"
* If you save this file as UTF-8, you'll break non-english characters #define RETRO_LBL_JOYPAD_START "Botón Start RetroPad"
* (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];
#define RETRO_LBL_JOYPAD_B "Botón B RetroPad"
#define RETRO_LBL_JOYPAD_Y "Botón Y RetroPad"
#define RETRO_LBL_JOYPAD_SELECT "Botón Select RetroPad"
#define RETRO_LBL_JOYPAD_START "Botón Start RetroPad"
#define RETRO_LBL_JOYPAD_UP "Cruceta arriba RetroPad" #define RETRO_LBL_JOYPAD_UP "Cruceta arriba RetroPad"
#define RETRO_LBL_JOYPAD_DOWN "Cruceta abajo RetroPad" #define RETRO_LBL_JOYPAD_DOWN "Cruceta abajo RetroPad"
#define RETRO_LBL_JOYPAD_LEFT "Cruceta izda. RetroPad" #define RETRO_LBL_JOYPAD_LEFT "Cruceta izda. RetroPad"
#define RETRO_LBL_JOYPAD_RIGHT "Cruceta dcha. RetroPad" #define RETRO_LBL_JOYPAD_RIGHT "Cruceta dcha. RetroPad"
#define RETRO_LBL_JOYPAD_A "Botón A RetroPad" #define RETRO_LBL_JOYPAD_A "Botón A RetroPad"
#define RETRO_LBL_JOYPAD_X "Botón X RetroPad" #define RETRO_LBL_JOYPAD_X "Botón X RetroPad"
#define RETRO_LBL_JOYPAD_L "Botón L RetroPad" #define RETRO_LBL_JOYPAD_L "Botón L RetroPad"
#define RETRO_LBL_JOYPAD_R "Botón R RetroPad" #define RETRO_LBL_JOYPAD_R "Botón R RetroPad"
#define RETRO_LBL_JOYPAD_L2 "Botón L2 RetroPad" #define RETRO_LBL_JOYPAD_L2 "Botón L2 RetroPad"
#define RETRO_LBL_JOYPAD_R2 "Botón R2 RetroPad" #define RETRO_LBL_JOYPAD_R2 "Botón R2 RetroPad"
#define RETRO_LBL_JOYPAD_L3 "Botón L3 RetroPad" #define RETRO_LBL_JOYPAD_L3 "Botón L3 RetroPad"
#define RETRO_LBL_JOYPAD_R3 "Botón R3 RetroPad" #define RETRO_LBL_JOYPAD_R3 "Botón R3 RetroPad"
#define RETRO_LBL_TURBO_ENABLE "Activar turbo" #define RETRO_LBL_TURBO_ENABLE "Activar turbo"
#define RETRO_LBL_ANALOG_LEFT_X "X analógico izdo." #define RETRO_LBL_ANALOG_LEFT_X "X analógico izdo."
#define RETRO_LBL_ANALOG_LEFT_Y "Y analógico izdo." #define RETRO_LBL_ANALOG_LEFT_Y "Y analógico izdo."
#define RETRO_LBL_ANALOG_RIGHT_X "X analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_X "X analógico dcho."
#define RETRO_LBL_ANALOG_RIGHT_Y "Y analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_Y "Y analógico dcho."
#define RETRO_LBL_ANALOG_LEFT_X_PLUS "X + analógico izdo." #define RETRO_LBL_ANALOG_LEFT_X_PLUS "X + analógico izdo."
#define RETRO_LBL_ANALOG_LEFT_X_MINUS "X - analógico izdo." #define RETRO_LBL_ANALOG_LEFT_X_MINUS "X - analógico izdo."
#define RETRO_LBL_ANALOG_LEFT_Y_PLUS "Y + analógico izdo." #define RETRO_LBL_ANALOG_LEFT_Y_PLUS "Y + analógico izdo."
#define RETRO_LBL_ANALOG_LEFT_Y_MINUS "Y - analógico izdo." #define RETRO_LBL_ANALOG_LEFT_Y_MINUS "Y - analógico izdo."
#define RETRO_LBL_ANALOG_RIGHT_X_PLUS "X + analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_X_PLUS "X + analógico dcho."
#define RETRO_LBL_ANALOG_RIGHT_X_MINUS "X - analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_X_MINUS "X - analógico dcho."
#define RETRO_LBL_ANALOG_RIGHT_Y_PLUS "Y + analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_Y_PLUS "Y + analógico dcho."
#define RETRO_LBL_ANALOG_RIGHT_Y_MINUS "Y - analógico dcho." #define RETRO_LBL_ANALOG_RIGHT_Y_MINUS "Y - analógico dcho."
#define RETRO_LBL_FAST_FORWARD_KEY "Acelerador" #define RETRO_LBL_FAST_FORWARD_KEY "Acelerador"
#define RETRO_LBL_FAST_FORWARD_HOLD_KEY "Alternar acelerador" #define RETRO_LBL_FAST_FORWARD_HOLD_KEY "Alternar acelerador"
#define RETRO_LBL_LOAD_STATE_KEY "Carga rápida" #define RETRO_LBL_LOAD_STATE_KEY "Carga rápida"
#define RETRO_LBL_SAVE_STATE_KEY "Guardado rápido" #define RETRO_LBL_SAVE_STATE_KEY "Guardado rápido"
#define RETRO_LBL_FULLSCREEN_TOGGLE_KEY "Alt. pantalla completa" #define RETRO_LBL_FULLSCREEN_TOGGLE_KEY "Alt. pantalla completa"
#define RETRO_LBL_QUIT_KEY "Tecla de abandonar" #define RETRO_LBL_QUIT_KEY "Tecla de abandonar"
#define RETRO_LBL_STATE_SLOT_PLUS "Siguiente ranura rápida" #define RETRO_LBL_STATE_SLOT_PLUS "Siguiente ranura rápida"
#define RETRO_LBL_STATE_SLOT_MINUS "Ranura rápida anterior" #define RETRO_LBL_STATE_SLOT_MINUS "Ranura rápida anterior"
#define RETRO_LBL_REWIND "Rebobinar" #define RETRO_LBL_REWIND "Rebobinar"
#define RETRO_LBL_MOVIE_RECORD_TOGGLE "Alt. grabación" #define RETRO_LBL_MOVIE_RECORD_TOGGLE "Alt. grabación"
#define RETRO_LBL_PAUSE_TOGGLE "Alternar pausa" #define RETRO_LBL_PAUSE_TOGGLE "Alternar pausa"
#define RETRO_LBL_FRAMEADVANCE "Avanzar fotograma" #define RETRO_LBL_FRAMEADVANCE "Avanzar fotograma"
#define RETRO_LBL_RESET "Reiniciar" #define RETRO_LBL_RESET "Reiniciar"
#define RETRO_LBL_SHADER_NEXT "Siguiente shader" #define RETRO_LBL_SHADER_NEXT "Siguiente shader"
#define RETRO_LBL_SHADER_PREV "Shader anterior" #define RETRO_LBL_SHADER_PREV "Shader anterior"
#define RETRO_LBL_CHEAT_INDEX_PLUS "Siguiente índice de trucos" #define RETRO_LBL_CHEAT_INDEX_PLUS "Siguiente índice de trucos"
#define RETRO_LBL_CHEAT_INDEX_MINUS "Índice de trucos anterior" #define RETRO_LBL_CHEAT_INDEX_MINUS "Índice de trucos anterior"
#define RETRO_LBL_CHEAT_TOGGLE "Alternar trucos" #define RETRO_LBL_CHEAT_TOGGLE "Alternar trucos"
#define RETRO_LBL_SCREENSHOT "Capturar pantalla" #define RETRO_LBL_SCREENSHOT "Capturar pantalla"
#define RETRO_LBL_MUTE "Silenciar sonido" #define RETRO_LBL_MUTE "Silenciar sonido"
#define RETRO_LBL_OSK "Activar teclado en pantalla" #define RETRO_LBL_OSK "Activar teclado en pantalla"
#define RETRO_LBL_NETPLAY_FLIP "Cambiar usuario de red" #define RETRO_LBL_NETPLAY_FLIP "Cambiar usuario de red"
#define RETRO_LBL_SLOWMOTION "Cámara lenta" #define RETRO_LBL_SLOWMOTION "Cámara lenta"
#define RETRO_LBL_ENABLE_HOTKEY "Activar teclas rápidas" #define RETRO_LBL_ENABLE_HOTKEY "Activar teclas rápidas"
#define RETRO_LBL_VOLUME_UP "Subir volumen" #define RETRO_LBL_VOLUME_UP "Subir volumen"
#define RETRO_LBL_VOLUME_DOWN "Bajar volumen" #define RETRO_LBL_VOLUME_DOWN "Bajar volumen"
#define RETRO_LBL_OVERLAY_NEXT "Siguiente sobreimposición" #define RETRO_LBL_OVERLAY_NEXT "Siguiente sobreimposición"
#define RETRO_LBL_DISK_EJECT_TOGGLE "Alt. expulsar disco" #define RETRO_LBL_DISK_EJECT_TOGGLE "Alt. expulsar disco"
#define RETRO_LBL_DISK_NEXT "Cambiar a siguiente disco" #define RETRO_LBL_DISK_NEXT "Cambiar a siguiente disco"
#define RETRO_LBL_DISK_PREV "Cambiar a disco anterior" #define RETRO_LBL_DISK_PREV "Cambiar a disco anterior"
#define RETRO_LBL_GRAB_MOUSE_TOGGLE "Alternar captura de ratón" #define RETRO_LBL_GRAB_MOUSE_TOGGLE "Alternar captura de ratón"
#define RETRO_LBL_MENU_TOGGLE "Alternar menú" #define RETRO_LBL_MENU_TOGGLE "Alternar menú"
#endif #endif

View File

@ -669,6 +669,38 @@ static void xmb_messagebox(void *data, const char *message)
strlcpy(xmb->box_message, message, sizeof(xmb->box_message)); strlcpy(xmb->box_message, message, sizeof(xmb->box_message));
} }
static uint32_t xmb_strlen_byte(const char **string)
{
return strlen(*string);
}
#ifdef HAVE_UTF8
/* Does not validate the input, returns garbage if it's not UTF-8. */
static uint32_t xmb_strlen(const char **string)
{
uint8_t first = xmb_strlen_byte(string);
uint32_t ret;
if (first<128)
return first;
ret = 0;
ret = (ret<<6) | (xmb_strlen_byte(string) & 0x3F);
if (first >= 0xE0)
ret = (ret<<6) | (xmb_strlen_byte(string) & 0x3F);
if (first >= 0xF0)
ret = (ret<<6) | (xmb_strlen_byte(string) & 0x3F);
if (first >= 0xF0)
return ret | (first&31)<<18;
if (first >= 0xE0)
return ret | (first&15)<<12;
return ret | (first&7)<<6;
}
#else
#define xmb_strlen xmb_strlen_byte
#endif
static void xmb_render_messagebox_internal( static void xmb_render_messagebox_internal(
xmb_handle_t *xmb, const char *message) xmb_handle_t *xmb, const char *message)
{ {
@ -701,7 +733,7 @@ static void xmb_render_messagebox_internal(
for (i = 0; i < list->size; i++) for (i = 0; i < list->size; i++)
{ {
const char *msg = list->elems[i].data; const char *msg = list->elems[i].data;
int len = strlen(msg); int len = xmb_strlen(&msg);
if (len > longest) if (len > longest)
{ {
longest = len; longest = len;