Does Jikkyou Oshaberi Parodius have a DAC?

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Does Jikkyou Oshaberi Parodius have a DAC?
by on (#141245)
This Japanese game was from Konami and used "Konami’s Response Sound System"
The game features a lot of vocals handled outside of the SPC, the cart connector's L/R analog audio channels..
The cart featured an SA-1 chip and I believe the SA-1 handled the digital voice and fed it to an external DAC on the cart which was fed to the Left/Right analog audio channels on the cart connector. Does that sound right?

gameplay footage: https://www.youtube.com/watch?v=LDEl1-tuzc4
Re: Does Jikkyou Oshaberi Parodius have a DAC?
by on (#141248)
My interpretation is that the samples were streamed to the SPC700 and then outputted that way (AKA, they're BRR samples). SPC dumps would get the vocal samples wrong in this fashion.

I know this because I played Soreyuke Ebisumaru Karakuri Meiro Kieta Goemon no Nazo (also by Konami) and I realized the vocal samples were streamed after doing some SPC dumps.
Re: Does Jikkyou Oshaberi Parodius have a DAC?
by on (#141249)
KungFuFurby wrote:
My interpretation is that the samples were streamed to the SPC700 and then outputted that way (AKA, they're BRR samples). SPC dumps would get the vocal samples wrong in this fashion.

I know this because I played Soreyuke Ebisumaru Karakuri Meiro Kieta Goemon no Nazo (also by Konami) and I realized the vocal samples were streamed after doing some SPC dumps.


Thanks for your fast reply. I was wondering, where can I learn more about streaming BRR?
Re: Does Jikkyou Oshaberi Parodius have a DAC?
by on (#141257)
SNESMod sound driver is a good start for some documentation:

http://snes.mukunda.com/

The way I see it is...

Essentially you have to send x amount of BRR blocks per frame, depending on the desired sample rate. The number of BRR blocks in a one second sample at the desired rate is...

((sample rate in hertz) / 16) * 9

Take that value and divide by 50 or 60 (frames per second, depending on whether it's NTSC or PAL) and you get the number of BRR blocks you must upload per frame in order for the streaming effect to work.

Buffering, on the other hand... it could wrap around, or you can just have it hold one instance of the longest sample possible. Be careful with wraparound: that means that you're setting a maximum rate, too (and you must set the loop flag in the BRR block header when you want the streamed sample to go back to the start of the sample)!

N-Warp Daisakusen is a game that uses a $480 byte streaming buffer because the samples are way too large to fit within the entire SPC700 RAM, and its source can be found at:

http://gra.dforce3000.de/index.php