From df9fbacfde68a41f7bf62276977da0cf72a6deaa Mon Sep 17 00:00:00 2001 From: Nekokabu Date: Tue, 11 Oct 2016 22:58:44 +0900 Subject: [PATCH 1/5] Update Japanese.pj.Lang --- Lang/Japanese.pj.Lang | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/Lang/Japanese.pj.Lang b/Lang/Japanese.pj.Lang index 0855b3c89..208b46056 100644 --- a/Lang/Japanese.pj.Lang +++ b/Lang/Japanese.pj.Lang @@ -4,8 +4,8 @@ //About DLL #1 # "Japanese" // LANGUAGE ID #2 # "Nekokabu" // Author -#3 # "2.2" // Version -#4 # "2015/12/5" // Date +#3 # "2.3.1" // Version +#4 # "2016/10/11" // Date //About DLL Dialog #5 # "現在の言語" @@ -247,7 +247,7 @@ #463# "前回使ったチートを記憶する(&R)" #464# "ロムの実行中はスクリーンセーバーを無効にする" #465# "フレームレートを表示" -#466# "フレームレート表示形式" +#466# "フレームレート表示形式" #467# "Project64がすでに起動しているかチェックする" #468# "ゲーム毎にセーブディレクトリを作成する" #469# "64DD IPLロムパス:" @@ -456,6 +456,22 @@ #1104# "オプション" #1105# "セーブスロット" +/********************************************************************************* +* Support Window * +*********************************************************************************/ +#1200# "Project64のサポート" +#1201# "Project64は、Microsoft Windowsが動作するPC上でNintendo64ビデオゲームシステムをエミュレートするように設計されたソフトウェアパッケージです。オリジナルのハードウェアシステムと同じように本物のN64ソフトウェアをプレイすることができます。\n\nもしあなたがProject64が好きで、日頃のお礼をしたかったり、または継続的な改善を要求するのであればProject64のサポートをお願いいたします。\n\nProject64をサポートしている場合:" +#1202# "確認コードの入力" +#1203# "Project64のサポート" +#1204# "続ける" +#1205# "確認コードを入力してください" +#1206# "確認コードが正しくありません" +#1207# "ありがとうございました!" +#1208# "コードの入力" +#1209# "Eメールで届いたコードを入力してください" +#1210# "OK" +#1211# "キャンセル" + /********************************************************************************* * Messages * *********************************************************************************/ From 1bc71cfdc8a8fcc4c9510cfe7ac44eb318cd6d94 Mon Sep 17 00:00:00 2001 From: Tony Lukasavage Date: Sun, 23 Oct 2016 09:20:31 -0400 Subject: [PATCH 2/5] fix typo in RomList.cpp --- Source/Project64-core/RomList/RomList.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Project64-core/RomList/RomList.cpp b/Source/Project64-core/RomList/RomList.cpp index 08080e1ab..1edb29a7d 100644 --- a/Source/Project64-core/RomList/RomList.cpp +++ b/Source/Project64-core/RomList/RomList.cpp @@ -313,7 +313,7 @@ void CRomList::FillRomList(strlist & FileList, const char * Directory) } catch (...) { - WriteTrace(TraceUserInterface, TraceError, "execpetion processing %s", (LPCSTR)SearchPath); + WriteTrace(TraceUserInterface, TraceError, "exception processing %s", (LPCSTR)SearchPath); } } #endif From 1b1479c06439395f3fbc40559b3d30340a3b9937 Mon Sep 17 00:00:00 2001 From: purplemarshmallow Date: Tue, 15 Nov 2016 14:49:43 +0100 Subject: [PATCH 3/5] [Glide64] Fix linear texture coordinate transformation fix taken from https://github.com/gonetz/GLideN64/commit/2b29b6c09a0708bda5b992e46db41722a7549e04 Fixed Zelda OOT rotating "N" is miscolored (HLE) --- Source/Glide64/3dmath.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Glide64/3dmath.cpp b/Source/Glide64/3dmath.cpp index 1c59092f3..6100d4f42 100644 --- a/Source/Glide64/3dmath.cpp +++ b/Source/Glide64/3dmath.cpp @@ -110,8 +110,8 @@ void calc_linear(VERTEX *v) if (rdp.cur_cache[0]) { // scale >> 6 is size to map to - v->ou = (acosf(x) / 3.141592654f) * (rdp.tiles[rdp.cur_tile].org_s_scale >> 6); - v->ov = (acosf(y) / 3.141592654f) * (rdp.tiles[rdp.cur_tile].org_t_scale >> 6); + v->ou = (acosf(-x) / 3.141592654f) * (rdp.tiles[rdp.cur_tile].org_s_scale >> 6); + v->ov = (acosf(-y) / 3.141592654f) * (rdp.tiles[rdp.cur_tile].org_t_scale >> 6); } v->uv_scaled = 1; WriteTrace(TraceRDP, TraceVerbose, "calc linear u: %f, v: %f", v->ou, v->ov); From f7e76f0c2a330f98c5169238f7777a4ebcc1ba0b Mon Sep 17 00:00:00 2001 From: purplemarshmallow Date: Thu, 17 Nov 2016 16:12:09 +0100 Subject: [PATCH 4/5] [Glide64] port winback hack from GLideN64 --- Source/Glide64/Main.cpp | 2 ++ Source/Glide64/Settings.h | 7 ++++--- Source/Glide64/rdp.cpp | 11 ++++++++--- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Source/Glide64/Main.cpp b/Source/Glide64/Main.cpp index e21bac4e5..a10a48a0b 100644 --- a/Source/Glide64/Main.cpp +++ b/Source/Glide64/Main.cpp @@ -445,6 +445,8 @@ void ReadSpecialSettings(const char * name) g_settings->hacks |= hack_GoldenEye; else if (strstr(name, (const char *)"PUZZLE LEAGUE")) g_settings->hacks |= hack_PPL; + else if (strstr(name, (const char *)"WIN BACK") || strstr(name, (const char *)"OPERATION WINBACK")) + g_settings->hacks |= hack_Winback; g_settings->alt_tex_size = GetSetting(Set_alt_tex_size); g_settings->use_sts1_only = GetSetting(Set_use_sts1_only); diff --git a/Source/Glide64/Settings.h b/Source/Glide64/Settings.h index d7198524c..34c742a6c 100644 --- a/Source/Glide64/Settings.h +++ b/Source/Glide64/Settings.h @@ -151,9 +151,10 @@ public: #define hack_TGR (1<<24) //Top Gear Rally #define hack_TGR2 (1<<25) //Top Gear Rally 2 #define hack_Tonic (1<<26) //tonic trouble -#define hack_Yoshi (1<<27) //Yoshi Story -#define hack_Zelda (1<<28) //zeldas hacks -#define hack_OoT (1<<29) //zelda OoT hacks +#define hack_Winback (1<<27) //WinBack - Covert Operations +#define hack_Yoshi (1<<28) //Yoshi Story +#define hack_Zelda (1<<29) //zeldas hacks +#define hack_OoT (1<<30) //zelda OoT hacks uint32_t hacks; //wrapper settings diff --git a/Source/Glide64/rdp.cpp b/Source/Glide64/rdp.cpp index fee1cf887..3934a76c6 100644 --- a/Source/Glide64/rdp.cpp +++ b/Source/Glide64/rdp.cpp @@ -929,11 +929,16 @@ static void rdp_texrect() else { //gDPTextureRectangle - if (g_settings->hacks&hack_ASB) + if (g_settings->hacks&hack_ASB || g_settings->hacks&hack_Winback) rdp.cmd2 = 0; else rdp.cmd2 = ((uint32_t*)gfx.RDRAM)[a + 0]; - rdp.cmd3 = ((uint32_t*)gfx.RDRAM)[a + 1]; + + if (g_settings->hacks&hack_Winback) + rdp.cmd3 = 0; + else + rdp.cmd3 = ((uint32_t*)gfx.RDRAM)[a + 1]; + rdp.pc[rdp.pc_i] += 8; } } @@ -943,7 +948,7 @@ static void rdp_texrect() return; } - if (rdp.skip_drawing || (!fb_emulation_enabled && (rdp.cimg == rdp.zimg))) + if (rdp.skip_drawing || (!fb_emulation_enabled && (rdp.cimg == rdp.zimg)) || rdp.cmd3 == 0) { if ((g_settings->hacks&hack_PMario) && rdp.ci_status == ci_useless) { From 79c13d00215504dd929d893ecd265a16d3e73836 Mon Sep 17 00:00:00 2001 From: purplemarshmallow Date: Thu, 17 Nov 2016 17:31:33 +0100 Subject: [PATCH 5/5] [Glide64] correct Winback hack --- Source/Glide64/rdp.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Source/Glide64/rdp.cpp b/Source/Glide64/rdp.cpp index 3934a76c6..ea70a343c 100644 --- a/Source/Glide64/rdp.cpp +++ b/Source/Glide64/rdp.cpp @@ -929,16 +929,17 @@ static void rdp_texrect() else { //gDPTextureRectangle - if (g_settings->hacks&hack_ASB || g_settings->hacks&hack_Winback) + if (g_settings->hacks&hack_Winback) { + rdp.pc[rdp.pc_i] += 8; + return; + } + + if (g_settings->hacks&hack_ASB) rdp.cmd2 = 0; else rdp.cmd2 = ((uint32_t*)gfx.RDRAM)[a + 0]; - if (g_settings->hacks&hack_Winback) - rdp.cmd3 = 0; - else - rdp.cmd3 = ((uint32_t*)gfx.RDRAM)[a + 1]; - + rdp.cmd3 = ((uint32_t*)gfx.RDRAM)[a + 1]; rdp.pc[rdp.pc_i] += 8; } } @@ -948,7 +949,7 @@ static void rdp_texrect() return; } - if (rdp.skip_drawing || (!fb_emulation_enabled && (rdp.cimg == rdp.zimg)) || rdp.cmd3 == 0) + if (rdp.skip_drawing || (!fb_emulation_enabled && (rdp.cimg == rdp.zimg))) { if ((g_settings->hacks&hack_PMario) && rdp.ci_status == ci_useless) {