4.3 KiB
Neo Geo/Yamaha YM2610
originally an arcade board, but SNK shortly adapted it to a rather expensive video game console with the world's biggest cartridges because some people liked the system so much they wanted a home version of it.
its soundchip is a 4-in-1: 4ch 4-op FM, YM2149 (AY-3-8910 clone) and 2 different format ADPCM in a single package!
effects
10xy: set LFO parameters.xtoggles the LFO.ysets 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.xis the operator (1-4).yis the multiplier.
18xx: toggle extended channel 2 mode.- 0 disables it and 1 enables it.
- only in extended channel 2 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.0: square1: noise2: square and noise3: nothing (apparently)4: envelope and square5: envelope and noise6: envelope and square and noise7: nothing
21xx: set noise frequency. range is00to1F.22xy: set envelope mode.xsets the envelope shape:0:\___decay4:/___attack once8:\\\\saw9:\___decayA:\/\/inverse obeliscoB:\¯¯¯decay onceC:////inverse sawD:/¯¯¯attackE:/\/\obeliscoF:/___attack once
- if
yis 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.
xis the numerator.yis the denominator.- if
xoryare 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.xis the operator (1-4). a value of 0 means "all operators".ydetermines whether AM is on.
51xy: set SL of operator.xis the operator (1-4). a value of 0 means "all operators".yis the value.
52xy: set RR of operator.xis the operator (1-4). a value of 0 means "all operators".yis the value.
53xy: set DT of operator.xis the operator (1-4). a value of 0 means "all operators".yis the value:- 0: +0
- 1: +1
- 2: +2
- 3: +3
- 4: -0
- 5: -3
- 6: -2
- 7: -1
54xy: set RS of operator.xis the operator (1-4). a value of 0 means "all operators".yis the value.
55xy: set SSG-EG of operator.xis the operator (1-4). a value of 0 means "all operators".yis 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.
extended channel 2
in ExtCh mode, channel 2 is split into one column for each of its four operators. feedback and LFO levels are shared. the frequency of each operator may be controlled independently with notes and effects. this can be used for more polyphony or more complex sounds.
all four operators are still combined according to the algorithm in use. for example, algorithm 7 acts as four independent sine waves. algorithm 4 acts as two independent 2op sounds. even with algorithm 0, placing a note in any operator triggers that operator alone.
info
this chip uses the FM (OPN), AY-3-8910/SSG, ADPCM-A and ADPCM-B instrument editors.