From 34abe94416918dfc26e6a7b8a4d133bf6de99d03 Mon Sep 17 00:00:00 2001 From: "R. Belmont" Date: Sun, 13 Jan 2008 16:08:11 +0000 Subject: [PATCH] Removed unnecessary check that could cause hangs in grdforce (kingshriek) --- src/emu/sound/scsp.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/emu/sound/scsp.c b/src/emu/sound/scsp.c index b57f74380e0..7460880f235 100644 --- a/src/emu/sound/scsp.c +++ b/src/emu/sound/scsp.c @@ -960,11 +960,9 @@ INLINE INT32 SCSP_UpdateSlot(struct _SCSP *SCSP, struct _SLOT *slot) if(MDL(slot)!=0 || MDXSL(slot)!=0 || MDYSL(slot)!=0) { INT32 smp=(SCSP->RINGBUF[(SCSP->BUFPTR+MDXSL(slot))&63]+SCSP->RINGBUF[(SCSP->BUFPTR+MDYSL(slot))&63])/2; - INT32 cycle=LEA(slot)-LSA(slot); // cycle corresponds to 2 pi smp<<=0xA; // associate cycle with 1024 smp>>=0x1A-MDL(slot); // ex. for MDL=0xF, sample range corresponds to +/- 64 pi (32=2^5 cycles) so shift by 11 (16-5 == 0x1A-0xF) - while(smp<0) smp+=cycle; smp%=cycle; // keep modulation sampler within a single cycle if(!PCM8B(slot)) smp<<=1; addr1+=smp; addr2+=smp;