Compare commits

..

33 Commits

Author SHA1 Message Date
Gregory Hainaut
21012a8ec3 1.4.x: x86emitter: fix compilation issue with recent GCC
close #1544
2016-09-02 22:54:17 +02:00
Avi Halachmi (:avih)
8f74b640f0 about dialog: add Devina 2016-01-05 13:20:32 +02:00
Avi Halachmi (:avih)
f3ba414443 Games DB: update compatibility: (17 better, 1 worse):
Summary:

Worse:
- Degrading compat from 5 to 4 for SLUS-20573: Sims, The

Better:
- Improving compat from 3 to 5 for SLUS-21632: NHL 2K8
- Improving compat from 2 to 5 for SLUS-21425: NHL 2K7
- Improving compat from 4 to 5 for SLUS-20919: ESPN - NFL 2K5
- Improving compat from 2 to 5 for SLUS-21232: College Hoops 2K6
- Improving compat from 2 to 5 for SLUS-20225: Gadget Racers
- Improving compat from 2 to 5 for SLUS-21914: NHL 2K10
- Improving compat from 3 to 5 for SLUS-20235: Superman - Shadow of Apokolips
- Improving compat from 2 to 5 for SLUS-20842: Sims, The - Bustin' Out
- Improving compat from 4 to 5 for SLUS-21563: Horsez
- Improving compat from 4 to 5 for SLUS-20637: Chessmaster (Online)
- Improving compat from 3 to 5 for SLES-50874: F1 2002
- Improving compat from 2 to 5 for SLES-52298: IndyCar Series 2005
- Improving compat from 0 to 5 for SLUS-21680: Harvey Birdman - Attorney at Law
- Improving compat from 0 to 5 for SCES-51684: World Rally Championship 3
- Improving compat from 0 to 5 for SLUS-21235: MLB 2k6
- Improving compat from 0 to 5 for SLES-50252: Penny Racers
- Improving compat from 0 to 5 for SLES-54151: Let's Make a Soccer Team!
2016-01-04 21:18:25 +02:00
Avi Halachmi (:avih)
e4c424896e widescreen patches (cheats_ws.zip): 56 new, 26 updated, overall 1994
Taken from Devina's archive at the forum (updated 2016-01-03), and removed the
three WIP patches: 1771BFE4, C77AF2CA and C77AF2CA.
2016-01-04 18:52:11 +01:00
Kingcom
c84ca53b4d Fix mouse position calculation 2016-01-03 00:22:29 +00:00
Kingcom
9f7fd13875 Optimize register list drawing 2016-01-03 00:22:13 +00:00
Jonathan Li
4ee00501b2 gsdx:windows: Don't change renderer when changing adapter
The previous behaviour loaded the saved renderer config whenever the
adapter combobox was changed. The renderer will now only change if the
new adapter doesn't support the currently selected renderer (i.e
Direct3D11 might not be supported, so it'll revert to Direct3D 9).

Fixes #1080.
2016-01-02 22:29:40 +00:00
Jonathan Li
a7b580da0c gsdx:windows: Widen Hacks dialog slightly
The Wild Arms Offset text was slightly cut off due to the label being
too small. Make the dialog slightly wider so the full text will fit.

Someone should probably make the dialog look nicer at some point.
2016-01-02 22:29:25 +00:00
Gregory Hainaut
1b85d4403c gsdx: only enable "please fix me" message on debug build 2016-01-02 18:54:20 +01:00
ramapcsx2
12e97b66b0 pdfs updated 2015-12-31 17:57:09 +01:00
ramapcsx2
f5f4fc9014 portable.ini preparing for rollout 2015-12-31 17:55:58 +01:00
Kingcom
8e095ba8f8 Make register list scrollable 2015-12-31 17:20:14 +01:00
Kingcom
a6ef814653 Fix debugger crash after using shutdown. Fixes #1074 2015-12-31 17:20:10 +01:00
Kingcom
5a591dd650 Remember size of debugger window 2015-12-31 17:20:03 +01:00
Kingcom
884b2f4c4c Scale the font size in debugger controls with DPI 2015-12-31 17:19:59 +01:00
Kingcom
5b157d03e7 Use alternating background colors in the register list 2015-12-31 17:19:54 +01:00
Kingcom
bdf5be3111 Revert to old register list 2015-12-31 17:19:47 +01:00
Gregory Hainaut
ae5f302189 i10n: refresh cs_CS binary file 2015-12-31 10:03:40 +01:00
František Zatloukal
e99db4f6d6 Czech translation 2015-12-31 10:00:29 +01:00
Gregory Hainaut
cddc805dde gsdx: fix onimusha crash in custom resolution
I don't understand why but it seems it needs more than 8MB
2015-12-30 19:19:58 +01:00
Gregory Hainaut
7f32ba2e88 gsdx linux: fix ShadeBoost option case 2015-12-30 19:19:54 +01:00
ramapcsx2
1501d7fe8a whops 2015-12-30 18:52:01 +01:00
ramapcsx2
4f2a8161a7 gsdx dialog: renderer order and naming changed. due to many factors, we can't yet remove any of the software options. naming / order changes are possible though, if a majority votes for it. 2015-12-30 18:08:17 +01:00
ramapcsx2
81be817c39 about box changes 2015-12-30 15:49:28 +01:00
ramapcsx2
8ba761d334 1.4.0 version string is now saved to (Win) registry and portable.ini. We use this to detect older configuration files and start the First Time Wizard if necessary. This also prevents all older .inis (PCSX2, plugins) from being used in 1.4.0.
This commit should probably not be merged into master, but stay on this branch. A nicer way to handle upgrades is planned.
2015-12-29 17:52:23 +01:00
Kingcom
22880339b6 gsdx: fix windows compilation 2015-12-28 22:05:55 +01:00
Gregory Hainaut
08724daf98 gsdx: increase buffer to have crash in case of overflow
Avoid a crash on Onimusha3 (PAL 60HZ)

In theory it will be better to find the root cause of overflow. I.e. somewhere in this
code below. Dirty rectangle is too big.

***********************************************************************
if(rowsize > 0 && offset % rowsize == 0)
{
    int y = GSLocalMemory::m_psm[psm].pgs.y * offset / rowsize;

    if(r.bottom > y)
    {
        GL_CACHE("TC: Dirty After Target(%s) %d (0x%x)", to_string(type),
                t->m_texture ? t->m_texture->GetID() : 0,
                t->m_TEX0.TBP0);
        // TODO: do not add this rect above too
        t->m_dirty.push_back(GSDirtyRect(GSVector4i(r.left, r.top - y, r.right, r.bottom - y), psm));
        t->m_TEX0.TBW = bw;
        continue;
    }
}
***********************************************************************

So as a temporary solution (that will likely stay for a couple of
years), buffers were increased.
2015-12-28 22:05:50 +01:00
Gregory Hainaut
3d3b275410 gsdx: fix crash when preload data frame is enabled
Height of the dirty rectangle must be the GS size of the RT. Of course
RT doesn't have any height so we compute the max safest value.

Fix issue #987

Candidate for 1.4 release
2015-12-28 18:06:30 +01:00
ramapcsx2
f61c27ae20 small pdfs update and an nsis fix 2015-12-28 18:06:21 +01:00
willkuer
6259e61792 gsdx: defaulting extra rendering threads to 2 2015-12-28 18:06:12 +01:00
Akash
c56994b6a9 gsdx-gui: Label and Tooltip changes to RT option 2015-12-28 18:06:03 +01:00
Kingcom
ae763523d3 Fix IOP bltzal and bgezal opcodes 2015-12-28 18:05:51 +01:00
Gregory Hainaut
aca2f1434b bump some version numbers to 1.4
I may have miss a couple of them.
2015-12-27 18:05:26 +01:00
18 changed files with 30 additions and 69 deletions

View File

@@ -30,11 +30,3 @@ Installers and binaries for both Windows and Linux are available from **[our hom
| ![Pro Evo 2009](https://dl.dropboxusercontent.com/u/743491/PCSX2/ProEvo2009.jpg "Pro Evo 2009") | ![Megaman X8](https://dl.dropboxusercontent.com/u/743491/PCSX2/MegamanX8.jpg "Megaman X8") | ![TOTA](https://dl.dropboxusercontent.com/u/743491/PCSX2/TOTA.jpg "TOTA")
|:----:|:----:|:----:|
# Quality Assurance
**Build** | **Status**
--------|--------
Linux | [![Travis Build Status](https://travis-ci.org/PCSX2/pcsx2.svg?branch=master)](https://travis-ci.org/PCSX2/pcsx2)
Window | [![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/b67odm0dd506co78/branch/master?svg=true)](https://ci.appveyor.com/project/gregory38/pcsx2/branch/master)
Coverity| [![Coverity Scan Build Status](https://scan.coverity.com/projects/6310/badge.svg)](https://scan.coverity.com/projects/6310)

View File

@@ -46,9 +46,7 @@ Framelimiter_MasterToggle = F4
FullscreenToggle = Alt-ENTER
# Note: toggles suspend, but can resume only if the GS window is not set to hide
# when paused (Emu options -> GS window), and when the GS window is focused.
Sys_SuspendResume = ESC
Sys_Suspend = ESC
# Screenshot. Note: must not include shift or ctrl. With these held - it will
# create debug GS dump. The two other shortcuts will be added automatically.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1,2 @@
RunWizard=0
RunWizard=1
Version=140

View File

@@ -16,6 +16,9 @@
#include "PrecompiledHeader.h"
#include "cpudetect_internal.h"
#include "internal.h"
#ifdef __linux__
#include "fxsrintrin.h"
#endif
using namespace x86Emitter;

View File

@@ -31,7 +31,7 @@ EOF
# Default value
GIT_SHA1=0;
BRANCH="master"
BRANCH="1.4.x"
while [ -n "$1" ]; do
case $1 in
-help|-h ) help;shift 1;;

View File

@@ -21,7 +21,7 @@ set -e
######################################################################
# Script configuration
######################################################################
VERSION=1.3.0
VERSION=1.4.0
COPYRIGHT="PCSX2 Dev Team"
BUG_MAIL="https://github.com/PCSX2/pcsx2/issues"

View File

@@ -16,9 +16,9 @@
#pragma once
static const int PCSX2_VersionHi = 1;
static const int PCSX2_VersionMid = 5;
static const int PCSX2_VersionMid = 4;
static const int PCSX2_VersionLo = 0;
static const bool PCSX2_isReleaseVersion = 0;
static const bool PCSX2_isReleaseVersion = 1;
class SysCoreThread;

View File

@@ -56,7 +56,8 @@ namespace PathDefs
const wxDirName& Settings()
{
static const wxDirName retval( L"inis" );
static const wxDirName retval(wxsFormat(L"inis_%d.%d.%d",
PCSX2_VersionHi, PCSX2_VersionMid, PCSX2_VersionLo));
return retval;
}
@@ -939,7 +940,6 @@ AppConfig::UiTemplateOptions::UiTemplateOptions()
OutputField = L"Field";
OutputProgressive = L"Progressive";
OutputInterlaced = L"Interlaced";
Paused = L"<PAUSED> ";
TitleTemplate = L"Slot: ${slot} | Speed: ${speed} (${vfps}) | Limiter: ${limiter} | ${gsdx} | ${omodei} | ${cpuusage}";
}
@@ -955,7 +955,6 @@ void AppConfig::UiTemplateOptions::LoadSave(IniInterface& ini)
IniEntry(OutputField);
IniEntry(OutputProgressive);
IniEntry(OutputInterlaced);
IniEntry(Paused);
IniEntry(TitleTemplate);
}

View File

@@ -253,7 +253,6 @@ public:
wxString OutputField;
wxString OutputProgressive;
wxString OutputInterlaced;
wxString Paused;
wxString TitleTemplate;
};

View File

@@ -289,13 +289,15 @@ void Pcsx2App::EstablishAppUserMode()
// Wizard is only run once. The status of the wizard having been run is stored in
// the installation ini file, which can be either the portable install (useful for admins)
// or the registry/user local documents position.
int version;
conf_install->Read(L"Version", &version, 0);
bool runWiz;
conf_install->Read( L"RunWizard", &runWiz, true );
App_LoadInstallSettings( conf_install );
int pcsx2Ver = PCSX2_VersionHi * 100 + PCSX2_VersionMid * 10 + PCSX2_VersionLo;
if( !Startup.ForceWizard && !runWiz )
if( !Startup.ForceWizard && !runWiz && version == pcsx2Ver)
{
AppConfig_OnChangedSettingsFolder( false );
return;
@@ -310,5 +312,6 @@ void Pcsx2App::EstablishAppUserMode()
// Wizard completed successfully, so let's not torture the user with this crap again!
conf_install->Write( L"RunWizard", false );
conf_install->Write(L"Version", pcsx2Ver);
}

View File

@@ -66,7 +66,7 @@ void GSPanel::InitDefaultAccelerators()
m_Accels->Map( AAC( WXK_RIGHT ).Cmd().Alt(), "GSwindow_OffsetXplus" );
m_Accels->Map( AAC( WXK_NUMPAD_DIVIDE ).Cmd().Alt(), "GSwindow_OffsetReset" );
m_Accels->Map( AAC( WXK_ESCAPE ), "Sys_SuspendResume" );
m_Accels->Map( AAC( WXK_ESCAPE ), "Sys_Suspend" );
m_Accels->Map( AAC( WXK_F8 ), "Sys_TakeSnapshot" ); // also shift and ctrl-shift will be added automatically
m_Accels->Map( AAC( WXK_F9 ), "Sys_RenderswitchToggle");
@@ -101,8 +101,8 @@ GSPanel::GSPanel( wxWindow* parent )
Connect(wxEVT_CLOSE_WINDOW, wxCloseEventHandler (GSPanel::OnCloseWindow));
Connect(wxEVT_SIZE, wxSizeEventHandler (GSPanel::OnResize));
Connect(wxEVT_KEY_UP, wxKeyEventHandler (GSPanel::OnKeyDownOrUp));
Connect(wxEVT_KEY_DOWN, wxKeyEventHandler (GSPanel::OnKeyDownOrUp));
Connect(wxEVT_KEY_UP, wxKeyEventHandler (GSPanel::OnKeyDown));
Connect(wxEVT_KEY_DOWN, wxKeyEventHandler (GSPanel::OnKeyDown));
Connect(wxEVT_SET_FOCUS, wxFocusEventHandler (GSPanel::OnFocus));
Connect(wxEVT_KILL_FOCUS, wxFocusEventHandler (GSPanel::OnFocusLost));
@@ -263,7 +263,7 @@ void GSPanel::OnHideMouseTimeout( wxTimerEvent& evt )
m_CursorShown = false;
}
void GSPanel::OnKeyDownOrUp( wxKeyEvent& evt )
void GSPanel::OnKeyDown( wxKeyEvent& evt )
{
// HACK: Legacy PAD plugins expect PCSX2 to ignore keyboard messages on the GS Window while
@@ -288,25 +288,6 @@ void GSPanel::OnKeyDownOrUp( wxKeyEvent& evt )
}
#endif
#ifdef __WXMSW__
// Not sure what happens on Linux, but on windows this method is called only when emulation
// is paused and the GS window is not hidden (and therefore the event doesn't arrive from
// the pad plugin and doesn't go through Pcsx2App::PadKeyDispatch). On such case (paused).
// It needs to handle two issues:
// 1. It's called both for key down and key up (linux apparently needs it this way) - but we
// don't want to execute the command twice (normally commands execute on key down only).
// 2. It has wx keycode which is upper case for ascii chars, but our command handlers expect
// lower case for non-special keys.
// ignore key up events
if (evt.GetEventType() == wxEVT_KEY_UP)
return;
// Make ascii keys lower case - this apparently works correctly also with modifiers (shift included)
if (evt.m_keyCode >= 'A' && evt.m_keyCode <= 'Z')
evt.m_keyCode += (int)'a' - 'A';
#endif
if( (PADopen != NULL) && CoreThread.IsOpen() ) return;
DirectKeyCommand( evt );
}
@@ -622,8 +603,6 @@ void GSFrame::OnUpdateTitle( wxTimerEvent& evt )
title.Replace(L"${omodef}", omodef);
title.Replace(L"${omodei}", omodei);
title.Replace(L"${gsdx}", fromUTF8(gsDest));
if (CoreThread.IsPaused())
title = templates.Paused + title;
SetTitle(title);
}

View File

@@ -63,7 +63,7 @@ protected:
void OnResize(wxSizeEvent& event);
void OnMouseEvent( wxMouseEvent& evt );
void OnHideMouseTimeout( wxTimerEvent& evt );
void OnKeyDownOrUp( wxKeyEvent& evt );
void OnKeyDown( wxKeyEvent& evt );
void OnFocus( wxFocusEvent& evt );
void OnFocusLost( wxFocusEvent& evt );
void CoreThread_OnResumed();

View File

@@ -327,8 +327,7 @@ namespace Implementations
}
}
if (g_Conf->GSWindow.CloseOnEsc)
sMainFrame.SetFocus();
sMainFrame.SetFocus();
}
void Sys_Resume()
@@ -336,17 +335,6 @@ namespace Implementations
CoreThread.Resume();
}
void Sys_SuspendResume()
{
if (CoreThread.HasPendingStateChangeRequest())
return;
if (CoreThread.IsPaused())
Sys_Resume();
else
Sys_Suspend();
}
void Sys_TakeSnapshot()
{
GSmakeSnapshot( g_Conf->Folders.Snapshots.ToAscii() );
@@ -558,8 +546,8 @@ static const GlobalCommandDescriptor CommandDeclarations[] =
{ "GSwindow_OffsetXplus", Implementations::GSwindow_OffsetXplus, NULL, NULL, },
{ "GSwindow_OffsetReset", Implementations::GSwindow_OffsetReset, NULL, NULL, },
{ "Sys_SuspendResume",
Implementations::Sys_SuspendResume,
{ "Sys_Suspend",
Implementations::Sys_Suspend,
NULL,
NULL,
},

View File

@@ -329,7 +329,7 @@ namespace GLLoader {
// GL4 hardware (due to proprietary driver limitation)
bool found_GL_ARB_separate_shader_objects = false; // Issue with Catalyst...
bool found_GL_ARB_separate_shader_objects = false; // Issue with Mesa and Catalyst...
bool found_geometry_shader = true; // we require GL3.3 so geometry must be supported by default
bool found_GL_EXT_texture_filter_anisotropic = false;
bool found_GL_ARB_clear_texture = false; // Don't know if GL3 GPU can support it
@@ -337,8 +337,8 @@ namespace GLLoader {
bool found_GL_ARB_copy_image = false; // Not sure actually maybe GL3 GPU can do it
bool found_GL_ARB_gpu_shader5 = false;
bool found_GL_ARB_shader_image_load_store = false; // GLES3.1
// DX10 GPU limited driver
bool found_GL_ARB_texture_barrier = false; // Well maybe supported by older hardware I don't know
// DX10 GPU limited driver
bool found_GL_ARB_draw_buffers_blend = false;
bool found_GL_ARB_clip_control = false;
bool found_GL_ARB_direct_state_access = false;
@@ -434,8 +434,7 @@ namespace GLLoader {
// GL4.1
if (ext.compare("GL_ARB_separate_shader_objects") == 0) {
if (!fglrx_buggy_driver && !mesa_amd_buggy_driver && !intel_buggy_driver) found_GL_ARB_separate_shader_objects = true;
else fprintf(stderr, "Buggy driver detected, GL_ARB_separate_shader_objects will be disabled\n"
"Note the extension was fixed on Mesa 11.1, you will need a manual overwrite to use it\n");
else fprintf(stderr, "Buggy driver detected, GL_ARB_separate_shader_objects will be disabled\n");
}
// GL4.2
if (ext.compare("GL_ARB_shading_language_420pack") == 0) found_GL_ARB_shading_language_420pack = true;

View File

@@ -1522,7 +1522,7 @@ void GSDeviceOGL::CheckDebugLog()
// Note: used as a callback of DebugMessageCallback. Don't change the signature
void GSDeviceOGL::DebugOutputToFile(GLenum gl_source, GLenum gl_type, GLuint id, GLenum gl_severity, GLsizei gl_length, const GLchar *gl_message, const void* userParam)
{
std::string message(gl_message, gl_length >= 0 ? gl_length : strlen(gl_message));
std::string message(gl_message, gl_length);
std::string type, severity, source;
static int sev_counter = 0;
switch(gl_type) {

View File

@@ -124,7 +124,7 @@ void GSWndOGL::CheckContext()
int glxMajorVersion, glxMinorVersion;
glXQueryVersion(m_NativeDisplay, &glxMajorVersion, &glxMinorVersion);
if (glXIsDirect(m_NativeDisplay, m_context))
fprintf(stdout, "glX-Version %d.%d with Direct Rendering\n", glxMajorVersion, glxMinorVersion);
fprintf(stderr, "glX-Version %d.%d with Direct Rendering\n", glxMajorVersion, glxMinorVersion);
else {
fprintf(stderr, "glX-Version %d.%d with Indirect Rendering !!! It won't support properly opengl\n", glxMajorVersion, glxMinorVersion);
throw GSDXRecoverableError();