Commit Graph

4630 Commits

Author SHA1 Message Date
jackchentwkh f88ed6f7fd Fix method 1800
Restore the mis-deleted pIndexData initiation.
Correctly calculate dwCount with 16 bit element.
NO_INCREMENT flag implementation (by guess, ha!)
2018-05-01 23:13:53 +08:00
PatrickvL 7ac82d5de1 HLE : GetViewport scales host viewport back to Xbox dimensions (some titles might get less confused by the return value) 2018-05-01 17:03:49 +02:00
Luke Usher 6541a62e23
Merge pull request #1114 from RadWolfie/DSound-fixes-part2.1
DSound-fixes-part2.1 (performance update)
2018-05-01 06:30:47 +01:00
RadWolfie 270a821ad5 Replace static size to dynamic array for DSound
Both DS Buffer and Stream are now using C++ std vector instead of static
size array which is in C.

It should improve performance for lower-end computers. Before, high-end
computers will only notice very light performance impact. Now appear to
be no performance impact unless certain titles are preserving maximum
size.
2018-04-30 23:29:38 -05:00
jackchentwkh 4bb24dc19a raw pushbuffer process fixup
add NOP method support
add TRANSFORM_CONSTANT_LOAD and TRANSFORM_CONSTANT method tips.
improve unkonwn method handling by skipping parameters indicated by dwCount
add pushbuffer size check to prevent overflow.
2018-05-01 10:48:46 +08:00
PatrickvL 43c77a11ec
Merge pull request #1112 from jackchentwkh/pushbuffer_fixup_fix
Data address interpretation fix for PushBuffer and Fixup Data
2018-04-30 09:24:06 +02:00
jackchentwkh 5fbb91c6a6 Fix address interpretation of PushBuffer Data and Fixup Data.
Include the fixup code without using function
2018-04-30 09:22:39 +08:00
patrickvl 6a897212a7 HLE : Refactored window resizing, so it's done only when needed, only in the GUI process. 2018-04-29 22:33:03 +02:00
patrickvl bed1d7bfc7 HLE : Fake field rendering by halving the perceived height in SetViewPort 2018-04-29 22:33:03 +02:00
patrickvl 8fa81b99af HLE : Post-rebase fixes 2018-04-29 22:33:03 +02:00
patrickvl 2654eaae3c HLE : Limit width/height to desktop resolution 2018-04-29 22:33:03 +02:00
patrickvl df81c52372 HLE : Resize window according to configuration 2018-04-29 22:33:02 +02:00
patrickvl 73b96ac783 HLE : Disable calling the Xbox SetViewport code, as it causes regressions.
Also start collecting test-cases for D3DDevice_GetViewportOffsetAndScale
2018-04-29 22:33:01 +02:00
patrickvl eff073e518 HLE : Use CxbxGetPixelContainerMeasures to get overlay dimensions 2018-04-29 22:33:01 +02:00
patrickvl 25e32d8d7c HLE : Post-rebase fixes 2018-04-29 22:33:00 +02:00
patrickvl 0ec58ff4b8 HLE : Cache render-target (and depth-stencil while we're at it) for use in SetViewPort 2018-04-29 22:33:00 +02:00
PatrickvL d3a278a5aa HLE : Scale viewport from Xbox to host (this might fix some drawns to the upper-left corner) 2018-04-29 22:33:00 +02:00
Luke Usher e3c681b7a1
Merge pull request #1111 from Cxbx-Reloaded/revert-1087-emux86_unicorn
Revert "Replace EmuX86's interpreter with Unicorn"
2018-04-29 20:17:58 +01:00
Luke Usher 317b9dfe00
Revert "Replace EmuX86's interpreter with Unicorn" 2018-04-29 20:16:03 +01:00
Luke Usher 2d1de80459
Merge pull request #1110 from jackchentwkh/multi_controller
Multi Controller Support with Xinput
2018-04-29 20:12:19 +01:00
ergo720 f658ccf15a
Merge pull request #1073 from RadWolfie/DSound-fixes-part2
Dsound fixes part2
2018-04-29 20:15:40 +02:00
RadWolfie 3dec725f76 Remove debug trace from release build 2018-04-29 12:40:44 -05:00
RadWolfie e591409cca Fixed no audio
It was cause by hRet not set to DS_OK, original value returned to title
was out of memory flag.

This fix titles:
* Mafia
* JSRF
* Taz - Wanted
* etc
2018-04-29 12:40:44 -05:00
RadWolfie 53ac646e2e Fix Mafia crash
If there's no packets, then there's no reason to process stream.
2018-04-29 12:40:44 -05:00
RadWolfie 194e0dc0e8 Ctrl pan cannot be used with ctrl 3D flag 2018-04-29 12:40:44 -05:00
RadWolfie 09eb0ef6be Removed unused 2 local vars 2018-04-29 12:40:44 -05:00
RadWolfie 636060ea1b Renames and use pThis instead of ppDSBuffer 2018-04-29 12:40:44 -05:00
RadWolfie 603f086180 Replace silence with predefined volume min
Plus don't re-set volume twice.
2018-04-29 12:40:44 -05:00
RadWolfie e9bdc1f0b5 Append check if stream is paused 2018-04-29 12:40:44 -05:00
RadWolfie ae3f812347 Small fixup for Pause functionality
Plus do set status outside of DS_OK state too.
2018-04-29 12:40:44 -05:00
RadWolfie 0043262818 Fix previous commit
Oops...
2018-04-29 12:40:44 -05:00
RadWolfie c8aa74a85a Update Stream creation to similar of Buffer does 2018-04-29 12:40:44 -05:00
RadWolfie ffc70d0721 Move early enough to output org lVolume before set 2018-04-29 12:40:44 -05:00
RadWolfie 1294db22f6 Add support for SetHeadroom function
Untested btw, yet the concept should work as is.
2018-04-29 12:40:44 -05:00
RadWolfie f35add180c Missed another patch requirement for DSound Stream 2018-04-29 12:40:44 -05:00
RadWolfie be63382661 Change print format mistake
Might be printing wrong numbers.
2018-04-29 12:40:44 -05:00
RadWolfie 0493faaf43 Oops...
Should not be looping in here.
2018-04-29 12:40:44 -05:00
RadWolfie 5da6e0c9d2 Fix older XDK titles crash 2018-04-29 12:40:44 -05:00
RadWolfie d19efc44f9 Fix SW: KotOR title
Packet was incomplete due to dwMaxSize is greater than 5 seconds worth
of data.

Plus fixup synch flags whenever is able to add/remove its limitation.
2018-04-29 12:40:44 -05:00
RadWolfie 3f51494f48 Also DSP function being ignored too 2018-04-29 12:40:44 -05:00
RadWolfie 1b9405c8b8 Fix passdown value for second call. 2018-04-29 12:40:44 -05:00
RadWolfie 990b87198e Replace NULL to nullptr since it is pointer... 2018-04-29 12:40:44 -05:00
RadWolfie 3c723d2763 Various bug fixes
* no reason to re-set value twice from SetBufferData
* passdown the length, not offset
* use counter instead of count
* if size is the same replace "out of memory" to "ok" result, and ignore
DSP image function.

This is the corrections, however doesn't cover every faults few titles
has atm.
2018-04-29 12:40:44 -05:00
RadWolfie 7fb1451fee Add SwitchToThread inside loop when buffer playing 2018-04-29 12:40:43 -05:00
RadWolfie 18c6948153 Fix SetBufferData biggest issue of all
!Major breakthrough!

Titles improved:
* The Simpsons: Road Rage (now has music and voiceover audible)
* Ghost Recon: Thunder Island (No longer output distort noises ingame.
100% sure the rest of sequels will work correctly.)
2018-04-29 12:40:43 -05:00
RadWolfie 3590aa0f19 Another small update
* Only perform a buffer resize. Allow play function to make buffer
update only.
* Removed unused parameters.
2018-04-29 12:40:43 -05:00
RadWolfie 17ca484370 Small updates 2018-04-29 12:40:43 -05:00
RadWolfie 73ebd2f893 Also fix DS Buffer GetStatus function too.
PAUSED (xbox) and BUFFERLOST (host) are using same value. We're only
enforcing 3 flags for xbox.
2018-04-29 12:40:43 -05:00
RadWolfie 5e48c63046 Replace unimplemented to ignored for HRTF functions 2018-04-29 12:40:43 -05:00
RadWolfie be6fab6b7e Add audio debug mute control
For pinpoint which audio is causing problem then troubleshoot from
there.
2018-04-29 12:40:43 -05:00