Commit Graph

120 Commits

Author SHA1 Message Date
ramapcsx2 42cb1c4bb1 SPU2-X:
- Ok, that interrupt commit in r2600 was silly. The "special register write" is a simple set audio to max volume. We don't interrupt those :p
NEW IOP DMAC:
- Make the adma interrupts happen early, as in the previous commit for old dmac.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2602 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-17 22:37:13 +00:00
ramapcsx2 f6119e02f0 SPU2-X:
- Don't delay the adma irq callbacks, call them directly.
Should finally fix all those sound dropouts that only happened with this plugin :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2601 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-17 21:12:02 +00:00
ramapcsx2 8d7971466d SPU2-X:
- Added an interrupt call on a special register write, which mimics peops spu2 behavior.
This lets Silent Hill Origins get further when booting up.
Note that it's not complete and hackish, need someone with spu2 experience to make it right :p
- Also added various logging stuff

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2600 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-17 17:35:06 +00:00
gigaherz cdb5de009b Experimental stuff, "newly discovered" flag from some old ps1 source code (so yeah not new, just I had never seen it) which appears to indicate the status of the spu's internal transfer queue (both dma and non-dma transfer styles).
Only applied for DMAs, and only in the new dmac code. Please tell if it breaks anything! and also if it fixes anything!


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2566 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-06 01:35:36 +00:00
arcum42 cc585042ce Spu2-x: A few quick changes to get it compiling in Linux again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2562 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-05 03:59:19 +00:00
gigaherz 8ef8958e2d Forgot to check if my changes compiled with the new dmac stuff disabled. Thanks Pashifika.kasuru for pointing it out.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2560 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-04 21:04:48 +00:00
gigaherz 7090edf371 Chagne a few thigns around for the spu2-x Irq flagging. If this breaks anything please tell.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2559 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-04 18:39:15 +00:00
gigaherz 34e44e4956 Experimental sliced transfer stuff for spu2-x in the new dmac code. Probably doesn't make anything better, and it could slow down the iop a tiny bit while doing DMAs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2558 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-04 18:17:41 +00:00
gigaherz b05733a8fb "giga: PlainDMAWrite((u16*)data,bytesLeft); << not bytesLeft/2 ? Fixes sound in many games" whoops.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2557 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-04 16:59:48 +00:00
gigaherz 06db5bba38 Hackfix a problem with sio2 in the new dmac. It needs some changes to the dmac system (possibly a dmaStart function with more accurate information) to be implemented properly but for now, this will do.
Also make the autodma messages work like before so they are configurable again.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2555 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-03 03:59:21 +00:00
gigaherz 9ae807134e Experimental implementation of spu2 interface for the new iop dmac.
It's implemented only on SPU2-X and disabled by default.
FF12 and Atelier iris had working FMVs and bgm, other games might not
Try at your own risk.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2554 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-03 03:37:55 +00:00
ramapcsx2 909a7de4f6 SPU2-X:
- Ok, skip the whole runtime reset, since we don't know (yet) what vars need to be reset, and more importantly, when.
- Makes it possible to disable the specific BIOS hack we had. :)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2551 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-02 06:28:50 +00:00
ramapcsx2 300717df6c SPU2-X:
- Don't the whole core on a core reset. Fixes sound in Silver Surfer, Silent Hill Shattered Memories and prolly others.
(SH becomes playable with this. ;) Still needs GSdx software though. )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2548 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-02 04:50:51 +00:00
Jake.Stine e747337d63 A big old crapload of UI and thread management changes. Recoded the EventSource/EventListener system to be more C++ and less hacky C. Probably breaks Linux!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2474 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-22 15:22:01 +00:00
arcum42 cbb2000400 Commit a modified copy of the CMake files from issue 513. (Note: work in progress. Not currently for general use. Builds made using cmake are currently not supported, and unlikely to work properly.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2464 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-21 15:12:50 +00:00
gigaherz c1cd29a534 Started implementing configuration support for PortAudio. Since PortAudio doesn't have any kind of "Unique ID" for the listed devices, I have to rely on the "host api" name and the descriptive name of the device, but it doesn't seem to be 100% reliable. In case the device name can't be found, it will try to use the default device for the specified API. If no api is specified, then it will fall back to using whatever default device PortAudio provides.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2445 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-17 16:46:28 +00:00
gigaherz f878a438ff Fetched a snapshot of the source from portaudio site, and embedded it into the project. I might have missed something, so this will need some more work before it's fully stable.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2441 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-17 01:04:46 +00:00
gigaherz ce396272d1 SPU2-X: Experimental PortAudio module. No config dialogs. Will use the system default output device & whatever the default "api" is in portaudio. Requires user-compiled portaudio lib, might commit later.
Widnows users probably don't have any interest in this unless you want to play the audio through portaudio's ASIO driver. Arcum was interested so I commited.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2439 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-16 17:59:00 +00:00
Jake.Stine 2f38decdab Fixing some more bone-headed project file compilation errors (my fault, don't know what I was thinking when I did this w32pthreads lib change int he first place)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2393 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-24 02:36:58 +00:00
ramapcsx2 67b55648ae SPU2-X:
- Slight adjustment on the timestretcher, stops it from going to "emergency" mode too often (even on bigger buffers).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2385 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-22 17:05:40 +00:00
Jake.Stine 9f41fc4793 (Most Plugins) Updated plugins to obey PCSX2's ini folder requests. This will fix problems with plugins failing to save settings on Vista/Win7 due to lack of Admin rights, and also ensures all the plugin inis show up where you would expect them to.
Fixed a couple UI bugs: FirstTime Wizard display bug and the "Configure..." button in the plugin control panel grays out when it should.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2361 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-19 18:30:56 +00:00
Jake.Stine 2baa81c997 w32pthreads/spu2-x/gsdx: add proper "debug" build of w32pthreads, instead of both debug and release overwriting the same dll.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2319 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-06 15:33:20 +00:00
Jake.Stine 1dced84153 Linux compilation fixes and fix some signed/unsigned stuff in IsoReader.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2217 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-18 16:53:44 +00:00
ramapcsx2 d8c495b064 SPU2-X:
- Set the "latency" slider adjustment resolution to 1, so it's actually possible to set the value the user wants.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2215 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-18 08:52:06 +00:00
Jake.Stine 2709f3c29c GSdx/SPU2-X: Perform SSE checks before entering Configuration dialog (prevents crashes on non-SSE2 machines)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2213 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-18 08:13:28 +00:00
Jake.Stine 4f9cd96e50 * Added a 'master' toggle to the Speedhacks panel.
* ... more WIP stuff on the Video options panel.
 * Spent 12 hrs working on crap text wrapping and window sizing issues.
 * Moved several UI classes to utilities (lots of project changes, breaks linux)
 * Fixed stilly bug in SPU2-X that prevented it from working (at all).
 * Lots of code cleanups, and 1 or 2 bugfixes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2212 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-18 07:53:02 +00:00
Jake.Stine c942e3aaca * Implemented more support for on-the-fly CDVD source changes (not well tested, probably need work).
* Fix Reelease mode compilation errors. 
 * More misc bugfixes to the UI.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2207 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-16 17:14:10 +00:00
Jake.Stine 40ed711445 SPU2-X: Implemented SPU2test - it now reports an error and returns failure on CPUs not supporting SSE2.
DevNote: SPU2-X now links against w32pthreads and x86emitter.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2202 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-16 13:14:02 +00:00
Jake.Stine 4fc93dded4 SPU2-X: Minor fix for very rare cases of hang-on-suspend when using the XA2 driver.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2120 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-02 21:07:22 +00:00
Jake.Stine 4cb8e21f94 Much work on menus, gui features. Partially-working recent-isos menu list. Bugfix for some of the new console stuff that could have caused some funny bunny business, or crashes, in a few games. Why dat wascaly wabbit! >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2100 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-31 10:03:07 +00:00
ramapcsx2 fdde56115c The Digital Devil Saga reverb fix "fixed" too much. It's gone :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2090 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 23:44:08 +00:00
Jake.Stine 1cc740a9c0 SPU2-X: Revert Neill's x4 buffer indexers -- Fixes feedback. Update savestate version to fix prev savestates.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2089 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 14:08:25 +00:00
Jake.Stine da46df4d7c SPU2-X: More reverb work (mostly).
* Fixed some bugs from the prev rev that ended up disabling all reverb completely.
 * Expanded reverb buffers to x4, as per Neill Corlett's recommendation; this should give reverb a lot more "body"
 * Implemented what I suspect is correct behavior for EEA register handling.  When set to zero, effects are disabled.  This fixes nasty reverb and feedback loops in Digital Devil Saga.
 * Reverb down/up mix buffers are now processed even when effects disabled; fixes the reverb being cut off prematurely during the BIOS splash screen.
 * Fixed some silly clamping bugs (should fix distortion problems in some titles)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2086 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 05:50:50 +00:00
Jake.Stine 6032a142dd SPU2-X: Slightly better algo for the new reverb. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2084 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 08:58:07 +00:00
Jake.Stine 99c62c6501 SPU2-X: (experimental) New reverb implementation using a more correct downsampler, as borrowed from "sexypsf."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2081 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 02:38:27 +00:00
Jake.Stine beed14bfee SPU2-X: Added SVN revision info to the SPU2-X name reported back to PCSX2, so that it shows up in the plugin lists. (previously only did so in dev/debug builds, now does it for release too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2068 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 19:18:44 +00:00
Jake.Stine b1fb7f80ae aligned_stack: sync with trunk; some bugfixes to the stack prep on entry; and re-enabled the esp/ebp integrity assertions.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2032 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-18 14:56:48 +00:00
ramapcsx2 c3cbdaf016 SPU2-X:
New default values for soundtouch, fix the sound quality somewhat.
Also got rid of a small configuration dialog glitch.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2021 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-17 17:49:33 +00:00
Jake.Stine 8b0cbe445a SPU2-X: Minor bugfix to suspend/shutdown code which caused SPU2-X to hang in very rare occasions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1999 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-12 19:55:54 +00:00
Jake.Stine 28473c1436 Fixed: Savestate bug when saving caused erratic freezeups.
Fixed: More savestate slowness, and less savestate memory hogging.
SPU2-X: Fixed crash bug on using savestates while suspended.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1994 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-09 17:28:17 +00:00
Jake.Stine e8e61a5cf8 Settings work again!
* Switched the SysCoreThread to a static (fully persistent) thread.
 * Added some listeners for when the CoreThread status changes
 * fixed some slowness in savestates, and the emu will now stall until savestates complete, if you try to exit too quick (avoids savestate corruption)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1993 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-09 15:17:53 +00:00
Jake.Stine 67957b13b6 wxWidgets/Win32: Added a private heap allocation feature, which directs all wxString and wxObject allocations through a Windows private Heap (should reduce fragmentation and multithreaded contention when allocating/freeing blocks)
(and fix some oddball compilation errors in spu2-x in rare circumstances)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1987 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-08 19:26:57 +00:00
Jake.Stine 9b213aeffa SPU2-X: fix a memory leak that dropped a few Kbytes of memory on every suspend/resume (it's been there for ages too; SoundTouch object wasn't being deleted).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1983 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-08 11:58:56 +00:00
Jake.Stine eda5d1d834 Savestates work! Not much else does yet (settings, etc), but at least this monkey's off my back. I can work on tying up more loose ends now. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1975 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-07 19:20:11 +00:00
Jake.Stine ed444cb876 More MSVC/Win32 buildsystem fixes: Made is so you can now optionally unload all 3rdparty libs (after building at least once!) and still build the rest of PCSX2 and plugins without linker errors. This is useful for reducing the memory overhead of working in the MSVC IDE, and reduces the size of the .ncb file and the bugs that come with it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1969 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-06 01:52:22 +00:00
Jake.Stine b71b837efa Linux: Added more correct __asm__ qualifiers and conditions; including __volatile__ on a lot of asm code (it should really be the default behavior and non-vlatile the specifier, but whatever >_<), and added register clobber specifiers. Might help unbreak some of GCC 4.4's optimization problems, although VIFdma's uber-hack SSE optimization looks like a real problem.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1964 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-05 11:05:11 +00:00
Jake.Stine 8ba39b71de SPU2-X: Fix CDDA playback, which got broken a few revs back; and remove regression test code (ReadInput is pretty well confirmed to be good now, anything still broken is because of something else).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1951 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 08:47:43 +00:00
Jake.Stine 910669f937 SPU2-X: Fixed some more major bugs and typos; most sound *should* be working again now. Added a hackfix for a crash in the BIOS cased by what *should* be correct handling of IRQAs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1947 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-03 13:32:23 +00:00
Jake.Stine 03972b07de SPU2-X: Fixed a huge bug in my last commit that broke most everything except the bios -- Core indexes were set to -1 instead of 0 and 1 (heh). Also a Speedup: Switched to a lookup table for dispatching SPU hardware register writes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1933 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-30 05:35:37 +00:00
Jake.Stine 158b01b58d SPU2-X:
* Potential Bugfix: Core1's DMA IRQ trigger was being ignored in some instances; might fix some hangs.
 * Major code cleanups, using C++ structure member methods and functions.
 * Improved gui / plugin api / core emulation code separation -- hoping to switch to wxWidgets eventually.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1930 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 19:18:50 +00:00