Fix Linux, and update to match gui changes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@668 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
arcum42 2009-03-03 14:32:18 +00:00
parent 6a3bf0c644
commit c4aec82c00
6 changed files with 51 additions and 1 deletions

View File

@ -74,6 +74,9 @@ void setAdvancedOptions()
case FLAG_EE_CLAMP_EXTRA_PRESERVE:
set_checked(AdvDlg, "radio_EE_Clamp_Extra_Preserve", TRUE);
break;
case FLAG_EE_CLAMP_FULL:
set_checked(AdvDlg, "radio_EE_Clamp_Full", TRUE);
break;
}
switch (Config.vuOptions)
@ -145,6 +148,7 @@ void on_Advanced_OK(GtkButton *button, gpointer user_data)
Config.eeOptions |= is_checked(AdvDlg, "radio_EE_Clamp_None") ? FLAG_EE_CLAMP_NONE : 0;
Config.eeOptions |= is_checked(AdvDlg, "radio_EE_Clamp_Normal") ? FLAG_EE_CLAMP_NORMAL : 0;
Config.eeOptions |= is_checked(AdvDlg, "radio_EE_Clamp_Extra_Preserve") ? FLAG_EE_CLAMP_EXTRA_PRESERVE : 0;
Config.eeOptions |= is_checked(AdvDlg, "radio_EE_Clamp_Full") ? FLAG_EE_CLAMP_FULL : 0;
Config.vuOptions |= is_checked(AdvDlg, "radio_VU_Clamp_None") ? FLAG_VU_CLAMP_NONE : 0;
Config.vuOptions |= is_checked(AdvDlg, "radio_VU_Clamp_Normal") ? FLAG_VU_CLAMP_NORMAL : 0;

View File

@ -25,6 +25,7 @@ GtkWidget *GameFixDlg, *SpeedHacksDlg;
GameFixDlg = create_GameFixDlg();
set_checked(GameFixDlg, "check_VU_Add_Sub", (Config.GameFixes & FLAG_VU_ADD_SUB));
set_checked(GameFixDlg, "check_VU_Clip", (Config.GameFixes & FLAG_VU_CLIP));
set_checked(GameFixDlg, "check_FPU_Clamp", (Config.GameFixes & FLAG_FPU_CLAMP));
gtk_widget_show_all(GameFixDlg);
@ -37,6 +38,7 @@ void on_Game_Fix_OK(GtkButton *button, gpointer user_data)
Config.GameFixes = 0;
Config.GameFixes |= is_checked(GameFixDlg, "check_VU_Add_Sub") ? FLAG_VU_ADD_SUB : 0;
Config.GameFixes |= is_checked(GameFixDlg, "check_VU_Clip") ? FLAG_VU_CLIP : 0;
Config.GameFixes |= is_checked(GameFixDlg, "check_FPU_Clamp") ? FLAG_FPU_CLAMP : 0;
SaveConfig();

View File

@ -102,6 +102,7 @@ char iop_log_names[9][32] =
};
#define FLAG_VU_ADD_SUB 0x1
#define FLAG_VU_CLIP 0x2
#define FLAG_FPU_CLAMP 0x4
#define FLAG_VU_FCOR_HACK 0x8
#define FLAG_AVOID_DELAY_HANDLING 0x10
@ -133,5 +134,6 @@ char iop_log_names[9][32] =
#define FLAG_EE_CLAMP_NONE 0x0
#define FLAG_EE_CLAMP_NORMAL 0x1
#define FLAG_EE_CLAMP_EXTRA_PRESERVE 0x3
#define FLAG_EE_CLAMP_FULL 0x7
#endif /* __LINUX_H__ */

View File

@ -52,6 +52,8 @@ create_AdvDlg (void)
GSList *radio_EE_Clamp_None_group = NULL;
GtkWidget *radio_EE_Clamp_Normal;
GtkWidget *radio_EE_Clamp_Extra_Preserve;
GtkWidget *radio_EE_Clamp_Full;
GSList *radio_EE_Clamp_Full_group = NULL;
GtkWidget *label73;
GtkWidget *hbox34;
GtkWidget *check_EE_Flush_Zero;
@ -206,6 +208,13 @@ create_AdvDlg (void)
gtk_radio_button_set_group (GTK_RADIO_BUTTON (radio_EE_Clamp_Extra_Preserve), radio_EE_Clamp_None_group);
radio_EE_Clamp_None_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radio_EE_Clamp_Extra_Preserve));
radio_EE_Clamp_Full = gtk_radio_button_new_with_mnemonic (NULL, _("Full"));
gtk_widget_show (radio_EE_Clamp_Full);
gtk_box_pack_start (GTK_BOX (hbox37), radio_EE_Clamp_Full, TRUE, TRUE, 0);
gtk_radio_button_set_group (GTK_RADIO_BUTTON (radio_EE_Clamp_Full), radio_EE_Clamp_Full_group);
radio_EE_Clamp_Full_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radio_EE_Clamp_Full));
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radio_EE_Clamp_Full), TRUE);
label73 = gtk_label_new (_("<b>Clamp Mode</b>"));
gtk_widget_show (label73);
gtk_frame_set_label_widget (GTK_FRAME (frame27), label73);
@ -478,6 +487,7 @@ create_AdvDlg (void)
GLADE_HOOKUP_OBJECT (AdvDlg, radio_EE_Clamp_None, "radio_EE_Clamp_None");
GLADE_HOOKUP_OBJECT (AdvDlg, radio_EE_Clamp_Normal, "radio_EE_Clamp_Normal");
GLADE_HOOKUP_OBJECT (AdvDlg, radio_EE_Clamp_Extra_Preserve, "radio_EE_Clamp_Extra_Preserve");
GLADE_HOOKUP_OBJECT (AdvDlg, radio_EE_Clamp_Full, "radio_EE_Clamp_Full");
GLADE_HOOKUP_OBJECT (AdvDlg, label73, "label73");
GLADE_HOOKUP_OBJECT (AdvDlg, hbox34, "hbox34");
GLADE_HOOKUP_OBJECT (AdvDlg, check_EE_Flush_Zero, "check_EE_Flush_Zero");
@ -779,6 +789,7 @@ create_GameFixDlg (void)
GtkWidget *vbox30;
GtkWidget *check_FPU_Clamp;
GtkWidget *check_VU_Add_Sub;
GtkWidget *check_VU_Clip;
GtkWidget *label42;
GtkWidget *dialog_action_area1;
GtkWidget *cancelbutton1;
@ -813,6 +824,10 @@ create_GameFixDlg (void)
gtk_widget_show (check_VU_Add_Sub);
gtk_box_pack_start (GTK_BOX (vbox30), check_VU_Add_Sub, FALSE, FALSE, 0);
check_VU_Clip = gtk_check_button_new_with_mnemonic (_("VU Clip Hack - Special fix for God of War"));
gtk_widget_show (check_VU_Clip);
gtk_box_pack_start (GTK_BOX (vbox30), check_VU_Clip, FALSE, TRUE, 0);
label42 = gtk_label_new (_("<b>Some games need special settings.\nConfigure them here.</b>"));
gtk_widget_show (label42);
gtk_frame_set_label_widget (GTK_FRAME (GameSettings), label42);
@ -847,6 +862,7 @@ create_GameFixDlg (void)
GLADE_HOOKUP_OBJECT (GameFixDlg, vbox30, "vbox30");
GLADE_HOOKUP_OBJECT (GameFixDlg, check_FPU_Clamp, "check_FPU_Clamp");
GLADE_HOOKUP_OBJECT (GameFixDlg, check_VU_Add_Sub, "check_VU_Add_Sub");
GLADE_HOOKUP_OBJECT (GameFixDlg, check_VU_Clip, "check_VU_Clip");
GLADE_HOOKUP_OBJECT (GameFixDlg, label42, "label42");
GLADE_HOOKUP_OBJECT_NO_REF (GameFixDlg, dialog_action_area1, "dialog_action_area1");
GLADE_HOOKUP_OBJECT (GameFixDlg, cancelbutton1, "cancelbutton1");

View File

@ -175,6 +175,19 @@
<property name="position">2</property>
</packing>
</child>
<child>
<widget class="GtkRadioButton" id="radio_EE_Clamp_Full">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Full</property>
<property name="response_id">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
<property name="position">3</property>
</packing>
</child>
</widget>
</child>
</widget>
@ -1133,6 +1146,19 @@ Known to work well with a couple games, namely Shadow of the Colossus (but break
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="check_VU_Clip">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">VU Clip Hack - Special fix for God of War</property>
<property name="response_id">0</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
</widget>
</child>
</widget>

View File

@ -9,7 +9,7 @@ ix86-32/iR5900LoadStore.cpp ix86-32/iR5900MultDiv.cpp ix86-32/iCore-32.cpp ix86
ix86-32/iR5900Templates.cpp ix86-32/recVTLB.cpp
libx86recomp_a_SOURCES = \
BaseblockEx.cpp iCOP0.cpp iCOP2.cpp iCore.cpp iFPU.cpp iGS.cpp iHw.cpp iIPU.cpp iMMI.cpp iPsxHw.cpp iPsxMem.cpp \
BaseblockEx.cpp iCOP0.cpp iCOP2.cpp iCore.cpp iFPU.cpp iFPUd.cpp iGS.cpp iHw.cpp iIPU.cpp iMMI.cpp iPsxHw.cpp iPsxMem.cpp \
iR3000A.cpp iR3000Atables.cpp iR5900CoissuedLoadStore.cpp iR5900Misc.cpp iVU0micro.cpp iVU1micro.cpp iVUmicro.cpp \
iVUmicroLower.cpp iVUmicroUpper.cpp iVUzerorec.cpp iVif.cpp ir5900tables.cpp fast_routines.S aR3000A.S aVUzerorec.S \
aVif.S $(archfiles)