Commit Graph

7651 Commits

Author SHA1 Message Date
Avi Halachmi (:avih) e8b653ddf3 KB commands: change Sys_Suspend to Sys_SuspendResume (toggle)
It's now possible to press ESC once to pause, and ESC again to resume (or assign
any other key via PCSX2_keys.ini, e.g. to SPACE).

Note that resume only works if the GS window is NOT set to hide on pause (Emu
options -> GS Window), and if the key is pressed while the GS window is focused.

This includes two related changes:
- The command name at PCSX2_keys.ini is now changed to Sys_SuspendResume.
- If the GS window is NOT set to hide on pause, then it stays focused on pause.

--nogui also gains this behavior, so it's now possible to launch without a GUI
and still suspend/resume if the GS window is not set to hide on pause. If it is
set to hide on pause, then the behavior remains as it was: exit PCSX2 on pause,
or prompt to exit/resume if --noguiprompt is provided.
2016-01-03 22:13:14 +02:00
Avi Halachmi (:avih) 6300a47c15 GS window: improve keys/commands handling when paused
Only relevant if the GS window is set to NOT hide when paused. At this case
there were two issues on Windows:
- Commands were invoked twice.
- Non-special-keys (e.g. plain 'q') were not handled at all.

Not terribly important now, but it prepares for the next commit.
Also rename a function to have a more meaningful name.
2016-01-03 22:13:14 +02:00
Akash 8c5c73ea4b GSDX: Fast blending option for windows 2016-01-03 15:40:04 +01:00
Gregory Hainaut 24be4b4969 gsdx-ogl: remove unsafe fbmask of the free SW blending
Initially it was free to do the SW blending because safe fbmask
will already do a sw blending.

Unsafe version uses a fast path with a limited blending. Therefore
SW blending isn't free anymore.

Improve the speed of the previous speed hack (xenosaga 1)
2016-01-03 15:39:45 +01:00
Gregory Hainaut bb15e54438 gsdx-linux: add a new gui entry for the previous hack 2016-01-03 15:39:45 +01:00
Gregory Hainaut 0d25a0592a gsdx-ogl: fast blending accurate hack
The hack relies on the undefined behavior of the hardware so it can
potentially generate rendering corruption.

This new hack drops the cache flusing when only the alpha channel is masked.
Alpha is a direct copy of the fragment. Normally masked bits will be constant
everywhere (RT, FS output, texture cache) so it would likely work.

Just in case, code is only enabled with the new shiny hack
2016-01-03 15:39:45 +01:00
Gregory Hainaut 73b22cac56 badges takes 3 2016-01-03 14:31:26 +01:00
Gregory Hainaut 6140fde60c badges take 2 2016-01-03 14:19:38 +01:00
Gregory Hainaut ddc657a073 README.md: try to add some badges 2016-01-03 14:13:41 +01:00
Jonathan Li f14797e64f Merge pull request #1079 from Kingcom/registerlist
Optimize register list drawing
Fixes a register list GUI issue on Linux.
2016-01-03 00:20:23 +00:00
Jonathan Li bb37d1c339 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:20:30 +00:00
Jonathan Li 12e80c271b 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:17:30 +00:00
Kingcom c6b60d5376 Fix mouse position calculation 2016-01-02 22:02:33 +01:00
Kingcom a3dea9b243 Optimize register list drawing 2016-01-02 22:02:33 +01:00
Gregory Hainaut fc98fc9781 gsdx: only enable "please fix me" message on debug build 2016-01-02 18:53:15 +01:00
Gregory Hainaut 8b5e22dd7d i10n: update cs_CZ binary 2016-01-01 14:44:06 +01:00
Gregory Hainaut 7aae0ce394 gsdx ogl: minor string update 2016-01-01 14:43:47 +01:00
ramapcsx2 6e34f183ea Merge pull request #1070 from Kingcom/registerlist
Revert to old register list, make it scrollable
2015-12-31 17:13:06 +01:00
Gregory Hainaut 93e26f8117 Merge pull request #1076 from frantisekz/master
Czech translation
2015-12-31 09:59:50 +01:00
František Zatloukal ec453c32a1 Czech translation 2015-12-31 01:17:58 +01:00
Kingcom cbd7aed0f3 Make register list scrollable 2015-12-30 20:12:19 +01:00
Kingcom 80db2abe3d Fix debugger crash after using shutdown. Fixes #1074 2015-12-30 19:22:11 +01:00
Kingcom de1f3d0df7 Remember size of debugger window 2015-12-30 19:22:11 +01:00
Kingcom be0ad9be2f Scale the font size in debugger controls with DPI 2015-12-30 19:22:11 +01:00
Kingcom 1fe15c16cc Use alternating background colors in the register list 2015-12-30 19:22:10 +01:00
Kingcom 11bcb328f8 Revert to old register list 2015-12-30 19:22:10 +01:00
Gregory Hainaut 902e295089 gsdx: fix onimusha crash in custom resolution
I don't understand why but it seems it needs more than 8MB
2015-12-30 19:14:52 +01:00
Gregory Hainaut bfa53af50f gsdx linux: fix ShadeBoost option case 2015-12-30 19:14:52 +01:00
ramapcsx2 d84d765aeb whops 2015-12-30 18:53:38 +01:00
ramapcsx2 8e3aec8aaf 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:06:54 +01:00
ramapcsx2 df0dd10c9f about box changes 2015-12-29 17:47:10 +01:00
Kingcom 191453d89a gsdx: fix windows compilation 2015-12-28 22:05:01 +01:00
Gregory Hainaut a595a09fbd 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 21:40:06 +01:00
Gregory Hainaut c36fccdd8e 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:00:14 +01:00
ramapcsx2 90ad6e89ad small pdfs update and an nsis fix 2015-12-28 17:44:15 +01:00
ramapcsx2 ef62d753d1 Merge pull request #1056 from ssakash/gsdx_swthreads
GSDX: Some change to software rendering threads
2015-12-28 17:23:32 +01:00
sudonim1 3042648ed4 Merge pull request #1069 from Kingcom/iop
Fix IOP bltzal and bgezal opcodes
2015-12-28 15:25:21 +00:00
Kingcom 4c36c12fb1 Fix IOP bltzal and bgezal opcodes 2015-12-28 10:05:26 +01:00
willkuer 0c4b25bcec gsdx: defaulting extra rendering threads to 2 2015-12-28 01:05:25 +05:30
Gregory Hainaut ac0d7f74cf gsdx: reorder renderer config code & fix linux gui
Group all DX option into a unique section (avoid tons of ifdef)

Rename Null renderer as "None (Core Benchmark)"
2015-12-27 11:24:05 +01:00
Jonathan Li 20e36f8adf Merge pull request #1063 from achurch/master
Fix build error with wxWidgets 2.8.
2015-12-26 17:26:21 +00:00
Andrew Church b66cd84b9a Fix build error with wxWidgets 2.8.
Regression introduced in 81891ac1097f28fc97c0bd4226b0b72394c2ef69;
assigning "" to a wxString results in an ambiguity error when building
with wxWidgets 2.8 (this could well be a bug in wxWidgets).  The default
wxString constructor creates an empty string anyway, so these assignments
are unnecessary.
2015-12-26 10:57:48 +09:00
Avi Halachmi (:avih) df356694c5 spu2-x: stretcher: allow minimum latency of 15ms (was 30ms)
15ms latency is too little most of the time, but if the stars align (light game,
fast system, the correct audio output module - portaudio comes to mind), it
might work well/reasonably, so allow it.

Watch the console for stretcher related messages. If you hear bad audio (clicks
etc) or notice reset/underruns messages, it means the latency is too low. The
optimal behavior (stretching is locked to 1:1) is when a message "stretch: None (1:1)"
shows at the console, which isn't followed by a message "stretch: Dynamic" or
resets or spu2 underruns.

I'm pretty sure such low latency with good performance (mostly locked to 1:1)
was not possible in the past, but it seems possible (sometimes) now. Maybe the
previous "black magic" commit helps

The default is still 100ms which is still fine for most cases.

This commit affects Windows. Linux still has a different minimum, probably
mostly due to UI/constants. Maybe someone should test and change that too.
2015-12-25 01:49:53 +02:00
Avi Halachmi (:avih) 22c9d882a8 spu2-x: stretcher: dampen the tempo adjustment to reduce resonance
I don't have a fully scientific explanation here, but it seems that with big
buffers (~200ms and up), the stretcher adjustment can overshoot the target
equilibrium back and forth, in effect never stabilizing.

This commit makes it change slightly slower which somehow seems to improve its
behavior. Sorry for not having a better explanation, as at this stage tuning the
stretcher has become somewhat of a black magic.

But hey, if it works...

Tested with buffers from 30ms to 1000ms, and with playback speed and speed
changes between 30% and 500%, and as far as I can tell it only makes it better.

Fingers crossed.
2015-12-24 23:26:29 +02:00
Akash 6dda879e63 EE-Syscall: Add missing modes 2015-12-24 13:30:25 +05:30
Gregory Hainaut 3fc9643460 i10n: udpate binary translation files 2015-12-23 18:26:28 +01:00
IlDucci 361e261997 i10n: update es_ES
Greg: merge & conflict
2015-12-23 18:25:06 +01:00
Leucos 062212952d i10n: update it_IT
Greg: merge & conflict stuff
2015-12-23 18:18:15 +01:00
Gregory Hainaut 6edd8834dd Merge branch 'josephgbr-master' 2015-12-23 17:56:38 +01:00
Gregory Hainaut 1ee8130ffa Merge branch 'master' of git://github.com/josephgbr/pcsx2 into josephgbr-master
greg: resolve conflict

Conflicts:
	locales/pt_BR/pcsx2_Iconized.po
	locales/pt_BR/pcsx2_Main.po
2015-12-23 17:56:21 +01:00