diff options
author | Astatin <[email protected]> | 2025-08-12 13:17:58 +0200 |
---|---|---|
committer | Astatin <[email protected]> | 2025-08-12 13:17:58 +0200 |
commit | c70b3cb2cab64d550a585dcfbc166bf30c0ea955 (patch) | |
tree | ef41d8f22129ab84e112bc7e78a6ce3ceb97dc83 /music | |
parent | 41b5858e855c68e01bf388e54abd82661e846585 (diff) |
Add jump, damage, earcoptr and hop sound effects
Diffstat (limited to 'music')
-rw-r--r-- | music/soundeffects.gbasm | 12 | ||||
-rw-r--r-- | music/soundeffects/damage.gbasm | 50 | ||||
-rw-r--r-- | music/soundeffects/earcoptr.gbasm | 60 | ||||
-rw-r--r-- | music/soundeffects/jump.gbasm | 48 | ||||
-rw-r--r-- | music/soundeffects/laser.gbasm | 46 |
5 files changed, 216 insertions, 0 deletions
diff --git a/music/soundeffects.gbasm b/music/soundeffects.gbasm index f320aaf..c164492 100644 --- a/music/soundeffects.gbasm +++ b/music/soundeffects.gbasm @@ -12,6 +12,18 @@ Wait_Next_Frame: CALL =Wait_Next_Frame .END +.MACRODEF RET_WAIT_NEXT_FRAME_SAVE_HL + LD A, H + LD ($mem_sound_effect_hl), A + LD A, L + LD ($mem_sound_effect_hl+1), A + CALL =Wait_Next_Frame + LD A, ($mem_sound_effect_hl) + LD H, A + LD A, ($mem_sound_effect_hl+1) + LD L, A +.END + Play_Sound_Effect: LD A, ($mem_sound_effect_pc) CP $ff diff --git a/music/soundeffects/damage.gbasm b/music/soundeffects/damage.gbasm new file mode 100644 index 0000000..aa325d1 --- /dev/null +++ b/music/soundeffects/damage.gbasm @@ -0,0 +1,50 @@ +_sound_effect_Damage: + LD A, $mem_sound_flags + SET 4, A + LD $mem_sound_flags, A + + LD A, $00 + LD ($21), A + LD A, $80 + LD ($23), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $3f + LD ($20), A + LD A, $82 + LD ($21), A + LD A, $14 + LD ($22), A + LD A, $80 + LD ($23), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $3f + LD ($20), A + LD A, $a2 + LD ($21), A + LD A, $14 + LD ($22), A + LD A, $80 + LD ($23), A + + LD A, $mem_sound_flags + SET 5, A + LD $mem_sound_flags, A + LD A, $10 + LD $mem_sound_effect_frame_count, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET diff --git a/music/soundeffects/earcoptr.gbasm b/music/soundeffects/earcoptr.gbasm new file mode 100644 index 0000000..bbccb65 --- /dev/null +++ b/music/soundeffects/earcoptr.gbasm @@ -0,0 +1,60 @@ +_sound_effect_Earcoptr_slide_data: +.DB $e7, $86, $c4, $06, $9e, $06, $72, $06, $42, $06, $0b, $06, $ce, $05, $89, $05 +_sound_effect_Earcoptr_slide_data.semi: +.DB $3b, $05, $e5, $04, $83, $04, $16, $04, $9b, $03, $12, $03, $77, $02, $c9, $01 +_sound_effect_Earcoptr_slide_data.end: + +_sound_effect_Earcoptr: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + + LD A, $80 + LD ($19), A + + .MACRODEF EARCOPTER_SOUND_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 + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + .EARCOPTER_SOUND_LOOP =_sound_effect_Earcoptr_slide_data, =_sound_effect_Earcoptr_slide_data.semi + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + .EARCOPTER_SOUND_LOOP =_sound_effect_Earcoptr_slide_data, =_sound_effect_Earcoptr_slide_data.semi + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + .EARCOPTER_SOUND_LOOP =_sound_effect_Earcoptr_slide_data, =_sound_effect_Earcoptr_slide_data.end + + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET diff --git a/music/soundeffects/jump.gbasm b/music/soundeffects/jump.gbasm new file mode 100644 index 0000000..7ae9a58 --- /dev/null +++ b/music/soundeffects/jump.gbasm @@ -0,0 +1,48 @@ +_sound_effect_Jump_slide_data: + .DB $20 $86 $35 $06 $48 $06 $5b $06 $6d $06 $7e $06 $8e $06 $9e $06 + .DB $ad $06 $bb $06 $c9 $06 $d6 $06 $e3 $06 $ef $06 $fa $06 $06 $07 + .DB $10 $07 $1a $07 $24 $07 $2d $07 $36 $07 $3f $07 $47 $07 $4f $07 + .DB $56 $07 $5e $07 $64 $07 $6b $07 $71 $07 $77 $07 $7d $07 $83 $07 + .DB $88 $07 $8d $07 $92 $07 $97 $07 $9b $07 $9f $07 $a4 $07 $a7 $07 + .DB $ab $07 $af $07 $b2 $07 $b6 $07 $b9 $07 $bc $07 $bf $07 $c1 $07 + .DB $c4 $07 $c7 $07 $c9 $07 $cb $07 $ce $07 $d0 $07 $d2 $07 $d4 $07 + .DB $d6 $07 $d7 $07 $d9 $07 $db $07 +_sound_effect_Jump_slide_data.end: + +_sound_effect_Jump: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + LD HL, =_sound_effect_Jump_slide_data + + LD A, $80 + LD ($19), A + LD A, $3f + LD ($16), A + LD A, $a2 + LD ($17), A + + .loop: + LD A, (HL+) + LD ($18), A + + LD A, (HL+) + LD ($19), A + + .RET_WAIT_NEXT_FRAME_SAVE_HL + + LD A, H + CP high(=_sound_effect_Jump_slide_data.end) + JR NZ, =.loop + LD A, L + CP low(=_sound_effect_Jump_slide_data.end) + JR NZ, =.loop + .end: + + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET diff --git a/music/soundeffects/laser.gbasm b/music/soundeffects/laser.gbasm new file mode 100644 index 0000000..e73396b --- /dev/null +++ b/music/soundeffects/laser.gbasm @@ -0,0 +1,46 @@ +_sound_effect_Laser_slide_data: + .DB $bc, $87, $b6, $07, $af, $07, $a7, $07, $9f, $07, $97, $07, $8d, $07, $83, $07 + .DB $77, $07, $6b, $07, $5e, $07, $4f, $07, $3f, $07, $2d, $07, $1a, $07, $06, $07 + .DB $ef, $06, $d6, $06, $bb, $06, $9e, $06, $7e, $06, $5b, $06, $35, $06, $0b, $06 + .DB $de, $05, $ac, $05, $76, $05, $3b, $05, $fb, $04, $b5, $04, $69, $04, $16, $04 + .DB $bb, $03, $58, $03, $ed, $02, $77, $02, $f7, $01, $6b, $01, $d2, $00, $2c, $00 + .DB $01, $00 +_sound_effect_Laser_slide_data.end: + +_sound_effect_Laser: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + LD HL, =_sound_effect_Laser_slide_data + + LD A, $80 + LD ($19), A + LD A, $3f + LD ($16), A + LD A, $a2 + LD ($17), A + + .loop: + LD A, (HL+) + LD ($18), A + + LD A, (HL+) + LD ($19), A + + .RET_WAIT_NEXT_FRAME_SAVE_HL + + LD A, H + CP high(=_sound_effect_Laser_slide_data.end) + JR NZ, =.loop + LD A, L + CP low(=_sound_effect_Laser_slide_data.end) + JR NZ, =.loop + .end: + + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET |