diff --git a/CMakeLists.txt b/CMakeLists.txt
index fbb8ec18e5..bc777e2c6f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -43,45 +43,6 @@ endif()
# Variable to check that people use the good file
set(TOP_CMAKE_WAS_SOURCED TRUE)
-# Print a clear message that 64bits is not supported
-# It would avoid compilation failure later.
-# Note: disable the failure in package mode
-if(NOT PACKAGE_MODE)
- if(CMAKE_SIZEOF_VOID_P MATCHES "8")
- message(WARNING "
- PCSX2 does not support a 64-bits environment and has no plan to support a 64-bits architecture in the future.
- It would need a complete rewrite of the core emulator and a lot of time.
-
- You can still run a 32-bits binary if you install all 32-bits libraries (runtime and dev).")
- endif(CMAKE_SIZEOF_VOID_P MATCHES "8")
-endif(NOT PACKAGE_MODE)
-
-# 64 bits specific configuration
-if(CMAKE_SIZEOF_VOID_P MATCHES "8")
- # Do not search library in /usr/lib64
- SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS OFF)
- # Probably useless but it will not harm
- SET_PROPERTY(GLOBAL PROPERTY COMPILE_DEFINITIONS "-m32")
-
- # Force the search on 32-bits path.
- if(EXISTS "/usr/lib32")
- set(CMAKE_LIBRARY_ARCHITECTURE "../lib32")
- endif()
-endif(CMAKE_SIZEOF_VOID_P MATCHES "8")
-
-# Debian/ubuntu drop /usr/lib32 and move /usr/lib to /usr/lib/i386-linux-gnu
-if(EXISTS "/usr/lib/i386-linux-gnu")
- set(CMAKE_LIBRARY_ARCHITECTURE "i386-linux-gnu")
-endif()
-
-
-# * -fPIC option was removed for multiple reasons.
-# - Code only supports the x86 architecture.
-# - code uses the ebx register so it's not compliant with PIC.
-# - Impacts the performance too much.
-# - Only plugins. No package will link to them.
-set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
-
# set module path
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
@@ -103,19 +64,6 @@ include(SelectPcsx2Plugins)
# Must be done after SearchForStuff
write_svnrev_h()
-# add additional project-wide include directories
-include_directories(${CMAKE_SOURCE_DIR}/common/include
- ${CMAKE_SOURCE_DIR}/common/include/Utilities
- ${CMAKE_SOURCE_DIR}/common/include/x86emitter
- # File generated by Cmake
- ${CMAKE_BINARY_DIR}/common/include
- # WORKAROUND Some issue with multiarch on Debian/Ubuntu
- /usr/include/i386-linux-gnu
- # WORKAROUND Clang integration issue with multiarch on Debian
- #/usr/include/i386-linux-gnu/c++
- #/usr/include/i386-linux-gnu/c++/4.8
- )
-
# make the translation
if(EXISTS "${CMAKE_SOURCE_DIR}/locales")
add_subdirectory(locales)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000000..256f6cd25b
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,71 @@
+# Contribution requirement
+* be patient
+ Your contribution will gladly be reviewed but
+* discuss with us your future contribution before coding it
+ Let's avoid duplicate work! Besides specification could be clarified this way.
+
+
+# Window contribution possibility
+* check linux chapter ;) Various improvements are actually cross platform!
+
+# Linux contribution possibility
+
+You're welcome to the [linux contribution thread](http://forums.pcsx2.net/Thread-Areas-of-interest-for-new-linux-developers) to have full details. Here an handy list of feature that you could implement. Feel free to propse new enhancement.
+
+## House keeping and general compilation
+* clean gcc flags
+* clean gcc warning
+* support clang (template mess)
+* speed comparison clang/gcc
+* support avx (gsdx)
+* add missing/update copyright header
+* LTO support
+* PGO support
+
+## Core
+* support XZ compressed iso
+
+## GSdx
+* Fix OpenGL
+* implement DX features on OGL (Amsodean's fxaa/video recording ....)
+* Fix GLES3
+* add tooltip on gsdx gui
+* finish shader subroutine usage (+find a way to clean shader and avoid duplication)
+* finish buffer storage
+* OSD
+
+## CDVD
+* port CDVDgiga to linux ?
+
+## zzogl
+* reduce gl requirement to 3.3 + gl4 extension
+* use multibind
+* fix EGL
+* port GLSL to window
+* Drop old GLSL backend (and much later Nivida CG)
+* support wx3.0
+
+## Portability
+* port GSThread to std::thread
+* port core thread to std::thread
+* C11 aligned_alloc
+* C++11 alignof/alignas syntax
+* replace volatile/lock-free queue with real C++ atomic
+
+## Debian package
+* need a refresh to the latest standard
+* Clean debian/copyright => debmake -k
+
+
+## QA
+* [C++11 auto port](http://clang.llvm.org/extra/clang-modernize.html). Initial requirement: drop XP and support clang/llvm
+* [Clean header include](https://code.google.com/p/include-what-you-use/)
+* address sanitizer (gcc or clang)
+* valgrind (not sure it can run PCSX2, maybe limit the scope to plugin)
+* reformat the core/plugin to a constant style with tool like astyle
+
+# Very very long term feature
+Those features will require a lots of work! It would require months if not years. There are listed here for completeness ;)
+* PS2 ROM reimplementation (wrongly named HLE bios)
+* Android X86 port
+* Win/Linux ARM port
diff --git a/build.sh b/build.sh
index a821f26eef..77d6a3097a 100755
--- a/build.sh
+++ b/build.sh
@@ -15,7 +15,8 @@
# If not, see .
flags="-DCMAKE_BUILD_PO=FALSE"
-clean_build=false
+clean_build=0
+use_clang=0;
for f in $*
do
@@ -28,7 +29,8 @@ do
--gles ) flags="$flags -DGLES_API=TRUE" ;;
--sdl2 ) flags="$flags -DSDL2_API=TRUE" ;;
--extra ) flags="$flags -DEXTRA_PLUGINS=TRUE" ;;
- --clean ) clean_build=true ;;
+ --clang ) use_clang=1; flags="$flags -DUSE_CLANG=TRUE" ;;
+ --clean ) clean_build=1 ;;
*)
# unknown option
@@ -47,24 +49,19 @@ do
esac
done
-rm -f install_log.txt
-
-if [ "$flags" != "" ]; then
- echo "Building pcsx2 with $flags"
- echo "Building pcsx2 with $flags" > install_log.txt
-fi
-
-if [ "$clean_build" = true ]; then
- echo "Doing a clean build."
- rm -fr build
- # make clean 2>&1 | tee -a ../install_log.txt
-fi
+[ $clean_build -eq 1 ] && (echo "Doing a clean build."; rm -fr build )
+echo "Building pcsx2 with $flags\n" | tee install_log.txt
mkdir -p build
cd build
-cmake $flags .. 2>&1 | tee -a ../install_log.txt
+if [ $use_clang -eq 1 ]
+then
+ CC=clang CXX=clang++ cmake $flags .. 2>&1 | tee -a ../install_log.txt
+else
+ cmake $flags .. 2>&1 | tee -a ../install_log.txt
+fi
CORE=`grep -w -c processor /proc/cpuinfo`
make -j $CORE 2>&1 | tee -a ../install_log.txt
diff --git a/cmake/BuildParameters.cmake b/cmake/BuildParameters.cmake
index babff484c4..29859a1aed 100644
--- a/cmake/BuildParameters.cmake
+++ b/cmake/BuildParameters.cmake
@@ -1,16 +1,10 @@
-### TODO
+### TODO
# Hardcode GAMEINDEX_DIR, if default is fine for everybody
### Select the build type
# Use Release/Devel/Debug : -DCMAKE_BUILD_TYPE=Release|Devel|Debug
# Enable/disable the stripping : -DCMAKE_BUILD_STRIP=TRUE|FALSE
# generation .po based on src : -DCMAKE_BUILD_PO=TRUE|FALSE
-# Rebuild the ps2hw.dat file : -DREBUILD_SHADER=TRUE
-# Build the Replay Loaders : -DBUILD_REPLAY_LOADERS=TRUE|FALSE
-# Use GLSL API(else NVIDIA_CG): -DGLSL_API=TRUE|FALSE
-# Use EGL (vs GLX) : -DEGL_API=TRUE|FALSE
-# Use SDL2 : -DSDL2_API=TRUE|FALSE
-# Build all plugins : -DEXTRA_PLUGINS=TRUE|FALSE
### GCC optimization options
# control C flags : -DUSER_CMAKE_C_FLAGS="cflags"
@@ -18,13 +12,108 @@
# control link flags : -DUSER_CMAKE_LD_FLAGS="ldflags"
### Packaging options
-# Installation path : -DPACKAGE_MODE=TRUE(follow FHS)|FALSE(local bin/)
# Plugin installation path : -DPLUGIN_DIR="/usr/lib/pcsx2"
# GL Shader installation path : -DGLSL_SHADER_DIR="/usr/share/games/pcsx2"
# Game DB installation path : -DGAMEINDEX_DIR="/usr/share/games/pcsx2"
-# Follow XDG standard : -DXDG_STD=TRUE|FALSE
#-------------------------------------------------------------------------------
+#-------------------------------------------------------------------------------
+# Graphical option
+#-------------------------------------------------------------------------------
+option(GLSL_API "Replace zzogl CG backend by GLSL (experimental option)")
+option(EGL_API "Use EGL on zzogl (experimental/developer option)")
+option(GLES_API "Use GLES on GSdx (experimental/developer option)")
+option(REBUILD_SHADER "Rebuild glsl/cg shader (developer option)")
+option(BUILD_REPLAY_LOADERS "Build GS replayer to ease testing (developer option)")
+
+#-------------------------------------------------------------------------------
+# Path and lib option
+#-------------------------------------------------------------------------------
+option(PACKAGE_MODE "Use this option to ease packaging of PCSX2 (developer/distribution option)")
+option(XDG_STD "Use XDG standard path instead of the standard PCSX2 path")
+option(EXTRA_PLUGINS "Build various 'extra' plugins")
+# FIXME do a proper detection
+set(SDL2_LIBRARY "-lSDL2")
+option(SDL2_LIBRARY "Use SDL2 on spu2x and onepad")
+
+if(PACKAGE_MODE)
+ if(NOT DEFINED PLUGIN_DIR)
+ set(PLUGIN_DIR "${CMAKE_INSTALL_PREFIX}/lib/games/pcsx2")
+ endif(NOT DEFINED PLUGIN_DIR)
+
+ if(NOT DEFINED GAMEINDEX_DIR)
+ set(GAMEINDEX_DIR "${CMAKE_INSTALL_PREFIX}/share/games/pcsx2")
+ endif(NOT DEFINED GAMEINDEX_DIR)
+
+ # Compile all source codes with these 2 defines
+ add_definitions(-DPLUGIN_DIR_COMPILATION=${PLUGIN_DIR} -DGAMEINDEX_DIR_COMPILATION=${GAMEINDEX_DIR})
+endif(PACKAGE_MODE)
+
+#-------------------------------------------------------------------------------
+# Select the architecture
+#-------------------------------------------------------------------------------
+option(64BIT_BUILD "Enable a x86_64 build instead of cross compiling (developer option)" OFF)
+
+# Architecture bitness detection
+if(CMAKE_SIZEOF_VOID_P EQUAL 8)
+ set(_ARCH_64 1)
+else()
+ set(_ARCH_32 1)
+endif()
+
+# Print a clear message that 64bits is not supported
+if(_ARCH_64)
+ message(WARNING "
+ PCSX2 does not support a 64-bits environment and has no plan to support a 64-bits architecture in the future.
+ It would need a complete rewrite of the core emulator and a lot of time.
+
+ You can still run a 32-bits binary if you install all 32-bits libraries (runtime and dev).")
+endif()
+
+# 64 bits cross-compile specific configuration
+if(_ARCH_64 AND 64BIT_BUILD)
+ message("Compiling 64bit build on 64bit architecture")
+ # Search library in /usr/lib64
+ SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS ON)
+ # Probably useless but it will not harm
+ SET_PROPERTY(GLOBAL PROPERTY COMPILE_DEFINITIONS "-m64")
+
+ # Note: /usr/lib64 is already taken care above
+
+ # For Debian/ubuntu multiarch
+ if(EXISTS "/usr/lib/x86_64-linux-gnu")
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+ endif()
+
+ set(ARCH_FLAG "-m64 -msse -msse2 -march=pentium4")
+ add_definitions(-D_ARCH_64=1)
+else()
+ message("Compiling 32bit build on 32/64bit architecture")
+ # Do not search library in /usr/lib64
+ SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS OFF)
+ # Probably useless but it will not harm
+ SET_PROPERTY(GLOBAL PROPERTY COMPILE_DEFINITIONS "-m32")
+
+ # Force the search on 32-bits path.
+ if(EXISTS "/usr/lib32")
+ set(CMAKE_LIBRARY_ARCHITECTURE "../lib32")
+ endif()
+ # Debian/ubuntu drop /usr/lib32 and move /usr/lib to /usr/lib/i386-linux-gnu
+ if(EXISTS "/usr/lib/i386-linux-gnu")
+ set(CMAKE_LIBRARY_ARCHITECTURE "i386-linux-gnu")
+ endif()
+
+ set(ARCH_FLAG "-m32 -msse -msse2 -march=i686")
+ add_definitions(-D_ARCH_32=1)
+endif()
+
+# * -fPIC option was removed for multiple reasons.
+# - Code only supports the x86 architecture.
+# - code uses the ebx register so it's not compliant with PIC.
+# - Impacts the performance too much.
+# - Only plugins. No package will link to them.
+set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
+
#-------------------------------------------------------------------------------
# if no build type is set, use Devel as default
# Note without the CMAKE_BUILD_TYPE options the value is still defined to ""
@@ -35,21 +124,20 @@ if(NOT CMAKE_BUILD_TYPE MATCHES "Debug|Devel|Release")
message(STATUS "BuildType set to ${CMAKE_BUILD_TYPE} by default")
endif(NOT CMAKE_BUILD_TYPE MATCHES "Debug|Devel|Release")
-# Initially stip was disabled on release build but it is not stackstrace friendly!
+# Initially strip was disabled on release build but it is not stackstrace friendly!
# It only cost several MB so disbable it by default
-if(NOT DEFINED CMAKE_BUILD_STRIP)
- set(CMAKE_BUILD_STRIP FALSE)
-endif(NOT DEFINED CMAKE_BUILD_STRIP)
+option(CMAKE_BUILD_STRIP "Srip binaries to save a couple of MB (developer option)")
if(NOT DEFINED CMAKE_BUILD_PO)
if(CMAKE_BUILD_TYPE STREQUAL "Release")
set(CMAKE_BUILD_PO TRUE)
message(STATUS "Enable the building of po files by default in ${CMAKE_BUILD_TYPE} build !!!")
- else(CMAKE_BUILD_TYPE STREQUAL "Release")
+ else()
set(CMAKE_BUILD_PO FALSE)
message(STATUS "Disable the building of po files by default in ${CMAKE_BUILD_TYPE} build !!!")
- endif(CMAKE_BUILD_TYPE STREQUAL "Release")
-endif(NOT DEFINED CMAKE_BUILD_PO)
+ endif()
+endif()
+
#-------------------------------------------------------------------------------
# Control GCC flags
@@ -58,7 +146,7 @@ endif(NOT DEFINED CMAKE_BUILD_PO)
### Here the list of default value for documentation purpose
# ${CMAKE_SHARED_LIBRARY_CXX_FLAGS} = "-fPIC"
# ${CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS} = "-rdynamic"
-#
+#
# ${CMAKE_C_FLAGS} = "-g -O2"
# ${CMAKE_CXX_FLAGS} = "-g -O2"
# Use in debug mode
@@ -91,17 +179,17 @@ set(CMAKE_SHARED_LIBRARY_CXX_FLAGS "")
#-------------------------------------------------------------------------------
# Set some default compiler flags
#-------------------------------------------------------------------------------
-#set(DEFAULT_WARNINGS "-Wno-write-strings -Wno-format -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-parentheses")
# -Wno-attributes: "always_inline function might not be inlinable" <= real spam (thousand of warnings!!!)
# -Wstrict-aliasing: to fix one day aliasing issue
# -Wno-missing-field-initializers: standard allow to init only the begin of struct/array in static init. Just a silly warning.
# -Wno-unused-function: warn for function not used in release build
set(DEFAULT_WARNINGS "-Wno-attributes -Wstrict-aliasing -Wno-missing-field-initializers -Wno-unused-function")
set(HARDEING_OPT "-D_FORTIFY_SOURCE=2 -Wformat -Wformat-security")
-set(DEFAULT_GCC_FLAG "-m32 -msse -msse2 -march=i686 -pthread ${DEFAULT_WARNINGS} ${HARDEING_OPT}")
+set(DEFAULT_GCC_FLAG "${ARCH_FLAG} -pthread ${DEFAULT_WARNINGS} ${HARDEING_OPT}")
if(CMAKE_BUILD_TYPE MATCHES "Debug|Devel")
set(DEFAULT_GCC_FLAG "-g ${DEFAULT_GCC_FLAG}")
endif()
+# c++ only flags
set(DEFAULT_CPP_FLAG "${DEFAULT_GCC_FLAG} -Wno-invalid-offsetof")
#-------------------------------------------------------------------------------
@@ -109,18 +197,19 @@ set(DEFAULT_CPP_FLAG "${DEFAULT_GCC_FLAG} -Wno-invalid-offsetof")
# Note: string STRIP must be used to remove trailing and leading spaces.
# See policy CMP0004
#-------------------------------------------------------------------------------
+# TODO: once we completely clean all flags management, this mess could be cleaned ;)
### linker flags
if(DEFINED USER_CMAKE_LD_FLAGS)
message(STATUS "Pcsx2 is very sensible with gcc flags, so use USER_CMAKE_LD_FLAGS at your own risk !!!")
string(STRIP "${USER_CMAKE_LD_FLAGS}" USER_CMAKE_LD_FLAGS)
-else(DEFINED USER_CMAKE_LD_FLAGS)
+else()
set(USER_CMAKE_LD_FLAGS "")
-endif(DEFINED USER_CMAKE_LD_FLAGS)
+endif()
# ask the linker to strip the binary
-if(CMAKE_BUILD_STRIP)
+if(CMAKE_BUILD_STRIP)
string(STRIP "${USER_CMAKE_LD_FLAGS} -s" USER_CMAKE_LD_FLAGS)
-endif(CMAKE_BUILD_STRIP)
+endif()
### c flags
@@ -129,7 +218,7 @@ endif(CMAKE_BUILD_STRIP)
if(DEFINED USER_CMAKE_C_FLAGS)
message(STATUS "Pcsx2 is very sensible with gcc flags, so use USER_CMAKE_C_FLAGS at your own risk !!!")
string(STRIP "${USER_CMAKE_C_FLAGS}" CMAKE_C_FLAGS)
-endif(DEFINED USER_CMAKE_C_FLAGS)
+endif()
# Use some default machine flags
string(STRIP "${CMAKE_C_FLAGS} ${DEFAULT_GCC_FLAG}" CMAKE_C_FLAGS)
@@ -140,86 +229,6 @@ string(STRIP "${CMAKE_C_FLAGS} ${DEFAULT_GCC_FLAG}" CMAKE_C_FLAGS)
if(DEFINED USER_CMAKE_CXX_FLAGS)
message(STATUS "Pcsx2 is very sensible with gcc flags, so use USER_CMAKE_CXX_FLAGS at your own risk !!!")
string(STRIP "${USER_CMAKE_CXX_FLAGS}" CMAKE_CXX_FLAGS)
-endif(DEFINED USER_CMAKE_CXX_FLAGS)
+endif()
# Use some default machine flags
string(STRIP "${CMAKE_CXX_FLAGS} ${DEFAULT_CPP_FLAG}" CMAKE_CXX_FLAGS)
-
-#-------------------------------------------------------------------------------
-# Default package option
-#-------------------------------------------------------------------------------
-if(NOT DEFINED PACKAGE_MODE)
- set(PACKAGE_MODE FALSE)
-endif(NOT DEFINED PACKAGE_MODE)
-
-if(PACKAGE_MODE)
- if(NOT DEFINED PLUGIN_DIR)
- set(PLUGIN_DIR "${CMAKE_INSTALL_PREFIX}/lib/games/pcsx2")
- endif(NOT DEFINED PLUGIN_DIR)
-
- if(NOT DEFINED GAMEINDEX_DIR)
- set(GAMEINDEX_DIR "${CMAKE_INSTALL_PREFIX}/share/games/pcsx2")
- endif(NOT DEFINED GAMEINDEX_DIR)
-
- # Compile all source codes with these 3 defines
- add_definitions(-DPLUGIN_DIR_COMPILATION=${PLUGIN_DIR} -DGAMEINDEX_DIR_COMPILATION=${GAMEINDEX_DIR})
-endif(PACKAGE_MODE)
-
-#-------------------------------------------------------------------------------
-# Select nvidia cg shader api by default (zzogl only)
-#-------------------------------------------------------------------------------
-if(NOT DEFINED GLSL_API)
- set(GLSL_API FALSE)
-endif(NOT DEFINED GLSL_API)
-
-#-------------------------------------------------------------------------------
-# Select GLX API by default (zzogl only)
-#-------------------------------------------------------------------------------
-if(NOT DEFINED EGL_API)
- set(EGL_API FALSE)
-else()
- message(STATUS "EGL is experimental and not expected to work yet!!!")
-endif()
-
-#-------------------------------------------------------------------------------
-# Select opengl api by default (gsdx)
-#-------------------------------------------------------------------------------
-if(NOT DEFINED GLES_API)
- set(GLES_API FALSE)
-endif()
-
-#-------------------------------------------------------------------------------
-# Select SDL1 by default (spu2x and onepad)
-#-------------------------------------------------------------------------------
-# FIXME do a proper detection
-set(SDL2_LIBRARY "-lSDL2")
-if(NOT DEFINED SDL2_API)
- set(SDL2_API FALSE)
-endif()
-
-#-------------------------------------------------------------------------------
-# Use the precompiled shader file by default (both zzogl&gsdx)
-#-------------------------------------------------------------------------------
-if(NOT DEFINED REBUILD_SHADER)
- set(REBUILD_SHADER FALSE)
-endif(NOT DEFINED REBUILD_SHADER)
-
-#-------------------------------------------------------------------------------
-# Build the replay loaders by default
-#-------------------------------------------------------------------------------
-if(NOT DEFINED BUILD_REPLAY_LOADERS)
- set(BUILD_REPLAY_LOADERS TRUE)
-endif(NOT DEFINED BUILD_REPLAY_LOADERS)
-
-#-------------------------------------------------------------------------------
-# Use PCSX2 default path (not XDG)
-#-------------------------------------------------------------------------------
-if (NOT DEFINED XDG_STD)
- set(XDG_STD FALSE)
-endif (NOT DEFINED XDG_STD)
-
-#-------------------------------------------------------------------------------
-# Use only main plugin (faster compilation time)
-#-------------------------------------------------------------------------------
-if (NOT DEFINED EXTRA_PLUGINS)
- set(EXTRA_PLUGINS FALSE)
-endif()
diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
index b3cfc7580b..ae6c055511 100644
--- a/cmake/SearchForStuff.cmake
+++ b/cmake/SearchForStuff.cmake
@@ -143,7 +143,7 @@ if(wxWidgets_FOUND)
if(Linux)
# Force the use of 32 bit library configuration on
# 64 bits machine with 32 bits library in /usr/lib32
- if(CMAKE_SIZEOF_VOID_P MATCHES "8")
+ if(_ARCH_64 AND !64BIT_BUILD)
## There is no guarantee that wx-config is a link to a 32 bits library. So you need to force the destinity
# Library can go into 3 path major paths (+ multiarch but you will see that later when implementation is done)
# 1/ /usr/lib32 (32 bits only)
@@ -181,3 +181,18 @@ endif()
if(ZLIB_FOUND)
include_directories(${ZLIB_INCLUDE_DIRS})
endif()
+
+#----------------------------------------
+# Use project-wide include directories
+#----------------------------------------
+include_directories(${CMAKE_SOURCE_DIR}/common/include
+ ${CMAKE_SOURCE_DIR}/common/include/Utilities
+ ${CMAKE_SOURCE_DIR}/common/include/x86emitter
+ # File generated by Cmake
+ ${CMAKE_BINARY_DIR}/common/include
+ # WORKAROUND Some issue with multiarch on Debian/Ubuntu
+ /usr/include/i386-linux-gnu
+ # WORKAROUND Clang integration issue with multiarch on Debian
+ #/usr/include/i386-linux-gnu/c++
+ #/usr/include/i386-linux-gnu/c++/4.8
+ )
diff --git a/common/include/Utilities/Console.h b/common/include/Utilities/Console.h
index 12a737c558..3a29fe3445 100644
--- a/common/include/Utilities/Console.h
+++ b/common/include/Utilities/Console.h
@@ -129,32 +129,32 @@ struct IConsoleWriter
//
struct NullConsoleWriter
{
- void WriteRaw( const wxString& fmt ) {}
- void DoWriteLn( const wxString& fmt ) {}
- void DoSetColor( ConsoleColors color ) {}
- void DoWriteFromStdout( const wxString& fmt ) {}
+ void WriteRaw( const wxString& ) {}
+ void DoWriteLn( const wxString& ) {}
+ void DoSetColor( ConsoleColors ) {}
+ void DoWriteFromStdout( const wxString& ) {}
void Newline() {}
- void SetTitle( const wxString& title ) {}
+ void SetTitle( const wxString& ) {}
ConsoleColors GetColor() const { return Color_Current; }
- const NullConsoleWriter& SetColor( ConsoleColors color ) const { return *this; }
+ const NullConsoleWriter& SetColor( ConsoleColors ) const { return *this; }
const NullConsoleWriter& ClearColor() const { return *this; }
- const NullConsoleWriter& SetIndent( int tabcount=1 ) const { return *this; }
+ const NullConsoleWriter& SetIndent( int =1 ) const { return *this; }
- NullConsoleWriter Indent( int tabcount=1 ) const { return NullConsoleWriter(); }
+ NullConsoleWriter Indent( int =1 ) const { return NullConsoleWriter(); }
- bool FormatV( const char* fmt, va_list args ) const { return false; }
- bool WriteLn( ConsoleColors color, const char* fmt, ... ) const { return false; }
- bool WriteLn( const char* fmt, ... ) const { return false; }
- bool Error( const char* fmt, ... ) const { return false; }
- bool Warning( const char* fmt, ... ) const { return false; }
+ bool FormatV( const char* , va_list ) const { return false; }
+ bool WriteLn( ConsoleColors , const char* , ... ) const { return false; }
+ bool WriteLn( const char* , ... ) const { return false; }
+ bool Error( const char* , ... ) const { return false; }
+ bool Warning( const char* , ... ) const { return false; }
- bool FormatV( const wxChar* fmt, va_list args ) const { return false; }
- bool WriteLn( ConsoleColors color, const wxChar* fmt, ... ) const { return false; }
- bool WriteLn( const wxChar* fmt, ... ) const { return false; }
- bool Error( const wxChar* fmt, ... ) const { return false; }
- bool Warning( const wxChar* fmt, ... ) const { return false; }
+ bool FormatV( const wxChar* , va_list ) const { return false; }
+ bool WriteLn( ConsoleColors , const wxChar* , ... ) const { return false; }
+ bool WriteLn( const wxChar* , ... ) const { return false; }
+ bool Error( const wxChar* , ... ) const { return false; }
+ bool Warning( const wxChar* , ... ) const { return false; }
};
// --------------------------------------------------------------------------------------
diff --git a/common/include/Utilities/PageFaultSource.h b/common/include/Utilities/PageFaultSource.h
index a4d971b010..3fab19a942 100644
--- a/common/include/Utilities/PageFaultSource.h
+++ b/common/include/Utilities/PageFaultSource.h
@@ -52,12 +52,12 @@ public:
OnPageFaultEvent( evtinfo, handled );
}
- virtual void DispatchEvent( const PageFaultInfo& evtinfo )
+ virtual void DispatchEvent( const PageFaultInfo& )
{
pxFailRel( "Don't call me, damnit. Use DispatchException instead." );
}
- virtual void OnPageFaultEvent( const PageFaultInfo& evtinfo, bool& handled ) {}
+ virtual void OnPageFaultEvent( const PageFaultInfo& , bool& ) {}
};
// --------------------------------------------------------------------------------------
diff --git a/common/include/Utilities/PersistentThread.h b/common/include/Utilities/PersistentThread.h
index 7abc454549..c4de3dd4d4 100644
--- a/common/include/Utilities/PersistentThread.h
+++ b/common/include/Utilities/PersistentThread.h
@@ -44,7 +44,7 @@ namespace Threading
void SetThread( pxThread& thr ) { m_thread = &thr; }
void SetThread( pxThread* thr ) { m_thread = thr; }
- void DispatchEvent( const int& params )
+ void DispatchEvent( const int& )
{
OnThreadCleanup();
}
diff --git a/common/include/Utilities/SafeArray.h b/common/include/Utilities/SafeArray.h
index 96c373cb26..1e46d299bc 100644
--- a/common/include/Utilities/SafeArray.h
+++ b/common/include/Utilities/SafeArray.h
@@ -92,8 +92,8 @@ public:
// Gets a pointer to the element directly after the last element in the array.
// This is equivalent to doing GetPtr(GetLength()), except that this call *avoids*
// the out-of-bounds assertion check that typically occurs when you do that. :)
- T* GetPtrEnd( uint idx=0 ) { return &m_ptr[m_size]; }
- const T* GetPtrEnd( uint idx=0 ) const { return &m_ptr[m_size]; }
+ T* GetPtrEnd() { return &m_ptr[m_size]; }
+ const T* GetPtrEnd() const { return &m_ptr[m_size]; }
// Gets an element of this memory allocation much as if it were an array.
// DevBuilds : Generates assertion if the index is invalid.
diff --git a/common/include/Utilities/TraceLog.h b/common/include/Utilities/TraceLog.h
index 021be06e04..cbdf963007 100644
--- a/common/include/Utilities/TraceLog.h
+++ b/common/include/Utilities/TraceLog.h
@@ -143,7 +143,7 @@ public:
return false;
}
- virtual void ApplyPrefix( FastFormatAscii& ascii ) const {}
+ virtual void ApplyPrefix( FastFormatAscii& ) const {}
virtual void DoWrite( const char* fmt ) const=0;
};
diff --git a/common/include/Utilities/wxGuiTools.h b/common/include/Utilities/wxGuiTools.h
index 949d123b2e..d1e7430b99 100644
--- a/common/include/Utilities/wxGuiTools.h
+++ b/common/include/Utilities/wxGuiTools.h
@@ -91,7 +91,7 @@ struct pxAlignmentType
return Apply().Border( dir, padding );
}
- wxSizerFlags Proportion( int prop ) const
+ wxSizerFlags Proportion() const
{
return Apply().Proportion( intval );
}
@@ -127,7 +127,7 @@ struct pxStretchType
return Apply().Border( dir, padding );
}
- wxSizerFlags Proportion( int prop ) const
+ wxSizerFlags Proportion() const
{
return Apply().Proportion( intval );
}
@@ -438,7 +438,7 @@ public:
// NOTE: Enabling system menu on dialogs usually doesn't work, and might cause
// other unwanted behavior, such as a missing close button.
- pxDialogCreationFlags SystemMenu( bool enable=true ) const
+ pxDialogCreationFlags SystemMenu( bool =true ) const
{
return pxDialogCreationFlags(*this).SetSystemMenu( false );
}
@@ -648,7 +648,7 @@ public:
protected:
// line may be empty
- virtual void OnOutputLine(const wxString& line) { }
+ virtual void OnOutputLine(const wxString&) { }
// called at the start of every new line (except the very first one)
virtual void OnNewLine() { }
diff --git a/common/include/x86emitter/x86types.h b/common/include/x86emitter/x86types.h
index 9c5ead8fc7..8d99e7005f 100644
--- a/common/include/x86emitter/x86types.h
+++ b/common/include/x86emitter/x86types.h
@@ -366,13 +366,15 @@ template< typename T > void xWrite( T val );
xRegisterSSE& operator++()
{
- ++Id &= (iREGCNT_XMM-1);
+ ++Id;
+ Id &= (iREGCNT_XMM - 1);
return *this;
}
xRegisterSSE& operator--()
{
- --Id &= (iREGCNT_XMM-1);
+ --Id;
+ Id &= (iREGCNT_XMM - 1);
return *this;
}
diff --git a/locales/it_IT/pcsx2_Iconized.po b/locales/it_IT/pcsx2_Iconized.po
index 8c7b46db80..f803a78f34 100644
--- a/locales/it_IT/pcsx2_Iconized.po
+++ b/locales/it_IT/pcsx2_Iconized.po
@@ -1,11 +1,11 @@
-# Copyright (C) 2013 PCSX2 Team
+# Copyright (C) 2014 PCSX2 Team
# This file is distributed under the same license as the PCSX2 package.
msgid ""
msgstr ""
-"Project-Id-Version: PCSX2 1.2.0\n"
+"Project-Id-Version: PCSX2 1.3.0\n"
"Report-Msgid-Bugs-To: https://github.com/PCSX2/pcsx2/issues\n"
-"POT-Creation-Date: 2014-04-06 11:47+0200\n"
-"PO-Revision-Date: 2013-12-31 16:22+0100\n"
+"POT-Creation-Date: 2014-06-23 21:24+0100\n"
+"PO-Revision-Date: 2014-06-27 09:57+0100\n"
"Last-Translator: Leucos\n"
"Language-Team: Leucos \n"
"Language: it_IT\n"
@@ -14,8 +14,8 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-KeywordsList: pxE;pxEt\n"
"X-Poedit-SourceCharset: UTF-8\n"
-"X-Poedit-Basepath: ..\\..\\..\\PCSX2 Checkout\n"
-"X-Generator: Poedit 1.5.5\n"
+"X-Poedit-Basepath: ..\\..\n"
+"X-Generator: Poedit 1.6.5\n"
"X-Poedit-SearchPath-0: pcsx2\n"
"X-Poedit-SearchPath-1: common\n"
@@ -444,7 +444,7 @@ msgstr ""
"automaticamente \n"
"quando si preme ESC o si mette in pausa l'emulazione."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:67
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:69
msgid ""
"Known to affect following games:\n"
" * Digital Devil Saga (Fixes FMV and crashes)\n"
@@ -456,7 +456,7 @@ msgstr ""
" * SSX (corregge errori nella grafica e crash)\n"
" * Resident Evil: Dead Aim (causa texture alterate)"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:76
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:78
msgid ""
"Known to affect following games:\n"
" * Bleach Blade Battler\n"
@@ -468,7 +468,7 @@ msgstr ""
" * Growlanser II e III\n"
" * Wizardry"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:81
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:83
msgid ""
"Known to affect following games:\n"
" * Mana Khemia 1 (Going \"off campus\")\n"
@@ -476,7 +476,7 @@ msgstr ""
"Ha effetto in questi giochi:\n"
" * Mana Khemia 1 (Going \"off campus\")\n"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:86
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:88
msgid ""
"Known to affect following games:\n"
" * Test Drive Unlimited\n"
@@ -486,23 +486,29 @@ msgstr ""
" * Test Drive Unlimited\n"
" * Transformers"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:110
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:116
+msgid ""
+"It's better to enable 'Automatic game fixes' at the main menu instead, and "
+"leave this page empty. ('Automatic' means: selectively use specific tested "
+"fixes for specific games)"
+msgstr ""
+"È preferibile attivare l'opzione 'GameFix automatici' nel menu principale, e "
+"lasciare quindi le opzioni di questa pagina non selezionate.\n"
+"('automatici' significa un'attivazione selettiva di GameFix specifici e "
+"testati per specifici giochi)"
+
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:120
msgid ""
"Gamefixes can work around wrong emulation in some titles. \n"
-"They may also cause compatibility or performance issues. \n"
+"They may also cause compatibility or performance issues.\n"
"\n"
-"It's better to enable 'Automatic game fixes' at the main menu instead, and "
-"leave this page empty. \n"
-"('Automatic' means: selectively use specific tested fixes for specific games)"
+"The safest way to make sure that all game fixes are completely disabled."
msgstr ""
-"I GameFix possono correggere i problemi di emulazione in alcuni giochi.\n"
-"Possono tuttavia causare problemi di compatibilità e di prestazioni in altri "
-"giochi.\n"
+"I GameFix possono aggirare problemi nell'emulazione di alcuni titoli.\n"
+"Possono tuttavia causare problemi di compatibilità o prestazioni.\n"
"\n"
-"È consigliato attivare l'opzione 'GameFix automatici' nel menu 'Sistema', "
-"lasciando quindi le opzioni di questo pannello non selezionate.\n"
-"('automatici' significa: uso selettivo di GameFix specifici per specifici "
-"giochi)"
+"Il modo più sicuro per accertarsi che tutti i GameFix siano completamente "
+"disabilitati."
#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:735
#, c-format
@@ -801,7 +807,7 @@ msgstr ""
"disattivata (la schermata visualizzata sarà in pratica spazzatura "
"poligonale)."
-#: pcsx2/vtlb.cpp:731
+#: pcsx2/vtlb.cpp:800
msgid ""
"Your system is too low on virtual resources for PCSX2 to run. This can be "
"caused by having a small or disabled swapfile, or by other programs that are "
diff --git a/locales/it_IT/pcsx2_Main.po b/locales/it_IT/pcsx2_Main.po
index b6e9e29458..6897762991 100644
--- a/locales/it_IT/pcsx2_Main.po
+++ b/locales/it_IT/pcsx2_Main.po
@@ -1,11 +1,11 @@
-# Copyright (C) 2013 PCSX2 Team
+# Copyright (C) 2014 PCSX2 Team
# This file is distributed under the same license as the PCSX2 package.
msgid ""
msgstr ""
-"Project-Id-Version: PCSX2 1.2.0\n"
+"Project-Id-Version: PCSX2 1.3.0\n"
"Report-Msgid-Bugs-To: https://github.com/PCSX2/pcsx2/issues\n"
-"POT-Creation-Date: 2014-04-06 11:47+0200\n"
-"PO-Revision-Date: 2013-12-31 16:21+0100\n"
+"POT-Creation-Date: 2014-06-23 21:22+0100\n"
+"PO-Revision-Date: 2014-06-23 21:23+0100\n"
"Last-Translator: Leucos\n"
"Language-Team: Leucos \n"
"Language: it_IT\n"
@@ -14,24 +14,11 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-KeywordsList: _;pxL;_d;pxDt;_t;pxLt\n"
"X-Poedit-SourceCharset: UTF-8\n"
-"X-Poedit-Basepath: ..\\..\\..\\PCSX2 Checkout\n"
-"X-Generator: Poedit 1.5.5\n"
+"X-Poedit-Basepath: ..\\..\n"
+"X-Generator: Poedit 1.6.5\n"
"X-Poedit-SearchPath-0: pcsx2\n"
"X-Poedit-SearchPath-1: common\n"
-#: common/include/Utilities/Exceptions.h:187
-msgid "No reason given."
-msgstr "Nessuna spiegazione fornita."
-
-#: common/include/Utilities/Exceptions.h:226
-msgid "Parse error"
-msgstr "Errore d'interpretazione"
-
-#: common/include/Utilities/Exceptions.h:250
-msgid "Your machine's hardware is incapable of running PCSX2. Sorry dood."
-msgstr ""
-"L'hardware del tuo sistema non è in grado di eseguire PCSX2. Ci dispiace."
-
#: common/src/Utilities/Exceptions.cpp:219
msgid "Oh noes! Out of memory!"
msgstr "O no! Memoria esaurita!"
@@ -97,7 +84,7 @@ msgstr ""
"Include la processazione degli eventi d'inattività ed alcuni altri utilizzi "
"non comuni di eventi."
-#: pcsx2/CDVD/InputIsoFile.cpp:231
+#: pcsx2/CDVD/InputIsoFile.cpp:235
msgid "Unrecognized ISO image file format"
msgstr "Formato file immagine ISO non riconosciuto"
@@ -116,7 +103,7 @@ msgstr ""
"causato da un tipo di immagine ISO non supportato o da un bug nel supporto "
"immagini ISO di PCSX2."
-#: pcsx2/MTGS.cpp:867
+#: pcsx2/MTGS.cpp:871
msgid ""
"The MTGS thread has become unresponsive while waiting for the GS plugin to "
"open."
@@ -124,14 +111,14 @@ msgstr ""
"Durante l'attesa per l'apertura del plugin GS il thread MTGS ha smesso di "
"rispondere."
-#: pcsx2/PluginManager.cpp:712
+#: pcsx2/PluginManager.cpp:716
msgid ""
"The savestate cannot be loaded, as it appears to be corrupt or incomplete."
msgstr ""
"Il salvataggio di stato non può essere caricato, in quanto pare essere "
"corrotto o incompleto."
-#: pcsx2/PluginManager.cpp:722
+#: pcsx2/PluginManager.cpp:726
#, c-format
msgid ""
"%s plugin failed to open. Your computer may have insufficient resources, or "
@@ -140,7 +127,7 @@ msgstr ""
"Non è stato possibile avviare il plugin %s. Il computer potrebbe non "
"possedere risorse sufficienti o avere driver/hardware incompatibili."
-#: pcsx2/PluginManager.cpp:729
+#: pcsx2/PluginManager.cpp:733
#, c-format
msgid ""
"%s plugin failed to initialize. Your system may have insufficient memory or "
@@ -149,18 +136,18 @@ msgstr ""
"Non è stato possibile inizializzare il plugin %s. Il sistema potrebbe non "
"disporre della memoria sufficiente o delle risorse richieste."
-#: pcsx2/PluginManager.cpp:835
+#: pcsx2/PluginManager.cpp:839
#, c-format
msgid "The configured %s plugin file was not found"
msgstr "Non è stato possibile trovare il file del plugin %s configurato"
-#: pcsx2/PluginManager.cpp:839
+#: pcsx2/PluginManager.cpp:843
#, c-format
msgid "The configured %s plugin file is not a valid dynamic library"
msgstr ""
"Il plugin %s configurato non è una libreria di collegamento dinamico valida"
-#: pcsx2/PluginManager.cpp:857
+#: pcsx2/PluginManager.cpp:861
#, c-format
msgid ""
"The configured %s plugin is not a PCSX2 plugin, or is for an older "
@@ -169,13 +156,13 @@ msgstr ""
"Il plugin %s configurato non è un plugin di PCSX2 o è realizzato per una "
"versione precedente di PCSX2 e non più supportata."
-#: pcsx2/PluginManager.cpp:882
+#: pcsx2/PluginManager.cpp:886
msgid ""
"The plugin reports that your hardware or software/drivers are not supported."
msgstr ""
"Il plugin riporta che l'hardware, il software o i driver non sono supportati."
-#: pcsx2/PluginManager.cpp:903
+#: pcsx2/PluginManager.cpp:907
msgid ""
"Configured plugin is not a PCSX2 plugin, or is for an older unsupported "
"version of PCSX2."
@@ -183,7 +170,7 @@ msgstr ""
"Il plugin configurato non è un plugin di PCSX2 o è realizzato per una "
"versione di PCSX2 precedente e non più supportata."
-#: pcsx2/PluginManager.cpp:929
+#: pcsx2/PluginManager.cpp:933
#, c-format
msgid ""
"Configured %s plugin is not a valid PCSX2 plugin, or is for an older "
@@ -192,15 +179,15 @@ msgstr ""
"Il plugin %s configurato non è un plugin di PCSX2 valido o è realizzato per "
"una versione di PCSX2 precedente e non più supportata."
-#: pcsx2/PluginManager.cpp:1358
+#: pcsx2/PluginManager.cpp:1362
msgid "Internal Memorycard Plugin failed to initialize."
msgstr "Non è stato possibile inizializzare il plugin interno Memory Card."
-#: pcsx2/PluginManager.cpp:1755
+#: pcsx2/PluginManager.cpp:1759
msgid "Unloaded Plugin"
msgstr "Plugin Scaricato"
-#: pcsx2/SaveState.cpp:342
+#: pcsx2/SaveState.cpp:343
msgid "Cannot load savestate. It is of an unknown or unsupported version."
msgstr ""
"Impossibile caricare il salvataggio di stato. La sua versione è sconosciuta "
@@ -367,10 +354,6 @@ msgstr ""
msgid "Detailed logging of CDVD hardware."
msgstr "Log dettagliato dell'hardware CDVD."
-#: pcsx2/System.h:221 pcsx2/System.h:222 pcsx2/System.h:223
-msgid "PCSX2 Message"
-msgstr "PCSX2 - Messaggio"
-
#: pcsx2/ZipTools/thread_gzip.cpp:82
msgid ""
"The savestate was not properly saved. The temporary file was created "
@@ -529,15 +512,15 @@ msgstr ""
"Premi OK per usare il plugin configurato predefinito, o Annulla per chiudere "
"%s."
-#: pcsx2/gui/AppInit.cpp:509
-msgid "PCSX2 Error: Hardware Deficiency"
-msgstr "Errore di PCSX2: Hardware non compatibile"
-
#: pcsx2/gui/AppInit.cpp:509 pcsx2/gui/AppInit.cpp:521
#, c-format
msgid "Press OK to close %s."
msgstr "Premi OK per chiudere %s."
+#: pcsx2/gui/AppInit.cpp:509
+msgid "PCSX2 Error: Hardware Deficiency"
+msgstr "Errore di PCSX2: Hardware non compatibile"
+
#: pcsx2/gui/AppInit.cpp:522
#, c-format
msgid "%s Critical Error"
@@ -653,14 +636,14 @@ msgstr "Termina"
msgid "Executing PS2 Virtual Machine..."
msgstr "Avvio esecuzione Macchina virtuale PS2..."
-#: pcsx2/gui/AppRes.cpp:72
-msgid "Browse for an Iso that is not in your recent history."
-msgstr "Sfoglia le cartelle per una ISO non presente tra quelle recenti."
-
#: pcsx2/gui/AppRes.cpp:72
msgid "Browse..."
msgstr "Sfoglia..."
+#: pcsx2/gui/AppRes.cpp:72
+msgid "Browse for an Iso that is not in your recent history."
+msgstr "Sfoglia le cartelle per una ISO non presente tra quelle recenti."
+
#: pcsx2/gui/AppUserMode.cpp:95
msgid "The following folders exist, but are not writable:"
msgstr ""
@@ -700,40 +683,34 @@ msgstr ""
"Prova ad eliminare manualmente il file chiamato \"portable.ini\" dalla tua "
"cartella d'installazione."
-#: pcsx2/gui/ApplyState.h:55
-msgid "Cannot apply new settings, one of the settings is invalid."
-msgstr ""
-"Impossibile applicare le nuove impostazioni, una delle impostazioni non è "
-"valida."
-
#: pcsx2/gui/ConsoleLogger.cpp:120
msgid "Save log question"
msgstr "Conferma salvataggio log"
-#: pcsx2/gui/ConsoleLogger.cpp:417
-msgid "Fits a lot of log in a microcosmically small area."
-msgstr "Infila un mucchio di log in un'area microcosmicamente piccola."
-
#: pcsx2/gui/ConsoleLogger.cpp:417
msgid "Small"
msgstr "Piccolo"
-#: pcsx2/gui/ConsoleLogger.cpp:419
-msgid "It's what I use (the programmer guy)."
-msgstr "È quello che uso io (il programmatore)."
+#: pcsx2/gui/ConsoleLogger.cpp:417
+msgid "Fits a lot of log in a microcosmically small area."
+msgstr "Infila un mucchio di log in un'area microcosmicamente piccola."
#: pcsx2/gui/ConsoleLogger.cpp:419 pcsx2/gui/Panels/CpuPanel.cpp:38
msgid "Normal"
msgstr "Normale"
-#: pcsx2/gui/ConsoleLogger.cpp:421
-msgid "Its nice and readable."
-msgstr "È bello e leggibile."
+#: pcsx2/gui/ConsoleLogger.cpp:419
+msgid "It's what I use (the programmer guy)."
+msgstr "È quello che uso io (il programmatore)."
#: pcsx2/gui/ConsoleLogger.cpp:421
msgid "Large"
msgstr "Grande"
+#: pcsx2/gui/ConsoleLogger.cpp:421
+msgid "Its nice and readable."
+msgstr "È bello e leggibile."
+
#: pcsx2/gui/ConsoleLogger.cpp:423
msgid "Huge"
msgstr "Enorme"
@@ -742,13 +719,17 @@ msgstr "Enorme"
msgid "In case you have a really high res display."
msgstr "Nel caso tu possieda uno schermo veramente ad alta risoluzione."
+#: pcsx2/gui/ConsoleLogger.cpp:427
+msgid "Light theme"
+msgstr "Tema chiaro"
+
#: pcsx2/gui/ConsoleLogger.cpp:427
msgid "Default soft-tone color scheme."
msgstr "Schema predefinito a colori tenui."
-#: pcsx2/gui/ConsoleLogger.cpp:427
-msgid "Light theme"
-msgstr "Tema chiaro"
+#: pcsx2/gui/ConsoleLogger.cpp:428
+msgid "Dark theme"
+msgstr "Tema scuro"
#: pcsx2/gui/ConsoleLogger.cpp:428
msgid ""
@@ -758,10 +739,6 @@ msgstr ""
"Schema classico a colore nero, per la gente che si diverte ad avere il testo "
"marchiato a fuoco nei propri nervi ottici."
-#: pcsx2/gui/ConsoleLogger.cpp:428
-msgid "Dark theme"
-msgstr "Tema scuro"
-
#: pcsx2/gui/ConsoleLogger.cpp:431
msgid "Always on Top"
msgstr "Sempre in primo piano"
@@ -841,23 +818,23 @@ msgstr "&Log"
msgid "&Sources"
msgstr "&Fonti"
-#: pcsx2/gui/Debugger/DisassemblyDialog.cpp:112
+#: pcsx2/gui/Debugger/DisassemblyDialog.cpp:127
msgid "panel"
-msgstr ""
+msgstr "pannello"
#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:35
#, c-format
msgid "About %s"
msgstr "Informazioni su %s"
-#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:55
-msgid "Betatesting"
-msgstr "Betatesting"
-
#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:55
msgid "Previous versions"
msgstr "Versioni precedenti"
+#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:55
+msgid "Betatesting"
+msgstr "Betatesting"
+
#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:55
msgid "Webmasters"
msgstr "Webmaster"
@@ -887,9 +864,8 @@ msgid "PCSX2 Official Website and Forums"
msgstr "Sito Web e Forum ufficiali di PCSX2"
#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:106
-#, fuzzy
msgid "PCSX2 Official Git Repository at GitHub"
-msgstr "Repository Svn ufficiale di PCSX2 presso GitHub"
+msgstr "Repository Git ufficiale di PCSX2 presso GitHub"
#: pcsx2/gui/Dialogs/AboutBoxDialog.cpp:110
msgid "I've seen enough"
@@ -1045,15 +1021,15 @@ msgstr ""
"comporti \n"
"in modo imprevedibile (anche se non è un'eventualità così probabile)."
+#: pcsx2/gui/Dialogs/FirstTimeWizard.cpp:47
+msgid "Settings"
+msgstr "Impostazioni"
+
#: pcsx2/gui/Dialogs/FirstTimeWizard.cpp:47
#, c-format
msgid "Select a folder for %s settings"
msgstr "Seleziona una cartella per le impostazioni di %s"
-#: pcsx2/gui/Dialogs/FirstTimeWizard.cpp:47
-msgid "Settings"
-msgstr "Impostazioni"
-
#: pcsx2/gui/Dialogs/FirstTimeWizard.cpp:76
msgid "Language selector"
msgstr "Selettore Lingua"
@@ -1283,7 +1259,7 @@ msgstr ""
"È un errore rilasciare più file su di una finestra di %s. Per favore uno "
"alla volta, grazie."
-#: pcsx2/gui/IsoDropTarget.cpp:87 pcsx2/gui/MainMenuClicks.cpp:339
+#: pcsx2/gui/IsoDropTarget.cpp:87 pcsx2/gui/MainMenuClicks.cpp:342
msgid "Confirm PS2 Reset"
msgstr "Conferma reset della PS2"
@@ -1339,14 +1315,14 @@ msgid "&Debug"
msgstr "&Debug"
#: pcsx2/gui/MainFrame.cpp:360
-#, fuzzy, c-format
+#, c-format
msgid "%s %d.%d.%d"
-msgstr "%s %d.%d.%d %s"
+msgstr "%s %d.%d.%d"
#: pcsx2/gui/MainFrame.cpp:365
-#, fuzzy, c-format
+#, c-format
msgid "%s %d.%d.%d-%lld%s (git) %s"
-msgstr "%s %d.%d.%d.%d%s (svn) %s"
+msgstr "%s %d.%d.%d-%lld%s (git) %s"
#: pcsx2/gui/MainFrame.cpp:402 pcsx2/gui/MainFrame.cpp:404
#: pcsx2/gui/MainFrame.cpp:410
@@ -1379,7 +1355,6 @@ msgid "Enable Cheats"
msgstr "Abilita Cheat"
#: pcsx2/gui/MainFrame.cpp:430
-#, fuzzy
msgid "Enable Widescreen Patches"
msgstr "Abilita le Patch Widescreen"
@@ -1503,7 +1478,7 @@ msgstr "Informazioni su..."
#: pcsx2/gui/MainFrame.cpp:519
msgid "Open Debug Window..."
-msgstr ""
+msgstr "Apri Finestra di Debug..."
#: pcsx2/gui/MainFrame.cpp:521
msgid "Logging..."
@@ -1660,27 +1635,32 @@ msgstr "Immagini disco (%s)"
msgid "Blockdumps (%s)"
msgstr "Blockdump (%s)"
-#: pcsx2/gui/MainMenuClicks.cpp:267 pcsx2/gui/MainMenuClicks.cpp:288
+#: pcsx2/gui/MainMenuClicks.cpp:267
+#, c-format
+msgid "Compressed (%s)"
+msgstr "File compressi (%s)"
+
+#: pcsx2/gui/MainMenuClicks.cpp:270 pcsx2/gui/MainMenuClicks.cpp:291
msgid "All Files (*.*)"
msgstr "Tutti i file (*.*)"
-#: pcsx2/gui/MainMenuClicks.cpp:270
+#: pcsx2/gui/MainMenuClicks.cpp:273
msgid "Select CDVD source iso..."
msgstr "Seleziona origine ISO del CDVD..."
-#: pcsx2/gui/MainMenuClicks.cpp:287
+#: pcsx2/gui/MainMenuClicks.cpp:290
msgid "Select ELF file..."
msgstr "Seleziona un file ELF..."
-#: pcsx2/gui/MainMenuClicks.cpp:313
+#: pcsx2/gui/MainMenuClicks.cpp:316
msgid "ISO file not found!"
msgstr "File ISO non trovato!"
-#: pcsx2/gui/MainMenuClicks.cpp:315
+#: pcsx2/gui/MainMenuClicks.cpp:318
msgid "An error occurred while trying to open the file:"
msgstr "Un errore si è verificato provando ad aprire il file:"
-#: pcsx2/gui/MainMenuClicks.cpp:316
+#: pcsx2/gui/MainMenuClicks.cpp:319
msgid ""
"Error: The configured ISO file does not exist. Click OK to select a new ISO "
"source for CDVD."
@@ -1688,7 +1668,7 @@ msgstr ""
"Errore: Il file ISO configurato non esiste. Fai clic su OK per selezionare "
"una nuova origine ISO per il CDVD."
-#: pcsx2/gui/MainMenuClicks.cpp:387
+#: pcsx2/gui/MainMenuClicks.cpp:390
msgid ""
"You have selected the following ISO image into PCSX2:\n"
"\n"
@@ -1987,11 +1967,11 @@ msgstr "Cerca"
msgid "Gamefixes"
msgstr "GameFix"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:38
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:40
msgid "VU Add Hack - Fixes Tri-Ace games boot crash."
msgstr "VU Add Hack - Corregge il crash all'avvio dei giochi Tri-Ace."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:39
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:41
msgid ""
"Games that need this hack to boot:\n"
" * Star Ocean 3\n"
@@ -2003,84 +1983,84 @@ msgstr ""
" * Radiata Stories\n"
" * Valkyrie Profile 2"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:42
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:44
msgid "VU Clip Flag Hack - For Persona games (SuperVU recompiler only!)"
msgstr ""
"VU Clip Flag Hack - Per i giochi della serie Persona (solo per il "
"ricompilatore superVU!)"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:46
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:48
msgid "FPU Compare Hack - For Digimon Rumble Arena 2."
msgstr "FPU Compare Hack - Per Digimon Rumble Arena 2."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:50
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:52
msgid "FPU Multiply Hack - For Tales of Destiny."
msgstr "FPU Multiply Hack - Per Tales of Destiny."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:54
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:56
msgid "FPU Negative Div Hack - For Gundam games."
msgstr "FPU Negative Div Hack - Per i giochi della serie Gundam."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:58
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:60
msgid "VU XGkick Hack - For Erementar Gerad."
msgstr "VU XGkick Hack - Per Erementar Gerad."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:62
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:64
msgid "FFX videos fix - Fixes bad graphics overlay in FFX videos."
msgstr ""
"FFX video fix - Corregge i problemi grafici negli overlay dei video in FFX."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:66
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:68
msgid "EE timing hack - Multi purpose hack. Try if all else fails."
msgstr ""
"EE timing hack - Hack multiscopo. Provalo se tutto il resto non funziona."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:71
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:73
msgid ""
"Skip MPEG hack - Skips videos/FMVs in games to avoid game hanging/freezes."
msgstr ""
"Skip MPEG hack - Salta i video/FMV presenti nei giochi per evitare stalli/"
"blocchi."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:75
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:77
msgid "OPH Flag hack - Try if your game freezes showing the same frame."
msgstr ""
"OPH Flag hack - Provalo se il tuo gioco si blocca mostrando lo stesso "
"fotogramma."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:80
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:82
msgid "Ignore DMAC writes when it is busy."
msgstr "Ignora le scritture DMAC quando è occupata."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:85
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:87
msgid "Simulate VIF1 FIFO read ahead. Fixes slow loading games."
msgstr "Simula read ahead FIFO VIF. Corregge i giochi con caricamenti lenti."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:90
-msgid "Delay VIF1 Stalls (VIF1 FIFO) - For SOCOM 2 HUD."
-msgstr "Ritarda le pause di VIF1 (VIF1 FIFO) - Per l'HUD di SOCOM 2."
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:92
+msgid ""
+"Delay VIF1 Stalls (VIF1 FIFO) - For SOCOM 2 HUD & Spy Hunter loading hang."
+msgstr ""
+"Ritarda le pause di VIF1 (VIF1 FIFO) - Per l'HUD di SOCOM 2 e il bloco del "
+"caricamento di Spy Hunter."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:94
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:96
msgid "Ignore Bus Direction on Path3 Transfer - Used for Hotwheels"
msgstr ""
"Ignora la Direzione del Bus nel Trasferimento Path3 - Utilizzato per "
"Hotwheels."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:98
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:100
msgid "Switch to GSdx software rendering when a FMV plays"
msgstr "Passa al rendering software di GSdx quando viene riprodotto un FMV."
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:109
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:104
+msgid "Preload TLB hack to avoid tlb miss on Goemon"
+msgstr "Hack di precaricamento TLB per evitare TLB miss in Goemon"
+
+#: pcsx2/gui/Panels/GameFixesPanel.cpp:115
msgid "Enable manual game fixes [Not recommended]"
msgstr "Abilita GameFix manuali [non consigliato]"
-#: pcsx2/gui/Panels/GameFixesPanel.cpp:114
-msgid ""
-"The safest way to make sure that all game fixes are completely disabled."
-msgstr ""
-"Il modo più sicuro per accertarsi che tutti i GameFix siano completamente "
-"disattivati."
-
#: pcsx2/gui/Panels/LogOptionsPanels.cpp:249
msgid "Enable Trace Logging"
msgstr "Abilita i Trace Log"
@@ -2172,6 +2152,10 @@ msgstr "Crea una memory card assegnata alla Porta selezionata."
msgid "Delete memory file?"
msgstr "Eliminare il file della memory card?"
+#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:763
+msgid "Failed: Can only duplicate an existing card."
+msgstr "Fallita: Si possono copiare solo memory card esistenti."
+
#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:763
#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:774
#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:781
@@ -2179,10 +2163,6 @@ msgstr "Eliminare il file della memory card?"
msgid "Duplicate memory card"
msgstr "Copia memory card"
-#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:763
-msgid "Failed: Can only duplicate an existing card."
-msgstr "Fallita: Si possono copiare solo memory card esistenti."
-
#: pcsx2/gui/Panels/MemoryCardListPanel.cpp:781
msgid ""
"Select a name for the duplicate\n"
@@ -2310,22 +2290,22 @@ msgstr "Ultima modifica"
msgid "Created on"
msgstr "Creata il"
-#: pcsx2/gui/Panels/MemoryCardListView.cpp:158
-msgid "No"
-msgstr "No"
-
#: pcsx2/gui/Panels/MemoryCardListView.cpp:158
msgid "Yes"
msgstr "Sì"
-#: pcsx2/gui/Panels/MemoryCardListView.cpp:159
-msgid "PS2"
-msgstr "PS2"
+#: pcsx2/gui/Panels/MemoryCardListView.cpp:158
+msgid "No"
+msgstr "No"
#: pcsx2/gui/Panels/MemoryCardListView.cpp:159
msgid "PSX"
msgstr "PSX"
+#: pcsx2/gui/Panels/MemoryCardListView.cpp:159
+msgid "PS2"
+msgstr "PS2"
+
#: pcsx2/gui/Panels/MemoryCardListView.cpp:172
msgid "[-- Unused cards --]"
msgstr "[-- Card inutilizzate --]"
@@ -2743,6 +2723,47 @@ msgstr ""
"Estensioni %s non trovate. microVU richiede una CPU del sistema host con "
"estensioni MMX, SSE ed SSE2."
+#: common/include/Utilities/Exceptions.h:187
+msgid "No reason given."
+msgstr "Nessuna spiegazione fornita."
+
+#: common/include/Utilities/Exceptions.h:226
+msgid "Parse error"
+msgstr "Errore d'interpretazione"
+
+#: common/include/Utilities/Exceptions.h:250
+msgid "Your machine's hardware is incapable of running PCSX2. Sorry dood."
+msgstr ""
+"L'hardware del tuo sistema non è in grado di eseguire PCSX2. Ci dispiace."
+
+#: pcsx2/System.h:221 pcsx2/System.h:222 pcsx2/System.h:223
+msgid "PCSX2 Message"
+msgstr "PCSX2 - Messaggio"
+
+#: pcsx2/gui/ApplyState.h:55
+msgid "Cannot apply new settings, one of the settings is invalid."
+msgstr ""
+"Impossibile applicare le nuove impostazioni, una delle impostazioni non è "
+"valida."
+
+#~ msgid ""
+#~ "Gamefixes can work around wrong emulation in some titles. \n"
+#~ "They may also cause compatibility or performance issues.\n"
+#~ "\n"
+#~ "The safest way to make sure that all game fixes are completely disabled."
+#~ msgstr ""
+#~ "I GameFix possono aggirare i problemi di emulazione di alcuni titoli. \n"
+#~ "Possono inoltre causare problemi di compatibilità e di prestazioni.\n"
+#~ "\n"
+#~ "Il modo più sicuro per accertarsi che tutti i GameFix siano completamente "
+#~ "disabilitati."
+
+#~ msgid ""
+#~ "The safest way to make sure that all game fixes are completely disabled."
+#~ msgstr ""
+#~ "Il modo più sicuro per accertarsi che tutti i GameFix siano completamente "
+#~ "disattivati."
+
#~ msgid "(modded)"
#~ msgstr "(modificato)"
diff --git a/pcsx2/Cache.cpp b/pcsx2/Cache.cpp
index 440bfb679b..51907dd028 100644
--- a/pcsx2/Cache.cpp
+++ b/pcsx2/Cache.cpp
@@ -179,25 +179,24 @@ void writeCache128(u32 mem, const mem128_t* value){
}
u8 readCache8(u32 mem) {
- int i, number;
+ int number;
- i = getFreeCache(mem,0,&number);
- CACHE_LOG("readCache %8.8x from %d, way %d QW %x u8 part %x Really Reading %x", mem, i,number, (mem >> 4) & 0x3, (mem&0xf)>>2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u8[(mem&0xf)]);
+ int i = getFreeCache(mem,0,&number);
if(i == -1)
{
u32 vmv=vtlbdata.vmap[mem>>VTLB_PAGE_BITS];
s32 ppf=mem+vmv;
return *(u8*)ppf;
}
+
+ CACHE_LOG("readCache %8.8x from %d, way %d QW %x u8 part %x Really Reading %x", mem, i, number, (mem >> 4) & 0x3, (mem & 0xf) >> 2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u8[(mem & 0xf)]);
return pCache[i].data[number][(mem >> 4) & 0x3].b8._u8[(mem&0xf)];
}
u16 readCache16(u32 mem) {
- int i, number;
+ int number;
- i = getFreeCache(mem,0,&number);
- CACHE_LOG("readCache %8.8x from %d, way %d QW %x u16 part %x Really Reading %x", mem, i,number, (mem >> 4) & 0x3, (mem&0xf)>>2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u16[(mem&0xf)>>1]);
-
+ int i = getFreeCache(mem,0,&number);
if(i == -1)
{
u32 vmv=vtlbdata.vmap[mem>>VTLB_PAGE_BITS];
@@ -205,34 +204,37 @@ u16 readCache16(u32 mem) {
return *(u16*)ppf;
}
+ CACHE_LOG("readCache %8.8x from %d, way %d QW %x u16 part %x Really Reading %x", mem, i, number, (mem >> 4) & 0x3, (mem & 0xf) >> 2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u16[(mem & 0xf) >> 1]);
return pCache[i].data[number][(mem >> 4) & 0x3].b8._u16[(mem&0xf)>>1];
}
u32 readCache32(u32 mem) {
- int i, number;
+ int number;
- i = getFreeCache(mem,0,&number);
- CACHE_LOG("readCache %8.8x from %d, way %d QW %x u32 part %x Really Reading %x", mem, i,number, (mem >> 4) & 0x3, (mem&0xf)>>2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u32[(mem&0xf)>>2]);
+ int i = getFreeCache(mem,0,&number);
if(i == -1)
{
u32 vmv=vtlbdata.vmap[mem>>VTLB_PAGE_BITS];
s32 ppf=mem+vmv;
return *(u32*)ppf;
}
+
+ CACHE_LOG("readCache %8.8x from %d, way %d QW %x u32 part %x Really Reading %x", mem, i, number, (mem >> 4) & 0x3, (mem & 0xf) >> 2, (u32)pCache[i].data[number][(mem >> 4) & 0x3].b8._u32[(mem & 0xf) >> 2]);
return pCache[i].data[number][(mem >> 4) & 0x3].b8._u32[(mem&0xf)>>2];
}
u64 readCache64(u32 mem) {
- int i, number;
+ int number;
- i = getFreeCache(mem,0,&number);
- CACHE_LOG("readCache %8.8x from %d, way %d QW %x u64 part %x Really Reading %x_%x", mem, i,number, (mem >> 4) & 0x3, (mem&0xf)>>2, pCache[i].data[number][(mem >> 4) & 0x3].b8._u64[(mem&0xf)>>3]);
+ int i = getFreeCache(mem,0,&number);
if(i == -1)
{
u32 vmv=vtlbdata.vmap[mem>>VTLB_PAGE_BITS];
s32 ppf=mem+vmv;
return *(u64*)ppf;
}
+
+ CACHE_LOG("readCache %8.8x from %d, way %d QW %x u64 part %x Really Reading %x_%x", mem, i, number, (mem >> 4) & 0x3, (mem & 0xf) >> 2, pCache[i].data[number][(mem >> 4) & 0x3].b8._u64[(mem & 0xf) >> 3]);
return pCache[i].data[number][(mem >> 4) & 0x3].b8._u64[(mem&0xf)>>3];
}
diff --git a/pcsx2/DebugTools/DisR3000A.cpp b/pcsx2/DebugTools/DisR3000A.cpp
index c3bd7df1f1..5898eafabe 100644
--- a/pcsx2/DebugTools/DisR3000A.cpp
+++ b/pcsx2/DebugTools/DisR3000A.cpp
@@ -68,17 +68,17 @@ typedef char* (*TdisR3000AF)(u32 code, u32 pc);
#define _Branch_ (pc + 4 + ((short)_Im_ * 4))
#define _OfB_ _Im_, _nRs_
-#define dName(i) sprintf(ostr, "%s %-7s,", ostr, i)
-#define dGPR(i) sprintf(ostr, "%s %8.8x (%s),", ostr, psxRegs.GPR.r[i], disRNameGPR[i])
-#define dCP0(i) sprintf(ostr, "%s %8.8x (%s),", ostr, psxRegs.CP0.r[i], disRNameCP0[i])
-#define dHI() sprintf(ostr, "%s %8.8x (%s),", ostr, psxRegs.GPR.n.hi, "hi")
-#define dLO() sprintf(ostr, "%s %8.8x (%s),", ostr, psxRegs.GPR.n.lo, "lo")
-#define dImm() sprintf(ostr, "%s %4.4x (%d),", ostr, _Im_, _Im_)
-#define dTarget() sprintf(ostr, "%s %8.8x,", ostr, _Target_)
-#define dSa() sprintf(ostr, "%s %2.2x (%d),", ostr, _Sa_, _Sa_)
-#define dOfB() sprintf(ostr, "%s %4.4x (%8.8x (%s)),", ostr, _Im_, psxRegs.GPR.r[_Rs_], disRNameGPR[_Rs_])
-#define dOffset() sprintf(ostr, "%s %8.8x,", ostr, _Branch_)
-#define dCode() sprintf(ostr, "%s %8.8x,", ostr, (code >> 6) & 0xffffff)
+#define dName(i) sprintf(ostr + strlen(ostr), " %-7s,", i)
+#define dGPR(i) sprintf(ostr + strlen(ostr), " %8.8x (%s),", psxRegs.GPR.r[i], disRNameGPR[i])
+#define dCP0(i) sprintf(ostr + strlen(ostr), " %8.8x (%s),", psxRegs.CP0.r[i], disRNameCP0[i])
+#define dHI() sprintf(ostr + strlen(ostr), " %8.8x (%s),", psxRegs.GPR.n.hi, "hi")
+#define dLO() sprintf(ostr + strlen(ostr), " %8.8x (%s),", psxRegs.GPR.n.lo, "lo")
+#define dImm() sprintf(ostr + strlen(ostr), " %4.4x (%d),", _Im_, _Im_)
+#define dTarget() sprintf(ostr + strlen(ostr), " %8.8x,", _Target_)
+#define dSa() sprintf(ostr + strlen(ostr), " %2.2x (%d),", _Sa_, _Sa_)
+#define dOfB() sprintf(ostr + strlen(ostr), " %4.4x (%8.8x (%s)),", _Im_, psxRegs.GPR.r[_Rs_], disRNameGPR[_Rs_])
+#define dOffset() sprintf(ostr + strlen(ostr), " %8.8x,", _Branch_)
+#define dCode() sprintf(ostr + strlen(ostr), " %8.8x,", (code >> 6) & 0xffffff)
/*********************************************************
* Arithmetic with immediate operand *
diff --git a/pcsx2/Gif_Unit.h b/pcsx2/Gif_Unit.h
index f44c747ce0..5f6664047b 100644
--- a/pcsx2/Gif_Unit.h
+++ b/pcsx2/Gif_Unit.h
@@ -648,6 +648,7 @@ struct Gif_Unit {
}
void PrintPathInfo(GIF_PATH path) {
+ (void)path; // avoid silly warning
GUNIT_LOG("Gif Path %d - [hasData = %d][state = %d]", path,
gifPath[path].hasDataRemaining(), gifPath[path].state);
}
diff --git a/pcsx2/HwRead.cpp b/pcsx2/HwRead.cpp
index a03a7ea067..8dc6dec5f7 100644
--- a/pcsx2/HwRead.cpp
+++ b/pcsx2/HwRead.cpp
@@ -177,6 +177,7 @@ mem32_t __fastcall _hwRead32(u32 mem)
}
}
break;
+ default: break;
}
//Hack for Transformers and Test Drive Unlimited to simulate filling the VIF FIFO
//It actually stalls VIF a few QW before the end of the transfer, so we need to pretend its all gone
@@ -302,6 +303,7 @@ static void _hwRead64(u32 mem, mem64_t* result )
}
}
return;
+ default: break;
}
*result = _hwRead32( mem );
diff --git a/pcsx2/HwWrite.cpp b/pcsx2/HwWrite.cpp
index e11b5e2af4..cf2716f71e 100644
--- a/pcsx2/HwWrite.cpp
+++ b/pcsx2/HwWrite.cpp
@@ -425,6 +425,8 @@ void __fastcall _hwWrite128(u32 mem, const mem128_t* srcval)
}
return;
+
+ default: break;
}
// All upper bits of all non-FIFO 128-bit HW writes are almost certainly disregarded. --air
diff --git a/pcsx2/IopBios.h b/pcsx2/IopBios.h
index b8d3dece5e..7b97a8ecab 100644
--- a/pcsx2/IopBios.h
+++ b/pcsx2/IopBios.h
@@ -42,9 +42,9 @@ public:
virtual void close() = 0;
- virtual int lseek(s32 offset, s32 whence) { return -IOP_EIO; }
- virtual int read(void *buf, u32 count) { return -IOP_EIO; }
- virtual int write(void *buf, u32 count) { return -IOP_EIO; }
+ virtual int lseek(s32 , s32 ) { return -IOP_EIO; }
+ virtual int read(void *, u32 ) { return -IOP_EIO; }
+ virtual int write(void *, u32 ) { return -IOP_EIO; }
};
class IOManDir {
diff --git a/pcsx2/Memory.cpp b/pcsx2/Memory.cpp
index bcae88394c..a9ffe7b2ab 100644
--- a/pcsx2/Memory.cpp
+++ b/pcsx2/Memory.cpp
@@ -262,6 +262,7 @@ static mem8_t __fastcall _ext_memRead8 (u32 mem)
Console.WriteLn("DEV9 read8 %8.8lx: %2.2lx", mem & ~0xa4000000, retval);
return retval;
}
+ default: break;
}
MEM_LOG("Unknown Memory Read8 from address %8.8x", mem);
@@ -291,6 +292,8 @@ static mem16_t __fastcall _ext_memRead16(u32 mem)
case 8: // spu2
return SPU2read(mem);
+
+ default: break;
}
MEM_LOG("Unknown Memory read16 from address %8.8x", mem);
cpuTlbMissR(mem, cpuRegs.branch);
@@ -310,6 +313,7 @@ static mem32_t __fastcall _ext_memRead32(u32 mem)
Console.WriteLn("DEV9 read32 %8.8lx: %8.8lx", mem & ~0xa4000000, retval);
return retval;
}
+ default: break;
}
MEM_LOG("Unknown Memory read32 from address %8.8x (Status=%8.8x)", mem, cpuRegs.CP0.n.Status.val);
@@ -324,6 +328,7 @@ static void __fastcall _ext_memRead64(u32 mem, mem64_t *out)
{
case 6: // gsm
*out = gsRead64(mem); return;
+ default: break;
}
MEM_LOG("Unknown Memory read64 from address %8.8x", mem);
@@ -340,6 +345,7 @@ static void __fastcall _ext_memRead128(u32 mem, mem128_t *out)
case 6: // gsm
CopyQWC(out,PS2GS_BASE(mem));
return;
+ default: break;
}
MEM_LOG("Unknown Memory read128 from address %8.8x", mem);
@@ -358,6 +364,7 @@ static void __fastcall _ext_memWrite8 (u32 mem, mem8_t value)
DEV9write8(mem & ~0xa4000000, value);
Console.WriteLn("DEV9 write8 %8.8lx: %2.2lx", mem & ~0xa4000000, value);
return;
+ default: break;
}
MEM_LOG("Unknown Memory write8 to address %x with data %2.2x", mem, value);
@@ -379,6 +386,7 @@ static void __fastcall _ext_memWrite16(u32 mem, mem16_t value)
return;
case 8: // spu2
SPU2write(mem, value); return;
+ default: break;
}
MEM_LOG("Unknown Memory write16 to address %x with data %4.4x", mem, value);
cpuTlbMissW(mem, cpuRegs.branch);
@@ -394,6 +402,7 @@ static void __fastcall _ext_memWrite32(u32 mem, mem32_t value)
DEV9write32(mem & ~0xa4000000, value);
Console.WriteLn("DEV9 write32 %8.8lx: %8.8lx", mem & ~0xa4000000, value);
return;
+ default: break;
}
MEM_LOG("Unknown Memory write32 to address %x with data %8.8x", mem, value);
cpuTlbMissW(mem, cpuRegs.branch);
diff --git a/pcsx2/System/SysThreads.h b/pcsx2/System/SysThreads.h
index 853ad4d735..f786a5319f 100644
--- a/pcsx2/System/SysThreads.h
+++ b/pcsx2/System/SysThreads.h
@@ -236,7 +236,7 @@ public:
IEventListener_SysState() {}
virtual ~IEventListener_SysState() throw() {}
- virtual void DispatchEvent( const SysStateUnlockedParams& status )
+ virtual void DispatchEvent( const SysStateUnlockedParams& )
{
SysStateAction_OnUnlocked();
}
diff --git a/pcsx2/VUmicro.h b/pcsx2/VUmicro.h
index 097231ab2c..5ddb7719b5 100644
--- a/pcsx2/VUmicro.h
+++ b/pcsx2/VUmicro.h
@@ -177,10 +177,10 @@ public:
void Step();
void Execute(u32 cycles);
- void Clear(u32 addr, u32 size) {}
+ void Clear(u32 , u32 ) {}
uint GetCacheReserve() const { return 0; }
- void SetCacheReserve( uint reserveInMegs ) const {}
+ void SetCacheReserve( uint ) const {}
};
class InterpVU1 : public BaseVUmicroCPU
@@ -198,11 +198,11 @@ public:
void Step();
void Execute(u32 cycles);
- void Clear(u32 addr, u32 size) {}
+ void Clear(u32 , u32 ) {}
void ResumeXGkick() {}
uint GetCacheReserve() const { return 0; }
- void SetCacheReserve( uint reserveInMegs ) const {}
+ void SetCacheReserve( uint ) const {}
};
// --------------------------------------------------------------------------------------
diff --git a/pcsx2/Vif_Codes.cpp b/pcsx2/Vif_Codes.cpp
index edcf8b39ae..c2dd42db24 100644
--- a/pcsx2/Vif_Codes.cpp
+++ b/pcsx2/Vif_Codes.cpp
@@ -443,7 +443,12 @@ vifOp(vifCode_Nop) {
GetVifX.cmd = 0;
GetVifX.pass = 0;
vifExecQueue(idx);
- if(GetVifX.vifpacketsize > 1)
+
+ //If the top bit was set to interrupt, we don't want it to take commands from a bad code if it's interpreted as a nop by us.
+ //Onimusha - Blade Warriors
+ if ((vifXRegs.code & 0x80000000) && (vifXRegs.code & 0xFFFFF) != 0) GetVifX.irq = 0;
+
+ if (GetVifX.vifpacketsize > 1)
{
if(((data[1] >> 24) & 0x7f) == 0x6) //is mskpath3 next
{
@@ -470,6 +475,9 @@ vifOp(vifCode_Null) {
}
vifX.cmd = 0;
vifX.pass = 0;
+
+ //If the top bit was set to interrupt, we don't want it to take commands from a bad code
+ if (vifXRegs.code & 0x80000000) vifX.irq = 0;
}
pass2 { Console.Error("Vif%d bad vifcode! [CMD = %x]", idx, vifX.cmd); }
pass3 { VifCodeLog("Null"); }
diff --git a/pcsx2/x86/microVU_Analyze.inl b/pcsx2/x86/microVU_Analyze.inl
index 9ba36e66a7..fe0a74f017 100644
--- a/pcsx2/x86/microVU_Analyze.inl
+++ b/pcsx2/x86/microVU_Analyze.inl
@@ -463,7 +463,7 @@ __ri int mVUbranchCheck(mV) {
if(mVUlow.branch == 2 || mVUlow.branch == 10) //Needs linking, we can only guess this if the next is not conditional
{
- if(branchType <= 2 && branchType >= 9) //First branch is not conditional so we know what the link will be
+ if(branchType <= 2 || branchType >= 9) //First branch is not conditional so we know what the link will be
{ //So we can let the existing evil block do its thing! We know where to get the addr :)
DevCon.Warning("yo");
DevCon.Warning("yo");
diff --git a/plugins/zerogs/dx/GSmain.cpp b/plugins/zerogs/dx/GSmain.cpp
index 90031c1c8e..33e03afe34 100644
--- a/plugins/zerogs/dx/GSmain.cpp
+++ b/plugins/zerogs/dx/GSmain.cpp
@@ -417,8 +417,8 @@ s32 CALLBACK GSopen(void *pDsp, char *Title, int multithread) {
}
if( conf.aa ) {
char strtitle[64];
- sprintf(strtitle, "anti-aliasing - %s", s_aa[conf.aa], 1000);
- ZeroGS::AddMessage(strtitle);
+ sprintf(strtitle, "anti-aliasing - %s", s_aa[conf.aa]);
+ ZeroGS::AddMessage(strtitle, 1000);
}
if( conf.options & GSOPTION_WIDESCREEN ) {
ZeroGS::AddMessage("16:9 widescreen - on", 1000);