aboutsummaryrefslogtreecommitdiff
path: root/music/soundeffects.gbasm
diff options
context:
space:
mode:
authorAstatin <[email protected]>2025-08-19 15:57:51 +0200
committerAstatin <[email protected]>2025-08-19 15:57:51 +0200
commitbbc5ab6ad02dbabcb79e1e83195288c0fb8cf1d1 (patch)
tree619cda5870860164fd8bddcb4e0ed741cf63ca49 /music/soundeffects.gbasm
parentc70b3cb2cab64d550a585dcfbc166bf30c0ea955 (diff)
Add insect bite & frog grab sound effects + disallow 2 sound effects at once
Diffstat (limited to 'music/soundeffects.gbasm')
-rw-r--r--music/soundeffects.gbasm28
1 files changed, 28 insertions, 0 deletions
diff --git a/music/soundeffects.gbasm b/music/soundeffects.gbasm
index c164492..6bf4a15 100644
--- a/music/soundeffects.gbasm
+++ b/music/soundeffects.gbasm
@@ -24,6 +24,28 @@ Wait_Next_Frame:
LD L, A
.END
+.MACRODEF CHANNEL_2_SOUND_EFFECT_LOOP =start =end
+ LD HL, =start
+
+ $loop:
+ LD A, (HL+)
+ LD ($18), A
+
+ LD A, (HL+)
+ LD ($19), A
+
+ .RET_WAIT_NEXT_FRAME_SAVE_HL
+
+ LD A, H
+ CP high(=end)
+ JR NZ, =$loop
+ LD A, L
+ CP low(=end)
+ JR NZ, =$loop
+ $end:
+.END
+
+
Play_Sound_Effect:
LD A, ($mem_sound_effect_pc)
CP $ff
@@ -37,10 +59,16 @@ Play_Sound_Effect:
RET
.MACRODEF SET_SOUND_EFFECT =addr
+ PUSH AF
+ LD A, $mem_sound_flags
+ AND 0b00111110
+ JR NZ =$end
LD A, bank(=addr)
LD ($mem_sound_effect_pc), A
LD A, high(ptr(=addr))
LD ($mem_sound_effect_pc+1), A
LD A, low(ptr(=addr))
LD ($mem_sound_effect_pc+2), A
+ $end:
+ POP AF
.END