diff options
author | notaz | 2019-03-13 00:56:19 +0200 |
---|---|---|
committer | GitHub | 2019-03-13 00:56:19 +0200 |
commit | 8a55ebcc07d4f860633db8c77bb9e16bcfa03313 (patch) | |
tree | 44014f43d1464c981448e374e7d02bff3bdf615e | |
parent | 3de7d67356c1db36689ae53156944426d77f418f (diff) | |
parent | 210476c77ec6d0160e66ab6e9a45ad64fe5e50ce (diff) | |
download | pcsx_rearmed-8a55ebcc07d4f860633db8c77bb9e16bcfa03313.tar.gz pcsx_rearmed-8a55ebcc07d4f860633db8c77bb9e16bcfa03313.tar.bz2 pcsx_rearmed-8a55ebcc07d4f860633db8c77bb9e16bcfa03313.zip |
Merge pull request #123 from gameblabla/diablofix_hack
Diablo Music fix for PCSX Rearmed. (optional hack)
-rw-r--r-- | frontend/main.c | 1 | ||||
-rw-r--r-- | frontend/menu.c | 2 | ||||
-rw-r--r-- | maemo/main.c | 2 | ||||
-rw-r--r-- | plugins/dfsound/registers.c | 2 | ||||
-rw-r--r-- | plugins/dfsound/spu_config.h | 1 |
5 files changed, 6 insertions, 2 deletions
diff --git a/frontend/main.c b/frontend/main.c index a824fdc..43a5548 100644 --- a/frontend/main.c +++ b/frontend/main.c @@ -138,6 +138,7 @@ void emu_set_default_config(void) pl_rearmed_cbs.gpu_peopsgl.iTexGarbageCollection = 1; spu_config.iUseReverb = 1; + spu_config.idiablofix = 0; spu_config.iUseInterpolation = 1; spu_config.iXAPitch = 0; spu_config.iVolume = 768; diff --git a/frontend/menu.c b/frontend/menu.c index cf9382a..0b3f553 100644 --- a/frontend/menu.c +++ b/frontend/menu.c @@ -443,6 +443,7 @@ static const struct { CE_INTVAL_P(gpu_peopsgl.iTexGarbageCollection), CE_INTVAL_P(gpu_peopsgl.dwActFixes), CE_INTVAL(spu_config.iUseReverb), + CE_INTVAL(spu_config.idiablofix), CE_INTVAL(spu_config.iXAPitch), CE_INTVAL(spu_config.iUseInterpolation), CE_INTVAL(spu_config.iTempo), @@ -1454,6 +1455,7 @@ static menu_entry e_menu_plugin_spu[] = mee_range_h ("Volume boost", 0, volume_boost, -5, 30, h_spu_volboost), mee_onoff ("Reverb", 0, spu_config.iUseReverb, 1), mee_enum ("Interpolation", 0, spu_config.iUseInterpolation, men_spu_interp), + mee_onoff ("Diablo Music fix", 0, spu_config.idiablofix, 1), mee_onoff ("Adjust XA pitch", 0, spu_config.iXAPitch, 1), mee_onoff_h ("Adjust tempo", 0, spu_config.iTempo, 1, h_spu_tempo), mee_end, diff --git a/maemo/main.c b/maemo/main.c index 85db400..c382c51 100644 --- a/maemo/main.c +++ b/maemo/main.c @@ -197,7 +197,7 @@ int main(int argc, char **argv) strcpy(Config.Bios, "HLE"); spu_config.iUseReverb = 1; spu_config.iUseInterpolation = 1; - + spu_config.idiablofix = 0; in_type1 = PSE_PAD_TYPE_STANDARD; in_type2 = PSE_PAD_TYPE_STANDARD; diff --git a/plugins/dfsound/registers.c b/plugins/dfsound/registers.c index 91bcaf8..bb64658 100644 --- a/plugins/dfsound/registers.c +++ b/plugins/dfsound/registers.c @@ -352,7 +352,7 @@ static void SoundOn(int start,int end,unsigned short val) if((val&1) && regAreaGet(ch,6)) // mmm... start has to be set before key on !?!
{
spu.s_chan[ch].pCurr=spu.spuMemC+((regAreaGet(ch,6)&~1)<<3); // must be block aligned
- spu.s_chan[ch].pLoop=spu.spuMemC+((regAreaGet(ch,14)&~1)<<3);
+ if (spu_config.idiablofix == 0) spu.s_chan[ch].pLoop=spu.spuMemC+((regAreaGet(ch,14)&~1)<<3);
spu.dwNewChannel|=(1<<ch);
}
}
diff --git a/plugins/dfsound/spu_config.h b/plugins/dfsound/spu_config.h index 3e88a2c..6b46bf3 100644 --- a/plugins/dfsound/spu_config.h +++ b/plugins/dfsound/spu_config.h @@ -7,6 +7,7 @@ typedef struct int iUseReverb; int iUseInterpolation; int iTempo; + int idiablofix; int iUseThread; int iUseFixedUpdates; // output fixed number of samples/frame |