SCC Emulation by FM Synthesis???

By hamalech

Resident (48)

Аватар пользователя hamalech

25-06-2007, 13:38

Hi folks,

Is it possible to emulate SCC sounds with FM synthesis who's in use on FM-Pack, MSX-Audio or music module????

Thx

Для того, чтобы оставить комментарий, необходимо регистрация или !login

By shaiwa

Champion (369)

Аватар пользователя shaiwa

25-06-2007, 14:14

Think it's technical possible.
The old fmsx-dos version did it through adlib so why it can't be done through the FM-Pac/Msx Audio.

By wolf_

Ambassador_ (9774)

Аватар пользователя wolf_

25-06-2007, 14:56

There's a limit as to what waveforms a simple FM synth can create, with modern FM synthesis about everything is possible. With "simple FM" (a term used for a 2-op FM model), sounds are usually between 'clean' and 'noisy', while with complex FM (usually 4-op or more and/or non-sine waveforms) a lot more rich/bright/synthy sounds are possible that aren't clean, but also aren't noisy. The SCC sounds are usually in this rich/bright/synthy category, so a Moonsound would be the closest non-SCC chip on MSX to do SCC'ish things. Major thing to keep in mind is that FM can have envelopes on their modulators, while the SCC is just a simple waveform. When such SCC waves change or morph it's done on purpose in software (SD-Snatcher, Solid Snake) by uploading new waves into SCC mem. Without doing this, SCC waves are sterile waves. To create sterile, non-changing waves with FM, one simply has to avoid using the modulator's envelope, as well as the modulator's vibrato and amplitude modulation (the OPL bits). At least it'll create the sterile'ness of the SCC, but the waveform itself is mainly dependent on the type of FM synthesis. Moonsound does this the best, I guess followed by the CX5m, then the FM-PAC (as it has 2 waveforms per operator) and last the Music Module.

(note, just to make sure: in MB1.4 the carrier is the right column in the voice editor, the modulator is the left one. In MBFM this differs per algorithm, but whenever you're adjusting parameters related to the volume then you're dealing with the carrier, adjusting parameters related to soundcolor = modulator)

By AuroraMSX

Paragon (1901)

Аватар пользователя AuroraMSX

25-06-2007, 20:53

then the FM-PAC (as it has 2 waveforms per operator) and last the Music Module.Now, this I find interesting. I've always thought of the FM-PAC/MSX-Music as the simple, el-cheapo version of the Music Module/MSX-Audio.
If memory serves me well, the resolution of almost all operator parameters in the Music Module is higher (more bits per parameter) than in the FM-PAC. Higher resolution means better control over the sound, so why is the FM-PAC the better chip in this case?

By wolf_

Ambassador_ (9774)

Аватар пользователя wolf_

25-06-2007, 20:56

Because it has an extra operator waveform (iirc a /\_ 'ish sine with the /\ being the top-part of a sinusoid). The musmod only has a sine. This might sound insignificant, but you *won't* succeed in recreating, say, Microcabin voices on musmod. It's actually why I think the FM-Pac is better sounding, the instruments can be richer in their sound because the waveforms are richer in harmonics (read, a sine is exactly 1 partial, so, that's no fun!).

By AuroraMSX

Paragon (1901)

Аватар пользователя AuroraMSX

26-06-2007, 14:46

Because it has an extra operator waveform (iirc a /\_ 'ish sine with the /\ being the top-part of a sinusoid). The musmod only has a sine./me now frantically searches the YM2413 manual but finds no indication of such a feature... You sure about this? :-? As far as I can tell, the FM-PAC is sine-only, too. It's the YM2151 (CX5M an the likes) which has this waveform selection feature.

By wolf_

Ambassador_ (9774)

Аватар пользователя wolf_

26-06-2007, 15:02

In the voice editor of pro-tracker -and iirc synthsaurus as well- this operator is called 'distortion bit', perhaps it's also called like that in the manual. This distortion bit however is in reality just another operator waveform. In MB1.4 one can use these waveforms as well, with a trick. Just wrap-around the feedback level. Usually 0..7, but since there are 4 operator waveform combinations (1+1 1+2 2+1 2+2) the FB values are 0..7 0..7 0..7 0..7, where each group represents another combination of waveforms. Which is which is beyond me.. Tongue

[edit] check page 5 of that pdf, it's register 4.

[edit2] seems the FB is in the same byte, so this feature of wrapping the feedback values in MB is prolly a bug or undocumented feature. As the values are AND 63 or so. This cycles through all 8 FB positions while also changing those distortion bits .. Tongue

By shaiwa

Champion (369)

Аватар пользователя shaiwa

26-06-2007, 15:04

As far as I know i the FM-Pac a cut down version of the MSX Audio.
So if the Y8950 can't do it, the YM2413 sure can't isn't it?

By NYYRIKKI

Enlighted (5396)

Аватар пользователя NYYRIKKI

26-06-2007, 17:42

Theory:
As SCC is nothing more than just a hardware sample player, you can emulate SCC sound with any device that can play samples. Look here for more information about playing samples on other devices:
http://www.msx.org/forumtopic5246p16.html

Practice:
No, it is not possible :)

By shaiwa

Champion (369)

Аватар пользователя shaiwa

26-06-2007, 18:10

A wild guess, opl/opll is too slow??

By Edwin

Paragon (1182)

Аватар пользователя Edwin

26-06-2007, 20:00

AuroraMSX> Register 3, bit 4&5. In the complete docs you'll find this:
# $03: D3 (DM): The modulated wave is rectified to half wave.
# $03: D4 (DC): The carrier wave is rectified to half wave.