Commit Graph

449 Commits

Author SHA1 Message Date
ramapcsx2.code b99aa05cbf Small round of patches for various issues.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5830 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 14:25:48 +00:00
ramapcsx2.code 72f7b70f7b SPU2-X:
WinXP should be exempted from Portaudio as the default for now. 
It has a large latency with DirectSound compared to direct use and XA2 isn't available at all.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5823 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 17:03:50 +00:00
gigaherz 01daa0b6fd Change the vs2012 project files to use the v110_xp platform toolset, and the vs2013 project files to use the v120_xp platform toolset, so that the resulting executables can be run in Windows XP/2003.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5822 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 15:30:34 +00:00
ramapcsx2.code 992a453a68 SPU2-X:
The preferred audio output module is PortAudio, so making it the default under Windows now (it is already on Linux).
It will use wasapi mode with the default sound device by default, both are configurable though.
This setup gives us better latency and a higher time stretch polling frequency, resulting in better quality overall.
With this we can also lower the main latency default from 150ms to now 100ms.
There is no error checking for the wasapi mode selection yet, as I don't know how this should be done. 
Help would be appreciated (gigaherz!) :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5821 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-23 15:19:43 +00:00
ramapcsx2.code be185275c9 Minor additions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5776 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-28 21:24:25 +00:00
gigaherz 4173080028 Because vs2012==vs11 and vs2013==vs12, which is extremely confusing, I renamed the project files to use the full year as the name.
Also fixed some project references to the right filenames.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5764 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:53:36 +00:00
gigaherz 74378ce378 Created vs2013 files based on the vs2012 code, and fixed a small incompatibility between vs2013 and pthreads.
Removed some missing headers from the vs2010 and vs2012 project files that were causing vs to always claim the projects were out of date.
Also removed some other entries for c/cpp files that were disabled but also missing (I did not search exhaustively).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5763 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:44:32 +00:00
gregory.hainaut 0a9e9f9834 cmake: fix sdl switch typo (close #1448)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5761 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-12 18:56:15 +00:00
gregory.hainaut 5df7af9bc5 cmake:
* new option SDL2_API
* drop GLSL_SHADER_DIR. Useless, shaders are embedded in .h file
* use some hardening flags (for the moment only basic one)
onepad:
* port the code to SDL2 (Note only SDL1 is supported for the moment)
* improve detection of button vs axis (long-standing issue)
* avoid potential overflow on mouse mouvement detection


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5756 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-01 21:05:59 +00:00
sudonim1@gmail.com 48f284a49e Compilation fix for SPU2-X non-release targets on VS2010.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5733 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-10-12 20:45:02 +00:00
gregory.hainaut 00ea70d4d1 spu2x (linux): allow to use sdl as audio backend instead of portaudio (recommended for pulseaudio user). Close i1413
Thanks to Matt Scheirer for his patch



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5731 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-14 15:23:35 +00:00
avihal@gmail.com 49d417b60e SPU2-X: Stretcher: Better behavior - can now maintain stable 1:1 with 30ms latency on my system if the game is light enough, and much better resilience to infinite underruns (e.g. when going from turbo to 60fps, or from turbo to 10fps, even with under 50ms latency): 1. Improved averaging on init (and after reset) 2. Added reset after few underruns. 3. automatically slightly increase target latency when pcsx2 runs slow. 4. un-staled dynamic tuning (still disabled by default, but now can be enabled and works reasonably well). 5. Lowered minimum latency from 50ms to 30ms.
Next commit will include some cleanups, and I'll probably also remove the dynamic-tunning and related support code (not a lot of code though, but.. it's currently unused). I'm also considering completely removing the old stretcher from the code, such that both dynamic-tunning and the old stretcher will only live in SVN history.

Meanwhile, you can test this patch and report back here if you notice a difference. BTW, on my system I use the portaudio output since IIRC it offers the lowest latency.

As before, to display stretcher messages at the console, enable underrun/overrun messages at the SPU2X debug UI (which is also available on normal builds).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5729 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-12 13:35:29 +00:00
gregory.hainaut c2acd80236 spu2x: correct the modulo parameter of the Timestretcher. Use a size of 128 so the compiler can optimize the code a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5728 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-11 20:56:48 +00:00
gregory.hainaut 44d8301bb2 spu2x: array out of bond (-1)
Performance note, it might be faster to replace the MODULO with an AND. Not sure on the impact
for the new time stretcher algo.

GSdx: fixed use-after-free (linux)

PCSX2: 
* add a define to support address sanitizer (both rely on 0x20000000-0x3fffffff memory ranges..)
* sio_buffer out of bond (-1). Maybe we can move the flush in the 2 if previous branch. It would
avoid the extra test.
* wxGetEnv (linux) generates double free (maybe not thread safe). Cache the result so it doesn't crash 
anymore when switching renderer

Comment/Review/Improvement are welcome :)




git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5727 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-10 11:41:11 +00:00
gregory.hainaut ba2ec6fe59 all: gcc warning clean round 4
* remove unused variable
* move static function from h into cpp
* Initialized hw_by_page to 0xFFFFFFFF instead of -1 (number must be a positive integer)
* Use a s32 fore m_current_lsn instead of u32 (use -1 as error code)
Bonus: a couple of fix for clang compiler (doesn't mean that it fully compile with clang)
* remove useless __debugbreak on linux
* use short for 16bits atomic function


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5695 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-03 18:42:05 +00:00
gabest11 ddaa892726 Removed ATL/MFC dependencies from every project, the free version of visual studio does not have those. It compiles with vs2012 express now, will fix others later, in case they are broken.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5692 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-01 21:28:58 +00:00
gregory.hainaut a4475a4595 spu2x:
* remove iconvert.cpp not used anymore
* change copyrigh header from GPL to LGPL. Those 2 files are only basic .h. 1 licence by plugin is enough ;)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5691 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-01 16:43:35 +00:00
gregory.hainaut d81254469a gsdx ogl:
* fix shader compilation on Nvidia (broken on r5682)
* fix various memory leak thanks to Valgrind

Cmake: fix a minor typo


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5688 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-30 11:18:46 +00:00
gregory.hainaut d9af23c946 plugin: restore sprintf_s on windows and hopefully fix vs201n compilation
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5684 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 17:11:16 +00:00
gregory.hainaut 3c7167be50 clean (some) gdb warning: round 1
* use svnrev.h on linux too
* replace sprintf_s with snprintf (hope it still compile on Windows)
* init integer with 0 instead of NULL
* various int -> u32/uint32/uint on for loop index
* remove a couple of unused variable
* init few variable
* disable unused warning results


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5683 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 10:43:50 +00:00
ramapcsx2 8f9e04dc9d GSdx, SPU2-X: Remove old code and disable a now useless warning.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5559 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-12 18:41:33 +00:00
ramapcsx2 fae268b269 One more patch by KrossX:
Should fix the VS2012 project files for when only VS2012 (and not VS2010) is installed.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5557 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-12 11:46:36 +00:00
ramapcsx2 8d80ff0652 SPU2-X: Adding a log for bad pitch settings, in preparation of changing current behavior. (Need to check some games that do it first)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5545 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-05 14:21:24 +00:00
ramapcsx2 7f45b21be1 SPU2-X:
Just adding a log to devel builds. This is a curious case we want to be notified about.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5478 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-12-13 14:44:36 +00:00
sudonim1@gmail.com 2a0bbc89db SPU2-X: Actually ignore successive writes within 4 ticks to the same key-on bit, don't just say we do. I think I just forgot this return in r5418. Fixes The Legend of Spyro: The Eternal Night (probably the other two legend games too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5460 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-21 14:32:55 +00:00
ramapcsx2 6050e9bb05 SPU2-X: Made the message "KeyOn after less than 4 T disregarded" less visible on release builds. It tended to slow games down.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5459 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-21 12:18:50 +00:00
sudonim1@gmail.com 1468b21ca0 SPU2-X: Disabled the parked voice processing optimisation completely for now. Fixes Silent Hill: Shattered Memories, maybe others. Reduces speed for all games. However much you hate this change, I hate it more.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5446 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-10 18:10:34 +00:00
ramapcsx2 28e6d96955 SPU2-X: 2 known games set an illegal reverb EEA that randomly causes crashes in the plugin.
We need to figure out what real hardware does with it but for now let's disable the effect engine in that case.
Affected games: Summer Beach Volleyball and 18 Wheeler.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5445 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-07 19:39:29 +00:00
gregory.hainaut f53a062063 license: update the copyrigh address to please linux distribution
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5436 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-19 20:27:50 +00:00
ramapcsx2 e7eb00469a Added correct clamp modes for GT4 to the game database. Fixes various issues with the GUI.
Also added a mark for Klonoa 2 problems with SPU2-X.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5434 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-15 19:39:43 +00:00
ramapcsx2 dece4c730c Add NFL '12 to the database and silence a SPU2 cache clear notice.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5430 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-09 13:07:06 +00:00
sudonim1@gmail.com 2cc794e638 SPU2-X: Add an assertion that I used (in a more stupid and long winded form) to find the effects memory corruption bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5427 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-03 01:45:11 +00:00
sudonim1@gmail.com 8d07fdf165 SPU2-X: Update effects engine indexers when the effects area is moved and kept the same size. Not doing so caused SPU2 memory corruption in Sphinx and the Cursed Mummy and maybe others.
Save state compatibility broken.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5426 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-02 17:43:21 +00:00
sudonim1@gmail.com 86e5f32efb SPU2-X: Another change to the shortcut processing of voices, check the actual loop flags in memory rather than the ones in the voice structure because the memory might've changed. Fixes Innocent Life - A Futuristic Harvest Moon.
Also, check both cores rather than the current core, that was a mistake.
Speed-- again.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5425 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-02 17:40:42 +00:00
sudonim1@gmail.com 77eee6e2b9 SPU2-X: Add extra exceptions to shortcutting silenced voice processing (which is basically a speedhack and should probably have a GUI option). Unfortunately this is a significant speed hit for all games, but I have no solution to this for now. Fixes Gegege no Kitarou - Ibun Youkai Kitan and quite likely others.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5421 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-22 22:11:37 +00:00
sudonim1@gmail.com f1cffa6f7f SPU2-X: Delay starting voices for 4 SPU2 cycles after key on. No idea if this is right, but there must be a reason some register writes aren't effective for a few cycles after key on, and this seems likely. Fixes DQ5 adventure log music and Le Mans 24 Hours everything.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5418 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 15:17:16 +00:00
sudonim1@gmail.com 636ce9fc1d SPU2-X: Fix old crash on state load if logging is enabled. (It's appalling that this is in the state though.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5417 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:39:57 +00:00
sudonim1@gmail.com 4d9e07b311 SPU2-X: Removed the temporary "TDA" variable from the core structure. Breaks state compatibility.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5416 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:05:04 +00:00
sudonim1@gmail.com 7dc3b25ddf SPU2-X: Trigger interrupts only if TSA is incremented to IRQA on the basis that we know that the final TSA value after the transfer is checked. Also fix inconsistency in TSA after transfer in one case. Fixes Chaos Legion bgm.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5415 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:03:19 +00:00
gigaherz 31f685c490 [VS2012] For some reason when I made the conversion I totally forgot to copy these, and I didn't notice that until yesterday.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5403 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-05 18:04:09 +00:00
sudonim1@gmail.com 4ab5b03bdc SPU2-X: Use zero coefficients when the sample data references a higher entry in the coefficients table than we know about and print a warning to the console if logging is enabled. Fixes audio glitches in "Crash" series games. Also fixed the voice stop log, it was printing when voices looped.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5402 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-03 11:43:16 +00:00
sudonim1@gmail.com 7e528d3f1f SPU2-X: cleaned up the re-enabled debugging messages from r5400.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5401 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-03 09:55:08 +00:00
ramapcsx2 2e1b138219 SPU2-X: Add the alignment check to console logging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5400 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 22:20:18 +00:00
sudonim1@gmail.com d4e4abfe82 SPU2-X: TDA is a fake internal register (which should probably be nuked), so reading from the FIFO (or whatever 1AC is) certainly shouldn't use it. Also fixed up related code a little. We don't know of any games which actually use this though. Actually I don't know if we know that reading this register does anything, this could all be the product of an overactive imagination.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5399 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 22:07:11 +00:00
sudonim1@gmail.com 7027c54309 SPU2-X: Don't force align transfer addresses, fixes The Bouncer. I honestly don't know on what basis they were force aligned in the first place. The Bouncer very strangely has correctly aligned sample data in IOP memory which it uploads using an unaligned DMA with SPU2 set to an unaligned address, resulting in the data being correctly aligned in the end. Weird. It also writes the address twice in the order high word, low, low, high, the first pair being aligned and the second pair not. Really weird.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5398 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 21:33:16 +00:00
sudonim1@gmail.com b643fa06d5 SPU2-X: Fix a minor logging bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5397 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-01 13:10:38 +00:00
gigaherz a21c85266c Make PCSX2 compile with Visual Studio 2012 (3/3): Upgrade the project files and fix a few project names. Update the .sln to point to the right project files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5384 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:54:12 +00:00
gigaherz 027b7a8b98 Make PCSX2 compile with Visual Studio 2012 (2/3): Copy project files and solution from their vs2010 originals. Not updated yet!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5383 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:45:56 +00:00
sudonim1@gmail.com 179246a4eb SPU2-X: Tweak the quick fix in the previous rev a little: also select the default device if a GUID is specified but not present in the enumeration.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5317 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-20 12:28:13 +00:00
sudonim1@gmail.com aa54e28add SPU2-X: Quick fix for an issue with dsound configuration dialog where if the default device is selected, nothing is initially selected in the combo box and on writing the configuration uninitialised memory is used for the GUID.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5316 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-20 12:21:44 +00:00