ROM Hack Does the DS have dedicated audio ram or is it shared?

biolizardshadow

Well-Known Member
OP
Member
Joined
May 4, 2020
Messages
118
Trophies
0
Age
19
XP
243
Country
United States
Does the DS use shared ram for audio or does it have a dedicated audio ram like the SNES. I think its shared and how much ram one gets depends on the game, but I'm not sure so I'm asking here?
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
34,103
Trophies
2
Website
trastindustries.com
XP
22,996
Country
United Kingdom
"it depends"
http://problemkaputt.de/gbatek.htm#dssound

and
http://problemkaputt.de/gbatek.htm#dsmemorymaps

In the sense that like the video has its own RAM that just does video stuff then no.

There are aspects of the hardware that will quite happily use system memory.

Compared to some other things where you can pipe data directly from cartridges to the audio input buffer... not as much as some (the DS cart protocol is not something I would entirely want to rely on here but someone might have) but you could make it very tight if you wanted to, and can happily break things up to be sent in with very short bursts or otherwise play far larger songs than a simple memory copy might appear to allow if you had to have it all in RAM before starting.

The DS also supports PCM audio so if you can get it there fast enough then you are good.
If you are hacking games using the SDAT format (no data on the non SDAT stuff here though I would be surprised) then games not using the STRM (think stream, it mainly being PCM audio of longer form) sub format will not support such things as the compiler seems to strip it (got to save RAM after all) and people often then hack the game instead to use it in a slightly different way. https://nsmbhd.net/thread/3258-video-intro-with-streamed-sound/ being one example.
We have also seen people abuse the sound bank/sound font to stitch together essentially a wave audio track.
 
General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: My fetish is getting fired lol