mirror of
https://github.com/tildearrow/furnace.git
synced 2024-12-04 18:27:25 +00:00
2.5 KiB
2.5 KiB
Yamaha YM2612
one of two chips that powered the Sega Genesis. It is a six-channel, four-operator FM synthesizer. Channel #6 can be turned into 8-bit PCM player.
For 0.6pre1, Furnace can now support advanced YM2612 features that Fractal sound driver adds: two software-mixed PCM channels (variable pitch, sample offsets, max 13.7 khz rate) and CSM - ch3 special mode feature that can be abused to produce rudimentary speech synthesis.
effects
10xy
: set LFO parameters.x
toggles the LFO.y
sets its speed.
11xx
: set feedback of channel.12xx
: set operator 1 level.13xx
: set operator 2 level.14xx
: set operator 3 level.15xx
: set operator 4 level.16xy
: set multiplier of operator.x
is the operator (1-4).y
is the mutliplier.
17xx
: enable PCM channel.- this only works on channel 6.
18xx
: toggle extended channel 3 mode.- 0 disables it and 1 enables it.
- only in extended channel 3 chip.
19xx
: set attack of all operators.1Axx
: set attack of operator 1.1Bxx
: set attack of operator 2.1Cxx
: set attack of operator 3.1Dxx
: set attack of operator 4.30xx
: enable envelope hard reset.- this works by inserting a quick release and tiny delay before a new note.
50xy
: set AM of operator.x
is the operator (1-4). a value of 0 means "all operators".y
determines whether AM is on.
51xy
set SL of operator.x
is the operator (1-4). a value of 0 means "all operators".y
is the value.
52xy
set RR of operator.x
is the operator (1-4). a value of 0 means "all operators".y
is the value.
53xy
set DT of operator.x
is the operator (1-4). a value of 0 means "all operators".y
is the value:- 0: -3
- 1: -2
- 2: -1
- 3: 0
- 4: 1
- 5: 2
- 6: 3
- 7: -0
54xy
set RS of operator.x
is the operator (1-4). a value of 0 means "all operators".y
is the value.
55xy
set SSG-EG of operator.x
is the operator (1-4). a value of 0 means "all operators".y
is the value (0-8).- values between 0 and 7 set SSG-EG.
- value 8 disables it.
56xx
: set DR of all operators.57xx
: set DR of operator 1.58xx
: set DR of operator 2.59xx
: set DR of operator 3.5Axx
: set DR of operator 4.5Bxx
: set D2R/SR of all operators.5Cxx
: set D2R/SR of operator 1.5Dxx
: set D2R/SR of operator 2.5Exx
: set D2R/SR of operator 3.5Fxx
: set D2R/SR of operator 4.