From 5a5d3f919233fdd571bc1fa5371db328569db5ec Mon Sep 17 00:00:00 2001 From: Brandon Wright Date: Thu, 18 Nov 2010 06:31:27 -0600 Subject: [PATCH] Allow bilinear filtering in GTK output driver. --- gtk/src/gtk_config.cpp | 6 +- gtk/src/gtk_config.h | 2 +- gtk/src/gtk_display_driver_gtk.cpp | 17 +- gtk/src/gtk_display_driver_gtk.h | 2 + gtk/src/gtk_preferences.cpp | 8 +- gtk/src/snes9x.ui | 4565 ++++++++++++++-------------- 6 files changed, 2308 insertions(+), 2292 deletions(-) diff --git a/gtk/src/gtk_config.cpp b/gtk/src/gtk_config.cpp index f3bc9c12..c26e2fe4 100644 --- a/gtk/src/gtk_config.cpp +++ b/gtk/src/gtk_config.cpp @@ -162,6 +162,7 @@ Snes9xConfig::load_defaults (void) ntsc_setup = snes_ntsc_composite; ntsc_scanline_intensity = 1; scanline_filter_intensity = 0; + bilinear_filter = 0; netplay_activated = FALSE; netplay_server_up = FALSE; netplay_is_server = FALSE; @@ -175,7 +176,6 @@ Snes9xConfig::load_defaults (void) modal_dialogs = 1; #ifdef USE_OPENGL - bilinear_filter = 0; sync_to_vblank = 1; use_pbos = 1; pbo_format = 0; @@ -323,9 +323,9 @@ Snes9xConfig::save_config_file (void) xml_out_int (xml, "ntsc_scanline_intensity", ntsc_scanline_intensity); xml_out_int (xml, "scanline_filter_intensity", scanline_filter_intensity); xml_out_int (xml, "hw_accel", hw_accel); + xml_out_int (xml, "bilinear_filter", bilinear_filter); #ifdef USE_OPENGL - xml_out_int (xml, "bilinear_filter", bilinear_filter); xml_out_int (xml, "sync_to_vblank", sync_to_vblank); xml_out_int (xml, "sync_every_frame", sync_every_frame); xml_out_int (xml, "use_pbos", use_pbos); @@ -499,9 +499,7 @@ Snes9xConfig::set_option (const char *name, const char *value) } else if (!strcasecmp (name, "bilinear_filter")) { -#ifdef USE_OPENGL bilinear_filter = atoi (value); -#endif } else if (!strcasecmp (name, "sync_to_vblank")) { diff --git a/gtk/src/gtk_config.h b/gtk/src/gtk_config.h index e3d49858..9cee7c30 100644 --- a/gtk/src/gtk_config.h +++ b/gtk/src/gtk_config.h @@ -81,6 +81,7 @@ class Snes9xConfig float ntsc_merge_fields; unsigned int ntsc_scanline_intensity; unsigned int scanline_filter_intensity; + unsigned char bilinear_filter; unsigned char hw_accel; unsigned char allow_opengl; unsigned char allow_xv; @@ -138,7 +139,6 @@ class Snes9xConfig #ifdef USE_OPENGL - unsigned char bilinear_filter; unsigned char sync_to_vblank; unsigned char opengl_activated; unsigned char use_pbos; diff --git a/gtk/src/gtk_display_driver_gtk.cpp b/gtk/src/gtk_display_driver_gtk.cpp index cb5c1e32..234d5410 100644 --- a/gtk/src/gtk_display_driver_gtk.cpp +++ b/gtk/src/gtk_display_driver_gtk.cpp @@ -62,6 +62,7 @@ S9xGTKDisplayDriver::update (int width, int height) x = width; y = height; w = c_width; h = c_height; S9xApplyAspect (x, y, w, h); + output (final_buffer, final_pitch, x, y, width, height, w, h); return; @@ -77,7 +78,7 @@ S9xGTKDisplayDriver::output (void *src, int dst_width, int dst_height) { - if (width > gdk_buffer_width || height > gdk_buffer_height) + if (width != gdk_buffer_width || height != gdk_buffer_height) { gdk_buffer_width = width; gdk_buffer_height = height; @@ -97,6 +98,14 @@ S9xGTKDisplayDriver::output (void *src, NULL); } + if (last_known_width != dst_width || last_known_height != dst_height) + { + clear (); + + last_known_width = dst_width; + last_known_height = dst_height; + } + S9xConvert (src, padded_buffer[2], src_pitch, @@ -120,11 +129,15 @@ S9xGTKDisplayDriver::output (void *src, (double) height / (double) dst_height); cairo_matrix_translate (&matrix, -x, -y); cairo_pattern_set_matrix (pattern, &matrix); - cairo_pattern_set_filter (pattern, CAIRO_FILTER_NEAREST); + cairo_pattern_set_filter (pattern, + config->bilinear_filter + ? CAIRO_FILTER_BILINEAR + : CAIRO_FILTER_NEAREST); } cairo_rectangle (cr, x, y, dst_width, dst_height); cairo_fill (cr); + cairo_destroy (cr); window->set_mouseable_area (x, y, width, height); diff --git a/gtk/src/gtk_display_driver_gtk.h b/gtk/src/gtk_display_driver_gtk.h index 5882afc0..9f1f225c 100644 --- a/gtk/src/gtk_display_driver_gtk.h +++ b/gtk/src/gtk_display_driver_gtk.h @@ -32,6 +32,8 @@ class S9xGTKDisplayDriver : public S9xDisplayDriver GdkPixbuf *pixbuf; int gdk_buffer_width; int gdk_buffer_height; + int last_known_width; + int last_known_height; }; #endif /* __GTK_DISPLAY_DRIVER_GTK_H */ diff --git a/gtk/src/gtk_preferences.cpp b/gtk/src/gtk_preferences.cpp index 93b7fa92..ea297798 100644 --- a/gtk/src/gtk_preferences.cpp +++ b/gtk/src/gtk_preferences.cpp @@ -341,14 +341,17 @@ event_hw_accel_changed (GtkComboBox *widget, gpointer data) switch (value) { case HWA_NONE: + gtk_widget_show (window->get_widget ("bilinear_filter")); gtk_widget_hide (window->get_widget ("opengl_frame")); gtk_widget_hide (window->get_widget ("xv_frame")); break; case HWA_OPENGL: + gtk_widget_show (window->get_widget ("bilinear_filter")); gtk_widget_show (window->get_widget ("opengl_frame")); gtk_widget_hide (window->get_widget ("xv_frame")); break; case HWA_XV: + gtk_widget_hide (window->get_widget ("bilinear_filter")); gtk_widget_show (window->get_widget ("xv_frame")); gtk_widget_hide (window->get_widget ("opengl_frame")); break; @@ -717,8 +720,9 @@ Snes9xPreferences::move_settings_to_dialog (void) set_combo ("frameskip_combo", Settings.SkipFrames == AUTO_FRAMERATE ? 0 : Settings.SkipFrames + 1); -#ifdef USE_OPENGL set_check ("bilinear_filter", config->bilinear_filter); + +#ifdef USE_OPENGL set_check ("sync_to_vblank", config->sync_to_vblank); set_check ("sync_every_frame", config->sync_every_frame); set_check ("use_pbos", config->use_pbos); @@ -826,6 +830,7 @@ Snes9xPreferences::get_settings_from_dialog (void) config->ntsc_scanline_intensity = get_combo ("ntsc_scanline_intensity"); config->scanline_filter_intensity = get_combo ("scanline_filter_intensity"); config->hw_accel = hw_accel_value (get_combo ("hw_accel")); + config->bilinear_filter = get_check ("bilinear_filter"); config->num_threads = get_spin ("num_threads"); config->default_esc_behavior = get_combo ("default_esc_behavior"); config->prevent_screensaver = get_check ("prevent_screensaver"); @@ -845,7 +850,6 @@ Snes9xPreferences::get_settings_from_dialog (void) gfx_needs_restart = 1; } - config->bilinear_filter = get_check ("bilinear_filter"); config->sync_to_vblank = get_check ("sync_to_vblank"); config->use_pbos = get_check ("use_pbos"); config->npot_textures = get_check ("npot_textures"); diff --git a/gtk/src/snes9x.ui b/gtk/src/snes9x.ui index b26fbd1b..9aba15fa 100644 --- a/gtk/src/snes9x.ui +++ b/gtk/src/snes9x.ui @@ -2,779 +2,1603 @@ - - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK - Snes9x - - - - - - - - + + 560 + 448 + About Snes9x + normal + True + + True + 2 - + True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 5 - + True - _File - True - - - - - _Open ROM Image... - True - True - image2 - False - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Open Recent - True - - - - - True - - - - - Open with _NetPlay... - True - Open a ROM to use with NetPlay - True - image3 - False - - - - - - True - Open _MultiCart... - True - - - - - - True - - - - - True - _Load State - True - - - - - - True - Slot _0 - True - - - - - - True - Slot _1 - True - - - - - - True - Slot _2 - True - - - - - - True - Slot _3 - True - - - - - - True - Slot _4 - True - - - - - - True - Slot _5 - True - - - - - - True - Slot _6 - True - - - - - - True - Slot _7 - True - - - - - - True - Slot _8 - True - - - - - - True - - - - - True - From _File... - True - - - - - - - - - - True - _Save State - True - - - - - - True - Slot _0 - True - - - - - - True - Slot _1 - True - - - - - - True - Slot _2 - True - - - - - - True - Slot _3 - True - - - - - - True - Slot _4 - True - - - - - - True - Slot _5 - True - - - - - - True - Slot _6 - True - - - - - - True - Slot _7 - True - - - - - - True - Slot _8 - True - - - - - - True - - - - - True - To _File... - True - - - - - - - - - - True - - - - - Save SPC... - True - True - image4 - False - - - - - - True - - - - - Show ROM _Info... - True - True - image5 - False - - - - - - True - - - - - _Quit - True - True - image18 - False - - - + 5 + + + True + gtk-missing-image + + False + 0 + - + True - _Emulation - True - - - - - Run / _Continue - True - True - image6 - False - - - - - - _Pause - True - True - image7 - False - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - - - Load _Movie... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - image8 - False - - - - - - R_ecord Movie... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - image19 - False - - - - - - _Stop Recording - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - image9 - False - - - - - - _Jump to Frame... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - image10 - False - - - - - - True - - - - - Sy_nc Clients - True - True - image11 - False - - - - - - True - - - - - Reset - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - image12 - False - - - - - - Soft _Reset - True - True - image13 - False - - - - - + 0 + 10 + 10 + label106 + True + center + True + + False + 1 + - + True - _View - True - - - + queue + + + True + True + automatic - - _Hide Menu + True - True - image14 - False - - - - - - True - _Status Bar - True - - - - - - True - - - - - _Change Size - True - True - image17 - False - - - True - - - True - False - Exact Pixels - True - - - - - True - _1x - True - - - - - - True - _2x - True - - - - - - True - _3x - True - - - - - - True - _4x - True - - - - - - True - _5x - True - - - - - - True - - - - - True - False - Correct Aspect - True - - - - - True - 1x - True - - - - - - True - 2x - True - - - - - - True - 3x - True - - - - - - True - 4x - True - - - - - - True - 5x - True - - - - - - - - - - True - - - - - _Fullscreen - True - True - image15 - False - + True + False + False + textbuffer1 + + 2 + + + + 0 + + + + + True + end - + + gtk-close True - _Options - True - - - - - True - Controller Ports - True - - - - - True - SNES Port 1 - True - - - - - - True - Joypad - True - - - - - - True - Mouse - True - joypad1 - - - - - - True - Superscope - True - True - joypad1 - - - - - - - - - - True - SNES Port 2 - True - - - - - - True - Joypad - True - - - - - - True - Mouse - True - joypad2 - - - - - - True - Multitap - True - joypad2 - - - - - - True - Superscope - True - True - joypad2 - - - - - - - - - - - - - - True - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - _Cheats... - True - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - - - _Preferences... - True - True - image16 - False - - - - - + True + True + False + True + + False + False + 0 + False - 0 + end + 1 + + + + button15 + + + + Snes9x - Portable Super Nintendo Entertainment System (TM) emulator. + + (c) Copyright 1996 - 2002 Gary Henderson (gary.henderson@ntlworld.com), + Jerremy Koot (jkoot@snes9x.com) + + (c) Copyright 2002 - 2004 Matthew Kendora + + (c) Copyright 2002 - 2005 Peter Bortas (peter@bortas.org) + + (c) Copyright 2004 - 2005 Joel Yliluoma (http://iki.fi/bisqwit/) + + (c) Copyright 2001 - 2006 John Weidman (jweidman@slip.net) + + (c) Copyright 2002 - 2006 funkyass (funkyass@spam.shaw.ca), + Kris Bleakley (codeviolation@hotmail.com) + + (c) Copyright 2002 - 2010 Brad Jorsch (anomie@users.sourceforge.net), + Nach (n-a-c-h@users.sourceforge.net), + zones (kasumitokoduck@yahoo.com) + + (c) Copyright 2006 - 2007 nitsuja + + (c) Copyright 2009 - 2010 BearOso, + OV2 + + + BS-X C emulator code + (c) Copyright 2005 - 2006 Dreamer Nom, + zones + + C4 x86 assembler and some C emulation code + (c) Copyright 2000 - 2003 _Demo_ (_demo_@zsnes.com), + Nach, + zsKnight (zsknight@zsnes.com) + + C4 C++ code + (c) Copyright 2003 - 2006 Brad Jorsch, + Nach + + DSP-1 emulator code + (c) Copyright 1998 - 2006 _Demo_, + Andreas Naive (andreasnaive@gmail.com), + Gary Henderson, + Ivar (ivar@snes9x.com), + John Weidman, + Kris Bleakley, + Matthew Kendora, + Nach, + neviksti (neviksti@hotmail.com) + + DSP-2 emulator code + (c) Copyright 2003 John Weidman, + Kris Bleakley, + Lord Nightmare (lord_nightmare@users.sourceforge.net), + Matthew Kendora, + neviksti + + DSP-3 emulator code + (c) Copyright 2003 - 2006 John Weidman, + Kris Bleakley, + Lancer, + z80 gaiden + + DSP-4 emulator code + (c) Copyright 2004 - 2006 Dreamer Nom, + John Weidman, + Kris Bleakley, + Nach, + z80 gaiden + + OBC1 emulator code + (c) Copyright 2001 - 2004 zsKnight, + pagefault (pagefault@zsnes.com), + Kris Bleakley + Ported from x86 assembler to C by sanmaiwashi + + SPC7110 and RTC C++ emulator code used in 1.39-1.51 + (c) Copyright 2002 Matthew Kendora with research by + zsKnight, + John Weidman, + Dark Force + + SPC7110 and RTC C++ emulator code used in 1.52+ + (c) Copyright 2009 byuu, + neviksti + + S-DD1 C emulator code + (c) Copyright 2003 Brad Jorsch with research by + Andreas Naive, + John Weidman + + S-RTC C emulator code + (c) Copyright 2001 - 2006 byuu, + John Weidman + + ST010 C++ emulator code + (c) Copyright 2003 Feather, + John Weidman, + Kris Bleakley, + Matthew Kendora + + Super FX x86 assembler emulator code + (c) Copyright 1998 - 2003 _Demo_, + pagefault, + zsKnight + + Super FX C emulator code + (c) Copyright 1997 - 1999 Ivar, + Gary Henderson, + John Weidman + + Sound emulator code used in 1.5-1.51 + (c) Copyright 1998 - 2003 Brad Martin + (c) Copyright 1998 - 2006 Charles Bilyue' + + Sound emulator code used in 1.52+ + (c) Copyright 2004 - 2007 Shay Green (gblargg@gmail.com) + + SH assembler code partly based on x86 assembler code + (c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se) + + 2xSaI filter + (c) Copyright 1999 - 2001 Derek Liauw Kie Fa + + HQ2x, HQ3x, HQ4x filters + (c) Copyright 2003 Maxim Stepin (maxim@hiend3d.com) + + NTSC filter + (c) Copyright 2006 - 2007 Shay Green + + GTK+ GUI code + (c) Copyright 2004 - 2010 BearOso + + Win32 GUI code + (c) Copyright 2003 - 2006 blip, + funkyass, + Matthew Kendora, + Nach, + nitsuja + (c) Copyright 2009 - 2010 OV2 + + Mac OS GUI code + (c) Copyright 1998 - 2001 John Stiles + (c) Copyright 2001 - 2010 zones + + + Specific ports contains the works of other authors. See headers in + individual files. + + + Snes9x homepage: http://www.snes9x.com/ + + Permission to use, copy, modify and/or distribute Snes9x in both binary + and source form, for non-commercial purposes, is hereby granted without + fee, providing that this license information and copyright notice appear + with all copies and any derived work. + + This software is provided 'as-is', without any express or implied + warranty. In no event shall the authors be held liable for any damages + arising from the use of this software or it's derivatives. + + Snes9x is freeware for PERSONAL USE only. Commercial users should + seek permission of the copyright holders first. Commercial use includes, + but is not limited to, charging money for Snes9x or software derived from + Snes9x, including Snes9x or derivatives in commercial game bundles, and/or + using Snes9x as a promotion for your commercial product. + + The copyright holders request that bug fixes and improvements to the code + should be forwarded to them so everyone can benefit from the modifications + in future versions. + + Super NES and Super Nintendo Entertainment System are trademarks of + Nintendo Co., Limited and its subsidiary companies. + + + 2 + 8 + 2 + 1 + 1 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 1.0408340855860843e-17 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + -1 + 1 + 0.01 + 0.10000000000000001 + + + 2 + 256 + 2 + 1 + 1 + + + 31500 + 32500 + 31990 + 1 + 10 + + + 1 + 100 + 50 + 1 + 10 + + + 1 + 9999 + 6096 + 1 + 1 + + + 1 + 9999 + 6096 + 1 + 1 + + + 1 + 60 + 1 + 1 + 1 + + + True + gtk-preferences + 1 + + + True + gtk-fullscreen + 1 + + + True + gtk-zoom-in + 1 + + + True + gtk-leave-fullscreen + 1 + + + True + gtk-refresh + 1 + + + True + gtk-redo + 1 + + + True + gtk-revert-to-saved + 1 + + + True + gtk-media-next + 1 + + + True + gtk-media-stop + 1 + + + True + gtk-media-record + 1 + + + True + gtk-open + 1 + + + True + gtk-media-pause + 1 + + + True + gtk-go-forward + 1 + + + True + gtk-quit + 1 + + + True + gtk-dialog-info + 1 + + + True + gtk-save + 1 + + + True + gtk-network + 1 + + + True + gtk-open + 1 + + + 5 + Open Multiple ROM Images (MultiCart) + center-on-parent + 320 + dialog + + + True - - 256 - 224 + True - True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK - - - - - + 5 + + + True + 12 + + + True + Slot A: + + + False + 0 + + + + + True + Select an Image for Slot A + + + 1 + + + + + False + 0 + + + + + True + 12 + + + True + Slot B: + + + False + 0 + + + + + True + Select an Image for Slot B + + + 1 + + + + + False + 1 + + 1 - - + + True + end + + + gtk-cancel + True + True + True + True + + + False + False + 0 + + + + + gtk-ok + True + True + True + True + + + False + False + 1 + + False - 2 + end + 0 + + button14 + button13 + + + + 5 + Snes9x NetPlay + center-on-parent + dialog + + + True + 2 + + + True + 5 + 5 + + + True + 0 + none + + + True + 12 + + + True + 5 + 5 + + + True + True + The game chosen will be loaded before connecting. This field can be blank if the server will send the ROM image + False + + + 0 + + + + + Browse... + True + True + True + + + + False + 1 + + + + + True + True + True + + + + True + Clear entry + gtk-clear + 1 + + + + + False + 2 + + + + + + + + + True + <b>ROM Image</b> + True + + + + + False + 0 + + + + + True + 0 + none + + + True + 5 + 12 + + + True + + + Connect to another computer + True + True + False + Connect to another computer that is running Snes9x NetPlay as a server + True + True + + + 0 + + + + + True + 5 + 5 + + + True + Name or IP address: + + + False + 0 + + + + + True + True + Domain name or internet protocol address of a remote computer + + + 1 + + + + + True + Port: + + + False + 2 + + + + + True + True + Connect to specified TCP port on remote computer + adjustment3 + True + True + + + False + 3 + + + + + 1 + + + + + Act as a server + True + True + False + Host a game on this computer as Player 1, requiring extra throughput to support multitple users + True + True + connect_radio + + + + 2 + + + + + + + + + True + <b>Server</b> + True + + + + + False + 1 + + + + + True + 0 + none + + + True + 12 + + + True + 5 + 5 + + + Sync using reset + True + True + False + Reset the game when players join instead of transferring potentially unreliable freeze states + True + + + False + 0 + + + + + Send ROM image to clients + True + True + False + Send the running game image to players instead of requiring them to have their own copies + True + + + False + 1 + + + + + True + 5 + + + True + Default port: + + + False + 0 + + + + + True + True + TCP port used as a connection point for remote clients + adjustment2 + True + True + + + False + 1 + + + + + False + 2 + + + + + True + 5 + + + True + Ask server to pause when + + + False + 0 + + + + + True + True + adjustment1 + True + True + + + False + 1 + + + + + True + frames behind + + + False + 2 + + + + + False + 3 + + + + + + + + + True + <b>Settings</b> + True + + + + + 2 + + + + + 1 + + + + + True + end + + + gtk-cancel + True + True + True + True + + + False + False + 0 + + + + + gtk-connect + True + True + True + True + True + + + False + False + 1 + + + + + False + end + 0 + + + + + + button9 + button10 + + + + 512 + 350 + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 5 + Snes9x Cheats + center-on-parent + dialog + True + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 2 + + + True + 5 + + + True + 0 + in + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + + + + 0 + + + + + True + 5 + 5 + + + True + 0 + Code: + + + False + 0 + + + + + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + False + 1 + + + + + True + 0 + Description: + + + False + 2 + + + + + True + True + 21 + True + + + False + 3 + + + + + gtk-add + True + True + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + + False + False + 4 + + + + + gtk-remove + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + + False + False + 5 + + + + + False + False + 1 + + + + + 1 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + end + + + gtk-close + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + False + False + 0 + + + + + False + end + 0 + + + + + + button7 + + + + + + + + + + + + + + + + 8:7 Square pixels + + + 4:3 SNES correct aspect + + + + + + + + + + + None + + + SuperEagle + + + 2xSaI + + + Super2xSaI + + + EPX + + + EPX Smooth + + + Blargg's NTSC + + + Scanlines + + + Simple2x + + + Simple3x + + + Simple4x + + + + + + + + + + + 0% + + + 12.5% + + + 25% + + + 50% + + + 100% + + + + + + + + + + + 12.5% + + + 25% + + + 50% + + + 100% + + + + + + + + + + + + + + + + + 16-bit (GL_BGRA) + + + 24-bit (GL_RGB) + + + 32-bit (GL_BGRA) + + + + + + + + + + + + + + + + + 48000 hz + + + 44100 hz + + + 32000 hz (SNES Default) + + + 22050 hz + + + 16000 hz + + + 11025 hz + + + 8000 hz + + + 0 hz + + + + + + + + + + + Automatic + + + 0 + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 6 + + + 7 + + + 8 + + + 9 + + + + + + + + + + + Toggle the menu bar + + + Exit fullscreen mode + + + Quit Snes9x + + + + + + + + + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 1+ + + + 2+ + + + 3+ + + + 4+ + + + 5+ + + + + + + + + + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 1+ + + + 2+ + + + 3+ + + + 4+ + + + 5+ + + + + + + + + + + + Game Genie + + + Pro Action Replay + + + Goldfinger + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 5 + Advance to Frame + center-on-parent + dialog + True + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 2 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 5 + 10 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + The current frame in the movie is + True + + + 0 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 10 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Fast-forward to frame + + + 0 + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + 1 + + + + + 1 + + + + + False + 1 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + end + + + gtk-cancel + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + False + False + 0 + + + + + gtk-ok + True + True + True + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + + + False + False + 1 + + + + + False + end + 0 + + + + + + button3 + button2 + GDK_KEY_PRESS_MASK @@ -1713,25 +2537,24 @@ 0 + + + Bilinear-filter output + True + True + False + True + True + + + 1 + + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 5 - - - Bilinear-filter output - True - True - False - Smoothens (blurs) the image - True - True - - - 0 - - Sync to vertical blank @@ -1745,7 +2568,7 @@ False False - 1 + 0 @@ -1759,7 +2582,7 @@ True - 2 + 1 @@ -1772,7 +2595,7 @@ True - 3 + 2 @@ -1786,7 +2609,7 @@ True - 4 + 3 @@ -1832,7 +2655,7 @@ - 5 + 4 @@ -1880,12 +2703,12 @@ - 6 + 5 - 1 + 2 @@ -1906,7 +2729,7 @@ - 2 + 3 @@ -5862,1602 +6685,778 @@ button8 - - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 5 - Advance to Frame - center-on-parent - dialog - True - - + + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK + Snes9x + + + + + + + + True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 2 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 5 - 10 - + True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - The current frame in the movie is - True - - - 0 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 10 - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Fast-forward to frame - - - 0 - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - 1 - - - - - 1 - - - - - False - 1 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - end - - - gtk-cancel - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - False - False - 0 - - - - - gtk-ok - True - True - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - button3 - button2 - - - - - - - - - - Game Genie - - - Pro Action Replay - - - Goldfinger - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - 1+ - - - 2+ - - - 3+ - - - 4+ - - - 5+ - - - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - 1+ - - - 2+ - - - 3+ - - - 4+ - - - 5+ - - - - - - - - - - - Toggle the menu bar - - - Exit fullscreen mode - - - Quit Snes9x - - - - - - - - - - - Automatic - - - 0 - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - 6 - - - 7 - - - 8 - - - 9 - - - - - - - - - - - 48000 hz - - - 44100 hz - - - 32000 hz (SNES Default) - - - 22050 hz - - - 16000 hz - - - 11025 hz - - - 8000 hz - - - 0 hz - - - - - - - - - - - - - - - - - 16-bit (GL_BGRA) - - - 24-bit (GL_RGB) - - - 32-bit (GL_BGRA) - - - - - - - - - - - - - - - - - 12.5% - - - 25% - - - 50% - - - 100% - - - - - - - - - - - 0% - - - 12.5% - - - 25% - - - 50% - - - 100% - - - - - - - - - - - None - - - SuperEagle - - - 2xSaI - - - Super2xSaI - - - EPX - - - EPX Smooth - - - Blargg's NTSC - - - Scanlines - - - Simple2x - - - Simple3x - - - Simple4x - - - - - - - - - - - 8:7 Square pixels - - - 4:3 SNES correct aspect - - - - - - - - - - - 512 - 350 - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 5 - Snes9x Cheats - center-on-parent - dialog - True - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 2 - - - True - 5 - - - True - 0 - in - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - - - - - - 0 - - - - - True - 5 - 5 - - - True - 0 - Code: - - - False - 0 - - - - - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - False - 1 - - - - - True - 0 - Description: - - - False - 2 - - - - - True - True - 21 - True - - - False - 3 - - - - - gtk-add - True - True - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - - False - False - 4 - - - - - gtk-remove - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - - False - False - 5 - - - - - False - False - 1 - - - - - 1 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - end - - - gtk-close - True - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True - - - False - False - 0 - - - - - False - end - 0 - - - - - - button7 - - - - 5 - Snes9x NetPlay - center-on-parent - dialog - - - True - 2 - - - True - 5 - 5 - - - True - 0 - none - - - True - 12 + _File + True + + - + + _Open ROM Image... True - 5 - 5 - - - True - True - The game chosen will be loaded before connecting. This field can be blank if the server will send the ROM image - False - - - 0 - - - - - Browse... - True - True - True - - - - False - 1 - - - - - True - True - True - + True + image2 + False + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Open Recent + True + + + + + True + + + + + Open with _NetPlay... + True + Open a ROM to use with NetPlay + True + image3 + False + + + + + + True + Open _MultiCart... + True + + + + + + True + + + + + True + _Load State + True + + + - + True - Clear entry - gtk-clear - 1 + Slot _0 + True + + + + + + True + Slot _1 + True + + + + + + True + Slot _2 + True + + + + + + True + Slot _3 + True + + + + + + True + Slot _4 + True + + + + + + True + Slot _5 + True + + + + + + True + Slot _6 + True + + + + + + True + Slot _7 + True + + + + + + True + Slot _8 + True + + + + + + True + + + + + True + From _File... + True + - - False - 2 - - - - - - True - <b>ROM Image</b> - True - - - - - False - 0 - - - - - True - 0 - none - - - True - 5 - 12 - + True - - - Connect to another computer - True - True - False - Connect to another computer that is running Snes9x NetPlay as a server - True - True - - - 0 - - - - - True - 5 - 5 + _Save State + True + + + - + True - Name or IP address: + Slot _0 + True + - - False - 0 - - + True - True - Domain name or internet protocol address of a remote computer + Slot _1 + True + - - 1 - - + True - Port: + Slot _2 + True + - - False - 2 - - + True - True - Connect to specified TCP port on remote computer - adjustment3 - True - True + Slot _3 + True + + + + + + True + Slot _4 + True + + + + + + True + Slot _5 + True + + + + + + True + Slot _6 + True + + + + + + True + Slot _7 + True + + + + + + True + Slot _8 + True + + + + + + True + + + + + True + To _File... + True + - - False - 3 - - - 1 - - - - - Act as a server - True - True - False - Host a game on this computer as Player 1, requiring extra throughput to support multitple users - True - True - connect_radio - - - - 2 - - - - - - True - <b>Server</b> - True - - - - - False - 1 - - - - - True - 0 - none - - - True - 12 - + True - 5 - 5 - - - Sync using reset - True - True - False - Reset the game when players join instead of transferring potentially unreliable freeze states - True - - - False - 0 - - - - - Send ROM image to clients - True - True - False - Send the running game image to players instead of requiring them to have their own copies - True - - - False - 1 - - - - - True - 5 - - - True - Default port: - - - False - 0 - - - - - True - True - TCP port used as a connection point for remote clients - adjustment2 - True - True - - - False - 1 - - - - - False - 2 - - - - - True - 5 - - - True - Ask server to pause when - - - False - 0 - - - - - True - True - adjustment1 - True - True - - - False - 1 - - - - - True - frames behind - - - False - 2 - - - - - False - 3 - - - - - - - True - <b>Settings</b> - True - - - - - 2 - - - - - 1 - - - - - True - end - - - gtk-cancel - True - True - True - True - - - False - False - 0 - - - - - gtk-connect - True - True - True - True - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - button9 - button10 - - - - 5 - Open Multiple ROM Images (MultiCart) - center-on-parent - 320 - dialog - - - True - - - True - 5 - - - True - 12 - - - True - Slot A: - - - False - 0 - - - - - True - Select an Image for Slot A - - - 1 - - - - - False - 0 - - - - - True - 12 - - - True - Slot B: - - - False - 0 - - - - - True - Select an Image for Slot B - - - 1 - - - - - False - 1 - - - - - 1 - - - - - True - end - - - gtk-cancel - True - True - True - True - - - False - False - 0 - - - - - gtk-ok - True - True - True - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - button14 - button13 - - - - True - gtk-open - 1 - - - True - gtk-network - 1 - - - True - gtk-save - 1 - - - True - gtk-dialog-info - 1 - - - True - gtk-quit - 1 - - - True - gtk-go-forward - 1 - - - True - gtk-media-pause - 1 - - - True - gtk-open - 1 - - - True - gtk-media-record - 1 - - - True - gtk-media-stop - 1 - - - True - gtk-media-next - 1 - - - True - gtk-revert-to-saved - 1 - - - True - gtk-redo - 1 - - - True - gtk-refresh - 1 - - - True - gtk-leave-fullscreen - 1 - - - True - gtk-zoom-in - 1 - - - True - gtk-fullscreen - 1 - - - True - gtk-preferences - 1 - - - 1 - 60 - 1 - 1 - 1 - - - 1 - 9999 - 6096 - 1 - 1 - - - 1 - 9999 - 6096 - 1 - 1 - - - 1 - 100 - 50 - 1 - 10 - - - 31500 - 32500 - 31990 - 1 - 10 - - - 2 - 256 - 2 - 1 - 1 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 1.0408340855860843e-17 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - -1 - 1 - 0.01 - 0.10000000000000001 - - - 2 - 8 - 2 - 1 - 1 - - - Snes9x - Portable Super Nintendo Entertainment System (TM) emulator. - - (c) Copyright 1996 - 2002 Gary Henderson (gary.henderson@ntlworld.com), - Jerremy Koot (jkoot@snes9x.com) - - (c) Copyright 2002 - 2004 Matthew Kendora - - (c) Copyright 2002 - 2005 Peter Bortas (peter@bortas.org) - - (c) Copyright 2004 - 2005 Joel Yliluoma (http://iki.fi/bisqwit/) - - (c) Copyright 2001 - 2006 John Weidman (jweidman@slip.net) - - (c) Copyright 2002 - 2006 funkyass (funkyass@spam.shaw.ca), - Kris Bleakley (codeviolation@hotmail.com) - - (c) Copyright 2002 - 2010 Brad Jorsch (anomie@users.sourceforge.net), - Nach (n-a-c-h@users.sourceforge.net), - zones (kasumitokoduck@yahoo.com) - - (c) Copyright 2006 - 2007 nitsuja - - (c) Copyright 2009 - 2010 BearOso, - OV2 - - - BS-X C emulator code - (c) Copyright 2005 - 2006 Dreamer Nom, - zones - - C4 x86 assembler and some C emulation code - (c) Copyright 2000 - 2003 _Demo_ (_demo_@zsnes.com), - Nach, - zsKnight (zsknight@zsnes.com) - - C4 C++ code - (c) Copyright 2003 - 2006 Brad Jorsch, - Nach - - DSP-1 emulator code - (c) Copyright 1998 - 2006 _Demo_, - Andreas Naive (andreasnaive@gmail.com), - Gary Henderson, - Ivar (ivar@snes9x.com), - John Weidman, - Kris Bleakley, - Matthew Kendora, - Nach, - neviksti (neviksti@hotmail.com) - - DSP-2 emulator code - (c) Copyright 2003 John Weidman, - Kris Bleakley, - Lord Nightmare (lord_nightmare@users.sourceforge.net), - Matthew Kendora, - neviksti - - DSP-3 emulator code - (c) Copyright 2003 - 2006 John Weidman, - Kris Bleakley, - Lancer, - z80 gaiden - - DSP-4 emulator code - (c) Copyright 2004 - 2006 Dreamer Nom, - John Weidman, - Kris Bleakley, - Nach, - z80 gaiden - - OBC1 emulator code - (c) Copyright 2001 - 2004 zsKnight, - pagefault (pagefault@zsnes.com), - Kris Bleakley - Ported from x86 assembler to C by sanmaiwashi - - SPC7110 and RTC C++ emulator code used in 1.39-1.51 - (c) Copyright 2002 Matthew Kendora with research by - zsKnight, - John Weidman, - Dark Force - - SPC7110 and RTC C++ emulator code used in 1.52+ - (c) Copyright 2009 byuu, - neviksti - - S-DD1 C emulator code - (c) Copyright 2003 Brad Jorsch with research by - Andreas Naive, - John Weidman - - S-RTC C emulator code - (c) Copyright 2001 - 2006 byuu, - John Weidman - - ST010 C++ emulator code - (c) Copyright 2003 Feather, - John Weidman, - Kris Bleakley, - Matthew Kendora - - Super FX x86 assembler emulator code - (c) Copyright 1998 - 2003 _Demo_, - pagefault, - zsKnight - - Super FX C emulator code - (c) Copyright 1997 - 1999 Ivar, - Gary Henderson, - John Weidman - - Sound emulator code used in 1.5-1.51 - (c) Copyright 1998 - 2003 Brad Martin - (c) Copyright 1998 - 2006 Charles Bilyue' - - Sound emulator code used in 1.52+ - (c) Copyright 2004 - 2007 Shay Green (gblargg@gmail.com) - - SH assembler code partly based on x86 assembler code - (c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se) - - 2xSaI filter - (c) Copyright 1999 - 2001 Derek Liauw Kie Fa - - HQ2x, HQ3x, HQ4x filters - (c) Copyright 2003 Maxim Stepin (maxim@hiend3d.com) - - NTSC filter - (c) Copyright 2006 - 2007 Shay Green - - GTK+ GUI code - (c) Copyright 2004 - 2010 BearOso - - Win32 GUI code - (c) Copyright 2003 - 2006 blip, - funkyass, - Matthew Kendora, - Nach, - nitsuja - (c) Copyright 2009 - 2010 OV2 - - Mac OS GUI code - (c) Copyright 1998 - 2001 John Stiles - (c) Copyright 2001 - 2010 zones - - - Specific ports contains the works of other authors. See headers in - individual files. - - - Snes9x homepage: http://www.snes9x.com/ - - Permission to use, copy, modify and/or distribute Snes9x in both binary - and source form, for non-commercial purposes, is hereby granted without - fee, providing that this license information and copyright notice appear - with all copies and any derived work. - - This software is provided 'as-is', without any express or implied - warranty. In no event shall the authors be held liable for any damages - arising from the use of this software or it's derivatives. - - Snes9x is freeware for PERSONAL USE only. Commercial users should - seek permission of the copyright holders first. Commercial use includes, - but is not limited to, charging money for Snes9x or software derived from - Snes9x, including Snes9x or derivatives in commercial game bundles, and/or - using Snes9x as a promotion for your commercial product. - - The copyright holders request that bug fixes and improvements to the code - should be forwarded to them so everyone can benefit from the modifications - in future versions. - - Super NES and Super Nintendo Entertainment System are trademarks of - Nintendo Co., Limited and its subsidiary companies. - - - 560 - 448 - About Snes9x - normal - True - - - True - 2 - - - True - 5 - - - True - 5 - - - True - gtk-missing-image - - - - - False - 0 - - - - - True - 0 - 10 - 10 - label106 - True - center - True - - - False - 1 - - - - - True - queue - - - True - True - automatic - + + Save SPC... True - True - False - False - textbuffer1 + True + image4 + False + + + + + + True + + + + + Show ROM _Info... + True + True + image5 + False + + + + + + True + + + + + _Quit + True + True + image18 + False + - - 2 - - - - 0 - - - - - True - end - - gtk-close + True - True - True - False - True + _Emulation + True + + + + + Run / _Continue + True + True + image6 + False + + + + + + _Pause + True + True + image7 + False + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + Load _Movie... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + image8 + False + + + + + + R_ecord Movie... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + image19 + False + + + + + + _Stop Recording + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + image9 + False + + + + + + _Jump to Frame... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + image10 + False + + + + + + True + + + + + Sy_nc Clients + True + True + image11 + False + + + + + + True + + + + + Reset + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + image12 + False + + + + + + Soft _Reset + True + True + image13 + False + + + + + + + + + + True + _View + True + + + + + + _Hide Menu + True + True + image14 + False + + + + + + True + _Status Bar + True + + + + + + True + + + + + _Change Size + True + True + image17 + False + + + True + + + True + False + Exact Pixels + True + + + + + True + _1x + True + + + + + + True + _2x + True + + + + + + True + _3x + True + + + + + + True + _4x + True + + + + + + True + _5x + True + + + + + + True + + + + + True + False + Correct Aspect + True + + + + + True + 1x + True + + + + + + True + 2x + True + + + + + + True + 3x + True + + + + + + True + 4x + True + + + + + + True + 5x + True + + + + + + + + + + True + + + + + _Fullscreen + True + True + image15 + False + + + + + + + + + + True + _Options + True + + + + + True + Controller Ports + True + + + + + True + SNES Port 1 + True + + + + + + True + Joypad + True + + + + + + True + Mouse + True + joypad1 + + + + + + True + Superscope + True + True + joypad1 + + + + + + + + + + True + SNES Port 2 + True + + + + + + True + Joypad + True + + + + + + True + Mouse + True + joypad2 + + + + + + True + Multitap + True + joypad2 + + + + + + True + Superscope + True + True + joypad2 + + + + + + + + + + + + + + True + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + _Cheats... + True + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + _Preferences... + True + True + image16 + False + + + + + - - False - False - 0 - False - end + 0 + + + + + 256 + 224 + True + True + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK + + + + + + + 1 + + + True + + + False + 2 + + - - button15 -