|
ForumsSega Master System / Mark III / Game GearSG-1000 / SC-3000 / SF-7000 / OMV |
Home - Forums - Games - Scans - Maps - Cheats - Credits Music - Videos - Development - Hacks - Translations - Homebrew |
Author | Message |
---|---|
|
Master System sound limits, possible new chips ideas.
Posted: Wed Nov 01, 2017 5:24 pm
|
Okay, so, we know the SMS is pretty limited sound-wise compared to the Famicom, and the YM2413 (OPLL) may have more channels than the Mega Drive's YM2162 (OPN2), but is only able to have one custom instrument (which I think varies by game).
So, I am wondering, why have we not tried to create a new soundchip for the SMS, that, unlike when the YM2413 is used with the PSG at the same time, causing slowdown, perhaps it can have a way of getting around it. I was thinking of a clone of the Sunsoft 5B, or the C64 .sid, or the Moonsound from the MSX. |
|
|
Posted: Wed Nov 01, 2017 9:49 pm |
Well, it's technically possible. The cartridge connector does have a pin for audio input. | |
|
Posted: Wed Nov 01, 2017 10:17 pm |
The Game Gear and Mega Drive do, the Master System doesn't. To add sound hardware you either need audio passthrough (mixing or replacement) in the RF or AV cable, or attempt to steal the bus to push it through the PSG as a sample, which would be pretty awful (quiet, low quality and a huge hit on CPU cycles).
If you are going to add hardware, why not embed a full ARM system with software synths and MP3 playback, maybe even WiFi to stream audio from the internet - why restrict yourself to hardware synths chips? Slowdown with FM seems minor as the extra wait time required by the YM2413 is balanced by the extra CPU time needed to generate instruments in software for the PSG. |
|
|
ARM system sounds intriguing.
Posted: Thu Nov 02, 2017 5:09 pm
|
These ideas are quite nice. I remember in SSRG mentioning the creation of a Genesis counterpart to the SNES's MSU-1 carts.
The ARM system and streaming music via Wi-Fi is something I hope the SMS can handle. I remember someone saying with the SNES that you could put a Raspberry Pi in the carts and it would work as long as you didn't overload the power. Could the SMS handle an ARM system without overloading power? This also makes me wonder how the Famicom handled expanded audio chips in cartridges from people like Konami, Namco, and Sunsoft without slowing everything down (Mr. Gimmick for example). In the Sonic 1 FM mod by Valleybell, slowdowm was quite present, since it played both PSG AND FM at once (PSG mainly for sound effects). These questions are not meant ot be annoying if they are, but rather to give ideas and learn more about the hardware. |
|
|
Posted: Sat Nov 04, 2017 7:52 am |
The main reason for the slowdown in Sonic 1 FM is that it has to process 8 channels (6x FM melody, 1x FM drums, 1x PSG SFX) instead of 4 and regardless of additional wait times it takes about twice as much CPU time to process.
And since the original PSG-only version suffers from slowdown already, it only makes it worse. (PSG software envelopes aren't too slow, actually - sequence processing and frequency modulation each take a lot more time.) Using an AY8910 or YM2149 (which is what Sunsoft 5B is) would allow for 3 additional PSG channels, upgrading the system to 7 PSG channels in total. It would probably cause similar slowdowns as the OPLL+SN PSG setup. The Moonsound (YMF278, also known as OPL4) is where it becomes interesting: It has 18 FM channels (from OPL3) plus 24 PCM channels. Just doing sound processing for 24 PCM channels (which is what most MSX games with Moonsound support do) would probably cause a huge performance hit for the slow Z80 CPU. (6 times as many channels as with PSG sound) If you instead add a separate CPU that just does sound processing (e.g. MP3 playback), that would improve the performance a lot, as your main CPU doesn't have to do any sound processing at all. |
|
|
Posted: Sat Nov 04, 2017 8:00 am |
Note that most Master System games made for Japan use a three channel music engine for compatibility with FM-less systems (Mark III, export) and to reduce CPU load. There's a reason 16 bit systems had dedicated sound CPUs... But putting that on the cartridge would have been crazy expensive in the 80s. | |
|
Posted: Thu Nov 09, 2017 5:45 pm |
I think that TmEE did something similar regarding adding special chips to rapidly manipulate the PSG to do crazy things with it (multiple pulse channels, PCM, etc.), called the SMSDMA. I don't think there were any updates regarding that after 2012, unfortunately.
Someone else named tEFFx came out with a new tracker which allows you to use custom waveforms, PCM samples, etc. to make music using the PSG sound chip itself. I hope development for this program continues, this would be a great engine to use in conjunction with an ARM processor in a cartridge without having to detain the SMS's main CPU. Here's a link to SnoozeTracker: https://github.com/tEFFx/SnoozeTracker |
|
|
Posted: Thu Nov 09, 2017 8:47 pm |
Samples off noise channel, pretty crazy. SnoozeTracker in action.
https://soundcloud.com/teffx/shovel-knight-an-underlying-problem-sn76489 Writing a player has been on my list of things to attempt, its not straight forward though as timings are not constant. |
|