Cania

KAY-nee-ah

  • they/them

My Website
www.cania.zone/
My public discord server
discord.com/invite/bKrtWUN3mp

mcc
@mcc

I've been playing "Donut Dodo", which is an actually excellent game for Switch I'll be posting more about here later¹, but it solidified for me a slow-building realization over why modern pseudo-retro games often feel just a little bit off to me:

Sound effects in modern 8-bit recreation games don't duck the music channels.

What I mean by this: Old (like, pre-PS2) video game systems had a limited number of sound channels. The NES had five², each hardwired for a particular type of sound, and each channel could only play one sound (one pitch) at a time. You could switch sounds very quickly to try to keep the listener from noticing it, but that was your limitation. "Donut Dodo" is one of many modern games that adopt an aesthetic to appear like they "could have been" on the NES or some other 80s-90s console, and it's more faithful to the limitations of the simulated hardware than many, but the music continues unchanged when a sound effect plays. The music does seem to be fit to NES APU limitations, but it's like there's one sound chip for playing the music and a second for the sound effects.

"Shovel Knight"³ had one of the more thoughtful approaches to voluntary retro limitations I've seen, and wrote a classic longform blog post where they laid out exactly which rules they decided to break and why. Notably, nearly everything they do could have been provided by a sufficiently fancy mapper [expansion chip] in the physical cartridge. But when they explain why they decided not to duck music for SFX they seem to be implicitly outlining an interesting distinction between limitations and flaws; "inauthentic, but much nicer" are their words. People can feel nostalgic for the way NES color-per-tile limitations caused NES environments to be made of large objects each in exactly one shade of monochrome, because that's a limitation that breeds an interesting aesthetic choice, but probably nobody actually enjoyed the way NES sprites flickered when you tried to draw too many on a horizontal line⁴. Yacht Club Games decided SFX-ducking is just something broken.

And yeah, it does suck. But it does have a noticeable aesthetic impact on the music. Music in period console games actually does often show signs of trying to "make room" for sound effects, or at least avoid flourishes that will sound actively bad when sound effects cut them. Very old games occasionally fit their soundtracks into a single channel as if trying to leave the others for sound effects entirely; others use all channels but adopt a particular minimalism that someone who knew they had all channels to themselves might not have. Link to the Past's soundtrack— that's on the Super Nintendo, where all channels were equally-powerful samplers theoretically capable of playing any sound at all, but where there was still a limited channel pool and each channel competed for a shared sample memory— is interesting in that the soundtrack sounds rich and orchestral, but it took me a couple decades to notice that most of the songs contain no percussion, and often are composed from one single sample reused on each channel. When period games didn't leave room for the sound effects you can tell. Consider Secret of Mana, which has a gorgeously lush soundtrack with heavy use of stereo (remember, stereo separation effectively halves your channels). That game had a really bad problem with SFX ducking, with actions as simple as walking up stairs often disconcertingly dropping instruments from the music. Listen to this lategame song from Secret of Mana, and now listen to what happens when the song is played during actual combat; the drums are lost almost completely. Or consider Shantae, one of the last games for the GBC. Shantae was produced late enough that "Chiptune" had by then emerged as a genre distinct from game music; the soundtrack was by Virt, who went on to be a major organizer of the chiptune scene, and the soundtrack sounds like chiptune qua chiptune of the sort composed to be sold on Bandcamp. And Shantae has major problems with SFX ducking swallowing the instruments, listen at 28:50 here or 1:09:30 here.

Donut Dodo has a lush, "modern-sounding" chiptune soundtrack. What does "modern-sounding" mean? It's full of rich sounds and sweepy flourishes. Chiptune composed on a computer-based tracker doesn't have to limit itself to original hardware's channel limitations, and it's not a new observation that this produces a very different sound; we even have examples of that from period hardware, like the Japanese release of Castlevania 3 that uses the VRC6 expansion chip (adds an additional 3 sound channels duplicating the existing 3 waveform channels; expansion chips providing sound was a feature exclusive to the Japanese version of the NES) and consequently sounds "un-NES-like" despite every individual sound being something the NES was capable of and the audio itself being produced by a real Nintendo Famicom. But like I said, I think Donut Dodo is made to original NES APU limitations, and the fact it feels somehow "richer" than ought to be possible comes down, in this case, solely to the fact the composer has the whole chip to themselves and doesn't have to worry about what happens if the player jumps during one of their sweepy tone glides. This isn't actually a problem, I'm sure it's actually the right artistic choice for this game. (And I guess if Donut Dodo were meant to be an actual period game, we could imagine it was created with a VRC6 and just dedicated three of the channels to sound effects. Or, if I'm not listening very carefully and Donut Dodo actually does have a 6-waveform soundtrack, a hypothetical VRC9 chip that adds another 3 on top of that.) But until I put words to what was happening here something just felt off, like a landscape having the wrong number of colors.

¹ (EDIT: See longer writeup here.)

² Image by Brendan Becker

³ Not a game I'm super jazzed on, but the sequel/DLC, "Plague Knight", was great. Plague Knight is so full of interesting ideas and fun mechanical twists it makes the original great by association.

⁴ Though Mega Man 9 actually did have a feature where it would emulate sprite flicker when it detected it was drawing more sprites than an NES could have handled. Hardcore.


xkeeper
@xkeeper
Sorry! This post has been deleted by its original author.

You must log in to comment.

in reply to @mcc's post:

Possible subject for a followup post: There's people who actually prefer to listen to film scores over any other type of music, even classical/orchestral music that is made with the same instruments as typical film scores. Even without weird technical limitations like chiptune channel-stealing, do movie, TV and game scores have unique qualities deriving from the fact they can't "grab your entire attention" and have to coexist both attention-wise and mixing-wise with action and dialogue? Might those "background" qualities make movie scores and such actually superior to "regular" music for some environments, such as listening to while writing or driving?

One other thing to keep in mind - putting in that limitation is a significant amount of work! At the very least you need to render out every song in 2 layers, and have one of them cut out when a sound's playing... but even then, authentically it'd only come back at the start of a new note, which means you'd need midi data alongside your track!

Secret of Mana's problem with sound channels was that there's 3 heroes and 3 enemies, and all of them got assigned their own sound channels (out of 8), so there were very few "safe" channels left, so it'd plow over important stuff like percussion. Most SNES games just have 2 channels marked for SFX and let them overwrite each other if 3 sounds play at a time, in favor of keeping the music cleaner with 6 channels guaranteed to always play.

any idea why European 8-bit composers were so averse to ducking music that they would reserve whole channels for SFX, or make the player choose Music OR SFX but not both?

I suppose it just won't do to have a punch sound overwrite your prog rock arpeggios but you get 10 minutes to go wild with that while the game spools in from cassette anyway

I know neither what kinds of engines or tools they were working with, but one advantage of reserving a channel for SFX and not touching it is nobody has to write the logic that decides how "ducking" works. If sound channels are very stateful (and I believe the C64's, at least, was) then switching sounds means you have to remember the old state so you can switch back, there could be other complexities that make ducking inherently more difficult on some platforms than were are on other platforms.

The US NES actually supports expansion audio, it's just only exposed on the expansion port on the bottom. There are a couple pins passed directly from the cart to that though, so what people usually do is use one of those then solder in a connection on the expansion port since nothing used it anyway. There have been a couple things that do it properly but it's a weird thickness that's kind of a pain to mate to.

A quote from Hip Tanaka on Metroid talking about how he "envisioned no distinction between music and sfx and that it all is the literal sound the game is making as a living entity" inspired me to actually implement sound ducking (very rudimentarily). It does work better for certain musical aesthetics-- you probably wouldn't really want it if you're focusing on fun cool energy music, but interruptions on the sound channel from sound effects on the things happening can add to a notably subdued soundscape, and likewise it does force a certain aesthetic to how the music exists

in reply to @xkeeper's post:

one of the worst victims of these limitations were racing games, where you usually had one or two of the channels for audio and then dedicated percussion and another channel to Car Noises™. motocross maniacs 1 and 2 are fun examples, since the first game has very limited music to allow the engine sfx, the second game forgoes all that and has a much richer soundtrack.

this was supposed to be on the original post but cohost comments are weird in that you can see them for every single post but comments only go on the post you're actually looking at. weird

I think a great example of planning around ducking would be the NES port of Rampage. During regular play there's only a lone bass line in the background, which interestingly provides a very chill feeling despite the fact that you're a giant monster eating people and destroying buildings. But then in the bonus stage they have a chipper multi-channel song, which they can get away with because there are no enemies and only a single building to smash up (which iirc only requires one channel for sound effects).

That said, as a kid I mostly experienced ducking, the limited sprite rendering capability, etc. as limitations that I wished didn't exist. The only thing I've been craving from emulators and retro games was a visual rendering mode that emulated older TVs, but other than that it's the modern offerings that feel more "right" to me than ones which reproduce the limitations of old hardware.