mirror of
https://github.com/tildearrow/furnace.git
synced 2024-12-04 18:27:25 +00:00
81ab2acb2c
Trying for more consistency and clarity, especially for quick reference.
3.4 KiB
3.4 KiB
Taito Arcade/Yamaha YM2610B
YM2610B is basically YM2610 with 2 extra FM channels used at some 90s Taito arcade hardware. it is backward compatible with the original chip.
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 multiplier.
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.20xx
: set SSG channel mode.00
: square01
: noise02
: square and noise03
: nothing (apparently)04
: envelope and square05
: envelope and noise06
: envelope and square and noise07
: nothing
21xx
: set noise frequency. range is00
to1F
.22xy
: set envelope mode.x
sets the envelope shape, which may be one of the following:0
:\___
decay4
:/___
attack once8
:\\\\
saw9
:\___
decayA
:\/\/
inverse obeliscoB
:\¯¯¯
decay onceC
:////
inverse sawD
:/¯¯¯
attackE
:/\/\
obeliscoF
:/___
attack once
- if
y
is 1 then the envelope will affect this channel.
23xx
: set envelope period low byte.24xx
: set envelope period high byte.25xx
: slide envelope period up.26xx
: slide envelope period down.29xy
: enable SSG auto-envelope mode.- in this mode the envelope period is set to the channel's notes, multiplied by a fraction.
x
is the numerator.y
is the denominator.- if
x
ory
are 0 this will disable auto-envelope mode.
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
: +01
: +12
: +23
: +34
: -05
: -36
: -27
: -1
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.