public final class EnvelopeGenerator extends Object
In addition, another counter is used to implement the exponential envelope decay, in effect further dividing the clock to the envelope counter. The period of this counter is set to 1, 2, 4, 8, 16, 30 at the envelope counter values 255, 93, 54, 26, 14, 6, respectively.
Modifier | Constructor and Description |
---|---|
protected |
EnvelopeGenerator()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
clock()
SID clocking - 1 cycle.
|
protected int |
output() |
byte |
readENV()
Return the envelope current value.
|
protected void |
reset()
SID reset.
|
protected void |
setChipModel(ChipModel chipModel)
Set nonlinearity parameter for imperfect analog DAC emulation. 1.0 means
perfect 8580-like linearity, values between 0.95 - 0.97 are probably
realistic 6581 nonlinearity values.
|
protected void |
writeATTACK_DECAY(byte attack_decay) |
protected void |
writeCONTROL_REG(byte control) |
protected void |
writeSUSTAIN_RELEASE(byte sustain_release) |
protected void setChipModel(ChipModel chipModel)
chipModel
- The chip model to use.protected void clock()
protected int output()
protected void reset()
protected void writeCONTROL_REG(byte control)
control
- control registerprotected void writeATTACK_DECAY(byte attack_decay)
attack_decay
- attack/decay valueprotected void writeSUSTAIN_RELEASE(byte sustain_release)
sustain_release
- sustain/release valuepublic byte readENV()
Copyright © 2018 Ken Händel. All rights reserved.