mirror of
https://github.com/libretro/pcsx2.git
synced 2024-12-21 01:08:14 +00:00
cleanup: moved 'software emulate mul' to gamefixes section since it seems to only be needed by 1 game.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@765 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
e0347fd285
commit
43d7191927
@ -35,8 +35,6 @@ static void InitRoundClampModes( HWND hDlg, u32 new_eeopt, u32 new_vuopt )
|
||||
else if (new_vuopt & 0x1) CheckRadioButton(hDlg, IDC_VU_CLAMPMODE0, IDC_VU_CLAMPMODE3, IDC_VU_CLAMPMODE0 + 1);
|
||||
else CheckRadioButton(hDlg, IDC_VU_CLAMPMODE0, IDC_VU_CLAMPMODE3, IDC_VU_CLAMPMODE0 + 0);
|
||||
|
||||
CheckDlgButton(hDlg, IDC_EE_CHECK3, (new_eeopt & 0x8) ? TRUE : FALSE);
|
||||
|
||||
if (new_eeopt & 0x4) CheckRadioButton(hDlg, IDC_EE_CLAMPMODE0, IDC_EE_CLAMPMODE3, IDC_EE_CLAMPMODE0 + 3);
|
||||
else if (new_eeopt & 0x2) CheckRadioButton(hDlg, IDC_EE_CLAMPMODE0, IDC_EE_CLAMPMODE3, IDC_EE_CLAMPMODE0 + 2);
|
||||
else if (new_eeopt & 0x1) CheckRadioButton(hDlg, IDC_EE_CLAMPMODE0, IDC_EE_CLAMPMODE3, IDC_EE_CLAMPMODE0 + 1);
|
||||
@ -96,8 +94,6 @@ BOOL APIENTRY AdvancedOptionsProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM
|
||||
new_eeopt |= IsDlgButtonChecked(hDlg, IDC_EE_CLAMPMODE2) ? 0x3 : 0;
|
||||
new_eeopt |= IsDlgButtonChecked(hDlg, IDC_EE_CLAMPMODE3) ? 0x7 : 0;
|
||||
|
||||
new_eeopt |= IsDlgButtonChecked(hDlg, IDC_EE_CHECK3) ? 0x8 : 0;
|
||||
|
||||
new_vuopt |= IsDlgButtonChecked(hDlg, IDC_VU_CLAMPMODE0) ? 0x0 : 0;
|
||||
new_vuopt |= IsDlgButtonChecked(hDlg, IDC_VU_CLAMPMODE1) ? 0x1 : 0;
|
||||
new_vuopt |= IsDlgButtonChecked(hDlg, IDC_VU_CLAMPMODE2) ? 0x3 : 0;
|
||||
|
@ -526,6 +526,7 @@ BOOL APIENTRY GameFixes(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
if(Config.GameFixes & 0x1) CheckDlgButton(hDlg, IDC_GAMEFIX2, TRUE);//Tri-Ace fix
|
||||
if(Config.GameFixes & 0x4) CheckDlgButton(hDlg, IDC_GAMEFIX3, TRUE);//Digimon FPU compare fix
|
||||
if(Config.GameFixes & 0x2) CheckDlgButton(hDlg, IDC_GAMEFIX4, TRUE);//GoW fix
|
||||
if(Config.GameFixes & 0x8) CheckDlgButton(hDlg, IDC_GAMEFIX5, TRUE);//Tales of Destiny fix
|
||||
return TRUE;
|
||||
|
||||
case WM_COMMAND:
|
||||
@ -535,6 +536,7 @@ BOOL APIENTRY GameFixes(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
newfixes |= IsDlgButtonChecked(hDlg, IDC_GAMEFIX2) ? 0x1 : 0;
|
||||
newfixes |= IsDlgButtonChecked(hDlg, IDC_GAMEFIX3) ? 0x4 : 0;
|
||||
newfixes |= IsDlgButtonChecked(hDlg, IDC_GAMEFIX4) ? 0x2 : 0;
|
||||
newfixes |= IsDlgButtonChecked(hDlg, IDC_GAMEFIX5) ? 0x8 : 0;
|
||||
|
||||
EndDialog(hDlg, TRUE);
|
||||
|
||||
|
@ -74,21 +74,23 @@ LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_GAMEFIXES DIALOGEX 0, 0, 278, 127
|
||||
IDD_GAMEFIXES DIALOGEX 0, 0, 279, 132
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Game Special Fixes"
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,85,91,50,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,139,91,50,14
|
||||
CTEXT "Some games need special settings.\nConfigure them here.",IDC_STATIC,7,7,264,17
|
||||
GROUPBOX "PCSX2 Gamefixes",IDC_STATIC,7,31,264,89
|
||||
DEFPUSHBUTTON "OK",IDOK,87,105,50,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,142,105,50,14
|
||||
CTEXT "Some games need special settings.\nConfigure them here.",IDC_STATIC,7,7,265,17
|
||||
GROUPBOX "PCSX2 Gamefixes",IDC_STATIC,7,28,265,97
|
||||
CONTROL "FPU Compare Hack - Special fix for Digimon Rumble Arena 2.",IDC_GAMEFIX3,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,47,249,10
|
||||
CONTROL "VU Add / Sub Hack - Special fix for Tri-Ace games!",IDC_GAMEFIX2,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,61,252,10
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,43,249,10
|
||||
CONTROL "VU Add Hack - Special fix for Tri-Ace games!",IDC_GAMEFIX2,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,72,252,10
|
||||
CONTROL "VU Clip Hack - Special fix for God of War",IDC_GAMEFIX4,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,75,144,10
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,86,238,10
|
||||
CONTROL "FPU Mul Hack - Special fix for Tales of Destiny (possibly other games).",IDC_GAMEFIX5,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,57,249,10
|
||||
END
|
||||
|
||||
|
||||
@ -103,10 +105,11 @@ BEGIN
|
||||
IDD_GAMEFIXES, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 271
|
||||
VERTGUIDE, 12
|
||||
RIGHTMARGIN, 272
|
||||
VERTGUIDE, 14
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 120
|
||||
BOTTOMMARGIN, 125
|
||||
HORZGUIDE, 119
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
@ -195,31 +198,30 @@ BEGIN
|
||||
RADIOBUTTON "Chop / Zero",IDC_EE_ROUNDMODE3,156,36,54,16
|
||||
CONTROL " Flush to Zero",IDC_EE_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,20,105,58,13
|
||||
CONTROL " Denormals are Zero",IDC_EE_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,111,105,79,13
|
||||
CONTROL " Flush to Zero",IDC_VU_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,20,232,58,13
|
||||
CONTROL " Denormals are Zero",IDC_VU_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,111,232,81,13
|
||||
RADIOBUTTON "Nearest",IDC_VU_ROUNDMODE0,20,172,44,12
|
||||
RADIOBUTTON "Negative",IDC_VU_ROUNDMODE1,64,172,47,12
|
||||
RADIOBUTTON "Positive",IDC_VU_ROUNDMODE2,111,172,45,12
|
||||
RADIOBUTTON "Chop / Zero",IDC_VU_ROUNDMODE3,156,172,52,12
|
||||
CONTROL " Flush to Zero",IDC_VU_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,20,217,58,13
|
||||
CONTROL " Denormals are Zero",IDC_VU_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,111,217,81,13
|
||||
RADIOBUTTON "Nearest",IDC_VU_ROUNDMODE0,20,157,44,12
|
||||
RADIOBUTTON "Negative",IDC_VU_ROUNDMODE1,64,157,47,12
|
||||
RADIOBUTTON "Positive",IDC_VU_ROUNDMODE2,111,157,45,12
|
||||
RADIOBUTTON "Chop / Zero",IDC_VU_ROUNDMODE3,156,157,52,12
|
||||
PUSHBUTTON "Defaults",IDDEFAULT,346,254,50,14
|
||||
GROUPBOX "VU Recs Options",IDC_STATIC,7,146,250,122,BS_CENTER
|
||||
GROUPBOX "EE Recs Options",IDC_STATIC,7,12,250,129,BS_CENTER
|
||||
GROUPBOX "Round Mode",IDC_STATIC,11,159,236,32
|
||||
GROUPBOX "VU Recs Options",IDC_STATIC,7,133,250,118,BS_CENTER
|
||||
GROUPBOX "EE Recs Options",IDC_STATIC,7,12,250,113,BS_CENTER
|
||||
GROUPBOX "Round Mode",IDC_STATIC,11,144,236,32
|
||||
GROUPBOX "Round Mode",IDC_STATIC,11,26,236,36
|
||||
GROUPBOX "Help",IDC_STATIC,271,12,251,238,BS_CENTER
|
||||
GROUPBOX "Clamp Mode",IDC_STATIC,11,196,236,31
|
||||
RADIOBUTTON "None",IDC_VU_CLAMPMODE0,20,207,44,12
|
||||
RADIOBUTTON "Normal",IDC_VU_CLAMPMODE1,64,207,47,12
|
||||
RADIOBUTTON "Extra",IDC_VU_CLAMPMODE2,111,207,45,12
|
||||
RADIOBUTTON "Extra + Preserve Sign",IDC_VU_CLAMPMODE3,156,207,85,12
|
||||
CONTROL " Set O and U Flags",IDC_VU_CHECK3,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,20,250,91,13
|
||||
CONTROL " Software Emulate DaZ",IDC_VU_CHECK4,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,111,250,116,13
|
||||
GROUPBOX "Help",IDC_STATIC,271,12,251,239,BS_CENTER
|
||||
GROUPBOX "Clamp Mode",IDC_STATIC,11,181,236,31
|
||||
RADIOBUTTON "None",IDC_VU_CLAMPMODE0,20,192,44,12
|
||||
RADIOBUTTON "Normal",IDC_VU_CLAMPMODE1,64,192,47,12
|
||||
RADIOBUTTON "Extra",IDC_VU_CLAMPMODE2,111,192,45,12
|
||||
RADIOBUTTON "Extra + Preserve Sign",IDC_VU_CLAMPMODE3,156,192,85,12
|
||||
CONTROL " Set O and U Flags",IDC_VU_CHECK3,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,20,235,91,13
|
||||
CONTROL " Software Emulate DaZ",IDC_VU_CHECK4,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,111,235,116,13
|
||||
GROUPBOX "Clamp Mode",IDC_STATIC,11,67,236,31
|
||||
RADIOBUTTON "None",IDC_EE_CLAMPMODE0,20,76,44,16
|
||||
RADIOBUTTON "Normal",IDC_EE_CLAMPMODE1,64,76,47,16
|
||||
RADIOBUTTON "Extra + Preserve Sign",IDC_EE_CLAMPMODE2,111,76,91,16
|
||||
RADIOBUTTON "Full",IDC_EE_CLAMPMODE3,202,76,38,16
|
||||
CONTROL " Software Emulate MUL",IDC_EE_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,20,123,116,13
|
||||
LTEXT "These options specify how your CPU rounds floating point values.\n\nTry changing the roundmode for EE if your game hangs, it could make it work again.",IDC_STATIC,287,33,216,35
|
||||
GROUPBOX "Round Mode",IDC_STATIC,281,22,235,51,BS_LEFT
|
||||
GROUPBOX "Clamp Mode",IDC_STATIC,281,80,236,127,BS_LEFT
|
||||
|
@ -592,7 +592,7 @@ void FPU_SUB(int regd, int regt) {
|
||||
// FPU_MUL (Used to approximate PS2's FPU mul behavior)
|
||||
//------------------------------------------------------------------
|
||||
// PS2's multiplication uses some modification (possibly not the one used in this function)
|
||||
// of booth multiplication with wallace trees (not used in this function)
|
||||
// of booth multiplication with wallace trees (not used in this function)
|
||||
// it cuts of some bits, resulting in inaccurate and non-commutative results.
|
||||
// This function attempts to replicate this. It is currently inaccurate. But still not too bad.
|
||||
//------------------------------------------------------------------
|
||||
@ -653,7 +653,7 @@ u32 __fastcall FPU_MUL_MANTISSA(u32 s, u32 t)
|
||||
|
||||
void FPU_MUL(int regd, int regt)
|
||||
{
|
||||
if (CHECK_FPU_ATTEMPT_MUL)
|
||||
if (CHECK_FPUMULHACK)
|
||||
{
|
||||
SSE2_MOVD_XMM_to_R(ECX, regd);
|
||||
SSE2_MOVD_XMM_to_R(EDX, regt);
|
||||
|
@ -391,7 +391,7 @@ void FPU_ADD_SUB(int tempd, int tempt) //tempd and tempt are overwritten, they a
|
||||
|
||||
void FPU_MUL(int info, int regd, int sreg, int treg, bool acc)
|
||||
{
|
||||
if (CHECK_FPU_ATTEMPT_MUL)
|
||||
if (CHECK_FPUMULHACK)
|
||||
{
|
||||
SSE2_MOVD_XMM_to_R(ECX, sreg);
|
||||
SSE2_MOVD_XMM_to_R(EDX, treg);
|
||||
|
Loading…
Reference in New Issue
Block a user