Blargg's algorithms are great for mixing the standard five sound channels. But it recently occurred to me that there is likely to be an inherent challenge in devising an actual mixing algorithm for extended sound.
On the Famicom, extended sound is generated by passing the standard audio output throught the cart, where the extended channels are mixed in by the cartridge's hardware. This means that a separate mixing algorithm might be necessary for each type of extended hardware - one algorithm for MMC5 boards, one for the FDS, one for VRCVI, one for Mr. Gimmick, and so on. This could be highly problematic.
How do existing emulators (especially accurate ones like Nintendulator) handle this? Have any of the sound circuits been traced out well enough to figure how the mixing should be done?
Josh wrote:
On the Famicom, extended sound is generated by passing the standard audio output throught the cart, where the extended channels are mixed in by the cartridge's hardware. This means that a separate mixing algorithm might be necessary for each type of extended hardware - one algorithm for MMC5 boards, one for the FDS, one for VRCVI, one for Mr. Gimmick, and so on. This could be highly problematic.
No more problematic in theory than the fact that each mapper needs its own IRQ logic.
For my emu I just guessed the output levels of the expansion sound based on what sounded good.
tepples wrote:
Josh wrote:
On the Famicom, extended sound is generated by passing the standard audio output throught the cart, where the extended channels are mixed in by the cartridge's hardware. This means that a separate mixing algorithm might be necessary for each type of extended hardware - one algorithm for MMC5 boards, one for the FDS, one for VRCVI, one for Mr. Gimmick, and so on. This could be highly problematic.
No more problematic in theory than the fact that each mapper needs its own IRQ logic.
True enough. The difference, however, is that we have a pretty clear idea (thanks to excellent REing by Kevin Horton and others) how most mapper IRQ subsystems work, but we don't have any idea how most mapper sound mixing systems work.
If you own the NES and the cartridge, you might get the best results by listenning the sound output.
As example, I dunno about the emulated Sunsoft's Gimmick extra sound volume levels.
Josh wrote:
True enough. The difference, however, is that we have a pretty clear idea (thanks to excellent REing by Kevin Horton and others) how most mapper IRQ subsystems work, but we don't have any idea how most mapper sound mixing systems work.
Just in case I've already traced the MMC5 sound mixing circuits
here. Of course, that doesn't show what circuit is inside the MMC5, but I suspect there is an internal operational amplifier with external feedback resistor, or something similar.
Fx3 wrote:
If you own the NES and the cartridge, you might get the best results by listenning the sound output.
You would need a Famicom, not an NES, since the NES doesn't support external sound mixing (except through the expansion port, which was never used).
Also, your suggestion won't give the "best results" because trying to determine the output levels "by ear" is purely subjective and will carry a large margin of error. More precise measurements will be needed to determine the proper values to use.
I see. By the way, it's subjective to emulate those extra channels by guessing the volume levels too... ^_^;; So, a Famicom playing the game would help, really. Uh, that's why I used 'might', heh
An AV Famicom would give a cleaner signal than the old Famicom. But do the games mix audio any differently when played on the AV Famicom?
On the AV famicom, extended sound channels are too loud (or the AV Famicom's own sound channels are too quiet), which is why I don't use it. The Sharp Twin Famicom, which also has composite output, gets it right though.
So the AV Famicom has louder external channels? I guess this is most likely the result of the internal channels having a lower output at the time they pass through the cartridge. The fact that there's variation from one Famicom model to another leaves me to think there's no real right answer. Still, I'd like to see some measurements taken to determine the output levels of external channels relative to the internal ones (I'd even be interested in seeing the AV Famicom's output levels just to get an idea of how much louder the sound channels are).
Hello
MCK making FDS need FDSFILL.
Who using FDSFILL and MCK?
I know 2A03 and 6502 and family computer disk sound and NAMCO106.
Who like FDSFILL?
You can download FDSFILL?
Who download FDSFILL?
How about you?
I ask download FDSFILL, because need making FDS.
Hey, you know FDSFILL?
Not only me, has people need download FDSFILL and using FDSFILL and MCK.
Bohan wrote:
Hello
MCK making FDS need FDSFILL.
Who using FDSFILL and MCK?
I know 2A03 and 6502 and family computer disk sound and NAMCO106.
Who like FDSFILL?
You can download FDSFILL?
Who download FDSFILL?
How about you?
I ask download FDSFILL, because need making FDS.
Hey, you know FDSFILL?
Not only me, has people need download FDSFILL and using FDSFILL and MCK.
Dude, can you please stop flooding the forums asking around? If anyone knows they'll tell you. Now git!