mirror of https://github.com/PCSX2/pcsx2.git
SPU2-X:
- Set default interpolation mode to "Catmull-Rom". It most closely mimics the original sound. - Bit of documentation and a fix for Async mixing core resets. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4330 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
564c44bf7e
commit
b62d4801ac
|
@ -32,7 +32,7 @@ int AutoDMAPlayRate[2] = {0,0};
|
|||
// Default settings.
|
||||
|
||||
// MIXING
|
||||
int Interpolation = 1;
|
||||
int Interpolation = 4;
|
||||
/* values:
|
||||
0: no interpolation (use nearest)
|
||||
1. linear interpolation
|
||||
|
@ -64,7 +64,7 @@ void ReadSettings()
|
|||
return;
|
||||
}
|
||||
|
||||
Interpolation = CfgReadInt( L"MIXING",L"Interpolation", 1 );
|
||||
Interpolation = CfgReadInt( L"MIXING",L"Interpolation", 4 );
|
||||
EffectsDisabled = CfgReadBool( L"MIXING", L"Disable_Effects", false );
|
||||
ReverbBoost = CfgReadInt( L"MIXING",L"Reverb_Boost", 0 );
|
||||
|
||||
|
@ -163,10 +163,10 @@ void DisplayDialog()
|
|||
int_label = gtk_label_new ("Interpolation:");
|
||||
int_box = gtk_combo_box_new_text ();
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "0 - Nearest (fastest/bad quality)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "1 - Linear (simple/nice)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "2 - Cubic (slower/good highs)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "3 - Hermite (slower/better highs)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "4 - Catmull-Rom (slow/hq)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "1 - Linear (simple/okay sound)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "2 - Cubic (artificial highs)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "3 - Hermite (better highs)");
|
||||
gtk_combo_box_append_text(GTK_COMBO_BOX(int_box), "4 - Catmull-Rom (PS2-like/slow)");
|
||||
gtk_combo_box_set_active(GTK_COMBO_BOX(int_box), Interpolation);
|
||||
|
||||
effects_check = gtk_check_button_new_with_label("Disable Effects Processing");
|
||||
|
|
|
@ -112,7 +112,7 @@ struct FrequencyResponseFilter
|
|||
lb2 ( 0.97555529586426892000 ),
|
||||
|
||||
ha0 ( 1.52690772687271160000 ),
|
||||
ha1 ( -1.62653918974914990000 ),
|
||||
ha1 ( -1.62653918974914990000 ), //-1.72 = "common equilizer curve" --____--
|
||||
ha2 ( 0.57997976029249387000 ),
|
||||
hb1 ( -0.80955590379048203000 ),
|
||||
hb2 ( 0.28990420120653748000 )
|
||||
|
|
|
@ -27,7 +27,7 @@ static const int LATENCY_MAX = 750;
|
|||
static const int LATENCY_MIN = 50;
|
||||
|
||||
// MIXING
|
||||
int Interpolation = 1;
|
||||
int Interpolation = 4;
|
||||
/* values:
|
||||
0: no interpolation (use nearest)
|
||||
1. linear interpolation
|
||||
|
@ -59,7 +59,7 @@ int numSpeakers = 0;
|
|||
|
||||
void ReadSettings()
|
||||
{
|
||||
Interpolation = CfgReadInt( L"MIXING",L"Interpolation", 1 );
|
||||
Interpolation = CfgReadInt( L"MIXING",L"Interpolation", 4 );
|
||||
ReverbBoost = CfgReadInt( L"MIXING",L"Reverb_Boost", 0 );
|
||||
|
||||
SynchMode = CfgReadInt( L"OUTPUT", L"Synch_Mode", 0);
|
||||
|
@ -143,10 +143,10 @@ BOOL CALLBACK ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
|
|||
{
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_RESETCONTENT,0,0 );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"0 - Nearest (fastest/bad quality)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"1 - Linear (simple/nice)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"2 - Cubic (slower/good highs)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"3 - Hermite (slower/better highs)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"4 - Catmull-Rom (slow/hq)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"1 - Linear (simple/okay sound)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"2 - Cubic (artificial highs)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"3 - Hermite (better highs)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"4 - Catmull-Rom (PS2-like/slow)" );
|
||||
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_SETCURSEL,Interpolation,0 );
|
||||
|
||||
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_RESETCONTENT,0,0 );
|
||||
|
|
|
@ -78,8 +78,8 @@
|
|||
#define R_ACC_SRC_C1 0x0318
|
||||
#define R_ACC_SRC_D0 0x031C
|
||||
#define R_ACC_SRC_D1 0x0320
|
||||
#define R_IIR_SRC_B0 0x0324
|
||||
#define R_IIR_SRC_B1 0x0328
|
||||
#define R_IIR_SRC_B0 0x0324 // Some sources have R_IIR_SRC_B0 and R_IIR_SRC_B1 swapped ><
|
||||
#define R_IIR_SRC_B1 0x0328 // Assume a typo in the docs and B0 is actually at 324, B1 at 328 in the HW.
|
||||
#define R_MIX_DEST_A0 0x032C
|
||||
#define R_MIX_DEST_A1 0x0330
|
||||
#define R_MIX_DEST_B0 0x0334
|
||||
|
|
|
@ -932,7 +932,7 @@ static void __fastcall RegWrite_Core( u16 value )
|
|||
{
|
||||
// When we have exact cycle update info from the Pcsx2 IOP unit, then use
|
||||
// the more accurate delayed initialization system.
|
||||
ConLog( "* SPU2-X: Runtime core%d reset\n", core );
|
||||
ConLog( "* SPU2-X: Core%d reset bit set\n", core );
|
||||
|
||||
// Async mixing can cause a scheduled reset to happen untimely, ff12 hates it and dies.
|
||||
// So do the next best thing and reset the core directly.
|
||||
|
@ -944,6 +944,7 @@ static void __fastcall RegWrite_Core( u16 value )
|
|||
else
|
||||
{
|
||||
thiscore.Reset(thiscore.Index);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue