Macronix DSP: Difference between revisions

From GC-Forever Wiki
Jump to navigation Jump to search
Cyndanera (talk | contribs)
making the MXIC DSP page
 
Cyndanera (talk | contribs)
m updated dsp page
 
(38 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Macronix DSP is a 16 bit programmable DSP coprocessor in the Nintendo GameCube\Wii it was manufactured by Macronix
Macronix DSP is a 16 bit programmable DSP(Slave Processor) in the Nintendo GameCube\Wii\Wii U it was manufactured by Macronix.
It has it's own ADPCM hardware decoder off load the DSP.
It has it's own ADPCM hardware decoder to off load the DSP.  
16 MB of ARAM stores PCM\ADPCM, but ARAM also can store extra data such as textures, animations, data, for example.
 
Macronix DSP microcode is written in assembly you will require a assembler to assemble your code. asnd & aesnd is the homebrew dsp microcode that exist in devkitpro for the Nintendo GameCube\Wii, can mix up to 64 channels(AX\JAudio) and 16 or 32 channels(ASnd\AESnd) respectively in software.
 
JAudio(JSystem) DSP microcode also seems to contain these types
SRC_SQUARE_WAVE
SQUARE_WAVE_25PCT
SAW_WAVE
PCM8
PCM16
DSP-ADPCM


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


Line 15: Line 26:
   Bootrom IPL microcode x2 (Macronix, Nintendo)
   Bootrom IPL microcode x2 (Macronix, Nintendo)
   DSP ARAM/Init microcode
   DSP ARAM/Init microcode
   Card microcode - handles memory card security & unlocking
   Memory Card microcode - handles memory card security & unlocking
   Audio System microcode - mixing, filters, dolby logic pro ii
   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 in some games
   JAudio(JSystem) microcode - mixing, filters, Dolby logic pro II, effects done on DSP
   GBA Multiboot microcode - decrypts GBA multiboot program
   GBA Multiboot microcode - decrypts GBA multiboot program
== Homebrew DSP Programs ==
  ASnd microcode - mixing
  AESnd microcode - mixing

Latest revision as of 20:12, 28 January 2025

Macronix DSP is a 16 bit programmable DSP(Slave Processor) in the Nintendo GameCube\Wii\Wii U it was manufactured by Macronix. It has it's own ADPCM hardware decoder to off load the DSP. 16 MB of ARAM stores PCM\ADPCM, but ARAM also can store extra data such as textures, animations, data, for example.

Macronix DSP microcode is written in assembly you will require a assembler to assemble your code. asnd & aesnd is the homebrew dsp microcode that exist in devkitpro for the Nintendo GameCube\Wii, can mix up to 64 channels(AX\JAudio) and 16 or 32 channels(ASnd\AESnd) respectively in software.

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

SRC_SQUARE_WAVE
SQUARE_WAVE_25PCT
SAW_WAVE
PCM8
PCM16
DSP-ADPCM

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 done on DSP
 GBA Multiboot microcode - decrypts GBA multiboot program

Homebrew DSP Programs

 ASnd microcode - mixing
 AESnd microcode - mixing