mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
Add most Japanese kanji, the brute force way.
Hope everything supports 2048x2048 textures.
This commit is contained in:
parent
32f344d6bd
commit
42e4dc897e
17 changed files with 43858 additions and 1039 deletions
22099
Core/Util/ppge_atlas.cpp
22099
Core/Util/ppge_atlas.cpp
File diff suppressed because it is too large
Load diff
|
@ -169,8 +169,8 @@ static void ReadClut32(u32 *clutBuf32) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void *TextureCache::UnswizzleFromMem(u32 texaddr, u32 bytesPerPixel, u32 level) {
|
void *TextureCache::UnswizzleFromMem(u32 texaddr, u32 bufw, u32 bytesPerPixel, u32 level) {
|
||||||
const u32 rowWidth = (bytesPerPixel > 0) ? ((gstate.texbufwidth[level] & 0x3FF) * bytesPerPixel) : ((gstate.texbufwidth[level] & 0x3FF) / 2);
|
const u32 rowWidth = (bytesPerPixel > 0) ? (bufw * bytesPerPixel) : ((bufw & 0x3FF) / 2);
|
||||||
const u32 pitch = rowWidth / 4;
|
const u32 pitch = rowWidth / 4;
|
||||||
const int bxc = rowWidth / 16;
|
const int bxc = rowWidth / 16;
|
||||||
int byc = ((1 << ((gstate.texsize[level] >> 8) & 0xf)) + 7) / 8;
|
int byc = ((1 << ((gstate.texsize[level] >> 8) & 0xf)) + 7) / 8;
|
||||||
|
@ -260,7 +260,12 @@ inline void DeIndexTextureNoSwizzle(ClutT *dest, const u32 texaddr, int length,
|
||||||
}
|
}
|
||||||
|
|
||||||
void *TextureCache::readIndexedTex(int level, u32 texaddr, int bytesPerIndex) {
|
void *TextureCache::readIndexedTex(int level, u32 texaddr, int bytesPerIndex) {
|
||||||
int length = (gstate.texbufwidth[level] & 0x3FF) * (1 << ((gstate.texsize[level] >> 8) & 0xf));
|
// Special rules for kernel textures (PPGe):
|
||||||
|
int mask = 0x3FF;
|
||||||
|
if (texaddr < 0x08800000)
|
||||||
|
mask = 0x1FFF;
|
||||||
|
int bufw = gstate.texbufwidth[level] & mask;
|
||||||
|
int length = bufw * (1 << ((gstate.texsize[level] >> 8) & 0xf));
|
||||||
void *buf = NULL;
|
void *buf = NULL;
|
||||||
switch ((gstate.clutformat & 3)) {
|
switch ((gstate.clutformat & 3)) {
|
||||||
case GE_CMODE_16BIT_BGR5650:
|
case GE_CMODE_16BIT_BGR5650:
|
||||||
|
@ -286,7 +291,7 @@ void *TextureCache::readIndexedTex(int level, u32 texaddr, int bytesPerIndex) {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
const u16 *clut = clutBuf16;
|
const u16 *clut = clutBuf16;
|
||||||
UnswizzleFromMem(texaddr, bytesPerIndex, level);
|
UnswizzleFromMem(texaddr, bufw, bytesPerIndex, level);
|
||||||
switch (bytesPerIndex) {
|
switch (bytesPerIndex) {
|
||||||
case 1:
|
case 1:
|
||||||
DeIndexTexture(tmpTexBuf16.data(), (u8 *) tmpTexBuf32.data(), length, clut);
|
DeIndexTexture(tmpTexBuf16.data(), (u8 *) tmpTexBuf32.data(), length, clut);
|
||||||
|
@ -327,7 +332,7 @@ void *TextureCache::readIndexedTex(int level, u32 texaddr, int bytesPerIndex) {
|
||||||
buf = tmpTexBuf32.data();
|
buf = tmpTexBuf32.data();
|
||||||
} else {
|
} else {
|
||||||
const u32 *clut = clutBuf32;
|
const u32 *clut = clutBuf32;
|
||||||
UnswizzleFromMem(texaddr, bytesPerIndex, level);
|
UnswizzleFromMem(texaddr, bufw, bytesPerIndex, level);
|
||||||
// Since we had to unswizzle to tmpTexBuf32, let's output to tmpTexBuf16.
|
// Since we had to unswizzle to tmpTexBuf32, let's output to tmpTexBuf16.
|
||||||
tmpTexBuf16.resize(length * 2);
|
tmpTexBuf16.resize(length * 2);
|
||||||
u32 *dest32 = (u32 *) tmpTexBuf16.data();
|
u32 *dest32 = (u32 *) tmpTexBuf16.data();
|
||||||
|
@ -902,8 +907,10 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
|
|
||||||
u32 texaddr = (gstate.texaddr[level] & 0xFFFFF0) | ((gstate.texbufwidth[level] << 8) & 0x0F000000);
|
u32 texaddr = (gstate.texaddr[level] & 0xFFFFF0) | ((gstate.texbufwidth[level] << 8) & 0x0F000000);
|
||||||
|
|
||||||
int bufw = gstate.texbufwidth[level] & 0x3ff;
|
int mask = 0x3ff;
|
||||||
|
if (texaddr < 0x08800000)
|
||||||
|
mask = 0x1FFF;
|
||||||
|
int bufw = gstate.texbufwidth[level] & mask;
|
||||||
|
|
||||||
int w = 1 << (gstate.texsize[level] & 0xf);
|
int w = 1 << (gstate.texsize[level] & 0xf);
|
||||||
int h = 1 << ((gstate.texsize[level] >> 8) & 0xf);
|
int h = 1 << ((gstate.texsize[level] >> 8) & 0xf);
|
||||||
|
@ -934,7 +941,7 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
tmpTexBuf16[i + 1] = clut[GetClutIndex((index >> 4) & 0xf) + clutSharingOffset];
|
tmpTexBuf16[i + 1] = clut[GetClutIndex((index >> 4) & 0xf) + clutSharingOffset];
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
UnswizzleFromMem(texaddr, 0, level);
|
UnswizzleFromMem(texaddr, bufw, 0, level);
|
||||||
for (int i = 0, j = 0; i < bufw * h; i += 8, j++)
|
for (int i = 0, j = 0; i < bufw * h; i += 8, j++)
|
||||||
{
|
{
|
||||||
u32 n = tmpTexBuf32[j];
|
u32 n = tmpTexBuf32[j];
|
||||||
|
@ -951,6 +958,7 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
|
|
||||||
case GE_CMODE_32BIT_ABGR8888:
|
case GE_CMODE_32BIT_ABGR8888:
|
||||||
{
|
{
|
||||||
|
tmpTexBuf32.resize(bufw * h);
|
||||||
ReadClut32(clutBuf32);
|
ReadClut32(clutBuf32);
|
||||||
const u32 *clut = clutBuf32;
|
const u32 *clut = clutBuf32;
|
||||||
u32 clutSharingOff = 0;//gstate.mipmapShareClut ? 0 : level * 16;
|
u32 clutSharingOff = 0;//gstate.mipmapShareClut ? 0 : level * 16;
|
||||||
|
@ -964,7 +972,7 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
u32 pixels = bufw * h;
|
u32 pixels = bufw * h;
|
||||||
UnswizzleFromMem(texaddr, 0, level);
|
UnswizzleFromMem(texaddr, bufw, 0, level);
|
||||||
for (int i = pixels - 8, j = (pixels / 8) - 1; i >= 0; i -= 8, j--) {
|
for (int i = pixels - 8, j = (pixels / 8) - 1; i >= 0; i -= 8, j--) {
|
||||||
u32 n = tmpTexBuf32[j];
|
u32 n = tmpTexBuf32[j];
|
||||||
for (int k = 0; k < 8; k++) {
|
for (int k = 0; k < 8; k++) {
|
||||||
|
@ -1021,7 +1029,7 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
finalBuf = tmpTexBuf16.data();
|
finalBuf = tmpTexBuf16.data();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
finalBuf = UnswizzleFromMem(texaddr, 2, level);
|
finalBuf = UnswizzleFromMem(texaddr, bufw, 2, level);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GE_TFMT_8888:
|
case GE_TFMT_8888:
|
||||||
|
@ -1033,7 +1041,7 @@ void TextureCache::LoadTextureLevel(TexCacheEntry &entry, int level)
|
||||||
finalBuf = tmpTexBuf32.data();
|
finalBuf = tmpTexBuf32.data();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
finalBuf = UnswizzleFromMem(texaddr, 4, level);
|
finalBuf = UnswizzleFromMem(texaddr, bufw, 4, level);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GE_TFMT_DXT1:
|
case GE_TFMT_DXT1:
|
||||||
|
@ -1168,7 +1176,8 @@ bool TextureCache::DecodeTexture(u8* output, GPUgstate state)
|
||||||
|
|
||||||
const u8 *texptr = Memory::GetPointer(texaddr);
|
const u8 *texptr = Memory::GetPointer(texaddr);
|
||||||
|
|
||||||
int bufw = gstate.texbufwidth[0] & 0x3ff;
|
int mask = texaddr < 0x08800000 ? 0x1FFF : 0x3ff;
|
||||||
|
int bufw = gstate.texbufwidth[0] & mask;
|
||||||
|
|
||||||
int w = 1 << (gstate.texsize[0] & 0xf);
|
int w = 1 << (gstate.texsize[0] & 0xf);
|
||||||
int h = 1 << ((gstate.texsize[0]>>8) & 0xf);
|
int h = 1 << ((gstate.texsize[0]>>8) & 0xf);
|
||||||
|
@ -1206,7 +1215,7 @@ bool TextureCache::DecodeTexture(u8* output, GPUgstate state)
|
||||||
tmpTexBuf16[i + 1] = clut[GetClutIndex((index >> 4) & 0xf) + clutSharingOff];
|
tmpTexBuf16[i + 1] = clut[GetClutIndex((index >> 4) & 0xf) + clutSharingOff];
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
UnswizzleFromMem(texaddr, 0, level);
|
UnswizzleFromMem(texaddr, bufw, 0, level);
|
||||||
for (int i = 0, j = 0; i < bufw * h; i += 8, j++)
|
for (int i = 0, j = 0; i < bufw * h; i += 8, j++)
|
||||||
{
|
{
|
||||||
u32 n = tmpTexBuf32[j];
|
u32 n = tmpTexBuf32[j];
|
||||||
|
@ -1236,7 +1245,7 @@ bool TextureCache::DecodeTexture(u8* output, GPUgstate state)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
u32 pixels = bufw * h;
|
u32 pixels = bufw * h;
|
||||||
UnswizzleFromMem(texaddr, 0, level);
|
UnswizzleFromMem(texaddr, bufw, 0, level);
|
||||||
for (int i = pixels - 8, j = (pixels / 8) - 1; i >= 0; i -= 8, j--) {
|
for (int i = pixels - 8, j = (pixels / 8) - 1; i >= 0; i -= 8, j--) {
|
||||||
u32 n = tmpTexBuf32[j];
|
u32 n = tmpTexBuf32[j];
|
||||||
for (int k = 0; k < 8; k++) {
|
for (int k = 0; k < 8; k++) {
|
||||||
|
@ -1293,7 +1302,7 @@ bool TextureCache::DecodeTexture(u8* output, GPUgstate state)
|
||||||
finalBuf = tmpTexBuf16.data();
|
finalBuf = tmpTexBuf16.data();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
finalBuf = UnswizzleFromMem(texaddr, 2, level);
|
finalBuf = UnswizzleFromMem(texaddr, bufw, 2, level);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GE_TFMT_8888:
|
case GE_TFMT_8888:
|
||||||
|
@ -1305,7 +1314,7 @@ bool TextureCache::DecodeTexture(u8* output, GPUgstate state)
|
||||||
finalBuf = tmpTexBuf32.data();
|
finalBuf = tmpTexBuf32.data();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
finalBuf = UnswizzleFromMem(texaddr, 4, level);
|
finalBuf = UnswizzleFromMem(texaddr, bufw, 4, level);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GE_TFMT_DXT1:
|
case GE_TFMT_DXT1:
|
||||||
|
|
|
@ -87,7 +87,7 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
void Decimate(); // Run this once per frame to get rid of old textures.
|
void Decimate(); // Run this once per frame to get rid of old textures.
|
||||||
void *UnswizzleFromMem(u32 texaddr, u32 bytesPerPixel, u32 level);
|
void *UnswizzleFromMem(u32 texaddr, u32 bufw, u32 bytesPerPixel, u32 level);
|
||||||
void *readIndexedTex(int level, u32 texaddr, int bytesPerIndex);
|
void *readIndexedTex(int level, u32 texaddr, int bytesPerIndex);
|
||||||
void UpdateSamplingParams(TexCacheEntry &entry, bool force);
|
void UpdateSamplingParams(TexCacheEntry &entry, bool force);
|
||||||
void LoadTextureLevel(TexCacheEntry &entry, int level);
|
void LoadTextureLevel(TexCacheEntry &entry, int level);
|
||||||
|
|
|
@ -665,27 +665,21 @@ void SystemScreen::render() {
|
||||||
UICheckBox(GEN_ID, x, y += stride, s->T("Show Debug Statistics"), ALIGN_TOPLEFT, &g_Config.bShowDebugStats);
|
UICheckBox(GEN_ID, x, y += stride, s->T("Show Debug Statistics"), ALIGN_TOPLEFT, &g_Config.bShowDebugStats);
|
||||||
UICheckBox(GEN_ID, x, y += stride, s->T("Show FPS"), ALIGN_TOPLEFT, &g_Config.bShowFPSCounter);
|
UICheckBox(GEN_ID, x, y += stride, s->T("Show FPS"), ALIGN_TOPLEFT, &g_Config.bShowFPSCounter);
|
||||||
|
|
||||||
// TODO: Make a dynamic language selector that looks for INI files.
|
VLinear vlang(600, 70, 10);
|
||||||
|
|
||||||
VLinear vlang(500, 70, 10);
|
// TODO: Make a dynamic language selector that looks for INI files.
|
||||||
if (UIButton(GEN_ID, vlang, LARGE_BUTTON_WIDTH, 0, "English", ALIGN_TOPLEFT)) {
|
#define NUMLANGS 6
|
||||||
g_Config.languageIni = "en_US";
|
static const char *langs[NUMLANGS] = {"English", "Swedish", "German", "Chinese", "Japanese", "Russian"};
|
||||||
|
static const char *langCodes[NUMLANGS] = {"en_US", "sv_SE", "de_DE", "zh_CN", "ja_JA", "ru_RU"};
|
||||||
|
|
||||||
|
for (int i = 0; i < 6; i++) {
|
||||||
|
if (UIButton(GEN_ID_LOOP(i), vlang, LARGE_BUTTON_WIDTH, 0, langs[i], ALIGN_TOPLEFT)) {
|
||||||
|
g_Config.languageIni = langCodes[i];
|
||||||
i18nrepo.LoadIni(g_Config.languageIni);
|
i18nrepo.LoadIni(g_Config.languageIni);
|
||||||
// After this, g and s are no longer valid. Let's return, some flicker is okay.
|
// After this, g and s are no longer valid. Let's return, some flicker is okay.
|
||||||
g = GetI18NCategory("General");
|
g = GetI18NCategory("General");
|
||||||
s = GetI18NCategory("System");
|
s = GetI18NCategory("System");
|
||||||
}
|
}
|
||||||
if (UIButton(GEN_ID, vlang, LARGE_BUTTON_WIDTH, 0, "Swedish", ALIGN_TOPLEFT)) {
|
|
||||||
g_Config.languageIni = "sv_SE";
|
|
||||||
i18nrepo.LoadIni(g_Config.languageIni);
|
|
||||||
g = GetI18NCategory("General");
|
|
||||||
s = GetI18NCategory("System");
|
|
||||||
}
|
|
||||||
if (UIButton(GEN_ID, vlang, LARGE_BUTTON_WIDTH, 0, "German", ALIGN_TOPLEFT)) {
|
|
||||||
g_Config.languageIni = "de_DE";
|
|
||||||
i18nrepo.LoadIni(g_Config.languageIni);
|
|
||||||
g = GetI18NCategory("General");
|
|
||||||
s = GetI18NCategory("System");
|
|
||||||
}
|
}
|
||||||
UIEnd();
|
UIEnd();
|
||||||
}
|
}
|
||||||
|
|
22541
UI/ui_atlas.cpp
22541
UI/ui_atlas.cpp
File diff suppressed because it is too large
Load diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,5 +1,5 @@
|
||||||
1024
|
2048
|
||||||
font UBUNTU24 C:/Windows/Fonts/KozGoPro-Medium.otf UWhk 30
|
font UBUNTU24 C:/Windows/Fonts/KozGoPro-Medium.otf UWhkcRG 30
|
||||||
font UBUNTU48 source_assets/font/zrnic.ttf UW 55
|
font UBUNTU48 source_assets/font/zrnic.ttf UW 55
|
||||||
image SOLIDWHITE white.png copy
|
image SOLIDWHITE white.png copy
|
||||||
image I_CROSS source_assets/image/cross.png copy
|
image I_CROSS source_assets/image/cross.png copy
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
[MainMenu]
|
[MainMenu]
|
||||||
Credits = Credits
|
Credits = Credits
|
||||||
Exit = Quit
|
Exit = Exit
|
||||||
Load = Load...
|
Load = Load...
|
||||||
Settings = Settings
|
Settings = Settings
|
||||||
|
Recent = Recent
|
||||||
[Developer]
|
[Developer]
|
||||||
Dump frame to log = Dump frame to log
|
Dump frame to log = Dump frame to log
|
||||||
Load language ini = Load language ini
|
Load language ini = Load language ini
|
||||||
|
@ -28,3 +29,21 @@ Fast Memory = Fast Memory (unstable)
|
||||||
Show Debug Statistics = Show Debug Statistics
|
Show Debug Statistics = Show Debug Statistics
|
||||||
Show FPS = Show FPS
|
Show FPS = Show FPS
|
||||||
System Settings = System Settings
|
System Settings = System Settings
|
||||||
|
[Audio]
|
||||||
|
Audio Settings = Audio Settings
|
||||||
|
Enable Sound = Enable Sound
|
||||||
|
[Controls]
|
||||||
|
Controls Settings = Controls Settings
|
||||||
|
OnScreen = On-Screen Touch Controls
|
||||||
|
Tilt = Tilt to Analog (horizontal)
|
||||||
|
[Graphics]
|
||||||
|
2X = 2x Render Resolution
|
||||||
|
Buffered Rendering = Buffered Rendering
|
||||||
|
Frame Skipping = Frame Skipping
|
||||||
|
Graphics Settings = Graphics Settings
|
||||||
|
Hardware Transform = Hardware Transform
|
||||||
|
Linear Filtering = Linear Filtering
|
||||||
|
Media Engine = Media Engine
|
||||||
|
Mipmapping = Mipmapping
|
||||||
|
Stream VBO = Stream VBO
|
||||||
|
Vertex Cache = Vertex Cache
|
||||||
|
|
49
lang/ja_JA.ini
Normal file
49
lang/ja_JA.ini
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
[MainMenu]
|
||||||
|
Credits = Credits
|
||||||
|
Exit = 終了する
|
||||||
|
Load = Load...
|
||||||
|
Settings = 設定
|
||||||
|
Recent = Recent
|
||||||
|
[Developer]
|
||||||
|
Dump frame to log = Dump frame to log
|
||||||
|
Load language ini = Load language ini
|
||||||
|
Run CPU tests = Run CPU tests
|
||||||
|
Save language ini = Save language ini
|
||||||
|
[General]
|
||||||
|
Back = Back
|
||||||
|
[MainSettings]
|
||||||
|
Audio = Audio
|
||||||
|
AudioDesc = Adjust Audio Settings
|
||||||
|
Controls = Controls
|
||||||
|
ControlsDesc = On Screen Controls, Large Buttons
|
||||||
|
Developer = Developer
|
||||||
|
DeveloperDesc = Run CPU test, Dump Next Frame Log
|
||||||
|
Graphics = Graphics
|
||||||
|
GraphicsDesc = Change graphics options
|
||||||
|
Settings = Settings
|
||||||
|
System = System
|
||||||
|
SystemDesc = Turn on Dynarec (JIT), Fast Memory
|
||||||
|
[System]
|
||||||
|
Dynarec = Dynarec (JIT)
|
||||||
|
Fast Memory = Fast Memory (unstable)
|
||||||
|
Show Debug Statistics = Show Debug Statistics
|
||||||
|
Show FPS = Show FPS
|
||||||
|
System Settings = System Settings
|
||||||
|
[Audio]
|
||||||
|
Audio Settings = Audio Settings
|
||||||
|
Enable Sound = Enable Sound
|
||||||
|
[Controls]
|
||||||
|
Controls Settings = Controls Settings
|
||||||
|
OnScreen = On-Screen Touch Controls
|
||||||
|
Tilt = Tilt to Analog (horizontal)
|
||||||
|
[Graphics]
|
||||||
|
2X = 2x Render Resolution
|
||||||
|
Buffered Rendering = Buffered Rendering
|
||||||
|
Frame Skipping = Frame Skipping
|
||||||
|
Graphics Settings = Graphics Settings
|
||||||
|
Hardware Transform = Hardware Transform
|
||||||
|
Linear Filtering = Linear Filtering
|
||||||
|
Media Engine = Media Engine
|
||||||
|
Mipmapping = Mipmapping
|
||||||
|
Stream VBO = Stream VBO
|
||||||
|
Vertex Cache = Vertex Cache
|
49
lang/ru_RU.ini
Normal file
49
lang/ru_RU.ini
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
[MainMenu]
|
||||||
|
Credits = Credits
|
||||||
|
Exit = Выход
|
||||||
|
Load = Load...
|
||||||
|
Settings = настройки
|
||||||
|
Recent = Recent
|
||||||
|
[Developer]
|
||||||
|
Dump frame to log = Dump frame to log
|
||||||
|
Load language ini = Load language ini
|
||||||
|
Run CPU tests = Run CPU tests
|
||||||
|
Save language ini = Save language ini
|
||||||
|
[General]
|
||||||
|
Back = Back
|
||||||
|
[MainSettings]
|
||||||
|
Audio = Audio
|
||||||
|
AudioDesc = Adjust Audio Settings
|
||||||
|
Controls = Controls
|
||||||
|
ControlsDesc = On Screen Controls, Large Buttons
|
||||||
|
Developer = Developer
|
||||||
|
DeveloperDesc = Run CPU test, Dump Next Frame Log
|
||||||
|
Graphics = Graphics
|
||||||
|
GraphicsDesc = Change graphics options
|
||||||
|
Settings = Settings
|
||||||
|
System = System
|
||||||
|
SystemDesc = Turn on Dynarec (JIT), Fast Memory
|
||||||
|
[System]
|
||||||
|
Dynarec = Dynarec (JIT)
|
||||||
|
Fast Memory = Fast Memory (unstable)
|
||||||
|
Show Debug Statistics = Show Debug Statistics
|
||||||
|
Show FPS = Show FPS
|
||||||
|
System Settings = System Settings
|
||||||
|
[Audio]
|
||||||
|
Audio Settings = Audio Settings
|
||||||
|
Enable Sound = Enable Sound
|
||||||
|
[Controls]
|
||||||
|
Controls Settings = Controls Settings
|
||||||
|
OnScreen = On-Screen Touch Controls
|
||||||
|
Tilt = Tilt to Analog (horizontal)
|
||||||
|
[Graphics]
|
||||||
|
2X = 2x Render Resolution
|
||||||
|
Buffered Rendering = Buffered Rendering
|
||||||
|
Frame Skipping = Frame Skipping
|
||||||
|
Graphics Settings = Graphics Settings
|
||||||
|
Hardware Transform = Hardware Transform
|
||||||
|
Linear Filtering = Linear Filtering
|
||||||
|
Media Engine = Media Engine
|
||||||
|
Mipmapping = Mipmapping
|
||||||
|
Stream VBO = Stream VBO
|
||||||
|
Vertex Cache = Vertex Cache
|
|
@ -5,7 +5,7 @@ Credits = Om
|
||||||
Exit = Avsluta
|
Exit = Avsluta
|
||||||
Load = Ladda...
|
Load = Ladda...
|
||||||
Settings = Inställningar
|
Settings = Inställningar
|
||||||
Recent = Recent
|
Recent = Senaste
|
||||||
[Developer]
|
[Developer]
|
||||||
Dump frame to log = Dumpa frame till logg
|
Dump frame to log = Dumpa frame till logg
|
||||||
Load language ini = Ladda språk-ini
|
Load language ini = Ladda språk-ini
|
||||||
|
|
49
lang/zh_CN.ini
Normal file
49
lang/zh_CN.ini
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
[MainMenu]
|
||||||
|
Credits = Credits
|
||||||
|
Exit = Exit
|
||||||
|
Load = Load...
|
||||||
|
Settings = Settings
|
||||||
|
Recent = Recent
|
||||||
|
[Developer]
|
||||||
|
Dump frame to log = Dump frame to log
|
||||||
|
Load language ini = Load language ini
|
||||||
|
Run CPU tests = Run CPU tests
|
||||||
|
Save language ini = Save language ini
|
||||||
|
[General]
|
||||||
|
Back = Back
|
||||||
|
[MainSettings]
|
||||||
|
Audio = Audio
|
||||||
|
AudioDesc = Adjust Audio Settings
|
||||||
|
Controls = Controls
|
||||||
|
ControlsDesc = On Screen Controls, Large Buttons
|
||||||
|
Developer = Developer
|
||||||
|
DeveloperDesc = Run CPU test, Dump Next Frame Log
|
||||||
|
Graphics = Graphics
|
||||||
|
GraphicsDesc = Change graphics options
|
||||||
|
Settings = Settings
|
||||||
|
System = System
|
||||||
|
SystemDesc = Turn on Dynarec (JIT), Fast Memory
|
||||||
|
[System]
|
||||||
|
Dynarec = Dynarec (JIT)
|
||||||
|
Fast Memory = Fast Memory (unstable)
|
||||||
|
Show Debug Statistics = Show Debug Statistics
|
||||||
|
Show FPS = Show FPS
|
||||||
|
System Settings = System Settings
|
||||||
|
[Audio]
|
||||||
|
Audio Settings = Audio Settings
|
||||||
|
Enable Sound = Enable Sound
|
||||||
|
[Controls]
|
||||||
|
Controls Settings = Controls Settings
|
||||||
|
OnScreen = On-Screen Touch Controls
|
||||||
|
Tilt = Tilt to Analog (horizontal)
|
||||||
|
[Graphics]
|
||||||
|
2X = 2x Render Resolution
|
||||||
|
Buffered Rendering = Buffered Rendering
|
||||||
|
Frame Skipping = Frame Skipping
|
||||||
|
Graphics Settings = Graphics Settings
|
||||||
|
Hardware Transform = Hardware Transform
|
||||||
|
Linear Filtering = Linear Filtering
|
||||||
|
Media Engine = Media Engine
|
||||||
|
Mipmapping = Mipmapping
|
||||||
|
Stream VBO = Stream VBO
|
||||||
|
Vertex Cache = Vertex Cache
|
2
native
2
native
|
@ -1 +1 @@
|
||||||
Subproject commit 43b78be9dd5d343a2133e42501ba9b56552c9d4e
|
Subproject commit 3494d9282d1319c7ea982f7d6e4fb7687a151046
|
|
@ -1,5 +1,5 @@
|
||||||
512
|
2048
|
||||||
font UBUNTU24 C:/Windows/Fonts/KozGoPro-Medium.otf UWkh 24
|
font UBUNTU24 C:/Windows/Fonts/KozGoPro-Medium.otf UWkhcGR 24
|
||||||
image I_CROSS source_assets/image/cross.png copy
|
image I_CROSS source_assets/image/cross.png copy
|
||||||
image I_CIRCLE source_assets/image/circle.png copy
|
image I_CIRCLE source_assets/image/circle.png copy
|
||||||
image I_SQUARE source_assets/image/square.png copy
|
image I_SQUARE source_assets/image/square.png copy
|
||||||
|
|
Loading…
Add table
Reference in a new issue