Difference between revisions of "Macronix DSP"

From Rare Gaming Dump
(adding Sarah DSP microcode)
Line 3: Line 3:
 
It stores PCM\ADPCM data in the 16 MB of ARAM, and can store extra data such as textures and animations.  
 
It stores PCM\ADPCM data in the 16 MB of ARAM, and can store extra data such as textures and animations.  
  
Macronix DSP microcode is written in assembly. asnd & aesnd is the homebrew DSP microcode that exists in DevkitPro, it mixes up to 64 channels @ 48000hz.  
+
Macronix DSP microcode is written in assembly. asnd & aesnd is the homebrew DSP microcode that exists in Devkitpro, it mixes up to 64 channels @ 48000hz.  
  
JAudio(JSystem) DSP microcode also seems to contain these types
+
JAudio(JSystem) DSP microcode also seems to contain these types:
 
  SRC_SQUARE_WAVE
 
  SRC_SQUARE_WAVE
 
  SQUARE_WAVE_25PCT
 
  SQUARE_WAVE_25PCT
Line 12: Line 12:
 
  PCM16
 
  PCM16
 
  DSP-ADPCM
 
  DSP-ADPCM
 +
 +
Sarah DSP microcode(UCode) is written by Milo Charming Magician for the MXIC 16-bit DSP Slave Processor:
 +
Reverb, Dolby Logic Pro II, Pitch Modulation, FIR Filter
 +
PCM8, PCM16, DSP-ADPCM, FM, PSG-Wave, PSG-Noise
 +
LFO, PG, EG(ADSR), Channel Control(Volume, Panning, Keyon, Keyoff)
 +
Particle Systems, Animation, and GBA Multiboot Decryption.
  
 
==DSP Specs==
 
==DSP Specs==
Line 34: Line 40:
 
   ASnd microcode - mixing
 
   ASnd microcode - mixing
 
   AESnd microcode - mixing
 
   AESnd microcode - mixing
 +
 +
== Cyndanera DSP Programs ==
 +
  Sarah microcode - Audio System, Particle Systems, Animation, GBA Decryption

Revision as of 02:50, 8 December 2024

Macronix DSP is a 16 bit programmable DSP coprocessor in the Nintendo GameCube\Wii\Wii U, manufactured by Macronix. It has its own ADPCM hardware decoder to offload the DSP. It stores PCM\ADPCM data in the 16 MB of ARAM, and can store extra data such as textures and animations.

Macronix DSP microcode is written in assembly. asnd & aesnd is the homebrew DSP microcode that exists in Devkitpro, it mixes up to 64 channels @ 48000hz.

JAudio(JSystem) DSP microcode also seems to contain these types:

SRC_SQUARE_WAVE
SQUARE_WAVE_25PCT
SAW_WAVE
PCM8
PCM16
DSP-ADPCM

Sarah DSP microcode(UCode) is written by Milo Charming Magician for the MXIC 16-bit DSP Slave Processor:

Reverb, Dolby Logic Pro II, Pitch Modulation, FIR Filter
PCM8, PCM16, DSP-ADPCM, FM, PSG-Wave, PSG-Noise
LFO, PG, EG(ADSR), Channel Control(Volume, Panning, Keyon, Keyoff)
Particle Systems, Animation, and GBA Multiboot Decryption.

DSP Specs

 Clock: 81MHz(GC) or 121.5MHz(Wii)
 Bits: 16bit
 Endian: Big
 Data RAM: 8KB
 Data ROM: 4KB
 Instruction RAM: 8KB
 Instruction ROM: 8KB (Macronix, Nintendo)
 Hardware Decoder: DSP-ADPCM

DSP Programs

 Bootrom IPL microcode x2 (Macronix, Nintendo)
 DSP ARAM/Init microcode
 Memory Card microcode - handles memory card security & unlocking
 Audio System(AX) microcode - mixing, filters, Dolby logic pro II, effects done on CPU
 JAudio(JSystem) microcode - mixing, filters, Dolby logic pro II, effects, channels, GBA decryption in some games
 GBA Multiboot microcode - decrypts GBA multiboot program

Homebrew DSP Programs

 ASnd microcode - mixing
 AESnd microcode - mixing

Cyndanera DSP Programs

 Sarah microcode - Audio System, Particle Systems, Animation, GBA Decryption