Forum unknown
· Audiophile
#AMIGA-MUSIC
33 messages in this thread
The number of voices is really dependent on your program. The Amiga has
four hardware channels. An CD player has two (higher resolution, but
otherwise similar) channels. For simple tone generation, the Amiga can on
the fly combine several voices into each channel{_; I don't know of any
limit on this other than the speed of the CPU. For more complex sounds,
where the 68000 is busy trying to help make the sounds, you'll be able to
get even fewer voices, down to the point where you're just using each
channel for one voice. Going even further, the sound device can be set up
so that one channel modifys the other, resulting in two channels capable of
FM synthesis, like on a Yamaha DX keyboard. You basically trade voice
quality{_ and features for the number of voices. -Hazy
As long as we're on this subject, do you have any information on the "high
resolution" mode which supposedly gives us 14 bits of resolution in two
channels? I've heard about this from day one but have never seen any doc
on it in the manuals; the closest I can come is playing games with the AM
modulation mode, and I'm not sure if that's what was being referred to.
This "high resolution" mode comes from the 6 bit amplitude control on each
channel. Since most DAC sound generators don't have this, then the only
resolution available is the bits going into the DAC itself. And the only
way to change the volume is to change the waveform, hence losing
resolution. With the extra 6 bit amplitude, you can use the fully detailed
waveform so that quieter notes still have the full 8 bit resolution of the
original waveform. Net effect, it sounds better. (Another way this could
be used is to have the CPU create sound and volume data "on the fly" at
full speed and feed it into both sound & volume regs, hence gaining a
"true" 14 bit resolution.) –>Steve Bennett
Steve,
Hmmm, the second method you mentioned sounds more like what I'm referring
to. The amplitude control bits _definitely_ ain't it, as I distinctly
remember people talking about 8 bit audio/ 6 bit amplitude and _then_
saying "…and it's got this high resolution mode too…". Besides, you
know as well as or better than I that 8 bits with 4 bits of amplitude
control is NOT equivalent to a 14 bit DAC for several reasons.
I'd say your second approach was it, save for one thing… the comments
I've read refer to stacking the two channels on each side together for a
single left and right output. Almost sounds like there's a mode that slips
DAC A's 8 bits inside the LSB of DAC B. Any other clues?
P.S., If you're gonna change the amplitude bits "on the fly", with the CPU,
as bits of the waveform proper, then you're gonna eat up one HECK of a lot
of processor time. I gotta think there's an easier way.
The mode which combines two channels is actually only a modulation mode. To
wit: The second channel modulates the first. The DAC is still only 8
bits. The 14 bits *is* the 6 amplitude bits plus the 8 DAC bits. (After
all, what is a waveform but a varience in "amplitude"?) With the amplitude
bits, you still do get a better sound than what you would get with just an
8 bit DAC. Witness the MAC. –>Steve Bennett
The mode which combines two channels is actually only a modulation mode. To
wit: The second channel modulates the first. The DAC is still only 8
bits. The 14 bits *is* the 6 amplitude bits plus the 8 DAC bits. (After
all, what is a waveform but a varience in "amplitude"?) With the amplitude
bits, you still do get a better sound than what you would get with just an
8 bit DAC. Witness the MAC. –>Steve Bennett
Steve,
Hmmm, the second method you mentioned sounds more like what I'm referring
to. The amplitude control bits _definitely_ ain't it, as I distinctly
remember people talking about 8 bit audio/ 6 bit amplitude and _then_
saying "…and it's got this high resolution mode too…". Besides, you
know as well as or better than I that 8 bits with 4 bits of amplitude
control is NOT equivalent to a 14 bit DAC for several reasons.
I'd say your second approach was it, save for one thing… the comments
I've read refer to stacking the two channels on each side together for a
single left and right output. Almost sounds like there's a mode that slips
DAC A's 8 bits inside the LSB of DAC B. Any other clues?
P.S., If you're gonna change the amplitude bits "on the fly", with the CPU,
as bits of the waveform proper, then you're gonna eat up one HECK of a lot
of processor time. I gotta think there's an easier way.
It's pretty trivial to map arbitrary-precision amplitudes onto the
amplitude quanta available with the 8-bits-plus-6-bits scheme of using the
sample and the volume together.
Agreed. It just takes a whole lotta processor time….
–>Steve Bennett
Agreed. It just takes a whole lotta processor time….
–>Steve Bennett
It's pretty trivial to map arbitrary-precision amplitudes onto the
amplitude quanta available with the 8-bits-plus-6-bits scheme of using the
sample and the volume together.
This "high resolution" mode comes from the 6 bit amplitude control on each
channel. Since most DAC sound generators don't have this, then the only
resolution available is the bits going into the DAC itself. And the only
way to change the volume is to change the waveform, hence losing
resolution. With the extra 6 bit amplitude, you can use the fully detailed
waveform so that quieter notes still have the full 8 bit resolution of the
original waveform. Net effect, it sounds better. (Another way this could
be used is to have the CPU create sound and volume data "on the fly" at
full speed and feed it into both sound & volume regs, hence gaining a
"true" 14 bit resolution.) –>Steve Bennett
As long as we're on this subject, do you have any information on the "high
resolution" mode which supposedly gives us 14 bits of resolution in two
channels? I've heard about this from day one but have never seen any doc
on it in the manuals; the closest I can come is playing games with the AM
modulation mode, and I'm not sure if that's what was being referred to.
It's me, the nitpicker again. ACTUALLY, the Yamaha "FM" system is a PHASE
modulation system: at exactly regular intervals, new samples are computed.
When one operator modulates another, it modulates the pointer into the
modulated operator's sinewave table, displacing it from its natural
position for that time period by some number of table entries.
In the Amiga, when you ask the hardware to use one of the audio channels to
modulate the frequency of another channel, that's exactly what you get–
you actually modulate the sampling rate of the modulated channel. The
audio effect is very different, not least because in the DX7 and its family
you have 6 operators capable of modulating one another in various
combinations, whereas using the Amiga hardware frequency modulation you
have, at most, the equivalent of 4 operators (2 stacks of 2 operators).
And the interest of the DX FM system is that the timbre changes over the
course of the note, in response to the velocity wit which the key was
struck; to do the same on the Amiga would mean scaling the modulating
voice's samples with an envelope and a keyboard velocity.
BTW, can't you do velocity sensing on the Amiga keyboard (detect
start-of-motion and end-of-motion times)? I thought I'd found that
somewhere.
So the DX series is more than that. Hmmm. I though I had read an article
on these; maybe not. As for velocity sensing, I don't think you could do
that with the Amiga keyboard as-is. The keyboard actually sends separate
key-pressed and key-released signals, but nothing that usable for velocity
sensing. Of course, the keyboard interface could be replaced by a real
music keyboard with velocity sensing hardware or simply a transmission for
start and for finish of a key press. That's one of the advantages of an
intelligent keyboard. -Hazy
Hey, fast response! Righto, thanks for the keyboard info. BTW, the DX
does these computations (and MANY more) for 6 operators, times 16
simultaneous voices, times at LEAST 30K Samples/sec. We're talking SERIOUS
custom VLSI action here…
Chris,
"Serious custom VLSI"… brother you got that one right! Take a look at
the innards of a TF1 sometime… it's got a lousy 680x processor in it!
(Actually it's one of Hitachi's 64 pin expanded I/O devices, 6303Y I
think…)
yeah, it's them big dips with YAMAHA stamped all over them what's doing the
real grunt work.
Re: "lousy 680x processor", remember that most of your favorite video games
probably use 6809's…..very well-respected and venerated in some
circles! A friend of mine's implemented an object-oriented system on the
6303 for controlling an advanced site security system, too, so it's not TOO
much of a slouch either! Wouldn't it be nice to have millions to plough
into custom VLSI's? *sigh*.
Chris,
Oh, I should clarify that; I meant "lousy" in comparison to the 68000. I
cut my teeth on a 6800, then graduated to the 6809, and have done lots of
process control and imbedded computers using Intel and Motorola parts. The
680x line remains my favorite architecture for 8 bitters.
I guess I did imply that the 680x was bad; that was NOT my intention,
merely pointing out that it was indeed the VLSI doing the work, not some
high powered CPU.
No sweat, bro….6809 4 ever, yeah….. Hey, you ever type the 1.1
Preferences file and find the semi-public declaration of love between two
(at the time) Amiga employees?
Yep, sure have. As the little round Italian lady says, "It's in there".
Yep, sure have. As the little round Italian lady says, "It's in there".
No sweat, bro….6809 4 ever, yeah….. Hey, you ever type the 1.1
Preferences file and find the semi-public declaration of love between two
(at the time) Amiga employees?
Chris,
Oh, I should clarify that; I meant "lousy" in comparison to the 68000. I
cut my teeth on a 6800, then graduated to the 6809, and have done lots of
process control and imbedded computers using Intel and Motorola parts. The
680x line remains my favorite architecture for 8 bitters.
I guess I did imply that the 680x was bad; that was NOT my intention,
merely pointing out that it was indeed the VLSI doing the work, not some
high powered CPU.
Re: "lousy 680x processor", remember that most of your favorite video games
probably use 6809's…..very well-respected and venerated in some
circles! A friend of mine's implemented an object-oriented system on the
6303 for controlling an advanced site security system, too, so it's not TOO
much of a slouch either! Wouldn't it be nice to have millions to plough
into custom VLSI's? *sigh*.
Chris,
"Serious custom VLSI"… brother you got that one right! Take a look at
the innards of a TF1 sometime… it's got a lousy 680x processor in it!
(Actually it's one of Hitachi's 64 pin expanded I/O devices, 6303Y I
think…)
yeah, it's them big dips with YAMAHA stamped all over them what's doing the
real grunt work.
Hey, fast response! Righto, thanks for the keyboard info. BTW, the DX
does these computations (and MANY more) for 6 operators, times 16
simultaneous voices, times at LEAST 30K Samples/sec. We're talking SERIOUS
custom VLSI action here…
So the DX series is more than that. Hmmm. I though I had read an article
on these; maybe not. As for velocity sensing, I don't think you could do
that with the Amiga keyboard as-is. The keyboard actually sends separate
key-pressed and key-released signals, but nothing that usable for velocity
sensing. Of course, the keyboard interface could be replaced by a real
music keyboard with velocity sensing hardware or simply a transmission for
start and for finish of a key press. That's one of the advantages of an
intelligent keyboard. -Hazy
Chris,
Hmmm, I think I might call you on this one. I agree that "the audio effect
is very different…" between Amiga FM modulation and DXn FM modulation,
but because of the reason you cited second: the number of operators and the
way you stack them. FM versus PM should have very little to do with it, as
one is sort of a special case of the other. Other questions are more
important, such as what happens to the phase of the modulated waveform when
you drive it through zero hertz into the negative frequency domain, and are
you doing linear or exponential modulation. With the other factors the
same, one can do anything with FM that another can do with PM.
I agree, by the way, with your implied comment that additive synthesis is
the way to go on the Amiga, not FM. Anything you can do with FM, you can
do with additive… and a whole lot more.
If you're into this sort of thing you might want to dig out some of
Chowning's papers on the subject. I think Chamberlin touches on some of it
in his book as well. Oh, and Bernie Hutchins and the MEG is an excellent
source, if he's still around (haven't heard from him in years).
I dunno about you, but I'm not gonna be bored for a long time to come! 8)
Correct: the Ami only allows two single FM stacks, max, whereas DX synths
let you get more levels, and it's those extra orders of subtlety=
indirection that provide the interesting sounds…as anyone who's spent any
time programming a DX7 could tell you. Did I imply that harmonic additive
was definitely the way to go on the Ami? Just at present, I don't know
that I specifically believe it. But it sure is NICE to have a
wavetable-spitter and a computer in the same box!
Correct: the Ami only allows two single FM stacks, max, whereas DX synths
let you get more levels, and it's those extra orders of subtlety=
indirection that provide the interesting sounds…as anyone who's spent any
time programming a DX7 could tell you. Did I imply that harmonic additive
was definitely the way to go on the Ami? Just at present, I don't know
that I specifically believe it. But it sure is NICE to have a
wavetable-spitter and a computer in the same box!
Chris,
Hmmm, I think I might call you on this one. I agree that "the audio effect
is very different…" between Amiga FM modulation and DXn FM modulation,
but because of the reason you cited second: the number of operators and the
way you stack them. FM versus PM should have very little to do with it, as
one is sort of a special case of the other. Other questions are more
important, such as what happens to the phase of the modulated waveform when
you drive it through zero hertz into the negative frequency domain, and are
you doing linear or exponential modulation. With the other factors the
same, one can do anything with FM that another can do with PM.
I agree, by the way, with your implied comment that additive synthesis is
the way to go on the Amiga, not FM. Anything you can do with FM, you can
do with additive… and a whole lot more.
If you're into this sort of thing you might want to dig out some of
Chowning's papers on the subject. I think Chamberlin touches on some of it
in his book as well. Oh, and Bernie Hutchins and the MEG is an excellent
source, if he's still around (haven't heard from him in years).
I dunno about you, but I'm not gonna be bored for a long time to come! 8)
It's me, the nitpicker again. ACTUALLY, the Yamaha "FM" system is a PHASE
modulation system: at exactly regular intervals, new samples are computed.
When one operator modulates another, it modulates the pointer into the
modulated operator's sinewave table, displacing it from its natural
position for that time period by some number of table entries.
In the Amiga, when you ask the hardware to use one of the audio channels to
modulate the frequency of another channel, that's exactly what you get–
you actually modulate the sampling rate of the modulated channel. The
audio effect is very different, not least because in the DX7 and its family
you have 6 operators capable of modulating one another in various
combinations, whereas using the Amiga hardware frequency modulation you
have, at most, the equivalent of 4 operators (2 stacks of 2 operators).
And the interest of the DX FM system is that the timbre changes over the
course of the note, in response to the velocity wit which the key was
struck; to do the same on the Amiga would mean scaling the modulating
voice's samples with an envelope and a keyboard velocity.
BTW, can't you do velocity sensing on the Amiga keyboard (detect
start-of-motion and end-of-motion times)? I thought I'd found that
somewhere.