From 8ae75f93911a98d53d85fa01305058b0a40b0c30 Mon Sep 17 00:00:00 2001 From: Brandon Wright Date: Sun, 28 Nov 2010 16:28:55 -0600 Subject: [PATCH] Fix GTK+ version compilation with latest removals. --- gtk/src/gtk_config.cpp | 5 +- gtk/src/gtk_preferences.cpp | 2 - gtk/src/snes9x.ui | 4632 +++++++++++++++++------------------ 3 files changed, 2309 insertions(+), 2330 deletions(-) diff --git a/gtk/src/gtk_config.cpp b/gtk/src/gtk_config.cpp index c26e2fe4..7c7a9118 100644 --- a/gtk/src/gtk_config.cpp +++ b/gtk/src/gtk_config.cpp @@ -200,9 +200,7 @@ Snes9xConfig::load_defaults (void) Settings.Stereo = TRUE; Settings.ReverseStereo = FALSE; Settings.SoundPlaybackRate = 32000; - Settings.DisableHDMA = 0; Settings.StopEmulation = TRUE; - Settings.DisableIRQ = FALSE; Settings.FrameTimeNTSC = 16667; Settings.FrameTimePAL = 20000; Settings.SupportHiRes = true; @@ -363,7 +361,6 @@ Snes9xConfig::save_config_file (void) xml_out_int (xml, "stereo", Settings.Stereo); xml_out_int (xml, "reverse_stereo", Settings.ReverseStereo); xml_out_int (xml, "playback_rate", gui_config->sound_playback_rate); - xml_out_int (xml, "hdma", !(Settings.DisableHDMA)); xml_out_int (xml, "block_invalid_vram_access", Settings.BlockInvalidVRAMAccessMaster); xml_out_int (xml, "upanddown", Settings.UpAndDown); @@ -621,7 +618,7 @@ Snes9xConfig::set_option (const char *name, const char *value) } else if (!strcasecmp (name, "hdma")) { - Settings.DisableHDMA = !(atoi (value)); + /* Deprecated */ } else if (!strcasecmp (name, "speedhacks")) { diff --git a/gtk/src/gtk_preferences.cpp b/gtk/src/gtk_preferences.cpp index ea297798..f5745938 100644 --- a/gtk/src/gtk_preferences.cpp +++ b/gtk/src/gtk_preferences.cpp @@ -662,7 +662,6 @@ Snes9xPreferences::move_settings_to_dialog (void) set_combo ("default_esc_behavior", config->default_esc_behavior); set_check ("prevent_screensaver", config->prevent_screensaver); set_check ("force_inverted_byte_order", config->force_inverted_byte_order); - set_check ("hdma_check", !(Settings.DisableHDMA)); set_check ("stereo_check", Settings.Stereo); set_combo ("playback_combo", 7 - config->sound_playback_rate); set_combo ("hw_accel", combo_value (config->hw_accel)); @@ -815,7 +814,6 @@ Snes9xPreferences::get_settings_from_dialog (void) config->multithreading = get_check ("multithreading"); config->pause_emulation_on_switch = get_check ("pause_emulation_on_switch"); Settings.SkipFrames = get_combo ("frameskip_combo"); - Settings.DisableHDMA = !(get_check ("hdma_check")); Settings.BlockInvalidVRAMAccessMaster = get_check ("block_invalid_vram_access"); Settings.UpAndDown = get_check ("upanddown"); config->sound_driver = get_combo ("sound_driver"); diff --git a/gtk/src/snes9x.ui b/gtk/src/snes9x.ui index 9aba15fa..8ad3b41e 100644 --- a/gtk/src/snes9x.ui +++ b/gtk/src/snes9x.ui @@ -2,1603 +2,779 @@ - - 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 - - - True - True - False - False - textbuffer1 - - - - - - - 2 - - - - - 0 - - - - - True - end - - - gtk-close - True - True - True - False - True - - - False - False - 0 - - - - - False - 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 - - + + 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 - - 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 - - - - 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 + _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 + + + + + + + + + + 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 - - - - 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 - + + 256 + 224 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 - - + True + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK + + + + + - 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 + 2 - - button3 - button2 - GDK_KEY_PRESS_MASK @@ -3143,22 +2319,6 @@ 0 - - - Enable HDMA - True - True - False - Enable HDMA. Required feature for compatibility with some games - True - True - - - False - False - 1 - - Block invalid VRAM access @@ -3168,7 +2328,7 @@ True - 2 + 1 @@ -3181,7 +2341,7 @@ True - 3 + 2 @@ -6685,778 +5845,1602 @@ button8 - - 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 - - - - - - - - + + 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 - _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 - - - - - + 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 - _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 - - - + 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 - - 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 + 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 - 2 + end + 0 + + button7 + + + + 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 + + + + 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 + + + True + True + False + False + textbuffer1 + + + + + + + 2 + + + + + 0 + + + + + True + end + + + gtk-close + True + True + True + False + True + + + False + False + 0 + + + + + False + end + 1 + + + + + + button15 +