2017-07-24

Cxbx Reloaded Git (2017/07/24)

EmuCR:Xbox EmulatorsCxbx Reloaded Git (2017/07/24) is compiled. Cxbx-Reloaded is an emulator for running Microsoft Xbox (and eventually, Chihiro) games on Microsoft Windows. The project began life as a fork of Cxbx with added 64-bit support. Work is currently underway to backport some of the improvements from Dxbx. Cxbx-Reloaded is still pretty unstable, don't expect it to run much at this point.

Cxbx Reloaded Git Changelog:
* Update CONTRIBUTORS
* Merge pull request #514 from RadWolfie/HLE-Audio-Improvement
HLE Audio Improvement
* Update CONTRIBUTORS
Audio improvements by RadWolfie and blueshogun96.
* Update XADPCM.h
Removed author since it is not part of author's work.
* Disable Legacy Audio Hack Option
Currently legacy audio hack option is not implemented, so it's disabled
before merge into master repo. Plus force all unimplemented functions to
output once, not repeatly.
* Implement Specific Codec Audible
* NEW: PCM, XBOX_ADPCM, and unknown codec audible are functional.
* FIXED: Preserve volume whenever buffer is resize.
This will allow all dev and testers to test and report which codec is
not outputing audible properly.
* Oops...
Forgot to re-append hRet result test.
* Implement Initialize Audio Settings
First attempt to obtain audio settings configured by user request. At
the moment, selecting audio adapter device is functional. More to come
later on...
* Audio Settings Stub
First initialization audio settings support.
* Serveral Fixes base on RETURN_RESULT_CHECK macro
* Missing control frequency flag to control base on Smashing Drive
title.
* SetVolume return invalid arg due to setting MIN volume is -10,000.
Changed mockup into between -10,000 and -6,400 as silence.
* SetFormat has been tweaked a bit as workaround for now. It needs to
create new buffer for secondary buffer usage.
Known Issue:
SetConeOrientation continue to return DSERR_INVALIDPARAM flag in Turok
Evolution for some reason. All args look right and is fine to me...
* Introduce RETURN_RESULT_CHECK for DSound
Performing this method shall reduce hidden failures.
* Play Should Be Using Play Flags
Oops... And fix a trigger for X_DSBPLAY_FROMSTART to be check "if"
properly.
This fix no audio from Psyvariar 2 - Extend Edition gameplay. :tada:
:thumbsup:
* Minor Improvement
- Added check if DirectSound3DBuffer8 is null due to dummy WAVEFORMATEX
causing issue for DSBCAPS_3D flag.
- Another code standard fix.
- Forward SetConeOutsideVolume to hybrid function to reduce duplicate
code.
* Minor Fix
Also need check if it is not null before check flag. Miami Vice crashed
just for this issue.
* Minor Coding Standard
* More SynchPlayback Stub
And use lock's offset given by title for another accuracy.
* Reduce Buffers Unlock Duplicate
* Various Fixes Again
- Renaming variable type to uppercase to keep code sanity.
- Re-add debug message from SynchPlayback.
- Corrected flag check for to play or not to play audio buffer.
- Verified dwFlags is the same as windows for lock buffer.
* Reviewed Coding Correction
* Implement SynchPlayback Support
- Moved play caller into HybridDirectSound to perform same task.
- Added DSB_FLAG_SYNCHPLAYBACK_CONTROL flag for control.
* One More...Correction...
Just one tiny correction even though it has no affect to execution.
* Add Comments
Adding comments before implement support for simple SynchPlayback
control.
* Various Fixes
- Renamed dwFlags parameter to correct name which is dwEmuFlags
- Fixed wrong variable pass down in ResizeIDirectSoundBuffer's parameter
(oops)
* Another Improvment
Preserve dwOffset from locked pointer, this should prevent audio
disortion from other titles and more accurately.
* Fix Coding Standard
* Rename DSoundBufferUnlockXboxAdpcm
Changed DSoundBufferUnlockXboxAdpcm to DSoundBufferXboxAdpcmDecoder
since it is performing a decode in locked memory and new buffer.
* Audio Improvment
Only does small improvement to audio.
- Rayman Arena's first intro, xbox audio, no longer make any rare
popping noise.
- Xbox Dashboard background sound is improved big time.
- Turok Evolution background music in-game and credits are improved
except there is still noise in-between.
* Renaming
* Various Changes
- Changed all DirectSound usage to use v8 since it does have more
methods. This allow few more support to audio.
- Implement Support for 3DListener
-
* Prevent Deadlock in Multithreading
- Moved return value since using actual function cause crashes for
multiple titles.
- Changed 0 to nullptr since cache audio classes are using by xbox.
* Fixed Various Issue
- Corrected File linkage for EmuDSoundInline.hpp (Thanks PatrickvL)
- Check if is not a null variable in release referred by PatrickvL
- Add missing passdown to ResizeIDirectSoundBuffer function (oops)
- Add another test case for SYNCHPLAYBACK
Should compile this time.
Known regress issue:
JSRF report dirty disc - Wait until DirectSound audio control is
implement, then it will go away.
* Improve and Fix Release Control
Improvised release management.
* Format Document Automatic
Used Visual Studio's format document feature to format it accurately.
- Append semicolon for all FUNC_EXPORTS to prevent indent wrong
position.
- Moved asterisk to the left for all pointers in function's parameters.
* Enforce Coding Guideline
All this is done by hand with regex search built-in.
- Replaced all tabs to whitespaces
- Any single check process internal are included with brackets
- Corrected any misalign whitespaces
* Maintenance Multiple Callers Doing Same Purpose
- Moved all duplicate functionality in inline header (hpp) file.
- Several fixes
- Removed all 3DListener since it is only possible in primary buffer.
Future commit will restore it into primary buffer creation.
- Force output whatever is not implemented for DSound library section in
release build. It will help me know which title is calling it and at
least make it a priority.
* Missing define and fixed wrong function
* Debug Info for audio conversion check
Just a debug info feature in case XADPCM audio did not play nicely.
* Fixed XADPCM audio bug in DirectSoundStream_Process
NOTE : XADPCM audio has occurred in Rayman Arena first intro video, all
other title's intro videos are PCM so far. This is only a temporary
solution for now.
Plus fixed expected standard for cbSize on PCM format.
* Minor Touch Up
Just a minor touch up for value and stub for DirectSoundBuffer_Pause
(untested yet should work okay since it is working for DirectSoundStream
stub. Included warning just in case such title has unsupported value for
pause function.
* Improvement DirectSoundStream and Critical Section code
- Fix exception in Rayman Arena for enterCriticalSection called too
early in DirectSoundDoWork.
- Improved Intro Videos for Turok Evolution, Rayman Arena, and Taz
-Wanted.
- Improved process any played audio in DirectSoundDoWork, any audio not
playing is not process.
- Fix ref count in Rayman Arena exception for attempt to release twice
when resize occured reset the ref counter.
Known Bug
- Rayman Arena's first intro has buggy audio due to XADPCM codec not
being decode correctly.
* Implement Enter/Leave CriticalSection for thread-safe
After some RE on DSound section, turns out there is Enter/Leave
CriticalSection on each API function. Implement this to all API code
should make it less wobble effect in most titles and any other
DirectSound side-effect.
* Implement DirectSoundStream Suppport
Ignore the IDirectSound3DListener coding mess. It will be fix later
on... (I hope)
* Implement Simple XADPCM Conversion Helper Function
* Update DirectSoundStream and DirectSoundBuffer class
The following section has been included to able play xbox adpcm audio...
* DirectSoundStream (partially, needs more work done)
* DirectSoundBuffer (completed)
* Implement most of the DirectSound3DBuffer functions to be used with
DirectSoundBuffer class.
However the "hack" for all audio cache functions to update audio stream
are removed. It cause audio corruption.
* Implement blueshogun96 Xbox Audio Decoder method
Also revised to support stereo channel.
* Include XADPCM file
First initialiation for XADPCM Decoder process

Download: Cxbx Reloaded Git (2017/07/24)
Source: Here

1 Comments:

  1. Oooh !! Finally I can listen !! Thanks Team Cxbx-Reloaded!

    ReplyDelete

Can't post a comment? Try This!