Hey, wouldn't the 'not doing things in the background' side of things be pretty relevant for a Z80 sound driver on the Genesis/Mega Drive?
Or at least only doing other sound related things in the background. (though there's the 68k sound driver route with Z80 only acting as a sample playback slave)
You've got the shift-register bank switching overhead and 32kB bank size constraint to deal with, especially with the larger file sizes involved here. (also issues with bus contention with DMA is used to update VRAM)
OTOH tunes done with SnoozeTracker with RAM/ROM is no object, but do-able on a 3.58 MHz Z80 would still be a pretty solid representative demo for what more system-specific, lean coded drivers could be used for. (getting good sound out of the logarithmic 4-bit amplitude seems to be the bigger challenge that's been overcome here)
Plus you could argue hardware mappers on-cart that help the Z80 on the MD or even on the SMS. (Tiido even prototyped a mapper+DMA board for the SMS around 6-7 years back I think, but I didn't see it go anywhere, but it looked to have DMA both for writing to VDP RAM ports and to SN76489 PSG registers, I think with 8 pulse-wave generator sound channels mixed into the SN channels too, I assume sort of like how Pitfall II did it)
As far as all-software techniques go, I think Afterburnet II on the MD was the only game to bother with PSG sample playback. Seems to do 2 channels/voices with 1 dedicated to speech/SFX and the other to percussion. (might also all be crammed into a single 32k block of ROM in this case, sounds like <4 kHz and heavily filtered in preprocessing, but not too bad for an early MD game, especially compared to early Z80 PCM drivers or some of the crappier drivers used years later on)