We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

Table of Gain Modes: Difference between revisions

From SnesLab
Jump to: navigation, search
(Nintendo typo)
(superscripted)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
The [[S-DSP]] has five gain modes, to which Nintendo gave official names [1], but they are numbered differently by different emulator authors.
The [[S-DSP]] has five gain modes, to which Nintendo gave official names<sup>[1]</sup>, but they are numbered differently by different emulator authors.


[[nocash]] numbers the gain modes with bits 5 & 6 of VxGAIN. [2] Note that direct gain mode uses these bits for the fixed volume instead and thus has no number in this scheme.
[[nocash]] numbers the gain modes with bits 5 & 6 of VxGAIN.<sup>[2]</sup> Note that direct gain mode uses these bits for the fixed volume instead and thus has no number in this scheme.


[[Near]] numbers the gain modes with the top 3 bits of ADSR(1). Note that when bit 7 is clear, bits 5 & 6 are "don't care" and thus Modes 0-3 are actually all the same - direct gain.
[[Near]] numbers the gain modes with the top 3 bits of ADSR(1).<sup>[3]</sup> Note that when bit 7 is clear, bits 5 & 6 are "don't care" and thus Modes 0-3 are actually all the same - direct gain.


<pre>
{| class="wikitable"
| Official Nintendo Name | nocash numbering/naming | Near numbering/naming
|+
|-------------------------------+-------------------------------|----------------------------------
! Official Nintendo Name !! nocash numbering/naming !! Near numbering/naming
| Direct Designation |   Direct Gain | Modes 0-3 (direct)
|+
| Increase Mode (Linear) | Mode 2 = Linear Increase | Mode 6    (linear increase)
| '''Direct Designation'''        ||   Direct Gain || Modes 0-3 (direct)
| Increase Mode (Bent Line) | Mode 3 = Bent Increase | Mode 7    (two-slope linear increase)
|+
| Decrease Mode (Linear) | Mode 0 = Linear Decrease | Mode 4    (linear decrease)
| '''Increase Mode (Linear)''' || Mode 2 = Linear Increase || Mode 6    (linear increase)
| Decrease Mode (Exponential) | Mode 1 = Exp Decrease | Mode 5    (exponential decrease)
|+
</pre>
| '''Increase Mode (Bent Line)''' || Mode 3 = Bent Increase || Mode 7    (two-slope linear increase)
|+
| '''Decrease Mode (Linear)''' || Mode 0 = Linear Decrease || Mode 4    (linear decrease)
|+
| '''Decrease Mode (Exponential)''' || Mode 1 = Exp Decrease || Mode 5    (exponential decrease)
|}


=== References ===
=== References ===
* [1] page 3-7-4, "GAIN" of the official Super Nintendo development manual: https://archive.org/details/SNESDevManual/book1/page/n170
# [https://archive.org/details/SNESDevManual/book1/page/n170 page 3-7-4 of Book I], "GAIN" of the official Super Nintendo development manual
* https://problemkaputt.de/fullsnes.htm#snesapudspadsrgainenvelope
# https://problemkaputt.de/fullsnes.htm#snesapudspadsrgainenvelope
* https://github.com/ares-emulator/ares/blob/master/ares/sfc/dsp/envelope.cpp
# https://github.com/ares-emulator/ares/blob/master/ares/sfc/dsp/envelope.cpp
 
[[Category:Audio]]

Latest revision as of 18:56, 21 July 2023

The S-DSP has five gain modes, to which Nintendo gave official names[1], but they are numbered differently by different emulator authors.

nocash numbers the gain modes with bits 5 & 6 of VxGAIN.[2] Note that direct gain mode uses these bits for the fixed volume instead and thus has no number in this scheme.

Near numbers the gain modes with the top 3 bits of ADSR(1).[3] Note that when bit 7 is clear, bits 5 & 6 are "don't care" and thus Modes 0-3 are actually all the same - direct gain.

Official Nintendo Name nocash numbering/naming Near numbering/naming
Direct Designation Direct Gain Modes 0-3 (direct)
Increase Mode (Linear) Mode 2 = Linear Increase Mode 6 (linear increase)
Increase Mode (Bent Line) Mode 3 = Bent Increase Mode 7 (two-slope linear increase)
Decrease Mode (Linear) Mode 0 = Linear Decrease Mode 4 (linear decrease)
Decrease Mode (Exponential) Mode 1 = Exp Decrease Mode 5 (exponential decrease)

References

  1. page 3-7-4 of Book I, "GAIN" of the official Super Nintendo development manual
  2. https://problemkaputt.de/fullsnes.htm#snesapudspadsrgainenvelope
  3. https://github.com/ares-emulator/ares/blob/master/ares/sfc/dsp/envelope.cpp