SCC synthesizer...

Page 1/7
| 2 | 3 | 4 | 5 | 6

By Alex Ganzeveld

Expert (89)

Alex Ganzeveld's picture

20-03-2003, 17:05

Hallo,

Ik ben een héle héle tijd niet bezig geweest met de MSX maar ik ben er onlangs weer mee begonnen. Muziek maken, als vanouds. M'n studio is aardig uitgebreid onderhand. Ik zou heel graag een nieuw stukje MSX software ontwikkelen, namelijk een

SYNTHESIZER op basis van de SCC.

Je zou het principe kunnen omschrijven als "wave morphing". Voor degenen die een beetje bekend zijn met synthesizers: een beetje á la Prophet 600 of de Korg DW8000.

Ter illustratie: je neemt een SCC-waveje. Een PULSGOLF... Op basis van de snelheid van een LFO (Low Frequentie Oscilator) laat je die puls in breedte variëren: PWM.
Hetzelfde zou je ook kunnen doen met SINUS die je in een BLOKGOLF laat veranderen et cetera, et cetera...

Je kunt zo hele sappige, levendige geluiden uit je SCC halen.

Commentaar graag, en eventueel een helpende hand...
Groeten,

Alex Ganzeveld
procoboard@hotmail.com

Login or register to post comments

By anonymous

incognito ergo sum (109)

anonymous's picture

20-03-2003, 17:10

Ok, si hubiera sabido antes que en esta WEB podía escribir en mi idioma no me hubiese tomado tantas molestias en intentar escribir en un inglés medianamente aceptable.

By Alex Ganzeveld

Expert (89)

Alex Ganzeveld's picture

20-03-2003, 17:22

Hmm... My Spanish probably is just as bad as your Dutch, Warau, but I think I get the point. So here's the story in English:

I would like te develop an SCC - SYNTHESIZER.

In brief, I want to develop a piece of software that can do PULSEWIDTH modulation, or other "morphs", like a SINE-WAVE shaping in to a SQUARE, based on a LFO (Low Frequency Oscilator)...It's quite simple, but you can make really nice moving and living sounds that way...

Any volunteer programmers?

If you want to know more, please send me a mail so I can explain...

By BiFi

Enlighted (4348)

BiFi's picture

20-03-2003, 18:02

I'm planning to work on (yet another) SCC tracker that will have wave-morphs for a feature. Unfortunately it may take some time before I actually get to do any coding on it since there are some other projects that have a higher priority right now.

By wolf_

Ambassador_ (9688)

wolf_'s picture

20-03-2003, 21:09

[lamer-modus]
tre ghammur PWM tyop'ah ghaf'ah chev'ah kzaa i 2 osc'ah fhrioo MSX/SCC kzaa tyop'ah vaav i hgaa kzaa? Big smile

very roughly translated:

Things like PWM are nice indeed, and can be simulated using 2 oscilators.. is the MSX/SCC fast enough for realtime waveform updating? Big smile
[/lamer-modus]

In solid snake there were some waveform morphs.. but as far as I could see it was just a crossfade, in this case there is no really spectacular spectrum movement.. just a crossfade.

By BiFi

Enlighted (4348)

BiFi's picture

20-03-2003, 21:35

Not only Solid Snake. Nemesis 3 started with 'morphing' waves and all SCC titles following Nemesis 3 have it too. Same goes for SD-Snatcher.

By wolf_

Ambassador_ (9688)

wolf_'s picture

21-03-2003, 13:03

nemesis3, really?

There are some spectrally changing sounds in N3, as well as in Space Manbow, but couldn't those waves be fixed waveforms in the SCC ROM or in the game itself? Esp. since those waves are the same in every game Smile

By Alex Ganzeveld

Expert (89)

Alex Ganzeveld's picture

21-03-2003, 14:53

I think it that fixed waveforms could be a option.

Since the SCC is just playing mini-waves -as far as I know- in a very limited way, you could just as well design a whole range of preset-waveforms that you alternate, instead of calculating them.

By wolf_

Ambassador_ (9688)

wolf_'s picture

21-03-2003, 19:16

But then still the question arises if the SCC/MSX is fast enough to continiously update the SCC waves, in a way which leaves space for other things as well.. so, not as in: playing a sample, so that the cpu freezes Smile

By anonymous

incognito ergo sum (109)

anonymous's picture

21-03-2003, 23:51

Updating a wave requires a 32 byte LDIR command. So, the Z80 is fast enough to update about 100 waves each 1/60th second.

By Alex Ganzeveld

Expert (89)

Alex Ganzeveld's picture

24-03-2003, 12:06

I'm not an assembly programmer, so coorect me if I'm wrong, but here's my view:

Updating a wave requires a 32 byte LDIR command. So, the Z80 is fast enough to update about 100 waves each 1/60th second.

For a PWM effect you need at least 16 different preset waves, ranging from a one byte up puls -which would sound something like the MSX-keyboard click- to a 16 byte puls, which technically is a square wave.

In this example, the MSX would easily be fast enough. In practice I would never use an LFO faster then 20 Hz orso, because it starts sounding more like ringmodulation than pulsewidth modulation. So you would need 20x16=380 waves per second max. Per channel, that is.

If you use all 5 channels simultaniously -slightly detuned to create a great unison effect- you would need 1900 waves. The Z80 can do 6000, so that would be sufficient to leave room to take care of other stuff, like the interface and the midi-handling etc.

But how much can the SCC handle? What are it's capabilities?

Page 1/7
| 2 | 3 | 4 | 5 | 6
My MSX profile