Macronix DSP
Revision as of 02:50, 8 December 2024 by MiloCharmingMagician (talk | contribs) (adding Sarah DSP microcode)
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