APU register table/DSP global: Difference between revisions

From SNESdev Wiki
Jump to navigationJump to search
(Fix unwanted newlines in the last row)
(Change the 'S' signed bits to 'V'. The signed PPU registers table does not use S bits.)
 
(2 intermediate revisions by the same user not shown)
Line 13: Line 13:
</noinclude>
</noinclude>


! [[S-DSP Registers#MVOL|MVOLL]]
! [[S-DSP registers#MVOL|MVOLL]]
! MVOL (L)
! MVOL (L)
! $0C
! $0C
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Left channel main volume, signed.
| Left channel main volume, signed.
|-
|-
! [[S-DSP Registers#MVOL|MVOLR]]
! [[S-DSP registers#MVOL|MVOLR]]
! MVOL (R)
! MVOL (R)
! $1C
! $1C
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Right channel main volume, signed.
| Right channel main volume, signed.
|-
|-
! [[S-DSP Registers#EVOL|EVOLL]]
! [[S-DSP registers#EVOL|EVOLL]]
! EVOL (L)
! EVOL (L)
! $2C
! $2C
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Left channel echo volume, signed.
| Left channel echo volume, signed.
|-
|-
! [[S-DSP Registers#EVOL|EVOLR]]
! [[S-DSP registers#EVOL|EVOLR]]
! EVOL (R)
! EVOL (R)
! $3C
! $3C
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Right channel main volume, signed.
| Right channel main volume, signed.
|-
|-
! [[S-DSP Registers#KON|KON]]
! [[S-DSP registers#KON|KON]]
!
!
! $4C
! $4C
Line 48: Line 48:
| Key on. Writing this with any bit set will start a new note for the corresponding voice.
| Key on. Writing this with any bit set will start a new note for the corresponding voice.
|-
|-
! [[S-DSP Registers#KOFF|KOFF]]
! [[S-DSP registers#KOFF|KOFF]]
! KOF
! KOF
! $5C
! $5C
Line 55: Line 55:
| Key off. Writing this with any bit set will put the corresponding voice into its release state.
| Key off. Writing this with any bit set will put the corresponding voice into its release state.
|-
|-
! [[S-DSP Registers#FLG|FLG]]
! [[S-DSP registers#FLG|FLG]]
!
!
! $6C
! $6C
Line 62: Line 62:
| Flags: soft reset (R), mute all (M), echo disable (E), noise frequency (N).
| Flags: soft reset (R), mute all (M), echo disable (E), noise frequency (N).
|-
|-
! [[S-DSP Registers#ENDX|ENDX]]
! [[S-DSP registers#ENDX|ENDX]]
!
!
! $7C
! $7C
Line 69: Line 69:
| Read for end of sample flag for each channel.
| Read for end of sample flag for each channel.
|-
|-
! [[S-DSP Registers#EFB|EFB]]
! [[S-DSP registers#EFB|EFB]]
!
!
! $0D
! $0D
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo feedback, signed.
| Echo feedback, signed.
Line 83: Line 83:
| Unused.
| Unused.
|-
|-
! [[S-DSP Registers#PMON|PMON]]
! [[S-DSP registers#PMON|PMON]]
!
!
! $2D
! $2D
Line 90: Line 90:
| Enables pitch modulation for each channel, controlled by OUTX of the next lower channel.
| Enables pitch modulation for each channel, controlled by OUTX of the next lower channel.
|-
|-
! [[S-DSP Registers#NON|NON]]
! [[S-DSP registers#NON|NON]]
!
!
! $3D
! $3D
Line 97: Line 97:
| For each channel, replaces the sample waveform with the noise generator output.
| For each channel, replaces the sample waveform with the noise generator output.
|-
|-
! [[S-DSP Registers#EON|EON]]
! [[S-DSP registers#EON|EON]]
!
!
! $4D
! $4D
Line 104: Line 104:
| For each channel, sends to the echo unit.
| For each channel, sends to the echo unit.
|-
|-
! [[S-DSP Registers#DIR|DIR]]
! [[S-DSP registers#DIR|DIR]]
!
!
! $5D
! $5D
Line 111: Line 111:
| Pointer to the sample source directory page at $DD00.
| Pointer to the sample source directory page at $DD00.
|-
|-
! [[S-DSP Registers#ESA|ESA]]
! [[S-DSP registers#ESA|ESA]]
!
!
! $6D
! $6D
Line 118: Line 118:
| Pointer to the start of the echo memory region at $EE00.
| Pointer to the start of the echo memory region at $EE00.
|-
|-
! [[S-DSP Registers#EDL|EDL]]
! [[S-DSP registers#EDL|EDL]]
!
!
! $7D
! $7D
Line 125: Line 125:
| Echo delay time (D).
| Echo delay time (D).
|-
|-
! [[S-DSP Registers#FIR|C0]]
! [[S-DSP registers#FIR|FIR0]]
!
! C0
! $0F
! $0F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C1]]
! [[S-DSP registers#FIR|FIR1]]
!
! C1
! $1F
! $1F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C2]]
! [[S-DSP registers#FIR|FIR2]]
!
! C2
! $2F
! $2F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C3]]
! [[S-DSP registers#FIR|FIR3]]
!
! C3
! $3F
! $3F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C4]]
! [[S-DSP registers#FIR|FIR4]]
!
! C4
! $4F
! $4F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C5]]
! [[S-DSP registers#FIR|FIR5]]
!
! C5
! $5F
! $5F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C6]]
! [[S-DSP registers#FIR|FIR6]]
!
! C6
! $6F
! $6F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.
|-
|-
! [[S-DSP Registers#FIR|C7]]
! [[S-DSP registers#FIR|FIR7]]
!
! C7
! $7F
! $7F
| style="text-align: right" | <tt style="white-space: nowrap">SVVV VVVV</tt>
| style="text-align: right" | <tt style="white-space: nowrap">VVVV VVVV</tt>
| RW
| RW
| Echo filter coefficient.
| Echo filter coefficient.

Latest revision as of 10:26, 10 November 2024

See: APU register table

This table lists the 2 common names for the S-DSP global registers.

Name Address Bits Type Notes
MVOLL MVOL (L) $0C VVVV VVVV RW Left channel main volume, signed.
MVOLR MVOL (R) $1C VVVV VVVV RW Right channel main volume, signed.
EVOLL EVOL (L) $2C VVVV VVVV RW Left channel echo volume, signed.
EVOLR EVOL (R) $3C VVVV VVVV RW Right channel main volume, signed.
KON $4C 7654 3210 RW Key on. Writing this with any bit set will start a new note for the corresponding voice.
KOFF KOF $5C 7654 3210 RW Key off. Writing this with any bit set will put the corresponding voice into its release state.
FLG $6C RMEN NNNN RW Flags: soft reset (R), mute all (M), echo disable (E), noise frequency (N).
ENDX $7C 7654 3210 R Read for end of sample flag for each channel.
EFB $0D VVVV VVVV RW Echo feedback, signed.
- - $1D ---- ---- RW Unused.
PMON $2D 7654 321- RW Enables pitch modulation for each channel, controlled by OUTX of the next lower channel.
NON $3D 7654 3210 RW For each channel, replaces the sample waveform with the noise generator output.
EON $4D 7654 3210 RW For each channel, sends to the echo unit.
DIR $5D DDDD DDDD RW Pointer to the sample source directory page at $DD00.
ESA $6D EEEE EEEE RW Pointer to the start of the echo memory region at $EE00.
EDL $7D ---- DDDD RW Echo delay time (D).
FIR0 C0 $0F VVVV VVVV RW Echo filter coefficient.
FIR1 C1 $1F VVVV VVVV RW Echo filter coefficient.
FIR2 C2 $2F VVVV VVVV RW Echo filter coefficient.
FIR3 C3 $3F VVVV VVVV RW Echo filter coefficient.
FIR4 C4 $4F VVVV VVVV RW Echo filter coefficient.
FIR5 C5 $5F VVVV VVVV RW Echo filter coefficient.
FIR6 C6 $6F VVVV VVVV RW Echo filter coefficient.
FIR7 C7 $7F VVVV VVVV RW Echo filter coefficient.