diff options
| -rw-r--r-- | sys/src/games/snes/dsp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/src/games/snes/dsp.c b/sys/src/games/snes/dsp.c index 13406d216..4b5c0cfd2 100644 --- a/sys/src/games/snes/dsp.c +++ b/sys/src/games/snes/dsp.c @@ -6,7 +6,7 @@ #include "fns.h" u8int dsp[256], dspstate; -u16int dspcounter, noise; +u16int dspcounter, noise = 0x8000; static s16int samp[2], echoin[2]; enum { @@ -517,6 +517,8 @@ dspstep(void) } if(dspcounter-- == 0) dspcounter = 0x77ff; + if(envyes(dsp[FLG] & 0x1f)) + noise = (noise << 13 ^ noise << 14) & 0x8000 | noise >> 1 & ~1; break; case 31: voice(0, 4); voice(2, 1); break; } |
