From 533d2683c50ac0c8085b77948d3c38d99f3e65ae Mon Sep 17 00:00:00 2001 From: Twinaphex Date: Thu, 12 Apr 2012 22:53:05 +0200 Subject: [PATCH] (PS3/360) Uses block_extract from libretro API now --- 360/menu.cpp | 5 +- general.h | 1 - ps3/menu.c | 5 +- ssnes.cfg | 347 +-------------------------------------------------- 4 files changed, 11 insertions(+), 347 deletions(-) diff --git a/360/menu.cpp b/360/menu.cpp index 77526b289a..1fe80283e6 100644 --- a/360/menu.cpp +++ b/360/menu.cpp @@ -321,9 +321,12 @@ HRESULT CSSNESFileBrowser::OnNotifyPress( HXUIOBJ hObjPressed, BOOL& bHandled ) int index = m_romlist.GetCurSel(); if(browser.cur[index].d_type != FILE_ATTRIBUTE_DIRECTORY) { + struct retro_system_info info; + retro_get_system_info(&info); + bool block_zip_extract = info.block_extract; memset(strbuffer, 0, sizeof(strbuffer)); wcstombs(strbuffer, (const wchar_t *)m_romlist.GetText(index), sizeof(strbuffer)); - if((strstr(strbuffer, ".zip") || strstr(strbuffer, ".ZIP")) && !g_console.block_zip_extract) + if((strstr(strbuffer, ".zip") || strstr(strbuffer, ".ZIP")) && !block_zip_extract) { char path_tmp[1024]; sprintf(path_tmp, "%s\\%s", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(browser), strbuffer); diff --git a/general.h b/general.h index 105bdfc8f8..d79e3ee6e0 100644 --- a/general.h +++ b/general.h @@ -186,7 +186,6 @@ struct console_settings bool custom_bgm_enable; #endif bool block_config_read; - bool block_zip_extract; bool default_sram_dir_enable; bool default_savestate_dir_enable; bool frame_advance_enable; diff --git a/ps3/menu.c b/ps3/menu.c index fa6bc9d1c3..36f3926c33 100644 --- a/ps3/menu.c +++ b/ps3/menu.c @@ -1983,10 +1983,13 @@ static void select_rom(void) else if (FILEBROWSER_IS_CURRENT_A_FILE(browser)) { char rom_path_temp[MAX_PATH_LENGTH]; + struct retro_system_info info; + retro_get_system_info(&info); + bool block_zip_extract = info.block_extract; snprintf(rom_path_temp, sizeof(rom_path_temp), "%s/%s", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(browser), FILEBROWSER_GET_CURRENT_FILENAME(browser)); - if((strstr(rom_path_temp, ".zip") || strstr(rom_path_temp, ".ZIP")) && !g_console.block_zip_extract) + if((strstr(rom_path_temp, ".zip") || strstr(rom_path_temp, ".ZIP")) && !block_zip_extract) ssnes_extract_zipfile(rom_path_temp); else { diff --git a/ssnes.cfg b/ssnes.cfg index 472432ce83..8bbf9be68f 100644 --- a/ssnes.cfg +++ b/ssnes.cfg @@ -1,344 +1,3 @@ -## Skeleton config file for SSNES - -# Save all save files (*.srm) to this directory. This includes related files like .bsv, .rtc, .psrm, etc ... -# This will be overridden by explicit command line options. -# savefile_directory = - -# Save all save states (*.state) to this directory. -# This will be overridden by explicit command line options. -# savestate_directory = - -# If enabled, load libretro from a dynamic location. -# libretro_path = "/path/to/libretro.so" - -# Environment variables internally in SSNES. -# Implementations can tap into this user-specificed information to enable functionality -# that is deemed too obscure to expose directly. -# Some variables might be "standardized" at a later time if needed. -# The string is formatted as key value pairs delimited by a semicolon ';'. -# Any white space between the delimiter ';' and the '=' is significant. -# I.e.: "key1=value1;key2=value2;..." -# environment_variables = - -#### Video - -# Video driver to use. "gl", "xvideo", "sdl" or "ext" (external API driver) -# video_driver = "gl" - -# Path to external video driver using the SSNES driver API. -# video_external_driver = - -# Windowed xscale and yscale -# (Real x res: base_size * xscale * aspect_ratio, real y res: base_size * yscale) -# video_xscale = 3.0 -# video_yscale = 3.0 - -# Fullscreen resolution. Resolution of 0 uses the resolution of the desktop. -# video_fullscreen_x = 0 -# video_fullscreen_y = 0 - -# Start in fullscreen. Can be changed at runtime. -# video_fullscreen = false - -# Force 16-bit colors. Apparently some video cards in use today have troubles with 32-bit ... -# video_force_16bit = false - -# Forcibly disable composition. Only works in Windows Vista/7 for now. -# video_disable_composition = false - -# Video vsync. -# video_vsync = true - -# Smoothens picture with bilinear filtering. Should be disabled if using pixel shaders. -# video_smooth = true - -# Forces rendering area to stay equal to SNES aspect ratio 4:3 or as defined in video_aspect_ratio. -# video_force_aspect = true - -# A floating point value for video aspect ratio (width / height) -# video_aspect_ratio = 1.333 - -# Forces cropping of overscanned frames. Crops away top 7 scanlines and 8 bottom scanlines. (15/15 for interlaced frames). -# video_crop_overscan = false - -# Path to Cg shader. -# video_cg_shader = "/path/to/cg/shader.cg" - -# Path to bSNES XML shader (GLSL only). If both Cg shader path and XML shader path are defined, -# Cg shader will take priority unless overridden in video_shader_type. -# video_bsnes_shader = "/path/to/bsnes/xml/shader.shader" - -# Which shader type to use. Valid values are "cg", "bsnes", "none" and "auto" -# video_shader_type = auto - -# Defines a directory where XML shaders are kept. -# video_shader_dir = - -# Render to texture first. Useful when doing multi-pass shaders or control the output of shaders better. -# video_render_to_texture = false - -# Defines the video scale of render-to-texture. -# The output FBO size is scaled by these amounts against the input size (typically 256 * 224 for SNES). -# video_fbo_scale_x = 2.0 -# video_fbo_scale_y = 2.0 - -# Define shader to use for second pass (needs render-to-texture). -# video_second_pass_shader = "/path/to/second/shader.{cg,shader}" - -# Defines if bilinear filtering is used during second pass (needs render-to-texture). -# video_second_pass_smooth = true - -# CPU-based filter. Path to a bSNES CPU filter (*.filter) -# video_filter = - -# Path to a TTF font used for rendering messages. This path must be defined to enable fonts. -# Do note that the _full_ path of the font is necessary! -# video_font_path = - -# Size of the TTF font rendered. -# video_font_size = 48 - -# Attempt to scale the font to fit better for multiple window sizes. -# video_font_scale = true - -# Enable usage of OSD messages. -# video_font_enable = true - -# Offset for where messages will be placed on screen. Values are in range 0.0 to 1.0 for both x and y values. -# [0.0, 0.0] maps to the lower left corner of the screen. -# video_message_pos_x = 0.05 -# video_message_pos_y = 0.05 - -# Color for message. The value is treated as a hexadecimal value. -# It is a regular RGB hex number, i.e. red is "ff0000". -# video_message_color = ffffff - -# Video refresh rate of your monitor. -# Used to calculate a suitable audio input rate. -# video_refresh_rate = 59.95 - -# Allows libsnes cores to set rotation modes. -# Setting this to false will honor, but ignore this request. -# This is useful for vertically oriented games where one manually rotates the monitor. -# video_allow_rotate = true - -#### Audio - -# Enable audio. -# audio_enable = true - -# Audio output samplerate. -# audio_out_rate = 48000 - -# When altering audio_in_rate on-the-fly, define by how much each time. -# audio_rate_step = 0.25 - -# Audio driver backend. Depending on configuration possible candidates are: alsa, pulse, oss, jack, rsound, roar, openal, sdl, xaudio and ext (external driver). -# audio_driver = - -# Path to external audio driver using the SSNES audio driver API. -# audio_external_driver = - -# Override the default audio device the audio_driver uses. This is driver dependant. E.g. ALSA wants a PCM device, OSS wants a path (e.g. /dev/dsp), Jack wants portnames (e.g. system:playback1,system:playback_2), and so on ... -# audio_device = - -# External DSP plugin that processes audio before it's sent to the driver. -# audio_dsp_plugin = - -# Will sync (block) on audio. Recommended. -# audio_sync = true - -# Desired audio latency in milliseconds. Might not be honored if driver can't provide given latency. -# audio_latency = 64 - -# Enable experimental audio rate control. -# audio_rate_control = false - -# Controls audio rate control delta. Defines how much input rate can be adjusted dynamically. -# Input rate = in_rate * (1.0 +/- audio_rate_control_delta) -# audio_rate_control_delta = 0.005 - -#### Input - -# Input driver. Depending on video driver, it might force a different input driver. -# input_driver = sdl - -# Defines axis threshold. Possible values are [0.0, 1.0] -# input_axis_threshold = 0.5 - -# Keyboard input. Will recognize normal keypresses and special keys like "left", "right", and so on. -# Keyboard input, Joypad and Joyaxis will all obey the "nul" bind, which disables the bind completely, -# rather than relying on a default. -# input_player1_a = x -# input_player1_b = z -# input_player1_y = a -# input_player1_x = s -# input_player1_start = enter -# input_player1_select = rshift -# input_player1_l = q -# input_player1_r = w -# input_player1_left = left -# input_player1_right = right -# input_player1_up = up -# input_player1_down = down - -# If desired, it is possible to override which joypads are being used for player 1 through 5. First joypad available is 0. -# input_player1_joypad_index = 0 -# input_player2_joypad_index = 1 -# input_player3_joypad_index = 2 -# input_player4_joypad_index = 3 -# input_player5_joypad_index = 4 -# Player 6-8 is not directly expected by libsnes API, but we'll futureproof it. -# input_player6_joypad_index = 5 -# input_player7_joypad_index = 6 -# input_player8_joypad_index = 7 - -# Joypad buttons. -# Figure these out by using SSNES-Phoenix or ssnes-joyconfig. -# You can use joypad hats with hnxx, where n is the hat, and xx is a string representing direction. -# E.g. "h0up" -# input_player1_a_btn = -# input_player1_b_btn = -# input_player1_y_btn = -# input_player1_x_btn = -# input_player1_start_btn = -# input_player1_select_btn = -# input_player1_l_btn = -# input_player1_r_btn = -# input_player1_left_btn = -# input_player1_right_btn = -# input_player1_up_btn = -# input_player1_down_btn = - -# Axis for SNES DPAD. -# Needs to be either '+' or '-' in the first character signaling either positive or negative direction of the axis, then the axis number. -# Do note that every other input option has the corresponding _btn and _axis binds as well; they are omitted here for clarity. -# input_player1_left_axis = -# input_player1_right_axis = -# input_player1_up_axis = -# input_player1_down_axis = - -# This goes all the way to player 8 (*_player2_*, *_player3_*, etc), but omitted for clarity. - -# Toggles fullscreen. -# input_toggle_fullscreen = f - -# Saves state. -# input_save_state = f2 -# Loads state. -# input_load_state = f4 - -# State slots. With slot set to 0, save state name is *.state (or whatever defined on commandline). -# When slot is != 0, path will be $path%d, where %d is slot number. -# input_state_slot_increase = f7 -# input_state_slot_decrease = f6 - -# Toggles between fast-forwarding and normal speed. -# input_toggle_fast_forward = space - -# Hold for fast-forward. Releasing button disables fast-forward. -# input_hold_fast_forward = l - -# Key to exit emulator cleanly. -# Killing it in any hard way (SIGTERM, SIGKILL, etc, will terminate emulator without saving RAM, etc.) -# input_exit_emulator = escape - -# Decrease/increase input sample rate on the fly. Amount to decrease/increase is defined by audio_rate_step. -# input_rate_step_up = kp_plus -# input_rate_step_down = kp_minus - -# Applies next and previous XML shader in directory. -# input_shader_next = m -# input_shader_prev = n - -# Hold button down to rewind. Rewinding must be enabled. -# input_rewind = r - -# Toggle between recording and not. -# input_movie_record_toggle = o - -# Toggle between paused and non-paused state -# input_pause_toggle = p - -# Frame advance when game is paused -# input_frame_advance = k - -# Reset the emulated SNES. -# input_reset = h - -# Configures DSP plugin -# input_dsp_config = c - -# Cheats. -# input_cheat_index_plus = y -# input_cheat_index_minus = t -# input_cheat_toggle = u - -# Mute/unmute audio -# input_audio_mute = f9 - -# Take screenshot -# input_screenshot = print_screen - -# Netplay flip players. -# input_netplay_flip_players = i - -# Hold for slowmotion. -# input_slowmotion = e - -#### Misc - -# Enable rewinding. This will take a performance hit when playing, so it is disabled by default. -# Do note that rewinding will only work properly when using bSNES libsnes core atm. -# rewind_enable = false - -# Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer. -# The buffer should be approx. 20MB per minute of buffer time. -# rewind_buffer_size = 20 - -# Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed. -# rewind_granularity = 1 - -# Pause gameplay when window focus is lost. -# pause_nonactive = true - -# Autosaves the non-volatile SRAM at a regular interval. This is disabled by default unless set otherwise. -# The interval is measured in seconds. A value of 0 disables autosave. -# autosave_interval = - -# When being client over netplay, use keybinds for player 1. -# netplay_client_swap_input = false - -# Path to XML cheat database (as used by bSNES). -# cheat_database_path = - -# Path to XML cheat config, a file which keeps track of which -# cheat settings are used for individual games. -# If the file does not exist, it will be created. -# cheat_settings_path = - -# Directory to dump screenshots to. -# screenshot_directory = - -# Records video assuming video is hi-res. -# video_hires_record = false - -# Enables lossless RGB H.264 recording if possible (if not, FFV1 is used). -# video_h264_record = true - -# Records video after CPU video filter. -# video_post_filter_record = false - -# Block SRAM from being overwritten when loading save states. -# Might potentially lead to buggy games. -# block_sram_overwrite = false - -# When saving a savestate, save state index is automatically increased before -# it is saved. -# Also, when loading a ROM, the index will be set to the highest existing index. -# There is no upper bound on the index. -# savestate_auto_index = false - -# Slowmotion ratio. When slowmotion, game will slow down by factor. -# slowmotion_ratio = 3.0 - +video_driver = "gl" +audio_driver = "alsa" +libretro_path = "/home/twinaphex/local-repos/nxengine-libsnes-exp/libretro.so"