diff options
| author | iCatButler <i.am.catbutler@gmail.com> | 2018-03-13 17:25:13 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-13 17:25:13 +0000 |
| commit | 768332417644451d38ce1a737465656c7cc75de3 (patch) | |
| tree | e6ca381effb72ccc4161d40f224b817a6631bc03 /gui | |
| parent | 15fe3782c1375634b7a9bd9bbbadfd75e7b06fed (diff) | |
| parent | 2d0b10f982e0b835f4b27be26b138703907a4219 (diff) | |
| download | pcsxr-768332417644451d38ce1a737465656c7cc75de3.tar.gz | |
Merge pull request #6 from loathingKernel/fix-linux-build
Fix compilation on Linux and add the new setting to the UI
Diffstat (limited to 'gui')
42 files changed, 5165 insertions, 93 deletions
diff --git a/gui/AboutDlg.c b/gui/AboutDlg.c index f701c1c9..4f5d02ae 100755 --- a/gui/AboutDlg.c +++ b/gui/AboutDlg.c @@ -19,11 +19,12 @@ #include "Linux.h" #include <gtk/gtk.h> -#define ABOUT_VERSION "svn" +#define ABOUT_VERSION "git" void RunAboutDialog(void) { GtkBuilder *builder; GtkWidget *AboutDlg; + GdkPixbuf *logo; const gchar *authors[] = { "PCSX-Reloaded Team:", @@ -87,9 +88,11 @@ void RunAboutDialog(void) { "You should have received a copy of the GNU General Public License " "along with this program. If not, see <http://www.gnu.org/licenses/>."); + logo = gdk_pixbuf_new_from_resource("/org/pcsxr/gui/pixmaps/pcsxr-icon.png", NULL); + builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -109,6 +112,9 @@ void RunAboutDialog(void) { gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG (AboutDlg), _("A PlayStation emulator.")); gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(AboutDlg), _(license)); gtk_about_dialog_set_wrap_license(GTK_ABOUT_DIALOG(AboutDlg), TRUE); + gtk_about_dialog_set_logo(GTK_ABOUT_DIALOG(AboutDlg), logo); + + g_object_unref(G_OBJECT(logo)); gtk_dialog_run(GTK_DIALOG(AboutDlg)); gtk_widget_destroy(AboutDlg); diff --git a/gui/Cheat.c b/gui/Cheat.c index 497970ae..3ecb6468 100755 --- a/gui/Cheat.c +++ b/gui/Cheat.c @@ -49,7 +49,6 @@ static void LoadCheatListItems(int index) { gtk_tree_view_set_model(GTK_TREE_VIEW(widget), GTK_TREE_MODEL(store)); g_object_unref(G_OBJECT(store)); - gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(widget), TRUE); gtk_tree_view_set_search_column(GTK_TREE_VIEW(widget), 1); gtk_widget_show(widget); @@ -99,8 +98,8 @@ static void OnCheatListDlg_AddClicked(GtkWidget *widget, gpointer user_data) { GtkWidget *box, *scroll, *label, *descr_edit, *code_edit; dlg = gtk_dialog_new_with_buttons(_("Add New Cheat"), GTK_WINDOW(CheatListDlg), - GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); + GTK_DIALOG_MODAL, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_ACCEPT, NULL); gtk_window_set_default_size(GTK_WINDOW(dlg), 350, 350); @@ -125,7 +124,7 @@ static void OnCheatListDlg_AddClicked(GtkWidget *widget, gpointer user_data) { gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); - gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scroll), code_edit); + gtk_container_add(GTK_CONTAINER(scroll), code_edit); gtk_widget_show(code_edit); gtk_box_pack_start(GTK_BOX(box), scroll, TRUE, TRUE, 5); @@ -183,8 +182,8 @@ static void OnCheatListDlg_EditClicked(GtkWidget *widget, gpointer user_data) { gtk_tree_path_free(path); dlg = gtk_dialog_new_with_buttons(_("Edit Cheat"), GTK_WINDOW(CheatListDlg), - GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); + GTK_DIALOG_MODAL, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_ACCEPT, NULL); gtk_window_set_default_size(GTK_WINDOW(dlg), 350, 350); @@ -220,7 +219,7 @@ static void OnCheatListDlg_EditClicked(GtkWidget *widget, gpointer user_data) { gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); - gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scroll), code_edit); + gtk_container_add(GTK_CONTAINER(scroll), code_edit); gtk_widget_show(code_edit); gtk_box_pack_start(GTK_BOX(box), scroll, TRUE, TRUE, 5); @@ -311,8 +310,8 @@ static void OnCheatListDlg_OpenClicked(GtkWidget *widget, gpointer user_data) { GtkFileFilter *filter; chooser = gtk_file_chooser_dialog_new (_("Open Cheat File"), - NULL, GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); + NULL, GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_OK, NULL); filename = g_build_filename(getenv("HOME"), CHEATS_DIR, NULL); gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (chooser), filename); @@ -355,8 +354,8 @@ static void OnCheatListDlg_SaveClicked(GtkWidget *widget, gpointer user_data) { GtkFileFilter *filter; chooser = gtk_file_chooser_dialog_new(_("Save Cheat File"), - NULL, GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); + NULL, GTK_FILE_CHOOSER_ACTION_SAVE, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_OK, NULL); filename = g_build_filename(getenv("HOME"), CHEATS_DIR, NULL); gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(chooser), filename); @@ -424,7 +423,7 @@ void RunCheatListDialog() { builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -621,7 +620,6 @@ static void UpdateCheatSearchDialog() { gtk_tree_view_set_model(GTK_TREE_VIEW(widget), GTK_TREE_MODEL(store)); g_object_unref(G_OBJECT(store)); - gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(widget), TRUE); gtk_widget_show(widget); } @@ -659,8 +657,8 @@ static void OnCheatSearchDlg_FreezeClicked(GtkWidget *widget, gpointer user_data addr = SearchResults[GetSelectedResultIndex()]; dlg = gtk_dialog_new_with_buttons(_("Freeze value"), GTK_WINDOW(CheatListDlg), - GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL); + GTK_DIALOG_MODAL, "_OK", GTK_RESPONSE_ACCEPT, + "_Cancel", GTK_RESPONSE_CANCEL, NULL); box = GTK_WIDGET(gtk_dialog_get_content_area(GTK_DIALOG(dlg))); @@ -672,7 +670,7 @@ static void OnCheatSearchDlg_FreezeClicked(GtkWidget *widget, gpointer user_data gtk_box_pack_start(GTK_BOX(box), descr_edit, FALSE, FALSE, 10); gtk_widget_show(descr_edit); - hbox = gtk_hbox_new(FALSE, 0); + hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 15); label = gtk_label_new(_("Value:")); @@ -758,11 +756,11 @@ static void OnCheatSearchDlg_ModifyClicked(GtkWidget *widget, gpointer user_data addr = SearchResults[GetSelectedResultIndex()]; dlg = gtk_dialog_new_with_buttons(_("Modify value"), GTK_WINDOW(CheatListDlg), - GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL); + GTK_DIALOG_MODAL, "_OK", GTK_RESPONSE_ACCEPT, + "_Cancel", GTK_RESPONSE_CANCEL, NULL); box = GTK_WIDGET(gtk_dialog_get_content_area(GTK_DIALOG(dlg))); - hbox = gtk_hbox_new(FALSE, 0); + hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 5); label = gtk_label_new(_("New value:")); @@ -1136,7 +1134,7 @@ void RunCheatSearchDialog() { builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } diff --git a/gui/ConfDlg.c b/gui/ConfDlg.c index d71326c7..d55234f8 100755 --- a/gui/ConfDlg.c +++ b/gui/ConfDlg.c @@ -101,7 +101,7 @@ void ConfigurePlugins() { UpdatePluginsBIOS(); builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -213,7 +213,7 @@ void OnConf_Net() { } builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -845,6 +845,7 @@ static void FindNetPlugin() { } GtkWidget *CpuDlg; +GtkWidget *PgxpDlg; GList *psxglist; char *psxtypes[] = { "NTSC", @@ -876,6 +877,14 @@ static void OnCpu_CpuClicked(GtkWidget *widget, gpointer user_data) { gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))); } +// When overclock checkbutton is changed, enable/disable the selection spinbutton +static void OnCpu_OverClockClicked(GtkWidget *widget, gpointer user_data){ + GtkWidget *spin; + + spin = GTK_WIDGET(gtk_builder_get_object(builder, "GtkSpinButton_PsxClock")); + gtk_widget_set_sensitive(spin, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget))); +} + void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) { GtkWidget *widget; long unsigned int tmp; @@ -935,6 +944,7 @@ void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) { SysClose(); exit(1); } + psxCpu->SetPGXPMode(Config.PGXP_Mode); psxCpu->Reset(); } @@ -946,7 +956,14 @@ void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) { Config.Widescreen = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Widescreen"))); Config.HackFix = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_HackFix"))); - SaveConfig(); + Config.OverClock = gtk_toggle_button_get_active( + GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_OverClock"))); + Config.PsxClock = gtk_spin_button_get_value( + GTK_SPIN_BUTTON(gtk_builder_get_object(builder, "GtkSpinButton_PsxClock"))); + Config.MemHack = gtk_toggle_button_get_active( + GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_MemHack"))); + + SaveConfig(); gtk_widget_destroy(CpuDlg); CpuDlg = NULL; @@ -958,7 +975,7 @@ void OnConf_Cpu() { builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -1028,7 +1045,103 @@ void OnConf_Cpu() { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Widescreen")), Config.Widescreen); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_HackFix")), Config.HackFix); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "GtkCheckButton_OverClock")), Config.OverClock); + gtk_spin_button_set_value(GTK_SPIN_BUTTON( + gtk_builder_get_object(builder, "GtkSpinButton_PsxClock")), Config.PsxClock); + OnCpu_OverClockClicked(GTK_WIDGET( + gtk_builder_get_object(builder, "GtkCheckButton_OverClock")), NULL); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "GtkCheckButton_MemHack")), Config.MemHack); + + g_signal_connect_data(G_OBJECT(gtk_builder_get_object(builder, "GtkCheckButton_OverClock")), "toggled", + G_CALLBACK(OnCpu_OverClockClicked), builder, NULL, G_CONNECT_AFTER); + // Setup a handler for when Close or Cancel is clicked g_signal_connect_data(G_OBJECT(CpuDlg), "response", - G_CALLBACK(OnCpu_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER); + G_CALLBACK(OnCpu_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER); +} + +//When a different PGXP mode is selected, display some informational text +static void OnPgxp_ModeChanged(GtkWidget *widget, gpointer user_data) { + uint8_t mode; + + mode = gtk_combo_box_get_active(GTK_COMBO_BOX( + gtk_builder_get_object(builder, "PGXP_Mode"))); + + switch (mode) { + case 0: + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_title")), + _("Disabled")); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_description")), + _("PGXP is not mirroring any functions currently.")); + break; + case 1: + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_title")), + _("Memory operations only")); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_description")), + _("PGXP is mirroring load, store and processor transfer operations of the CPU and GTE.")); + break; + case 2: + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_title")), + _("Memory and CPU arithmetic operations")); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_description")), + _("PGXP is mirroring load, store and transfer operations of the CPU and GTE and arithmetic/logic functions of the PSX CPU.\n(WARNING: This mode is currently unfinished and may cause incorrect behaviour in some games).")); + break; + default: + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_title")), + _("Error")); + gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "PGXP_Mode_description")), + _("Unknown mode.")); + } +} + +static void OnPgxp_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) { + + Config.PGXP_GTE = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_GTE"))); + Config.PGXP_Cache = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_Cache"))); + Config.PGXP_Texture = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_Texture"))); + + Config.PGXP_Mode = gtk_combo_box_get_active(GTK_COMBO_BOX( + gtk_builder_get_object(builder, "PGXP_Mode"))); + + EmuSetPGXPMode(Config.PGXP_Mode); + SaveConfig(); + + gtk_widget_destroy(PgxpDlg); + PgxpDlg = NULL; +} + +void OnConf_Pgxp() { + GtkWidget *widget; + char buf[25]; + + builder = gtk_builder_new(); + + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { + g_warning("Error: interface could not be loaded!"); + return; + } + + PgxpDlg = GTK_WIDGET(gtk_builder_get_object(builder, "PgxpDlg")); + gtk_widget_show (PgxpDlg); + + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_GTE")), Config.PGXP_GTE); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_Cache")), Config.PGXP_Cache); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "PGXP_Texture")), Config.PGXP_Texture); + + gtk_combo_box_set_active(GTK_COMBO_BOX( + gtk_builder_get_object(builder, "PGXP_Mode")), Config.PGXP_Mode); + OnPgxp_ModeChanged(NULL, NULL); + + g_signal_connect_data(G_OBJECT(gtk_builder_get_object(builder, "PGXP_Mode")), "changed", + G_CALLBACK(OnPgxp_ModeChanged), builder, NULL, G_CONNECT_AFTER); + g_signal_connect_data(G_OBJECT(PgxpDlg), "response", + G_CALLBACK(OnPgxp_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER); } diff --git a/gui/ConfDlg.h b/gui/ConfDlg.h index ef1c0203..b8b9d4e6 100755 --- a/gui/ConfDlg.h +++ b/gui/ConfDlg.h @@ -28,6 +28,7 @@ void OnConf_Sound(); void OnConf_CdRom(); void OnConf_Pad(); void OnConf_Cpu(); +void OnConf_Pgxp(); void OnConf_Net(); void OnConf_Sio1(); diff --git a/gui/Config.c b/gui/Config.c index 25e2e54b..16c29c9a 100755..100644 --- a/gui/Config.c +++ b/gui/Config.c @@ -62,6 +62,16 @@ static boolean GetValueb(char *src, char *name) { return FALSE; } +static long GetValuef(char *src, char *name) { + char *tmp = strstr(src, name); + if (tmp != NULL) { + tmp += strlen(name); + while ((*tmp == ' ') || (*tmp == '=')) tmp++; + if (*tmp != '\n') return atof(tmp); + } + return 0.0f; +} + #define SetValue(name, var) \ fprintf(f, "%s = %s\n", name, var); @@ -71,6 +81,9 @@ static boolean GetValueb(char *src, char *name) { #define SetValueb(name, var) \ fprintf(f, "%s = %d\n", name, (var) ? 1 : 0); +#define SetValuef(name, var) \ + fprintf(f, "%s = %f\n", name, var); + int LoadConfig(PcsxConfig *Conf) { struct stat buf; FILE *f; @@ -142,10 +155,20 @@ int LoadConfig(PcsxConfig *Conf) { Config.VSyncWA = GetValueb(data, "VSyncWA"); Config.NoMemcard = GetValueb(data, "NoMemcard"); Config.Widescreen = GetValueb(data, "Widescreen"); + Config.PerGameMcd = GetValueb(data, "PerGameMcd"); + Config.MemHack = GetValuel(data, "MemHack"); + Config.OverClock = GetValueb(data, "OverClock"); Config.Cpu = GetValuel(data, "Cpu"); Config.PsxType = GetValuel(data, "PsxType"); - Config.RewindCount = GetValuel(data, "RewindCount"); + Config.PsxClock = GetValuef(data, "PsxClock"); + + Config.PGXP_GTE = GetValueb(data, "PGXP_GTE"); + Config.PGXP_Cache = GetValueb(data, "PGXP_Cache"); + Config.PGXP_Texture = GetValueb(data, "PGXP_Texture"); + Config.PGXP_Mode = GetValuel(data, "PGXP_Mode"); + + Config.RewindCount = GetValuel(data, "RewindCount"); Config.RewindInterval = GetValuel(data, "RewindInterval"); Config.AltSpeed1 = GetValuel(data, "AltSpeed1"); @@ -191,7 +214,7 @@ void SaveConfig() { SetValueb("SioIrq", Config.SioIrq); SetValueb("Mdec", Config.Mdec); SetValueb("PsxAuto", Config.PsxAuto); - SetValuel("Cdda", Config.Cdda); + SetValuel("Cdda", (long)Config.Cdda); SetValueb("SlowBoot",Config.SlowBoot); SetValueb("Dbg", Config.Debug); SetValueb("PsxOut", Config.PsxOut); @@ -200,16 +223,26 @@ void SaveConfig() { SetValueb("VSyncWA", Config.VSyncWA); SetValueb("NoMemcard", Config.NoMemcard); SetValueb("Widescreen", Config.Widescreen); + SetValueb("PerGameMcd", Config.PerGameMcd); + SetValuel("MemHack", (long)Config.MemHack); + SetValueb("OverClock", Config.OverClock); + + SetValuel("Cpu", (long)Config.Cpu); + SetValuel("PsxType", (long)Config.PsxType); + SetValuef("PsxClock", Config.PsxClock); + + SetValueb("PGXP_GTE", Config.PGXP_GTE); + SetValueb("PGXP_Cache", Config.PGXP_Cache); + SetValueb("PGXP_Texture", Config.PGXP_Texture); + SetValuel("PGXP_Mode", (long)Config.PGXP_Mode); - SetValuel("Cpu", Config.Cpu); - SetValuel("PsxType", Config.PsxType); - SetValuel("RewindCount", Config.RewindCount); - SetValuel("RewindInterval", Config.RewindInterval); + SetValuel("RewindCount", (long)Config.RewindCount); + SetValuel("RewindInterval", (long)Config.RewindInterval); - SetValuel("AltSpeed1", Config.AltSpeed1); - SetValuel("AltSpeed2", Config.AltSpeed2); + SetValuel("AltSpeed1", (long)Config.AltSpeed1); + SetValuel("AltSpeed2", (long)Config.AltSpeed2); - SetValuel("HackFix", Config.HackFix); + SetValuel("HackFix", (long)Config.HackFix); fclose(f); } diff --git a/gui/DebugMemory.c b/gui/DebugMemory.c index 3c7939ab..096b6c5c 100755 --- a/gui/DebugMemory.c +++ b/gui/DebugMemory.c @@ -86,7 +86,6 @@ static void UpdateMemViewDlg() { gtk_tree_view_set_model(GTK_TREE_VIEW(widget), GTK_TREE_MODEL(store)); g_object_unref(G_OBJECT(store)); - gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(widget), TRUE); gtk_widget_show(widget); } @@ -150,30 +149,32 @@ static void MemView_Dump() { char buf[10]; dlg = gtk_dialog_new_with_buttons(_("Memory Dump"), GTK_WINDOW(MemViewDlg), - GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); + GTK_DIALOG_MODAL, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_ACCEPT, NULL); box = GTK_WIDGET(gtk_dialog_get_content_area(GTK_DIALOG(dlg))); - table = gtk_table_new(2, 2, FALSE); + table = gtk_grid_new(); + gtk_grid_set_row_spacing(GTK_GRID(table), 5); + gtk_grid_set_column_spacing(GTK_GRID(table), 5); label = gtk_label_new(_("Start Address (Hexadecimal):")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), label, 0, 0, 1, 1); gtk_widget_show(label); start_edit = gtk_entry_new(); gtk_entry_set_max_length(GTK_ENTRY(start_edit), 8); sprintf(buf, "%.8X", MemViewAddress | 0x80000000); gtk_entry_set_text(GTK_ENTRY(start_edit), buf); - gtk_table_attach(GTK_TABLE(table), start_edit, 1, 2, 0, 1, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), start_edit, 1, 0, 1, 1); gtk_widget_show(start_edit); label = gtk_label_new(_("Length (Decimal):")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), label, 0, 1, 1, 1); gtk_widget_show(label); length_edit = gtk_entry_new(); - gtk_table_attach(GTK_TABLE(table), length_edit, 1, 2, 1, 2, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), length_edit, 1, 1, 1, 1); gtk_widget_show(length_edit); gtk_box_pack_start(GTK_BOX(box), table, FALSE, FALSE, 5); @@ -196,8 +197,8 @@ static void MemView_Dump() { if (length > 0) { GtkWidget *file_chooser = gtk_file_chooser_dialog_new(_("Dump to File"), NULL, GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL); + "_Cancel", GTK_RESPONSE_CANCEL, + "_Save", GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(file_chooser), getenv("HOME")); @@ -228,32 +229,34 @@ static void MemView_Patch() { char buf[12]; dlg = gtk_dialog_new_with_buttons(_("Memory Patch"), GTK_WINDOW(MemViewDlg), - GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); + GTK_DIALOG_MODAL, "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_ACCEPT, NULL); box = GTK_WIDGET(gtk_dialog_get_content_area(GTK_DIALOG(dlg))); - table = gtk_table_new(2, 2, FALSE); + table = gtk_grid_new(); + gtk_grid_set_row_spacing(GTK_GRID(table), 5); + gtk_grid_set_column_spacing(GTK_GRID(table), 5); label = gtk_label_new(_("Address (Hexadecimal):")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), label, 0, 0, 1, 1); gtk_widget_show(label); addr_edit = gtk_entry_new(); gtk_entry_set_max_length(GTK_ENTRY(addr_edit), 8); sprintf(buf, "%.8X", MemViewAddress | 0x80000000); gtk_entry_set_text(GTK_ENTRY(addr_edit), buf); - gtk_table_attach(GTK_TABLE(table), addr_edit, 1, 2, 0, 1, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), addr_edit, 1, 0, 1, 1); gtk_widget_show(addr_edit); label = gtk_label_new(_("Value (Hexa string):")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), label, 0, 1, 1, 1); gtk_widget_show(label); val_edit = gtk_entry_new(); sprintf(buf, "%.2X", MemViewValue); gtk_entry_set_text(GTK_ENTRY(val_edit), buf); - gtk_table_attach(GTK_TABLE(table), val_edit, 1, 2, 1, 2, 0, 0, 5, 5); + gtk_grid_attach(GTK_GRID(table), val_edit, 1, 1, 1, 1); gtk_widget_show(val_edit); gtk_box_pack_start(GTK_BOX(box), table, FALSE, FALSE, 5); @@ -303,12 +306,11 @@ void RunDebugMemoryDialog() { GtkWidget *widget; GtkCellRenderer *renderer; GtkTreeViewColumn *column; - PangoFontDescription *pfd; int i; builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -343,12 +345,6 @@ void RunDebugMemoryDialog() { renderer, "text", 17, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(widget), column); - pfd = pango_font_description_from_string("Bitstream Vera Sans Mono, " - "DejaVu Sans Mono, Liberation Mono, FreeMono, Sans Mono 9"); - - gtk_widget_override_font(widget, pfd); - - pango_font_description_free(pfd); UpdateMemViewDlg(); diff --git a/gui/GtkGui.c b/gui/GtkGui.c index 3185e51a..0fd6b65d 100755 --- a/gui/GtkGui.c +++ b/gui/GtkGui.c @@ -28,11 +28,13 @@ #include <signal.h> #include <sys/time.h> #include <regex.h> +#include <libintl.h> #include "Linux.h" #include "../libpcsxcore/plugins.h" #include "../libpcsxcore/cheat.h" +#include "../libpcsxcore/cdrom.h" #include "MemcardDlg.h" #include "ConfDlg.h" @@ -320,9 +322,13 @@ void StartGui() { gtk_window_present (GTK_WINDOW (Window)); return; }*/ + GtkIconTheme *itheme = gtk_icon_theme_get_default(); + gtk_icon_theme_add_resource_path(itheme,"/org/pcsxr/gui"); + gtk_icon_theme_add_resource_path(itheme,"/org/pcsxr/gui/pixmaps/"); + builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -331,8 +337,8 @@ void StartGui() { gtk_widget_show(GTK_WIDGET(Window)); gtk_window_set_title(GTK_WINDOW(Window), "PCSXR"); - gtk_window_set_icon_from_file(GTK_WINDOW(Window), PIXMAPDIR "pcsxr-icon.png", NULL); - gtk_window_set_default_icon_from_file(PIXMAPDIR "pcsxr-icon.png", NULL); + gtk_window_set_icon(GTK_WINDOW(Window), gdk_pixbuf_new_from_resource("/org/pcsxr/gui/pixmaps/pcsxr-icon.png", NULL)); + gtk_window_set_default_icon(gdk_pixbuf_new_from_resource("/org/pcsxr/gui/pixmaps/pcsxr-icon.png", NULL)); ResetMenuSlots(); // Set up callbacks @@ -463,7 +469,10 @@ void StartGui() { #endif widget = GTK_WIDGET(gtk_builder_get_object(builder, "cpu1")); g_signal_connect_data(G_OBJECT(widget), "activate", - G_CALLBACK(OnConf_Cpu), NULL, NULL, G_CONNECT_AFTER); + G_CALLBACK(OnConf_Cpu), NULL, NULL, G_CONNECT_AFTER); + widget = GTK_WIDGET(gtk_builder_get_object(builder, "pgxp1")); + g_signal_connect_data(G_OBJECT(widget), "activate", + G_CALLBACK(OnConf_Pgxp), NULL, NULL, G_CONNECT_AFTER); widget = GTK_WIDGET(gtk_builder_get_object(builder, "memory_cards1")); g_signal_connect_data(G_OBJECT(widget), "activate", G_CALLBACK(OnConf_Mcds), NULL, NULL, G_CONNECT_AFTER); @@ -571,8 +580,8 @@ void OnFile_RunExe() { } else { file_chooser = gtk_file_chooser_dialog_new(_("Select PSX EXE File"), NULL, GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); + "_Cancel", GTK_RESPONSE_CANCEL, + "_Open", GTK_RESPONSE_ACCEPT, NULL); // Add file filters GtkFileFilter *exefilter = gtk_file_filter_new (); @@ -708,8 +717,8 @@ static gchar *Open_Iso_Proc() { static char current_folder[MAXPATHLEN] = ""; chooser = gtk_file_chooser_dialog_new (_("Open PSX Disc Image File"), - NULL, GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OK, GTK_RESPONSE_OK, + NULL, GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, + "_Open", GTK_RESPONSE_ACCEPT, NULL); if (stat(Config.IsoImgDir, &sb) == 0 && S_ISDIR(sb.st_mode)) { @@ -746,7 +755,7 @@ static gchar *Open_Iso_Proc() { gtk_file_filter_set_name(allfilter, _("All Files")); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (chooser), allfilter); - if (gtk_dialog_run(GTK_DIALOG(chooser)) == GTK_RESPONSE_OK) { + if (gtk_dialog_run(GTK_DIALOG(chooser)) == GTK_RESPONSE_ACCEPT) { gchar *path = gtk_file_chooser_get_current_folder(GTK_FILE_CHOOSER(chooser)); /* Workaround: @@ -767,11 +776,9 @@ static gchar *Open_Iso_Proc() { strncpy(current_folder, filename, strrchr(filename, '/') - filename); } - /* If ISO path is NULL save current path. */ - if (!S_ISDIR(sb.st_mode)) { + /* Save current path. */ strcpy(Config.IsoImgDir, current_folder); SaveConfig(); - } /* free useless data */ GSList * ll = l; @@ -1083,8 +1090,8 @@ void on_states_load_other() { SStateFile = g_strconcat(getenv("HOME"), STATES_DIR, NULL); file_chooser = gtk_file_chooser_dialog_new(_("Select State File"), NULL, GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, + "_Cancel", GTK_RESPONSE_CANCEL, + "_Open", GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER (file_chooser), SStateFile); g_free(SStateFile); @@ -1112,8 +1119,8 @@ void on_states_save_other() { file_chooser = gtk_file_chooser_dialog_new(_("Select State File"), NULL, GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_SAVE, GTK_RESPONSE_OK, + "_Cancel", GTK_RESPONSE_CANCEL, + "_Save", GTK_RESPONSE_OK, NULL); gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(file_chooser), SStateFile); g_free(SStateFile); @@ -1154,7 +1161,7 @@ void SysMessage(const char *fmt, ...) { } MsgDlg = gtk_dialog_new_with_buttons(_("Notice"), NULL, - GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_OK, GTK_RESPONSE_NONE, NULL); + GTK_DIALOG_DESTROY_WITH_PARENT, "_OK", GTK_RESPONSE_NONE, NULL); gtk_window_set_position (GTK_WINDOW(MsgDlg), GTK_WIN_POS_CENTER); diff --git a/gui/LnxMain.c b/gui/LnxMain.c index 716a3964..a7f934ae 100755 --- a/gui/LnxMain.c +++ b/gui/LnxMain.c @@ -232,9 +232,7 @@ static void ScanAllPlugins (void) { ScanBios("/usr/local/share/psemu/bios"); ScanBios("/usr/local/share/pcsxr"); ScanBios("/usr/local/share/pcsxr/bios"); - ScanBios(PACKAGE_DATA_DIR); ScanBios(PSEMU_DATA_DIR); - ScanBios(PACKAGE_DATA_DIR "/bios"); ScanBios(PSEMU_DATA_DIR "/bios"); currentdir = g_strconcat(getenv("HOME"), "/.psemu-plugins/", NULL); diff --git a/gui/Makefile.am b/gui/Makefile.am index 5feb39ea..7db62f01 100644 --- a/gui/Makefile.am +++ b/gui/Makefile.am @@ -24,8 +24,58 @@ pcsxr_SOURCES = \ DebugMemory.c \ DebugMemory.h \ AboutDlg.c \ - AboutDlg.h + AboutDlg.h \ + GtkResources.c \ + GtkResources.h + +# gresource.xml is dynamically generated in CMake. Mirror that here in a static way. +define gresource_xml = +<?xml version="1.0" encoding="UTF-8"?> +<gresources> + <gresource prefix="/org/pcsxr/gui"> + <file>pcsxr.ui</file> + <file>pixmaps/pcsxr-about.png</file> + <file>pixmaps/pcsxr-cd-open.png</file> + <file>pixmaps/pcsxr-cheats-browse.png</file> + <file>pixmaps/pcsxr-cheats-search.png</file> + <file>pixmaps/pcsxr-cheats.png</file> + <file>pixmaps/pcsxr-cpu.png</file> + <file>pixmaps/pcsxr-exit.png</file> + <file>pixmaps/pcsxr-icon.png</file> + <file>pixmaps/pcsxr-iso-open.png</file> + <file>pixmaps/pcsxr-iso-reopen.png</file> + <file>pixmaps/pcsxr-load-state.png</file> + <file>pixmaps/pcsxr-memcard.png</file> + <file>pixmaps/pcsxr-memory-dump.png</file> + <file>pixmaps/pcsxr-play.png</file> + <file>pixmaps/pcsxr-plugin-cdr.png</file> + <file>pixmaps/pcsxr-plugin-gpu.png</file> + <file>pixmaps/pcsxr-plugin-netplay.png</file> + <file>pixmaps/pcsxr-plugin-pad.png</file> + <file>pixmaps/pcsxr-plugin-sio1.png</file> + <file>pixmaps/pcsxr-plugin-spu.png</file> + <file>pixmaps/pcsxr-reset.png</file> + <file>pixmaps/pcsxr-run-bios.png</file> + <file>pixmaps/pcsxr-run-exe.png</file> + <file>pixmaps/pcsxr-save-state.png</file> + <file>pixmaps/pcsxr-settings.png</file> + <file>pixmaps/pcsxr-shutdown.png</file> + <file>pixmaps/pcsxr.png</file> + </gresource> +</gresources> +endef + +pcsxr.gresource.xml: + $(file >$@,$(gresource_xml)) +pcsxr_gresource: pcsxr.gresource.xml + $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir)/data --generate-dependencies $(srcdir)/$<) +GtkResources.c: pcsxr.gresource.xml $(pcsxr_gresource) + $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir)/data --generate-source --c-name pcsxr $< +GtkResources.h: pcsxr.gresource.xml $(pcsxr_gresource) + $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir)/data --generate-header --c-name pcsxr $< pcsxr_LDADD = \ ../libpcsxcore/libpcsxcore.a \ $(GTK3_LIBS) -lpthread -lz -lm -lXext -lXtst + +CLEANFILES = pcsxr.gresource.xml GtkResources.c GtkResources.h diff --git a/gui/MemcardDlg.c b/gui/MemcardDlg.c index b777126e..d3949565 100755 --- a/gui/MemcardDlg.c +++ b/gui/MemcardDlg.c @@ -236,7 +236,6 @@ static void LoadListItems(int mcd, boolean newstore) { if (newstore) { gtk_tree_view_set_model(GTK_TREE_VIEW(List), GTK_TREE_MODEL(store)); g_object_unref(G_OBJECT(store)); - gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(List), TRUE); } else { OnTreeSelectionChanged(gtk_tree_view_get_selection(GTK_TREE_VIEW(List)), GINT_TO_POINTER(mcd)); } @@ -295,6 +294,9 @@ static void UpdateMcdDlg(GtkWidget *widget) { } static void OnMcd_Close(GtkDialog *dialog, gint arg1, gpointer user_data) { + + Config.PerGameMcd = gtk_toggle_button_get_active( + GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_PerGameMcd"))); quit = TRUE; SaveConfig(); gtk_widget_destroy(GTK_WIDGET(dialog)); @@ -308,8 +310,8 @@ static void OnMcd_FileChange(GtkWidget *widget, gpointer user_data) { // Ask for name of memory card chooser = gtk_file_chooser_dialog_new(_("Select A File"), NULL, GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_OK, + "_Cancel", GTK_RESPONSE_CANCEL, + "_OK", GTK_RESPONSE_OK, NULL); if (memcard == 1) @@ -350,7 +352,7 @@ static void OnMcd_Format(GtkWidget *widget, gpointer user_data) { gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(message_dialog), _("If you format the memory card, the card will be empty, and any existing data overwritten.")); gtk_dialog_add_buttons(GTK_DIALOG(message_dialog), - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + "_Cancel", GTK_RESPONSE_CANCEL, _("Format card"), GTK_RESPONSE_YES, NULL); result = gtk_dialog_run(GTK_DIALOG(message_dialog)); @@ -375,8 +377,8 @@ static void OnMcd_New(GtkWidget *widget, gpointer user_data) { // Ask for name of new memory card chooser = gtk_file_chooser_dialog_new(_("Create a new Memory Card"), NULL, GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_SAVE, GTK_RESPONSE_OK, + "_Cancel", GTK_RESPONSE_CANCEL, + "_Save", GTK_RESPONSE_OK, NULL); // Card should be put into $HOME/.pcsxr/memcards @@ -441,7 +443,7 @@ static int GetFreeMemcardSlot(gint target_card, gint count, u8* blocks) { return -1; } -void CopyMemcardData(char *from, char *to, gint srci, gint dsti, +void CopyMemcardData(gint dstmcd, char *from, char *to, gint srci, gint dsti, gchar *str, const u16 linkindex) { u16* linkptr; u8* checksumptr; @@ -463,11 +465,11 @@ void CopyMemcardData(char *from, char *to, gint srci, gint dsti, //printf("link = %i %i\n", dsti, linkindex); } - SaveMcd((char *)str, to, dsti * 128, 128); + SaveMcd(dstmcd, (char *)str, to, dsti * 128, 128); // data memcpy(to + dsti * 1024 * 8, from + srci * 1024 * 8, 1024 * 8); - SaveMcd((char *)str, to, dsti * 1024 * 8, 1024 * 8); + SaveMcd(dstmcd, (char *)str, to, dsti * 1024 * 8, 1024 * 8); //printf("data = %s\n", from + (srci+1) * 128); } @@ -548,7 +550,7 @@ static void OnMcd_CopyTo(GtkWidget *widget, gpointer user_data) { for (j=0; srctbl[j] > 0; j++) { // last parameter specifies link index (next block) - CopyMemcardData(source, destination, + CopyMemcardData(dstmcd, source, destination, srctbl[j], dsttbl[j], str, dsttbl[j+1]-1); //printf("count = %i, indices=(%x,%x) jindex=%i\n", count, srctbl[j], dsttbl[j], j); } @@ -620,7 +622,7 @@ static void OnMemcardDelete(GtkWidget *widget, gpointer user_data) { } *ptr = xorsum; - SaveMcd((char *)filename, data, i * 128, 128); + SaveMcd(memcard, (char *)filename, data, i * 128, 128); // Check links i = GETLINKFORBLOCK(data, i); //0...15 index when ++i at top of loop @@ -709,7 +711,7 @@ void OnConf_Mcds() { builder = gtk_builder_new(); - if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) { + if (!gtk_builder_add_from_resource(builder, "/org/pcsxr/gui/pcsxr.ui", NULL)) { g_warning("Error: interface could not be loaded!"); return; } @@ -749,6 +751,12 @@ void OnConf_Mcds() { G_CALLBACK(OnTreeSelectionChanged), GINT_TO_POINTER(2), NULL, G_CONNECT_AFTER); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON( + gtk_builder_get_object(builder, "GtkCheckButton_PerGameMcd")), Config.PerGameMcd); + // Disable it because it is not working yet + gtk_widget_set_sensitive(GTK_WIDGET( + gtk_builder_get_object(builder, "GtkCheckButton_PerGameMcd")), FALSE); + LoadMcdDlg(dialog); // Setup a handler for when Close or Cancel is clicked diff --git a/gui/Plugin.c b/gui/Plugin.c index 0adf3b5e..55068c31 100755 --- a/gui/Plugin.c +++ b/gui/Plugin.c @@ -30,6 +30,7 @@ #include "../libpcsxcore/plugins.h" #include "../libpcsxcore/spu.h" #include "../libpcsxcore/cdriso.h" +#include "../libpcsxcore/pgxp_mem.h" #include "nopic.h" @@ -241,6 +242,9 @@ void PADhandleKey(int key) { LidInterrupt(); break; + case XK_F11: + GPU_toggleDebug(); + break; case XK_F12: psxReset(); break; @@ -329,6 +333,7 @@ int _OpenPlugins() { SPU_registerCallback(SPUirq); ret = GPU_open(&gpuDisp, "PCSXR", NULL); if (ret < 0) { SysMessage(_("Error opening GPU plugin!")); return -1; } + GPU_pgxpMemory(0, PGXP_GetMem()); ret = PAD1_open(&gpuDisp); ret |= PAD1_init(1); // Allow setting to change during run if (ret < 0) { SysMessage(_("Error opening Controller 1 plugin!")); return -1; } diff --git a/gui/data/Makefile.am b/gui/data/Makefile.am new file mode 100644 index 00000000..07966973 --- /dev/null +++ b/gui/data/Makefile.am @@ -0,0 +1,7 @@ +#glade_DATA = pcsxr.ui +#gladedir = $(datadir)/pcsxr + +desktopdir = $(datadir)/applications +desktop_DATA = pcsxr.desktop + +EXTRA_DIST = $(glade_DATA) $(desktop_DATA) diff --git a/gui/data/pcsxr.desktop b/gui/data/pcsxr.desktop new file mode 100644 index 00000000..c284f003 --- /dev/null +++ b/gui/data/pcsxr.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=PCSXR +GenericName=PlayStation Emulator +GenericName[ru_RU]=Эмулятор PlayStation +GenericName[zh_CN]=PlayStation 模拟器 +GenericName[zh_TW]=PlayStation 模擬器 +Comment=Sony PlayStation emulator +Comment[ru_RU]=Эмулятор Sony PlayStation +Comment[zh_CN]=Sony PlayStation 模拟器 +Comment[zh_TW]=Sony PlayStation 模擬器 +Exec=pcsxr +Icon=pcsxr-icon +Categories=Game; diff --git a/gui/data/pcsxr.ui b/gui/data/pcsxr.ui new file mode 100644 index 00000000..6f6a9b12 --- /dev/null +++ b/gui/data/pcsxr.ui @@ -0,0 +1,4817 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.20.0 --> +<interface> + <requires lib="gtk+" version="3.14"/> + <object class="GtkAboutDialog" id="AboutDlg"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <property name="program_name">pcsxr</property> + <property name="logo_icon_name">image-missing</property> + <child internal-child="vbox"> + <object class="GtkBox" id="aboutdialog-vbox1"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="aboutdialog-action_area1"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkDialog" id="CheatListDlg"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="title" translatable="yes">Edit Cheat Codes</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="closbutton1"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="vbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">15</property> + <child> + <object class="GtkFrame" id="frame3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="width_request">500</property> + <property name="height_request">355</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="border_width">5</property> + <property name="shadow_type">etched-in</property> + <child> + <object class="GtkTreeView" id="GtkCList_Cheat"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="treeview-selection1"/> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Cheat Codes</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="hbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkButton" id="savebutton1"> + <property name="label">gtk-save-as</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="loadbutton1"> + <property name="label">gtk-open</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="editbutton1"> + <property name="label">gtk-edit</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="delbutton1"> + <property name="label">gtk-delete</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="addbutton1"> + <property name="label">gtk-add</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">10</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="0">closbutton1</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkDialog" id="ConfDlg"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Configure PCSXR</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="btn_ConfClose"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="vbox28"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <property name="spacing">3</property> + <child> + <object class="GtkFrame" id="frame17"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment" id="alignment38"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <child> + <object class="GtkGrid" id="table4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">5</property> + <property name="column_spacing">5</property> + <child> + <object class="GtkImage" id="image337"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-gpu</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image341"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-cdr</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image340"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-pad</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image339"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-pad</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image338"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-spu</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfGpu"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_GpuConf" swapped="no"/> + <child> + <object class="GtkImage" id="image321"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Cdr"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Pad2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Pad1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <accessibility> + <relation type="flows-to" target="btn_ConfPad1"/> + <relation type="flows-from" target="btn_AboutSpu"/> + </accessibility> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Spu"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Gpu"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutSpu"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_SpuConf" swapped="no"/> + <child> + <object class="GtkImage" id="image318"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutPad1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_Pad1About" swapped="no"/> + <child> + <object class="GtkImage" id="image319"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutPad2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_Pad2About" swapped="no"/> + <child> + <object class="GtkImage" id="image320"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutCdr"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_CdrAbout" swapped="no"/> + <child> + <object class="GtkImage" id="image311"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfCdr"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_CdrConf" swapped="no"/> + <child> + <object class="GtkImage" id="image310"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfPad2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_Pad2Conf" swapped="no"/> + <child> + <object class="GtkImage" id="image317"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfPad1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_Pad1Conf" swapped="no"/> + <child> + <object class="GtkImage" id="image316"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfSpu"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_SpuConf" swapped="no"/> + <child> + <object class="GtkImage" id="image315"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label95"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Graphics:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label96"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Sound:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label85"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Controller 1:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label87"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Controller 2:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label91"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">CD-ROM:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutGpu"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnConfConf_GpuAbout" swapped="no"/> + <child> + <object class="GtkImage" id="image313"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image342"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">gtk-find</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">6</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label89"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Search in:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">6</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkFileChooserButton" id="GtkFileChooser_Plugin"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="action">select-folder</property> + <property name="show_hidden">True</property> + <property name="title" translatable="yes">Select Folder to Search</property> + <signal name="current-folder-changed" handler="OnConfConf_PluginPath" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">6</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image39"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-sio1</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Link cable:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Sio1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfSio1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <signal name="clicked" handler="OnConfConf_Sio1Conf" swapped="no"/> + <child> + <object class="GtkImage" id="image40"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutSio1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <signal name="clicked" handler="OnConfConf_Sio1About" swapped="no"/> + <child> + <object class="GtkImage" id="image41"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label97"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Plugins</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment" id="alignment39"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <child> + <object class="GtkGrid" id="grid1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="row_spacing">5</property> + <property name="column_spacing">5</property> + <child> + <object class="GtkImage" id="image343"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-execute</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label17"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">BIOS:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image38"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">gtk-find</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label16"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Search in:</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkComboBox" id="GtkCombo_Bios"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkFileChooserButton" id="GtkFileChooser_Bios"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="action">select-folder</property> + <property name="show_hidden">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label98"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>BIOS</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="-6">btn_ConfClose</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkDialog" id="McdsDlg"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Configure Memory Cards</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="default_width">688</property> + <property name="default_height">400</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="McdClose"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="hbox54"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkFrame" id="frame1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="vbox31"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">6</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow3"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkTreeView" id="GtkCList_McdList1"> + <property name="width_request">265</property> + <property name="height_request">400</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="hbuttonbox19"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">5</property> + <child> + <object class="GtkButton" id="GtkButton_New1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_Reload1" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox57"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image324"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-new</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">New</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="GtkButton_Format1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_Format" object="1" swapped="yes"/> + <child> + <object class="GtkAlignment" id="alignment50"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox70"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image346"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-clear</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label111"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Format</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="GtkButton_Delete1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">True</property> + <signal name="clicked" handler="OnMcd_Delete1" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment45"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox63"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image330"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-delete</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label105"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Un/Delete</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="Mcd1Button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">3</property> + <child> + <object class="GtkImage" id="image30"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-floppy</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="Mcd1Label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label">Loading...</property> + <property name="ellipsize">middle</property> + <property name="single_line_mode">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkSeparator" id="vseparator1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image31"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-open</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkBox" id="hbox58"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel" id="label100"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Memory Card 1</b></property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">0</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkAlignment" id="alignment51"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">27</property> + <property name="bottom_padding">132</property> + <child> + <object class="GtkButtonBox" id="vbuttonbox2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <property name="layout_style">center</property> + <child> + <object class="GtkButton" id="GtkButton_CopyTo2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_CopyTo2" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment41"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox59"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image326"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-go-forward</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label101"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Copy</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="GtkButton_CopyTo1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_CopyTo1" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment42"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox60"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image327"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-go-back</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label102"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Copy</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="vbox32"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">6</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow4"> + <property name="width_request">265</property> + <property name="height_request">400</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkTreeView" id="GtkCList_McdList2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="hbuttonbox20"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">5</property> + <child> + <object class="GtkButton" id="GtkButton_New2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_Reload2" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment48"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox66"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image333"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-new</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label108"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">New</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="GtkButton_Format2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnMcd_Format" object="2" swapped="yes"/> + <child> + <object class="GtkAlignment" id="alignment49"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox69"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image345"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-clear</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label110"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Format</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="GtkButton_Delete2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="receives_default">True</property> + <signal name="clicked" handler="OnMcd_Delete2" swapped="no"/> + <child> + <object class="GtkAlignment" id="alignment44"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <object class="GtkBox" id="hbox62"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + <child> + <object class="GtkImage" id="image329"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-delete</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label104"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Un/Delete</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="Mcd2Button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">3</property> + <child> + <object class="GtkImage" id="image32"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-floppy</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="Mcd2Label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label">Loading...</property> + <property name="ellipsize">middle</property> + <property name="single_line_mode">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkSeparator" id="vseparator2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image33"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-open</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkBox" id="hbox67"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel" id="label109"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Memory Card 2</b></property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">0</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_PerGameMcd"> + <property name="label" translatable="yes">Enable per game memory cards</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="border_width">2</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="-5">McdClose</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkDialog" id="MemViewDlg"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="title" translatable="yes">Memory Dump</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="memview_close"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="hbox10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">13</property> + <child> + <object class="GtkBox" id="hbox11"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">10</property> + <child> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Address (Hexadecimal):</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="entry_address"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">•</property> + <property name="primary_icon_activatable">False</property> + <property name="secondary_icon_activatable">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="hbox111"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">10</property> + <child> + <object class="GtkButton" id="btn_go"> + <property name="label">gtk-jump-to</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_prev"> + <property name="label">gtk-media-rewind</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_next"> + <property name="label">gtk-media-forward</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">5</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow5"> + <property name="width_request">580</property> + <property name="height_request">380</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">never</property> + <property name="shadow_type">etched-in</property> + <child> + <object class="GtkTreeView" id="GtkCList_MemView"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hover_selection">True</property> + <property name="enable_grid_lines">horizontal</property> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="treeview-selection5"/> + </child> + <style> + <class name="monospace"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="hbuttonbox2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">20</property> + <property name="layout_style">center</property> + <child> + <object class="GtkButton" id="btn_dump"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image36"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-save-as</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Raw Dump...</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_patch"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox13"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image37"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-edit</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Patch Memory...</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="0">memview_close</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkDialog" id="NetDlg"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Configure NetPlay</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <signal name="destroy" handler="OnNet_Cancel" swapped="no"/> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="closebutton2"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="vbox27"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkFrame" id="frame19"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment" id="alignment40"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <child> + <object class="GtkBox" id="hbox68"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">5</property> + <child> + <object class="GtkImage" id="image344"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-network</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_Net"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_ConfNet"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnNet_Conf" swapped="no"/> + <child> + <object class="GtkImage" id="image335"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-preferences</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_AboutNet"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <signal name="clicked" handler="OnNet_About" swapped="no"/> + <child> + <object class="GtkImage" id="image336"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-info</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label99"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>NetPlay</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="-6">closebutton2</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkListStore" id="PGXP_Mode_list"> + <columns> + <!-- column-name item --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Disabled</col> + </row> + <row> + <col id="0" translatable="yes">Memory only</col> + </row> + <row> + <col id="0" translatable="yes">Memory + Cpu logic</col> + </row> + </data> + </object> + <object class="GtkDialog" id="PgxpDlg"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Configure PGXP</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="PgxpDlg_close"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkFrame" id="PgxpDlg_Options"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="PGXP_GTE"> + <property name="label" translatable="yes">Enable PGXP GTE vertex creation</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="PGXP_Cache"> + <property name="label" translatable="yes">Enable vertex caching.</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="PGXP_Texture"> + <property name="label" translatable="yes">Enable perspective correct texturing.</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Options</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="PgxpDlg_Mode"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <property name="baseline_position">top</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">10</property> + <property name="homogeneous">True</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkComboBox" id="PGXP_Mode"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">PGXP_Mode_list</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext6"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="PGXP_Mode_title"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="margin_top">4</property> + <property name="margin_bottom">4</property> + <property name="label" translatable="yes">Mode</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="PGXP_Mode_description"> + <property name="height_request">100</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_right">10</property> + <property name="label" translatable="yes">Description</property> + <property name="wrap">True</property> + <property name="width_chars">40</property> + <property name="max_width_chars">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Select PGXP Mode</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="0">PgxpDlg_close</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkAdjustment" id="adjustment_PsxClock"> + <property name="lower">0.5</property> + <property name="upper">5</property> + <property name="step_increment">0.25</property> + <property name="page_increment">10</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-load-state</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-load-state</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image11"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-settings</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-cpu</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image13"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-memcard</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image14"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-netplay</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image15"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-cheats</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image16"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-cheats-browse</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image17"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-cheats-search</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-about</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image19"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-save-state</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-cd-open</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image20"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-shutdown</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image21"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-gpu</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image22"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-spu</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image23"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-cdr</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image24"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-pad</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image25"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-exit</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-iso-open</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image34"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-memory-dump</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-run-bios</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image42"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-plugin-sio1</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image43"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-pgxp</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-run-exe</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-play</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-reset</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-iso-reopen</property> + <property name="icon_size">1</property> + </object> + <object class="GtkImage" id="image9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">pcsxr-save-state</property> + <property name="icon_size">1</property> + </object> + <object class="GtkApplicationWindow" id="MainWindow"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">PCSXR</property> + <property name="resizable">False</property> + <property name="icon_name">pcsxr-icon.png</property> + <signal name="destroy" handler="OnDestroy" swapped="no"/> + <child> + <object class="GtkBox" id="vbox18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkMenuBar" id="menubar1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkMenuItem" id="item1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">_File</property> + <property name="use_underline">True</property> + <child type="submenu"> + <object class="GtkMenu" id="item1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkImageMenuItem" id="RunCd"> + <property name="label" translatable="yes">Run _CD</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image2</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnFile_RunCd" swapped="no"/> + <accelerator key="O" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="RunImage"> + <property name="label" translatable="yes">Run _ISO...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image3</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnFile_RunImage" swapped="no"/> + <accelerator key="I" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="RunBios"> + <property name="label" translatable="yes">Run _BIOS</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image4</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnFile_RunBios" swapped="no"/> + <accelerator key="B" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="RunExe"> + <property name="label" translatable="yes">Run _EXE...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image5</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnFile_RunExe" swapped="no"/> + <accelerator key="E" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="exit2"> + <property name="label" translatable="yes">E_xit</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image25</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnFile_Exit" swapped="no"/> + <accelerator key="Q" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkMenuItem" id="emulator1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">_Emulator</property> + <property name="use_underline">True</property> + <child type="submenu"> + <object class="GtkMenu" id="emulator1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkImageMenuItem" id="run1"> + <property name="label" translatable="yes">_Continue</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image6</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnEmu_Run" swapped="no"/> + <accelerator key="c" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="reset1"> + <property name="label" translatable="yes">_Reset</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image7</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnEmu_Reset" swapped="no"/> + <accelerator key="r" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="shutdown1"> + <property name="label" translatable="yes">_Shutdown</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image20</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnEmu_Shutdown" swapped="no"/> + <accelerator key="s" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="SwitchImage"> + <property name="label" translatable="yes">S_witch ISO...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image8</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnEmu_SwitchImage" swapped="no"/> + <accelerator key="W" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="save1"> + <property name="label" translatable="yes">_Save State</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image9</property> + <property name="use_stock">False</property> + <child type="submenu"> + <object class="GtkMenu" id="save1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _1</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Save1" swapped="no"/> + <accelerator key="1" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _2</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Save2" swapped="no"/> + <accelerator key="2" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _3</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Save3" swapped="no"/> + <accelerator key="3" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _4</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Save4" swapped="no"/> + <accelerator key="4" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _5</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Save5" swapped="no"/> + <accelerator key="5" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _6</property> + <property name="use_underline">True</property> + <accelerator key="6" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _7</property> + <property name="use_underline">True</property> + <accelerator key="7" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _8</property> + <property name="use_underline">True</property> + <accelerator key="8" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_SaveSlot9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _9</property> + <property name="use_underline">True</property> + <accelerator key="9" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="other2"> + <property name="label" translatable="yes">_Other...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image19</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnStates_SaveOther" swapped="no"/> + <accelerator key="0" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="load1"> + <property name="label" translatable="yes">_Load State</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image10</property> + <property name="use_stock">False</property> + <child type="submenu"> + <object class="GtkMenu" id="load1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _1</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Load1" swapped="no"/> + <accelerator key="1" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _2</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Load2" swapped="no"/> + <accelerator key="2" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _3</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Load3" swapped="no"/> + <accelerator key="3" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _4</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Load4" swapped="no"/> + <accelerator key="4" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _5</property> + <property name="use_underline">True</property> + <signal name="activate" handler="OnStates_Load5" swapped="no"/> + <accelerator key="5" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _6</property> + <property name="use_underline">True</property> + <accelerator key="6" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _7</property> + <property name="use_underline">True</property> + <accelerator key="7" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _8</property> + <property name="use_underline">True</property> + <accelerator key="8" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlot9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _9</property> + <property name="use_underline">True</property> + <accelerator key="9" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkMenuItem" id="GtkMenuItem_LoadSlotRecent"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Slot _Recent</property> + <property name="use_underline">True</property> + <accelerator key="R" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="other1"> + <property name="label" translatable="yes">_Other...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image1</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnStates_LoadOther" swapped="no"/> + <accelerator key="0" signal="activate" modifiers="GDK_MOD1_MASK"/> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkMenuItem" id="configuration1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">_Configuration</property> + <property name="use_underline">True</property> + <child type="submenu"> + <object class="GtkMenu" id="configuration1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkImageMenuItem" id="plugins_bios"> + <property name="label" translatable="yes">_Plugins & BIOS...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image11</property> + <property name="use_stock">False</property> + <signal name="activate" handler="ConfigurePlugins" swapped="no"/> + <accelerator key="P" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="graphics1"> + <property name="label" translatable="yes">_Graphics...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image21</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="sound1"> + <property name="label" translatable="yes">_Sound...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image22</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="cdrom1"> + <property name="label" translatable="yes">CD-_ROM...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image23</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="pad1"> + <property name="label" translatable="yes">C_ontrollers...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image24</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="sio1"> + <property name="label" translatable="yes">_Link cable...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image42</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="net1"> + <property name="label" translatable="yes">_Netplay...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image14</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnConf_Net" swapped="no"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="pgxp1"> + <property name="label" translatable="yes">_PGXP...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image43</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnConf_Pgxp" swapped="no"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="cpu1"> + <property name="label" translatable="yes">_CPU...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image12</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnConf_Cpu" swapped="no"/> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="memory_cards1"> + <property name="label" translatable="yes">_Memory Cards...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image13</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnConf_Mcds" swapped="no"/> + <accelerator key="M" signal="activate" modifiers="GDK_CONTROL_MASK"/> + </object> + </child> + <child> + <object class="GtkSeparatorMenuItem" id="separator3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="cheat1"> + <property name="label" translatable="yes">Chea_t</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image15</property> + <property name="use_stock">False</property> + <child type="submenu"> + <object class="GtkMenu" id="menu1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImageMenuItem" id="browse1"> + <property name="label" translatable="yes">_Browse...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image16</property> + <property name="use_stock">False</property> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="search1"> + <property name="label" translatable="yes">_Search...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image17</property> + <property name="use_stock">False</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkImageMenuItem" id="memorydump1"> + <property name="label" translatable="yes">Memory _Dump</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image34</property> + <property name="use_stock">False</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkMenuItem" id="help1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">_Help</property> + <property name="use_underline">True</property> + <child type="submenu"> + <object class="GtkMenu" id="help1_menu"> + <property name="can_focus">False</property> + <child> + <object class="GtkImageMenuItem" id="about_pcsxr1"> + <property name="label" translatable="yes">_About PCSXR...</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="use_underline">True</property> + <property name="image">image18</property> + <property name="use_stock">False</property> + <signal name="activate" handler="OnHelp_About" swapped="no"/> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkToolbar" id="tableToolbox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkToolButton" id="toolbutton_runcd"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Run CD</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-cd-open</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_runimage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Run ISO Image</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-iso-open</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem" id="toolbutton3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_run"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Continue Emulation</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-play</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_switchimage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Switch ISO Image</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-iso-reopen</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem" id="toolbutton4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_memcards"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Configure Memory Cards</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-memcard</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_graphics"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Configure Graphics</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-plugin-gpu</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_sound"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Configure Sound</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-plugin-spu</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_cdrom"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Configure CD-ROM</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-plugin-cdr</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="toolbutton_controllers"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="has_tooltip">True</property> + <property name="tooltip_text" translatable="yes">Configure Controllers</property> + <property name="use_underline">True</property> + <property name="icon_name">pcsxr-plugin-pad</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkImage" id="image160"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">pixmaps/pcsxr.png</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkStatusbar" id="statusbar"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">2</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + <child type="titlebar"> + <placeholder/> + </child> + </object> + <object class="GtkListStore" id="liststore1"> + <columns> + <!-- column-name item --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">NTSC</col> + </row> + <row> + <col id="0" translatable="yes">PAL</col> + </row> + </data> + </object> + <object class="GtkListStore" id="liststore2"> + <columns> + <!-- column-name item --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">8-bit</col> + </row> + <row> + <col id="0" translatable="yes">16-bit</col> + </row> + <row> + <col id="0" translatable="yes">32-bit</col> + </row> + </data> + </object> + <object class="GtkListStore" id="liststore3"> + <columns> + <!-- column-name item --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Equal Value</col> + </row> + <row> + <col id="0" translatable="yes">Not Equal Value</col> + </row> + <row> + <col id="0" translatable="yes">Range</col> + </row> + <row> + <col id="0" translatable="yes">Increased By</col> + </row> + <row> + <col id="0" translatable="yes">Decreased By</col> + </row> + <row> + <col id="0" translatable="yes">Increased</col> + </row> + <row> + <col id="0" translatable="yes">Decreased</col> + </row> + <row> + <col id="0" translatable="yes">Different</col> + </row> + <row> + <col id="0" translatable="yes">No Change</col> + </row> + </data> + </object> + <object class="GtkListStore" id="liststore4"> + <columns> + <!-- column-name item --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Decimal</col> + </row> + <row> + <col id="0" translatable="yes">Hexadecimal</col> + </row> + </data> + </object> + <object class="GtkDialog" id="CheatSearchDlg"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="title" translatable="yes">Cheat Search</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="closebutton"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment" id="alignment23"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="bottom_padding">5</property> + <property name="left_padding">5</property> + <property name="right_padding">5</property> + <child> + <object class="GtkBox" id="vbox2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkGrid" id="table1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">5</property> + <property name="column_spacing">5</property> + <child> + <object class="GtkComboBox" id="combo_datatype"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">liststore2</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext2"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Search For:</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Data Type:</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Value:</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Data Base:</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="combo_searchfor"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">liststore3</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext3"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="entry_value"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="primary_icon_activatable">False</property> + <property name="secondary_icon_activatable">False</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="combo_database"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">liststore4</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext4"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label_valueto"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">To:</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="entry_valueto"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="primary_icon_activatable">False</property> + <property name="secondary_icon_activatable">False</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="hbox4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow2"> + <property name="width_request">450</property> + <property name="height_request">250</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">never</property> + <property name="shadow_type">etched-in</property> + <child> + <object class="GtkTreeView" id="GtkCList_Result"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="headers_clickable">False</property> + <property name="show_expanders">False</property> + <property name="enable_grid_lines">vertical</property> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="treeview-selection2"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="vbuttonbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">10</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="btn_freeze"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image26"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-ok</property> + <property name="icon_size">1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label13"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Freeze</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_modify"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image27"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-edit</property> + <property name="icon_size">1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label14"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Modify</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_copy"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image28"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-paste</property> + <property name="icon_size">1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label15"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Copy</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">10</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label_resultsfound"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">label_resultsfound</property> + <property name="single_line_mode">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="hbuttonbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">20</property> + <property name="layout_style">center</property> + <child> + <object class="GtkButton" id="btn_start"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image29"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-ok</property> + <property name="icon_size">1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label11"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Search</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn_restart"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <child> + <object class="GtkBox" id="hbox6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="image35"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-undo</property> + <property name="icon_size">1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Restart</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Cheat Search</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="0">closebutton</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> + <object class="GtkListStore" id="liststore5"> + <columns> + <!-- column-name gchararray --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Enabled (Little endian)</col> + </row> + <row> + <col id="0" translatable="yes">Disabled</col> + </row> + <row> + <col id="0" translatable="yes">Enabled (Big endian)</col> + </row> + </data> + </object> + <object class="GtkDialog" id="CpuDlg"> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Configure CPU</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="window_position">center-on-parent</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="closebutton1"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="vbox25"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkFrame" id="frame15"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkGrid" id="table3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_SpuIrq"> + <property name="label" translatable="yes">SPU IRQ Always Enabled</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_Mdec"> + <property name="label" translatable="yes">Black & White Movies</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_SioIrq"> + <property name="label" translatable="yes">SIO IRQ Always Enabled</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_Xa"> + <property name="label" translatable="yes">Disable XA Decoding</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_SlowBoot"> + <property name="label" translatable="yes">Slow Boot</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_Cpu"> + <property name="label" translatable="yes">Enable Interpreter CPU</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">7</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_PsxOut"> + <property name="label" translatable="yes">Enable Console Output</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_Dbg"> + <property name="label" translatable="yes">Enable Debugger</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">8</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_RCntFix"> + <property name="label" translatable="yes">Parasite Eve 2, Vandal Hearts 1/2 Fix</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">9</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_VSyncWA"> + <property name="label" translatable="yes">InuYasha Sengoku Battle Fix</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">10</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_NoMemcard"> + <property name="label" translatable="yes">No memcard (COTS password option)</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">11</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_Widescreen"> + <property name="label" translatable="yes">Widescreen (GTE Hack)</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">12</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_HackFix"> + <property name="label" translatable="yes">Compatibility hacks (Raystorm/VH-D/MML/Cart World/...)</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">13</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label66"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Options</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame_pref"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="hbox51"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">10</property> + <child> + <object class="GtkLabel" id="label_cdda"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">CD Audio</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_CDDA"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">liststore5</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext5"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame_rew"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="hbox50"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">4</property> + <child> + <object class="GtkLabel" id="label70"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Every</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="GtkEntry_RewindInterval"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="max_length">3</property> + <property name="width_chars">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label71"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">vblanks, max.</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="GtkEntry_RewindCount"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="max_length">3</property> + <property name="width_chars">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label72"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">rewinds = </property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="GtkEntry_RewindMem"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="editable">False</property> + <property name="max_length">5</property> + <property name="width_chars">5</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label73"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">MB</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">6</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label69"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Rewind interval</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame_speed"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="hbox14"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">4</property> + <child> + <object class="GtkLabel" id="label19"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Alt1</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="GtkEntry_AltSpeed1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="max_length">4</property> + <property name="width_chars">4</property> + <property name="max_width_chars">4</property> + <property name="primary_icon_tooltip_text" translatable="yes">%</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label24"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">%</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator" id="separator4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label20"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Alt2</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="GtkEntry_AltSpeed2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="max_length">4</property> + <property name="width_chars">4</property> + <property name="max_width_chars">4</property> + <property name="progress_pulse_step">0.11</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label22"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">%</property> + <property name="use_markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkSeparator" id="separator9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">7</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label23"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Alternate Speed</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame16"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkBox" id="hbox49"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="spacing">10</property> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_PsxAuto"> + <property name="label" translatable="yes">Autodetect</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="GtkCombo_PsxType"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">liststore1</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext1"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label68"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>System Type</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame_oc"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">5</property> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_OverClock"> + <property name="label" translatable="yes">Overclock</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="GtkSpinButton_PsxClock"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="max_width_chars">6</property> + <property name="adjustment">adjustment_PsxClock</property> + <property name="digits">2</property> + <property name="numeric">True</property> + <property name="update_policy">if-valid</property> + <property name="value">1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="GtkCheckButton_MemHack"> + <property name="label" translatable="yes">WipeOut MemHack</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>CPU Overclocking</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="-6">closebutton1</action-widget> + </action-widgets> + <child> + <placeholder/> + </child> + </object> +</interface> diff --git a/gui/data/pixmaps/Makefile.am b/gui/data/pixmaps/Makefile.am new file mode 100644 index 00000000..f5be2e62 --- /dev/null +++ b/gui/data/pixmaps/Makefile.am @@ -0,0 +1,18 @@ +#pixmapdir = "$(datadir)/pcsxr" +#pixmap_DATA = \ + pcsxr-cd-open.png \ + pcsxr-iso-open.png \ + pcsxr-iso-reopen.png \ + pcsxr-memcard.png \ + pcsxr-play.png \ + pcsxr-plugin-cdr.png \ + pcsxr-plugin-gpu.png \ + pcsxr-plugin-pad.png \ + pcsxr-plugin-sio1.png \ + pcsxr-plugin-spu.png \ + pcsxr.png + +icondir = "$(datadir)/pixmaps" +icon_DATA = pcsxr-icon.png + +EXTRA_DIST = $(pixmap_DATA) $(icon_DATA) diff --git a/gui/data/pixmaps/pcsxr-about.png b/gui/data/pixmaps/pcsxr-about.png Binary files differnew file mode 100644 index 00000000..1afd9229 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-about.png diff --git a/gui/data/pixmaps/pcsxr-cd-open.png b/gui/data/pixmaps/pcsxr-cd-open.png Binary files differnew file mode 100644 index 00000000..f72f29a5 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-cd-open.png diff --git a/gui/data/pixmaps/pcsxr-cheats-browse.png b/gui/data/pixmaps/pcsxr-cheats-browse.png Binary files differnew file mode 100644 index 00000000..311fe66a --- /dev/null +++ b/gui/data/pixmaps/pcsxr-cheats-browse.png diff --git a/gui/data/pixmaps/pcsxr-cheats-search.png b/gui/data/pixmaps/pcsxr-cheats-search.png Binary files differnew file mode 100644 index 00000000..21337b72 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-cheats-search.png diff --git a/gui/data/pixmaps/pcsxr-cheats.png b/gui/data/pixmaps/pcsxr-cheats.png Binary files differnew file mode 100644 index 00000000..d8cfdb03 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-cheats.png diff --git a/gui/data/pixmaps/pcsxr-cpu.png b/gui/data/pixmaps/pcsxr-cpu.png Binary files differnew file mode 100644 index 00000000..aa2e34ba --- /dev/null +++ b/gui/data/pixmaps/pcsxr-cpu.png diff --git a/gui/data/pixmaps/pcsxr-exit.png b/gui/data/pixmaps/pcsxr-exit.png Binary files differnew file mode 100644 index 00000000..c0fe484b --- /dev/null +++ b/gui/data/pixmaps/pcsxr-exit.png diff --git a/gui/data/pixmaps/pcsxr-icon.png b/gui/data/pixmaps/pcsxr-icon.png Binary files differnew file mode 100644 index 00000000..736bdec3 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-icon.png diff --git a/gui/data/pixmaps/pcsxr-iso-open.png b/gui/data/pixmaps/pcsxr-iso-open.png Binary files differnew file mode 100644 index 00000000..4f421296 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-iso-open.png diff --git a/gui/data/pixmaps/pcsxr-iso-reopen.png b/gui/data/pixmaps/pcsxr-iso-reopen.png Binary files differnew file mode 100644 index 00000000..68ea5387 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-iso-reopen.png diff --git a/gui/data/pixmaps/pcsxr-load-state.png b/gui/data/pixmaps/pcsxr-load-state.png Binary files differnew file mode 100644 index 00000000..a381e548 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-load-state.png diff --git a/gui/data/pixmaps/pcsxr-memcard.png b/gui/data/pixmaps/pcsxr-memcard.png Binary files differnew file mode 100644 index 00000000..2b061b6d --- /dev/null +++ b/gui/data/pixmaps/pcsxr-memcard.png diff --git a/gui/data/pixmaps/pcsxr-memory-dump.png b/gui/data/pixmaps/pcsxr-memory-dump.png Binary files differnew file mode 100644 index 00000000..5c62af70 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-memory-dump.png diff --git a/gui/data/pixmaps/pcsxr-play.png b/gui/data/pixmaps/pcsxr-play.png Binary files differnew file mode 100644 index 00000000..ce003e4d --- /dev/null +++ b/gui/data/pixmaps/pcsxr-play.png diff --git a/gui/data/pixmaps/pcsxr-plugin-cdr.png b/gui/data/pixmaps/pcsxr-plugin-cdr.png Binary files differnew file mode 100644 index 00000000..72737547 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-cdr.png diff --git a/gui/data/pixmaps/pcsxr-plugin-gpu.png b/gui/data/pixmaps/pcsxr-plugin-gpu.png Binary files differnew file mode 100644 index 00000000..e024618c --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-gpu.png diff --git a/gui/data/pixmaps/pcsxr-plugin-netplay.png b/gui/data/pixmaps/pcsxr-plugin-netplay.png Binary files differnew file mode 100644 index 00000000..1e5ff2f5 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-netplay.png diff --git a/gui/data/pixmaps/pcsxr-plugin-pad.png b/gui/data/pixmaps/pcsxr-plugin-pad.png Binary files differnew file mode 100644 index 00000000..dd7656b2 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-pad.png diff --git a/gui/data/pixmaps/pcsxr-plugin-sio1.png b/gui/data/pixmaps/pcsxr-plugin-sio1.png Binary files differnew file mode 100644 index 00000000..89d3eeba --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-sio1.png diff --git a/gui/data/pixmaps/pcsxr-plugin-spu.png b/gui/data/pixmaps/pcsxr-plugin-spu.png Binary files differnew file mode 100644 index 00000000..5d206afb --- /dev/null +++ b/gui/data/pixmaps/pcsxr-plugin-spu.png diff --git a/gui/data/pixmaps/pcsxr-reset.png b/gui/data/pixmaps/pcsxr-reset.png Binary files differnew file mode 100644 index 00000000..74de098d --- /dev/null +++ b/gui/data/pixmaps/pcsxr-reset.png diff --git a/gui/data/pixmaps/pcsxr-run-bios.png b/gui/data/pixmaps/pcsxr-run-bios.png Binary files differnew file mode 100644 index 00000000..aa2e34ba --- /dev/null +++ b/gui/data/pixmaps/pcsxr-run-bios.png diff --git a/gui/data/pixmaps/pcsxr-run-exe.png b/gui/data/pixmaps/pcsxr-run-exe.png Binary files differnew file mode 100644 index 00000000..3ff9e91c --- /dev/null +++ b/gui/data/pixmaps/pcsxr-run-exe.png diff --git a/gui/data/pixmaps/pcsxr-save-state.png b/gui/data/pixmaps/pcsxr-save-state.png Binary files differnew file mode 100644 index 00000000..872109e4 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-save-state.png diff --git a/gui/data/pixmaps/pcsxr-settings.png b/gui/data/pixmaps/pcsxr-settings.png Binary files differnew file mode 100644 index 00000000..d423e32e --- /dev/null +++ b/gui/data/pixmaps/pcsxr-settings.png diff --git a/gui/data/pixmaps/pcsxr-shutdown.png b/gui/data/pixmaps/pcsxr-shutdown.png Binary files differnew file mode 100644 index 00000000..2ab2b165 --- /dev/null +++ b/gui/data/pixmaps/pcsxr-shutdown.png diff --git a/gui/data/pixmaps/pcsxr.png b/gui/data/pixmaps/pcsxr.png Binary files differnew file mode 100644 index 00000000..4e747a80 --- /dev/null +++ b/gui/data/pixmaps/pcsxr.png |
