diff --git a/Assets/dll/melonDS.wbx.zst b/Assets/dll/melonDS.wbx.zst
index 829dd865a3d..a390639b189 100644
Binary files a/Assets/dll/melonDS.wbx.zst and b/Assets/dll/melonDS.wbx.zst differ
diff --git a/waterbox/melon/BizInterface.cpp b/waterbox/melon/BizInterface.cpp
index 7db952dd793..dff002c75de 100644
--- a/waterbox/melon/BizInterface.cpp
+++ b/waterbox/melon/BizInterface.cpp
@@ -140,7 +140,7 @@ ECL_EXPORT void FrameAdvance(MyFrameInfo* f)
 		f->Height = 384;
 	}
 
-	f->Samples = f->NDS->SPU.ReadOutput(f->SoundBuffer);
+	f->Samples = f->NDS->SPU.ReadOutput(f->SoundBuffer, 4096);
 	if (f->Samples == 0) // hack when core decides to stop outputting audio altogether (lid closed or power off)
 	{
 		memset(f->SoundBuffer, 0, 737 * 2 * sizeof(u16));
diff --git a/waterbox/melon/melonDS b/waterbox/melon/melonDS
index 2464c33bf28..4e02967468c 160000
--- a/waterbox/melon/melonDS
+++ b/waterbox/melon/melonDS
@@ -1 +1 @@
-Subproject commit 2464c33bf2857c935f4afec9c25f72cea6621e74
+Subproject commit 4e02967468c3b5ea853f5fdb0ca0b25a02fd601c