ref: 0d51959c83aa0f361e53bf93d184c9d31543d953
parent: ebce80653c82931cd684dfa2be23ffb6418753d3
author: yenatch <[email protected]>
date: Sun Mar 30 12:56:42 EDT 2014
Use labels instead of static addresses in sound pointers. Static address substraction would wreak havoc in other memory configurations.
--- a/audio.asm
+++ b/audio.asm
@@ -521,7 +521,7 @@
Music_PokeFluteInBattle:: ; 22306 (8:6306)
- ld a, (SFX_08_46 - $4000) / 3 ; PokeFlute outside of battle
+ ld a, (SFX_08_46 - SFX_Headers_08) / 3 ; PokeFlute outside of battle
call PlaySoundWaitForCurrent
ld hl, $c00e
ld de, SFX_08_PokeFlute_Ch1
@@ -566,20 +566,13 @@
jp Func_2307
PokedexRatingSfxPointers: ; 7d162 (1f:5162)
- db (SFX_1f_51 - $4000) / 3
- db BANK(SFX_1f_51)
- db (SFX_02_41 - $4000) / 3
- db BANK(SFX_02_41)
- db (SFX_02_3a - $4000) / 3
- db BANK(SFX_02_3a)
- db (SFX_08_46 - $4000) / 3
- db BANK(SFX_08_46)
- db (SFX_08_3a - $4000) / 3
- db BANK(SFX_08_3a)
- db (SFX_02_42 - $4000) / 3
- db BANK(SFX_02_42)
- db (SFX_02_3b - $4000) / 3
- db BANK(SFX_02_3b)
+ db (SFX_1f_51 - SFX_Headers_1f) / 3, BANK(SFX_1f_51)
+ db (SFX_02_41 - SFX_Headers_02) / 3, BANK(SFX_02_41)
+ db (SFX_02_3a - SFX_Headers_02) / 3, BANK(SFX_02_3a)
+ db (SFX_08_46 - SFX_Headers_08) / 3, BANK(SFX_08_46)
+ db (SFX_08_3a - SFX_Headers_08) / 3, BANK(SFX_08_3a)
+ db (SFX_02_42 - SFX_Headers_02) / 3, BANK(SFX_02_42)
+ db (SFX_02_3b - SFX_Headers_02) / 3, BANK(SFX_02_3b)
OwnedMonValues: ; 7d170 (1f:5170)
db 10, 40, 60, 90, 120, 150, $ff
--- a/constants/music_constants.asm
+++ b/constants/music_constants.asm
@@ -1,7 +1,7 @@
; Song ids are calculated by address to save space.
music_const: MACRO
-\1 EQUS "((\2 - $4000) / 3)"
+\1 EQUS "((\2 - SFX_Headers_02) / 3)"
ENDM
music_const MUSIC_PALLET_TOWN, Music_PalletTown
--- a/main.asm
+++ b/main.asm
@@ -6996,7 +6996,7 @@
ld [$2000],a ; ROM bank 4
ld a,[$d700] ; walking/biking/surfing
ld [$d11a],a
- ld a, (SFX_02_3f - $4000) / 3 ; Start menu sound
+ ld a, (SFX_02_3f - SFX_Headers_02) / 3 ; Start menu sound
call PlaySound
RedisplayStartMenu:: ; 2adf (0:2adf)
@@ -7125,7 +7125,7 @@
ld a,$13
ld [$d125],a
call DisplayTextBoxID ; redraw money text box
- ld a, (SFX_02_5a - $4000) / 3
+ ld a, (SFX_02_5a - SFX_Headers_02) / 3
call PlaySoundWaitForCurrent ; play sound
jp WaitForSoundToFinish ; wait until sound is done playing
@@ -26084,7 +26084,7 @@
; play out-of-battle pokeflute music
ld a,$ff
call PlaySound ; turn off music
- ld a, (SFX_02_5e - $4000) / 3
+ ld a, (SFX_02_5e - SFX_Headers_02) / 3
ld c, BANK(SFX_02_5e)
call PlayMusic ; play music
.musicWaitLoop ; wait for music to finish playing
@@ -41968,7 +41968,7 @@
dec a
call PlaySound
ld c, BANK(SFX_02_5f)
- ld a, (SFX_02_5f - $4000) / 3
+ ld a, (SFX_02_5f - SFX_Headers_02) / 3
call PlayMusic
.asm_1e9c2
ld a, [$c02a]
@@ -115553,7 +115553,7 @@
ld [$ffaf], a
push bc
ld c, BANK(SFX_02_5b)
- ld a, (SFX_02_5b - $4000) / 3
+ ld a, (SFX_02_5b - SFX_Headers_02) / 3
call PlayMusic
pop bc
ld c, $2
@@ -115565,7 +115565,7 @@
ld a, $ff
call PlaySound
ld c, BANK(SFX_02_5f)
- ld a, (SFX_02_5f - $4000) / 3
+ ld a, (SFX_02_5f - SFX_Headers_02) / 3
call PlayMusic
.asm_7bf57
ld a, [$c02a]