diff options
| author | SND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-10-30 14:53:47 +0000 |
|---|---|---|
| committer | SND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-10-30 14:53:47 +0000 |
| commit | 985796c01484339cbd10045b7cfd346d0090bc63 (patch) | |
| tree | ebb2d6a4db1eb7308323a261f22712ae3eac9cf8 /plugins | |
| parent | e457712509039b896e3ffd260d32180cf775e7f9 (diff) | |
| download | pcsxr-985796c01484339cbd10045b7cfd346d0090bc63.tar.gz | |
Vib Ribbon: cdrom.c
- Use own decoded buffer IRQ handling, fix CD swapping, demute cd-xa volume
- Game mostly playable (original + music modes)
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@58927 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'plugins')
| -rw-r--r-- | plugins/dfsound/xa.c | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/plugins/dfsound/xa.c b/plugins/dfsound/xa.c index a121f62f..0f523934 100644 --- a/plugins/dfsound/xa.c +++ b/plugins/dfsound/xa.c @@ -418,14 +418,23 @@ INLINE void FeedCDDA(unsigned char *pcm, int nBytes) pcm+=4; - spuMem[ cdda_ptr ] = *pcm | (*(pcm+1)<<8);
- spuMem[ cdda_ptr+0x400 ] = *(pcm+2) | (*(pcm+3)<<8);
+#if 0
+ /*
+ Vib Ribbon
+ $00000-$003ff CD audio left
+ $00400-$007ff CD audio right
+ */
- cdda_ptr++;
- if( cdda_ptr >= 0x400 )
- {
- cdda_ptr &= 0x3ff;
- }
+ // TIMING: perform in PCSX-r
+ // - gets data from reverb buffer, only update this at intervals (not real-time)
+
+ // remember: 16-bit ptrs
+ spuMem[ cdda_ptr ] = (l >> 0) & 0xffff;
+ spuMem[ cdda_ptr+0x200 ] = (l >> 16) & 0xffff;
+
+ cdda_ptr++;
+ cdda_ptr &= 0x1ff;
+#endif
} } |
