aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordannye <33dannye@gmail.com>2022-09-11 23:34:59 -0500
committerdannye <33dannye@gmail.com>2022-09-12 00:53:37 -0500
commitecab35295aefb44227ba38f257dc40c8c10474e3 (patch)
treed04160bc19180ee50a941d121f90cc7071e7a672
parentReplace Hard-Coded Number With Constant (diff)
parentAdd `UNUSED_TYPE`/`UNUSED_TYPE_END` constants (diff)
downloadpokeyellow-ecab35295aefb44227ba38f257dc40c8c10474e3.tar.gz
pokeyellow-ecab35295aefb44227ba38f257dc40c8c10474e3.tar.xz
pokeyellow-ecab35295aefb44227ba38f257dc40c8c10474e3.zip
Merge branch 'master' of https://github.com/pret/pokered
-rw-r--r--README.md5
-rw-r--r--audio.asm3
-rw-r--r--audio/engine_1.asm86
-rw-r--r--audio/engine_2.asm10
-rw-r--r--audio/engine_3.asm8
-rw-r--r--audio/engine_4.asm8
-rw-r--r--audio/headers/musicheaders1.asm109
-rw-r--r--audio/headers/musicheaders2.asm35
-rw-r--r--audio/headers/musicheaders3.asm95
-rw-r--r--audio/headers/musicheaders4.asm19
-rw-r--r--audio/headers/sfxheaders1.asm375
-rw-r--r--audio/headers/sfxheaders2.asm471
-rw-r--r--audio/headers/sfxheaders3.asm400
-rw-r--r--audio/headers/sfxheaders4.asm292
-rw-r--r--audio/low_health_alarm.asm4
-rw-r--r--audio/music/yellowintro.asm2
-rw-r--r--audio/poke_flute.asm2
-rw-r--r--audio/sfx/cry00_4.asm2
-rw-r--r--audio/sfx/cry01_4.asm2
-rw-r--r--audio/sfx/cry02_4.asm2
-rw-r--r--audio/sfx/cry03_4.asm2
-rw-r--r--audio/sfx/cry04_4.asm2
-rw-r--r--audio/sfx/cry05_4.asm2
-rw-r--r--audio/sfx/cry06_4.asm2
-rw-r--r--audio/sfx/cry07_4.asm2
-rw-r--r--audio/sfx/cry08_4.asm2
-rw-r--r--audio/sfx/cry09_4.asm2
-rw-r--r--audio/sfx/cry0a_4.asm2
-rw-r--r--audio/sfx/cry0b_4.asm2
-rw-r--r--audio/sfx/cry0c_4.asm2
-rw-r--r--audio/sfx/cry0d_4.asm2
-rw-r--r--audio/sfx/cry0e_4.asm2
-rw-r--r--audio/sfx/cry0f_4.asm2
-rw-r--r--audio/sfx/cry10_4.asm2
-rw-r--r--audio/sfx/cry11_4.asm2
-rw-r--r--audio/sfx/cry12_4.asm2
-rw-r--r--audio/sfx/cry13_4.asm2
-rw-r--r--audio/sfx/cry14_4.asm2
-rw-r--r--audio/sfx/cry15_4.asm2
-rw-r--r--audio/sfx/cry16_4.asm2
-rw-r--r--audio/sfx/cry17_4.asm2
-rw-r--r--audio/sfx/cry18_4.asm2
-rw-r--r--audio/sfx/cry19_4.asm2
-rw-r--r--audio/sfx/cry1a_4.asm2
-rw-r--r--audio/sfx/cry1b_4.asm2
-rw-r--r--audio/sfx/cry1c_4.asm2
-rw-r--r--audio/sfx/cry1d_4.asm2
-rw-r--r--audio/sfx/cry1e_4.asm2
-rw-r--r--audio/sfx/cry1f_4.asm2
-rw-r--r--audio/sfx/cry20_4.asm2
-rw-r--r--audio/sfx/cry21_4.asm2
-rw-r--r--audio/sfx/cry22_4.asm2
-rw-r--r--audio/sfx/cry23_4.asm2
-rw-r--r--audio/sfx/cry24_4.asm2
-rw-r--r--audio/sfx/cry25_4.asm2
-rw-r--r--audio/sfx/get_item1_4.asm2
-rw-r--r--audio/sfx/get_item1_4_2.asm2
-rw-r--r--audio/sfx/get_item2_4.asm2
-rw-r--r--audio/sfx/get_item2_4_2.asm2
-rw-r--r--audio/sfx/swap_2.asm1
-rw-r--r--audio/sfx/unused_cry_4.asm2
-rw-r--r--audio/wave_samples.asm (renamed from audio/wave_instruments.asm)0
-rw-r--r--constants/audio_constants.asm16
-rw-r--r--constants/map_constants.asm504
-rw-r--r--constants/map_object_constants.asm4
-rw-r--r--constants/misc_constants.asm6
-rw-r--r--constants/pokemon_data_constants.asm2
-rw-r--r--constants/script_constants.asm22
-rw-r--r--constants/sprite_anim_constants.asm2
-rw-r--r--constants/type_constants.asm2
-rw-r--r--data/events/trades.asm24
-rw-r--r--data/trainers/pic_pointers_money.asm2
-rw-r--r--data/types/names.asm2
-rw-r--r--engine/battle/core.asm42
-rw-r--r--engine/battle/end_of_battle.asm2
-rw-r--r--engine/battle/init_battle.asm6
-rw-r--r--engine/events/diploma2.asm16
-rw-r--r--engine/events/hidden_objects/museum_fossils2.asm2
-rw-r--r--engine/events/hidden_objects/safari_game.asm2
-rw-r--r--engine/events/in_game_trades.asm2
-rw-r--r--engine/gfx/hp_bar.asm4
-rw-r--r--engine/items/item_effects.asm6
-rw-r--r--engine/menus/link_menu.asm6
-rw-r--r--engine/menus/main_menu.asm4
-rw-r--r--engine/menus/pokedex.asm2
-rw-r--r--engine/menus/text_box.asm6
-rw-r--r--engine/minigame/surfing_pikachu.asm6
-rw-r--r--engine/movie/evolution.asm2
-rw-r--r--engine/movie/splash.asm2
-rw-r--r--engine/movie/trade.asm2
-rw-r--r--engine/overworld/elevator.asm2
-rw-r--r--engine/overworld/player_animations.asm1
-rw-r--r--engine/overworld/player_state.asm4
-rw-r--r--engine/overworld/push_boulder.asm2
-rw-r--r--engine/overworld/tilesets.asm4
-rw-r--r--engine/pikachu/pikachu_pcm.asm8
-rw-r--r--engine/pokemon/evos_moves.asm1
-rw-r--r--home/audio.asm16
-rw-r--r--home/delay.asm2
-rw-r--r--home/overworld.asm4
-rw-r--r--home/printer.asm1
-rw-r--r--home/window.asm2
-rw-r--r--macros/asserts.asm2
-rw-r--r--macros/data.asm2
-rw-r--r--macros/ram.asm (renamed from macros/wram.asm)0
-rw-r--r--macros/scripts/audio.asm55
-rw-r--r--ram.asm2
-rw-r--r--ram/wram.asm2
-rw-r--r--scripts/CinnabarLabFossilRoom.asm2
-rw-r--r--scripts/CinnabarLabTradeRoom.asm4
-rw-r--r--scripts/PewterPokecenter2.asm2
-rw-r--r--scripts/Route11Gate2F.asm2
-rw-r--r--scripts/Route18Gate2F.asm2
-rw-r--r--scripts/Route2TradeHouse.asm2
-rw-r--r--scripts/UndergroundPathRoute5.asm2
115 files changed, 1837 insertions, 998 deletions
diff --git a/README.md b/README.md
index cc34067a..d772f329 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,8 @@ To set up the repository, see [**INSTALL.md**](INSTALL.md).
## See also
+- [**Wiki**][wiki] (includes [tutorials][tutorials])
+- [**Symbols**][symbols]
- **Discord:** [pret][discord]
- **IRC:** [libera#pret][irc]
@@ -35,6 +37,9 @@ Other disassembly projects:
[pokeruby]: https://github.com/pret/pokeruby
[pokefirered]: https://github.com/pret/pokefirered
[pokeemerald]: https://github.com/pret/pokeemerald
+[wiki]: https://github.com/pret/pokeyellow/wiki
+[tutorials]: https://github.com/pret/pokeyellow/wiki/Tutorials
+[symbols]: https://github.com/pret/pokeyellow/tree/symbols
[discord]: https://discord.gg/d5dubZ3
[irc]: https://web.libera.chat/?#pret
[ci]: https://github.com/pret/pokeyellow/actions
diff --git a/audio.asm b/audio.asm
index ef82fd60..37988782 100644
--- a/audio.asm
+++ b/audio.asm
@@ -462,7 +462,8 @@ INCLUDE "audio/engine_4.asm"
SECTION "Music 1", ROMX
-Audio1_WavePointers: INCLUDE "audio/wave_instruments.asm"
+Audio1_WavePointers:
+INCLUDE "audio/wave_samples.asm"
INCLUDE "audio/music/pkmnhealed.asm"
INCLUDE "audio/music/routes1.asm"
diff --git a/audio/engine_1.asm b/audio/engine_1.asm
index 8c9b2352..c155dda6 100644
--- a/audio/engine_1.asm
+++ b/audio/engine_1.asm
@@ -1,7 +1,7 @@
; The first of four partially duplicated sound engines.
Audio1_UpdateMusic::
- ld c, Ch1
+ ld c, CHAN1
.loop
ld b, 0
ld hl, wChannelSoundIDs
@@ -10,7 +10,7 @@ Audio1_UpdateMusic::
and a
jr z, .nextChannel
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .applyAffects ; if sfx channel
ld a, [wMuteAudioAndPauseMusic]
and a
@@ -30,7 +30,7 @@ Audio1_UpdateMusic::
.nextChannel
ld a, c
inc c ; inc channel number
- cp Ch8
+ cp CHAN8
jr nz, .loop
ret
@@ -46,9 +46,9 @@ Audio1_ApplyMusicAffects:
dec a ; otherwise, decrease the delay timer
ld [hl], a
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .startChecks ; if a sfx channel
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
add hl, bc
ld a, [hl]
and a
@@ -180,7 +180,7 @@ Audio1_sound_ret:
bit BIT_SOUND_CALL, [hl]
jr nz, .returnFromCall
ld a, c
- cp Ch4
+ cp CHAN4
jr nc, .noiseOrSfxChannel
jr .disableChannelOutput
.noiseOrSfxChannel
@@ -188,7 +188,7 @@ Audio1_sound_ret:
ld hl, wChannelFlags2
add hl, bc
res BIT_EXECUTE_MUSIC, [hl]
- cp Ch7
+ cp CHAN7
jr nz, .skipSfxChannel3
; restart hardware channel 3 (wave channel) output
ld a, $0
@@ -232,19 +232,19 @@ Audio1_sound_ret:
and [hl]
ldh [rNR51], a
.afterDisable
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp CRY_SFX_START
jr nc, .maybeCry
jr .skipCry
.maybeCry
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp CRY_SFX_END
jr z, .skipCry
jr c, .cry
jr .skipCry
.cry
ld a, c
- cp Ch5
+ cp CHAN5
jr z, .skipRewind
call Audio1_GoBackOneCommandIfCry
ret c
@@ -345,14 +345,14 @@ Audio1_note_type:
add hl, bc
ld [hl], a ; store low nibble as speed
ld a, c
- cp Ch4
+ cp CHAN4
jr z, .noiseChannel ; noise channel has 0 params
call Audio1_GetNextMusicByte
ld d, a
ld a, c
- cp Ch3
+ cp CHAN3
jr z, .musicChannel3
- cp Ch7
+ cp CHAN7
jr nz, .skipChannel3
ld hl, wSfxWaveInstrument
jr .channel3
@@ -486,7 +486,7 @@ Audio1_tempo:
cp tempo_cmd
jr nz, Audio1_stereo_panning
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .sfxChannel
call Audio1_GetNextMusicByte
ld [wMusicTempo], a ; store first param
@@ -530,10 +530,10 @@ Audio1_unknownmusic0xef:
ld a, [wDisableChannelOutputWhenSfxEnds]
and a
jr nz, .skip
- ld a, [wChannelSoundIDs + Ch8]
+ ld a, [wChannelSoundIDs + CHAN8]
ld [wDisableChannelOutputWhenSfxEnds], a
xor a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN8], a
.skip
jp Audio1_sound_ret
@@ -587,7 +587,7 @@ Audio1_sfx_note:
cp sfx_note_cmd
jr nz, Audio1_pitch_sweep
ld a, c
- cp Ch4 ; is this a noise or sfx channel?
+ cp CHAN4 ; is this a noise or sfx channel?
jr c, Audio1_pitch_sweep ; no
ld b, 0
ld hl, wChannelFlags2
@@ -617,7 +617,7 @@ Audio1_sfx_note:
call Audio1_GetNextMusicByte
ld e, a
ld a, c
- cp Ch8
+ cp CHAN8
ld a, 0
jr z, .skip
; Channels 1 through 3 have 2 registers that control frequency, but the noise
@@ -637,7 +637,7 @@ Audio1_sfx_note:
Audio1_pitch_sweep:
ld a, c
- cp Ch5
+ cp CHAN5
jr c, Audio1_note ; if not a sfx
ld a, d
cp pitch_sweep_cmd
@@ -653,7 +653,7 @@ Audio1_pitch_sweep:
Audio1_note:
ld a, c
- cp Ch4
+ cp CHAN4
jr nz, Audio1_note_length ; if not noise channel
ld a, d
and $f0
@@ -711,7 +711,7 @@ Audio1_note_length:
ld l, b
call Audio1_MultiplyAdd
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .sfxChannel
ld a, [wMusicTempo]
ld d, a
@@ -721,7 +721,7 @@ Audio1_note_length:
.sfxChannel
ld d, $1
ld e, $0
- cp Ch8
+ cp CHAN8
jr z, .skip ; if noise channel
call Audio1_SetSfxTempo
ld a, [wSfxTempo]
@@ -761,10 +761,10 @@ Audio1_note_pitch:
cp rest_cmd
jr nz, .notRest
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .next
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
add hl, bc
ld a, [hl]
and a
@@ -772,9 +772,9 @@ Audio1_note_pitch:
; fall through
.next
ld a, c
- cp Ch3
+ cp CHAN3
jr z, .channel3
- cp Ch7
+ cp CHAN7
jr nz, .notChannel3
.channel3
ld b, 0
@@ -810,10 +810,10 @@ Audio1_note_pitch:
.skipPitchSlide
push de
ld a, c
- cp Ch5
+ cp CHAN5
jr nc, .sfxChannel ; if sfx channel
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
ld d, 0
ld e, a
add hl, de
@@ -858,12 +858,12 @@ Audio1_EnableChannelOutput:
or [hl] ; set this channel's bits
ld d, a
ld a, c
- cp Ch8
+ cp CHAN8
jr z, .noiseChannelOrNoSfx
- cp Ch5
+ cp CHAN5
jr nc, .skip ; if sfx channel
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
add hl, bc
ld a, [hl]
and a
@@ -893,9 +893,9 @@ Audio1_ApplyDutyCycleAndSoundLength:
add hl, bc
ld d, [hl]
ld a, c
- cp Ch3
+ cp CHAN3
jr z, .skipDuty ; if music channel 3
- cp Ch7
+ cp CHAN7
jr z, .skipDuty ; if sfx channel 3
; include duty cycle (except on channel 3 which doesn't have it)
ld a, d
@@ -914,15 +914,15 @@ Audio1_ApplyDutyCycleAndSoundLength:
Audio1_ApplyWavePatternAndFrequency:
ld a, c
- cp Ch3
+ cp CHAN3
jr z, .channel3
- cp Ch7
+ cp CHAN7
jr nz, .notChannel3
; fall through
.channel3
push de
ld de, wMusicWaveInstrument
- cp Ch3
+ cp CHAN3
jr z, .next
ld de, wSfxWaveInstrument
.next
@@ -1046,7 +1046,7 @@ Audio1_GoBackOneCommandIfCry:
Audio1_IsCry:
; Returns whether the currently playing audio is a cry in carry.
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp CRY_SFX_START
jr nc, .next
jr .no
@@ -1067,9 +1067,9 @@ Audio1_IsBattleSFX:
ld a, [wAudioROMBank]
cp BANK("Audio Engine 2")
jr nz, .no
- ld a, [wChannelSoundIDs + Ch8]
+ ld a, [wChannelSoundIDs + CHAN8]
ld b, a
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
or b
cp BATTLE_SFX_START
jr c, .no
@@ -1422,7 +1422,7 @@ Audio1_PlaySound::
and a
jr z, .playChannel
ld a, e
- cp Ch8
+ cp CHAN8
jr nz, .notNoiseChannel
ld a, [wSoundID]
cp NOISE_INSTRUMENTS_END
@@ -1489,7 +1489,7 @@ Audio1_PlaySound::
push bc
ld b, 0
ld c, a
- cp Ch4
+ cp CHAN4
jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
@@ -1532,12 +1532,12 @@ Audio1_PlaySound::
jr c, .cry
jr .done
.cry
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer
ld de, Audio1_CryRet
ld [hl], e
inc hl
diff --git a/audio/engine_2.asm b/audio/engine_2.asm
index 800a2246..902db361 100644
--- a/audio/engine_2.asm
+++ b/audio/engine_2.asm
@@ -59,7 +59,7 @@ Audio2_PlaySound::
and a
jr z, .playChannel
ld a, e
- cp Ch8
+ cp CHAN8
jr nz, .notNoiseChannel
ld a, [wSoundID]
cp NOISE_INSTRUMENTS_END
@@ -126,7 +126,7 @@ Audio2_PlaySound::
push bc
ld b, 0
ld c, a
- cp Ch4
+ cp CHAN4
jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
@@ -169,12 +169,12 @@ Audio2_PlaySound::
jr c, .cry
jr .done
.cry
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer
ld de, Audio2_CryRet
ld [hl], e
inc hl
@@ -351,7 +351,7 @@ Audio2_InitSFXVariables::
add hl, de
ld [hl], a
ld a, e
- cp Ch5
+ cp CHAN5
ret nz
ld a, $8
ldh [rNR10], a ; sweep off
diff --git a/audio/engine_3.asm b/audio/engine_3.asm
index 06698ca5..36de3fff 100644
--- a/audio/engine_3.asm
+++ b/audio/engine_3.asm
@@ -57,7 +57,7 @@ Audio3_PlaySound::
and a
jr z, .playChannel
ld a, e
- cp Ch8
+ cp CHAN8
jr nz, .notNoiseChannel
ld a, [wSoundID]
cp NOISE_INSTRUMENTS_END
@@ -124,7 +124,7 @@ Audio3_PlaySound::
push bc
ld b, 0
ld c, a
- cp Ch4
+ cp CHAN4
jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
@@ -167,12 +167,12 @@ Audio3_PlaySound::
jr c, .cry
jr .done
.cry
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer
ld de, Audio3_CryRet
ld [hl], e
inc hl
diff --git a/audio/engine_4.asm b/audio/engine_4.asm
index b3ed422e..12d72d08 100644
--- a/audio/engine_4.asm
+++ b/audio/engine_4.asm
@@ -57,7 +57,7 @@ Audio4_PlaySound::
and a
jr z, .playChannel
ld a, e
- cp Ch8
+ cp CHAN8
jr nz, .notNoiseChannel
ld a, [wSoundID]
cp NOISE_INSTRUMENTS_END
@@ -124,7 +124,7 @@ Audio4_PlaySound::
push bc
ld b, 0
ld c, a
- cp Ch4
+ cp CHAN4
jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
@@ -167,12 +167,12 @@ Audio4_PlaySound::
jr c, .cry
jr .done
.cry
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer
ld de, Audio4_CryRet
ld [hl], e
inc hl
diff --git a/audio/headers/musicheaders1.asm b/audio/headers/musicheaders1.asm
index ef85eae6..fb387671 100644
--- a/audio/headers/musicheaders1.asm
+++ b/audio/headers/musicheaders1.asm
@@ -1,66 +1,135 @@
Music_PalletTown::
- audio_header Music_PalletTown, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_PalletTown_Ch1
+ channel 2, Music_PalletTown_Ch2
+ channel 3, Music_PalletTown_Ch3
Music_Pokecenter::
- audio_header Music_Pokecenter, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Pokecenter_Ch1
+ channel 2, Music_Pokecenter_Ch2
+ channel 3, Music_Pokecenter_Ch3
Music_Gym::
- audio_header Music_Gym, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Gym_Ch1
+ channel 2, Music_Gym_Ch2
+ channel 3, Music_Gym_Ch3
; Viridian City, Pewter City, Saffron City
Music_Cities1::
- audio_header Music_Cities1, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Cities1_Ch1
+ channel 2, Music_Cities1_Ch2
+ channel 3, Music_Cities1_Ch3
+ channel 4, Music_Cities1_Ch4
; Cerulean City, Fuchsia City
Music_Cities2::
- audio_header Music_Cities2, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Cities2_Ch1
+ channel 2, Music_Cities2_Ch2
+ channel 3, Music_Cities2_Ch3
Music_Celadon::
- audio_header Music_Celadon, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Celadon_Ch1
+ channel 2, Music_Celadon_Ch2
+ channel 3, Music_Celadon_Ch3
Music_Cinnabar::
- audio_header Music_Cinnabar, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Cinnabar_Ch1
+ channel 2, Music_Cinnabar_Ch2
+ channel 3, Music_Cinnabar_Ch3
Music_Vermilion::
- audio_header Music_Vermilion, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Vermilion_Ch1
+ channel 2, Music_Vermilion_Ch2
+ channel 3, Music_Vermilion_Ch3
+ channel 4, Music_Vermilion_Ch4
Music_Lavender::
- audio_header Music_Lavender, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Lavender_Ch1
+ channel 2, Music_Lavender_Ch2
+ channel 3, Music_Lavender_Ch3
+ channel 4, Music_Lavender_Ch4
Music_SSAnne::
- audio_header Music_SSAnne, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_SSAnne_Ch1
+ channel 2, Music_SSAnne_Ch2
+ channel 3, Music_SSAnne_Ch3
Music_MeetProfOak::
- audio_header Music_MeetProfOak, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetProfOak_Ch1
+ channel 2, Music_MeetProfOak_Ch2
+ channel 3, Music_MeetProfOak_Ch3
Music_MeetRival::
- audio_header Music_MeetRival, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetRival_Ch1
+ channel 2, Music_MeetRival_Ch2
+ channel 3, Music_MeetRival_Ch3
Music_MuseumGuy::
- audio_header Music_MuseumGuy, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_MuseumGuy_Ch1
+ channel 2, Music_MuseumGuy_Ch2
+ channel 3, Music_MuseumGuy_Ch3
+ channel 4, Music_MuseumGuy_Ch4
Music_SafariZone::
- audio_header Music_SafariZone, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_SafariZone_Ch1
+ channel 2, Music_SafariZone_Ch2
+ channel 3, Music_SafariZone_Ch3
Music_PkmnHealed::
- audio_header Music_PkmnHealed, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_PkmnHealed_Ch1
+ channel 2, Music_PkmnHealed_Ch2
+ channel 3, Music_PkmnHealed_Ch3
; Routes 1 and 2
Music_Routes1::
- audio_header Music_Routes1, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Routes1_Ch1
+ channel 2, Music_Routes1_Ch2
+ channel 3, Music_Routes1_Ch3
+ channel 4, Music_Routes1_Ch4
; Routes 24 and 25
Music_Routes2::
- audio_header Music_Routes2, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Routes2_Ch1
+ channel 2, Music_Routes2_Ch2
+ channel 3, Music_Routes2_Ch3
+ channel 4, Music_Routes2_Ch4
; Routes 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 21, 22
Music_Routes3::
- audio_header Music_Routes3, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Routes3_Ch1
+ channel 2, Music_Routes3_Ch2
+ channel 3, Music_Routes3_Ch3
+ channel 4, Music_Routes3_Ch4
; Routes 11, 12, 13, 14, 15
Music_Routes4::
- audio_header Music_Routes4, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Routes4_Ch1
+ channel 2, Music_Routes4_Ch2
+ channel 3, Music_Routes4_Ch3
+ channel 4, Music_Routes4_Ch4
; Route 23, Indigo Plateau
Music_IndigoPlateau::
- audio_header Music_IndigoPlateau, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_IndigoPlateau_Ch1
+ channel 2, Music_IndigoPlateau_Ch2
+ channel 3, Music_IndigoPlateau_Ch3
+ channel 4, Music_IndigoPlateau_Ch4
diff --git a/audio/headers/musicheaders2.asm b/audio/headers/musicheaders2.asm
index d6cca9a9..c24c08d6 100644
--- a/audio/headers/musicheaders2.asm
+++ b/audio/headers/musicheaders2.asm
@@ -1,20 +1,41 @@
Music_GymLeaderBattle::
- audio_header Music_GymLeaderBattle, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_GymLeaderBattle_Ch1
+ channel 2, Music_GymLeaderBattle_Ch2
+ channel 3, Music_GymLeaderBattle_Ch3
Music_TrainerBattle::
- audio_header Music_TrainerBattle, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_TrainerBattle_Ch1
+ channel 2, Music_TrainerBattle_Ch2
+ channel 3, Music_TrainerBattle_Ch3
Music_WildBattle::
- audio_header Music_WildBattle, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_WildBattle_Ch1
+ channel 2, Music_WildBattle_Ch2
+ channel 3, Music_WildBattle_Ch3
Music_FinalBattle::
- audio_header Music_FinalBattle, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_FinalBattle_Ch1
+ channel 2, Music_FinalBattle_Ch2
+ channel 3, Music_FinalBattle_Ch3
Music_DefeatedTrainer::
- audio_header Music_DefeatedTrainer, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_DefeatedTrainer_Ch1
+ channel 2, Music_DefeatedTrainer_Ch2
+ channel 3, Music_DefeatedTrainer_Ch3
Music_DefeatedWildMon::
- audio_header Music_DefeatedWildMon, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_DefeatedWildMon_Ch1
+ channel 2, Music_DefeatedWildMon_Ch2
+ channel 3, Music_DefeatedWildMon_Ch3
Music_DefeatedGymLeader::
- audio_header Music_DefeatedGymLeader, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_DefeatedGymLeader_Ch1
+ channel 2, Music_DefeatedGymLeader_Ch2
+ channel 3, Music_DefeatedGymLeader_Ch3
diff --git a/audio/headers/musicheaders3.asm b/audio/headers/musicheaders3.asm
index 51c67966..968063ec 100644
--- a/audio/headers/musicheaders3.asm
+++ b/audio/headers/musicheaders3.asm
@@ -1,56 +1,115 @@
Music_TitleScreen::
- audio_header Music_TitleScreen, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_TitleScreen_Ch1
+ channel 2, Music_TitleScreen_Ch2
+ channel 3, Music_TitleScreen_Ch3
+ channel 4, Music_TitleScreen_Ch4
Music_Credits::
- audio_header Music_Credits, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Credits_Ch1
+ channel 2, Music_Credits_Ch2
+ channel 3, Music_Credits_Ch3
Music_HallOfFame::
- audio_header Music_HallOfFame, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_HallOfFame_Ch1
+ channel 2, Music_HallOfFame_Ch2
+ channel 3, Music_HallOfFame_Ch3
Music_OaksLab::
- audio_header Music_OaksLab, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_OaksLab_Ch1
+ channel 2, Music_OaksLab_Ch2
+ channel 3, Music_OaksLab_Ch3
Music_JigglypuffSong::
- audio_header Music_JigglypuffSong, Ch1, Ch2
+ channel_count 2
+ channel 1, Music_JigglypuffSong_Ch1
+ channel 2, Music_JigglypuffSong_Ch2
Music_BikeRiding::
- audio_header Music_BikeRiding, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_BikeRiding_Ch1
+ channel 2, Music_BikeRiding_Ch2
+ channel 3, Music_BikeRiding_Ch3
+ channel 4, Music_BikeRiding_Ch4
Music_Surfing::
- audio_header Music_Surfing, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_Surfing_Ch1
+ channel 2, Music_Surfing_Ch2
+ channel 3, Music_Surfing_Ch3
Music_GameCorner::
- audio_header Music_GameCorner, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_GameCorner_Ch1
+ channel 2, Music_GameCorner_Ch2
+ channel 3, Music_GameCorner_Ch3
Music_YellowIntro::
- audio_header Music_YellowIntro, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_YellowIntro_Ch1
+ channel 2, Music_YellowIntro_Ch2
+ channel 3, Music_YellowIntro_Ch3
; Power Plant, Cerulean Cave, Rocket HQ
Music_Dungeon1::
- audio_header Music_Dungeon1, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Dungeon1_Ch1
+ channel 2, Music_Dungeon1_Ch2
+ channel 3, Music_Dungeon1_Ch3
+ channel 4, Music_Dungeon1_Ch4
; Viridian Forest, Seafoam Islands
Music_Dungeon2::
- audio_header Music_Dungeon2, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Dungeon2_Ch1
+ channel 2, Music_Dungeon2_Ch2
+ channel 3, Music_Dungeon2_Ch3
+ channel 4, Music_Dungeon2_Ch4
; Mt. Moon, Rock Tunnel, Victory Road
Music_Dungeon3::
- audio_header Music_Dungeon3, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_Dungeon3_Ch1
+ channel 2, Music_Dungeon3_Ch2
+ channel 3, Music_Dungeon3_Ch3
+ channel 4, Music_Dungeon3_Ch4
Music_CinnabarMansion::
- audio_header Music_CinnabarMansion, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_CinnabarMansion_Ch1
+ channel 2, Music_CinnabarMansion_Ch2
+ channel 3, Music_CinnabarMansion_Ch3
+ channel 4, Music_CinnabarMansion_Ch4
Music_PokemonTower::
- audio_header Music_PokemonTower, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_PokemonTower_Ch1
+ channel 2, Music_PokemonTower_Ch2
+ channel 3, Music_PokemonTower_Ch3
Music_SilphCo::
- audio_header Music_SilphCo, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_SilphCo_Ch1
+ channel 2, Music_SilphCo_Ch2
+ channel 3, Music_SilphCo_Ch3
Music_MeetEvilTrainer::
- audio_header Music_MeetEvilTrainer, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetEvilTrainer_Ch1
+ channel 2, Music_MeetEvilTrainer_Ch2
+ channel 3, Music_MeetEvilTrainer_Ch3
Music_MeetFemaleTrainer::
- audio_header Music_MeetFemaleTrainer, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetFemaleTrainer_Ch1
+ channel 2, Music_MeetFemaleTrainer_Ch2
+ channel 3, Music_MeetFemaleTrainer_Ch3
Music_MeetMaleTrainer::
- audio_header Music_MeetMaleTrainer, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetMaleTrainer_Ch1
+ channel 2, Music_MeetMaleTrainer_Ch2
+ channel 3, Music_MeetMaleTrainer_Ch3
diff --git a/audio/headers/musicheaders4.asm b/audio/headers/musicheaders4.asm
index 8c537ff9..88bda9a6 100644
--- a/audio/headers/musicheaders4.asm
+++ b/audio/headers/musicheaders4.asm
@@ -1,11 +1,22 @@
Music_SurfingPikachu::
- audio_header Music_SurfingPikachu, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_SurfingPikachu_Ch1
+ channel 2, Music_SurfingPikachu_Ch2
+ channel 3, Music_SurfingPikachu_Ch3
Music_MeetJessieJames::
- audio_header Music_MeetJessieJames, Ch1, Ch2, Ch3
+ channel_count 3
+ channel 1, Music_MeetJessieJames_Ch1
+ channel 2, Music_MeetJessieJames_Ch2
+ channel 3, Music_MeetJessieJames_Ch3
Music_YellowUnusedSong::
- audio_header Music_YellowUnusedSong, Ch1, Ch2, Ch3, Ch4
+ channel_count 4
+ channel 1, Music_YellowUnusedSong_Ch1
+ channel 2, Music_YellowUnusedSong_Ch2
+ channel 3, Music_YellowUnusedSong_Ch3
+ channel 4, Music_YellowUnusedSong_Ch4
Music_GBPrinter::
- audio_header Music_GBPrinter, Ch3
+ channel_count 1
+ channel 3, Music_GBPrinter_Ch3
diff --git a/audio/headers/sfxheaders1.asm b/audio/headers/sfxheaders1.asm
index 2d5eca4a..297b7582 100644
--- a/audio/headers/sfxheaders1.asm
+++ b/audio/headers/sfxheaders1.asm
@@ -2,287 +2,472 @@ SFX_Headers_1::
db $ff, $ff, $ff ; padding
SFX_Noise_Instrument01_1::
- audio_header SFX_Noise_Instrument01_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument01_1_Ch8
SFX_Noise_Instrument02_1::
- audio_header SFX_Noise_Instrument02_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument02_1_Ch8
SFX_Noise_Instrument03_1::
- audio_header SFX_Noise_Instrument03_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument03_1_Ch8
SFX_Noise_Instrument04_1::
- audio_header SFX_Noise_Instrument04_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument04_1_Ch8
SFX_Noise_Instrument05_1::
- audio_header SFX_Noise_Instrument05_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument05_1_Ch8
SFX_Noise_Instrument06_1::
- audio_header SFX_Noise_Instrument06_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument06_1_Ch8
SFX_Noise_Instrument07_1::
- audio_header SFX_Noise_Instrument07_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument07_1_Ch8
SFX_Noise_Instrument08_1::
- audio_header SFX_Noise_Instrument08_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument08_1_Ch8
SFX_Noise_Instrument09_1::
- audio_header SFX_Noise_Instrument09_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument09_1_Ch8
SFX_Noise_Instrument10_1::
- audio_header SFX_Noise_Instrument10_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument10_1_Ch8
SFX_Noise_Instrument11_1::
- audio_header SFX_Noise_Instrument11_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument11_1_Ch8
SFX_Noise_Instrument12_1::
- audio_header SFX_Noise_Instrument12_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument12_1_Ch8
SFX_Noise_Instrument13_1::
- audio_header SFX_Noise_Instrument13_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument13_1_Ch8
SFX_Noise_Instrument14_1::
- audio_header SFX_Noise_Instrument14_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument14_1_Ch8
SFX_Noise_Instrument15_1::
- audio_header SFX_Noise_Instrument15_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument15_1_Ch8
SFX_Noise_Instrument16_1::
- audio_header SFX_Noise_Instrument16_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument16_1_Ch8
SFX_Noise_Instrument17_1::
- audio_header SFX_Noise_Instrument17_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument17_1_Ch8
SFX_Noise_Instrument18_1::
- audio_header SFX_Noise_Instrument18_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument18_1_Ch8
SFX_Noise_Instrument19_1::
- audio_header SFX_Noise_Instrument19_1, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument19_1_Ch8
SFX_Cry00_1::
- audio_header SFX_Cry00_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry00_1_Ch5
+ channel 6, SFX_Cry00_1_Ch6
+ channel 8, SFX_Cry00_1_Ch8
SFX_Cry01_1::
- audio_header SFX_Cry01_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry01_1_Ch5
+ channel 6, SFX_Cry01_1_Ch6
+ channel 8, SFX_Cry01_1_Ch8
SFX_Cry02_1::
- audio_header SFX_Cry02_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry02_1_Ch5
+ channel 6, SFX_Cry02_1_Ch6
+ channel 8, SFX_Cry02_1_Ch8
SFX_Cry03_1::
- audio_header SFX_Cry03_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry03_1_Ch5
+ channel 6, SFX_Cry03_1_Ch6
+ channel 8, SFX_Cry03_1_Ch8
SFX_Cry04_1::
- audio_header SFX_Cry04_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry04_1_Ch5
+ channel 6, SFX_Cry04_1_Ch6
+ channel 8, SFX_Cry04_1_Ch8
SFX_Cry05_1::
- audio_header SFX_Cry05_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry05_1_Ch5
+ channel 6, SFX_Cry05_1_Ch6
+ channel 8, SFX_Cry05_1_Ch8
SFX_Cry06_1::
- audio_header SFX_Cry06_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry06_1_Ch5
+ channel 6, SFX_Cry06_1_Ch6
+ channel 8, SFX_Cry06_1_Ch8
SFX_Cry07_1::
- audio_header SFX_Cry07_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry07_1_Ch5
+ channel 6, SFX_Cry07_1_Ch6
+ channel 8, SFX_Cry07_1_Ch8
SFX_Cry08_1::
- audio_header SFX_Cry08_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry08_1_Ch5
+ channel 6, SFX_Cry08_1_Ch6
+ channel 8, SFX_Cry08_1_Ch8
SFX_Cry09_1::
- audio_header SFX_Cry09_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry09_1_Ch5
+ channel 6, SFX_Cry09_1_Ch6
+ channel 8, SFX_Cry09_1_Ch8
SFX_Cry0A_1::
- audio_header SFX_Cry0A_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0A_1_Ch5
+ channel 6, SFX_Cry0A_1_Ch6
+ channel 8, SFX_Cry0A_1_Ch8
SFX_Cry0B_1::
- audio_header SFX_Cry0B_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0B_1_Ch5
+ channel 6, SFX_Cry0B_1_Ch6
+ channel 8, SFX_Cry0B_1_Ch8
SFX_Cry0C_1::
- audio_header SFX_Cry0C_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0C_1_Ch5
+ channel 6, SFX_Cry0C_1_Ch6
+ channel 8, SFX_Cry0C_1_Ch8
SFX_Cry0D_1::
- audio_header SFX_Cry0D_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0D_1_Ch5
+ channel 6, SFX_Cry0D_1_Ch6
+ channel 8, SFX_Cry0D_1_Ch8
SFX_Cry0E_1::
- audio_header SFX_Cry0E_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0E_1_Ch5
+ channel 6, SFX_Cry0E_1_Ch6
+ channel 8, SFX_Cry0E_1_Ch8
SFX_Cry0F_1::
- audio_header SFX_Cry0F_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0F_1_Ch5
+ channel 6, SFX_Cry0F_1_Ch6
+ channel 8, SFX_Cry0F_1_Ch8
SFX_Cry10_1::
- audio_header SFX_Cry10_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry10_1_Ch5
+ channel 6, SFX_Cry10_1_Ch6
+ channel 8, SFX_Cry10_1_Ch8
SFX_Cry11_1::
- audio_header SFX_Cry11_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry11_1_Ch5
+ channel 6, SFX_Cry11_1_Ch6
+ channel 8, SFX_Cry11_1_Ch8
SFX_Cry12_1::
- audio_header SFX_Cry12_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry12_1_Ch5
+ channel 6, SFX_Cry12_1_Ch6
+ channel 8, SFX_Cry12_1_Ch8
SFX_Cry13_1::
- audio_header SFX_Cry13_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry13_1_Ch5
+ channel 6, SFX_Cry13_1_Ch6
+ channel 8, SFX_Cry13_1_Ch8
SFX_Cry14_1::
- audio_header SFX_Cry14_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry14_1_Ch5
+ channel 6, SFX_Cry14_1_Ch6
+ channel 8, SFX_Cry14_1_Ch8
SFX_Cry15_1::
- audio_header SFX_Cry15_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry15_1_Ch5
+ channel 6, SFX_Cry15_1_Ch6
+ channel 8, SFX_Cry15_1_Ch8
SFX_Cry16_1::
- audio_header SFX_Cry16_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry16_1_Ch5
+ channel 6, SFX_Cry16_1_Ch6
+ channel 8, SFX_Cry16_1_Ch8
SFX_Cry17_1::
- audio_header SFX_Cry17_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry17_1_Ch5
+ channel 6, SFX_Cry17_1_Ch6
+ channel 8, SFX_Cry17_1_Ch8
SFX_Cry18_1::
- audio_header SFX_Cry18_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry18_1_Ch5
+ channel 6, SFX_Cry18_1_Ch6
+ channel 8, SFX_Cry18_1_Ch8
SFX_Cry19_1::
- audio_header SFX_Cry19_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry19_1_Ch5
+ channel 6, SFX_Cry19_1_Ch6
+ channel 8, SFX_Cry19_1_Ch8
SFX_Cry1A_1::
- audio_header SFX_Cry1A_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1A_1_Ch5
+ channel 6, SFX_Cry1A_1_Ch6
+ channel 8, SFX_Cry1A_1_Ch8
SFX_Cry1B_1::
- audio_header SFX_Cry1B_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1B_1_Ch5
+ channel 6, SFX_Cry1B_1_Ch6
+ channel 8, SFX_Cry1B_1_Ch8
SFX_Cry1C_1::
- audio_header SFX_Cry1C_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1C_1_Ch5
+ channel 6, SFX_Cry1C_1_Ch6
+ channel 8, SFX_Cry1C_1_Ch8
SFX_Cry1D_1::
- audio_header SFX_Cry1D_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1D_1_Ch5
+ channel 6, SFX_Cry1D_1_Ch6
+ channel 8, SFX_Cry1D_1_Ch8
SFX_Cry1E_1::
- audio_header SFX_Cry1E_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1E_1_Ch5
+ channel 6, SFX_Cry1E_1_Ch6
+ channel 8, SFX_Cry1E_1_Ch8
SFX_Cry1F_1::
- audio_header SFX_Cry1F_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1F_1_Ch5
+ channel 6, SFX_Cry1F_1_Ch6
+ channel 8, SFX_Cry1F_1_Ch8
SFX_Cry20_1::
- audio_header SFX_Cry20_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry20_1_Ch5
+ channel 6, SFX_Cry20_1_Ch6
+ channel 8, SFX_Cry20_1_Ch8
SFX_Cry21_1::
- audio_header SFX_Cry21_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry21_1_Ch5
+ channel 6, SFX_Cry21_1_Ch6
+ channel 8, SFX_Cry21_1_Ch8
SFX_Cry22_1::
- audio_header SFX_Cry22_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry22_1_Ch5
+ channel 6, SFX_Cry22_1_Ch6
+ channel 8, SFX_Cry22_1_Ch8
SFX_Cry23_1::
- audio_header SFX_Cry23_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry23_1_Ch5
+ channel 6, SFX_Cry23_1_Ch6
+ channel 8, SFX_Cry23_1_Ch8
SFX_Cry24_1::
- audio_header SFX_Cry24_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry24_1_Ch5
+ channel 6, SFX_Cry24_1_Ch6
+ channel 8, SFX_Cry24_1_Ch8
SFX_Cry25_1::
- audio_header SFX_Cry25_1, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry25_1_Ch5
+ channel 6, SFX_Cry25_1_Ch6
+ channel 8, SFX_Cry25_1_Ch8
SFX_Get_Item1_1::
- audio_header SFX_Get_Item1_1, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item1_1_Ch5
+ channel 6, SFX_Get_Item1_1_Ch6
+ channel 7, SFX_Get_Item1_1_Ch7
SFX_Get_Item2_1::
- audio_header SFX_Get_Item2_1, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item2_1_Ch5
+ channel 6, SFX_Get_Item2_1_Ch6
+ channel 7, SFX_Get_Item2_1_Ch7
SFX_Tink_1::
- audio_header SFX_Tink_1, Ch5
+ channel_count 1
+ channel 5, SFX_Tink_1_Ch5
SFX_Heal_HP_1::
- audio_header SFX_Heal_HP_1, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_HP_1_Ch5
SFX_Heal_Ailment_1::
- audio_header SFX_Heal_Ailment_1, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_Ailment_1_Ch5
SFX_Start_Menu_1::
- audio_header SFX_Start_Menu_1, Ch8
+ channel_count 1
+ channel 8, SFX_Start_Menu_1_Ch8
SFX_Press_AB_1::
- audio_header SFX_Press_AB_1, Ch5
+ channel_count 1
+ channel 5, SFX_Press_AB_1_Ch5
SFX_Pokedex_Rating_1::
- audio_header SFX_Pokedex_Rating_1, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Pokedex_Rating_1_Ch5
+ channel 6, SFX_Pokedex_Rating_1_Ch6
+ channel 7, SFX_Pokedex_Rating_1_Ch7
SFX_Get_Key_Item_1::
- audio_header SFX_Get_Key_Item_1, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Key_Item_1_Ch5
+ channel 6, SFX_Get_Key_Item_1_Ch6
+ channel 7, SFX_Get_Key_Item_1_Ch7
SFX_Poisoned_1::
- audio_header SFX_Poisoned_1, Ch5
+ channel_count 1
+ channel 5, SFX_Poisoned_1_Ch5
SFX_Trade_Machine_1::
- audio_header SFX_Trade_Machine_1, Ch5
+ channel_count 1
+ channel 5, SFX_Trade_Machine_1_Ch5
SFX_Turn_On_PC_1::
- audio_header SFX_Turn_On_PC_1, Ch5
+ channel_count 1
+ channel 5, SFX_Turn_On_PC_1_Ch5
SFX_Turn_Off_PC_1::
- audio_header SFX_Turn_Off_PC_1, Ch5
+ channel_count 1
+ channel 5, SFX_Turn_Off_PC_1_Ch5
SFX_Enter_PC_1::
- audio_header SFX_Enter_PC_1, Ch5
+ channel_count 1
+ channel 5, SFX_Enter_PC_1_Ch5
SFX_Shrink_1::
- audio_header SFX_Shrink_1, Ch5
+ channel_count 1
+ channel 5, SFX_Shrink_1_Ch5
SFX_Switch_1::
- audio_header SFX_Switch_1, Ch5
+ channel_count 1
+ channel 5, SFX_Switch_1_Ch5
SFX_Healing_Machine_1::
- audio_header SFX_Healing_Machine_1, Ch5
+ channel_count 1
+ channel 5, SFX_Healing_Machine_1_Ch5
SFX_Teleport_Exit1_1::
- audio_header SFX_Teleport_Exit1_1, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Exit1_1_Ch5
SFX_Teleport_Enter1_1::
- audio_header SFX_Teleport_Enter1_1, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Enter1_1_Ch5
SFX_Teleport_Exit2_1::
- audio_header SFX_Teleport_Exit2_1, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Exit2_1_Ch5
SFX_Ledge_1::
- audio_header SFX_Ledge_1, Ch5
+ channel_count 1
+ channel 5, SFX_Ledge_1_Ch5
SFX_Teleport_Enter2_1::
- audio_header SFX_Teleport_Enter2_1, Ch8
+ channel_count 1
+ channel 8, SFX_Teleport_Enter2_1_Ch8
SFX_Fly_1::
- audio_header SFX_Fly_1, Ch8
+ channel_count 1
+ channel 8, SFX_Fly_1_Ch8
SFX_Denied_1::
- audio_header SFX_Denied_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Denied_1_Ch5
+ channel 6, SFX_Denied_1_Ch6
SFX_Arrow_Tiles_1::
- audio_header SFX_Arrow_Tiles_1, Ch5
+ channel_count 1
+ channel 5, SFX_Arrow_Tiles_1_Ch5
SFX_Push_Boulder_1::
- audio_header SFX_Push_Boulder_1, Ch8
+ channel_count 1
+ channel 8, SFX_Push_Boulder_1_Ch8
SFX_SS_Anne_Horn_1::
- audio_header SFX_SS_Anne_Horn_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_SS_Anne_Horn_1_Ch5
+ channel 6, SFX_SS_Anne_Horn_1_Ch6
SFX_Withdraw_Deposit_1::
- audio_header SFX_Withdraw_Deposit_1, Ch5
+ channel_count 1
+ channel 5, SFX_Withdraw_Deposit_1_Ch5
SFX_Cut_1::
- audio_header SFX_Cut_1, Ch8
+ channel_count 1
+ channel 8, SFX_Cut_1_Ch8
SFX_Go_Inside_1::
- audio_header SFX_Go_Inside_1, Ch8
+ channel_count 1
+ channel 8, SFX_Go_Inside_1_Ch8
SFX_Swap_1::
- audio_header SFX_Swap_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Swap_1_Ch5
+ channel 6, SFX_Swap_1_Ch6
SFX_59_1::
- audio_header SFX_59_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_59_1_Ch5
+ channel 6, SFX_59_1_Ch6
SFX_Purchase_1::
- audio_header SFX_Purchase_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Purchase_1_Ch5
+ channel 6, SFX_Purchase_1_Ch6
SFX_Collision_1::
- audio_header SFX_Collision_1, Ch5
+ channel_count 1
+ channel 5, SFX_Collision_1_Ch5
SFX_Go_Outside_1::
- audio_header SFX_Go_Outside_1, Ch8
+ channel_count 1
+ channel 8, SFX_Go_Outside_1_Ch8
SFX_Save_1::
- audio_header SFX_Save_1, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Save_1_Ch5
+ channel 6, SFX_Save_1_Ch6
; the Pokeflute sound effect directly hijacks channel 3
SFX_Pokeflute::
- audio_header SFX_Pokeflute, Ch3
+ channel_count 1
+ channel 3, SFX_Pokeflute_Ch3
SFX_Safari_Zone_PA::
- audio_header SFX_Safari_Zone_PA, Ch5
+ channel_count 1
+ channel 5, SFX_Safari_Zone_PA_Ch5
diff --git a/audio/headers/sfxheaders2.asm b/audio/headers/sfxheaders2.asm
index 912d137e..1ccbf265 100644
--- a/audio/headers/sfxheaders2.asm
+++ b/audio/headers/sfxheaders2.asm
@@ -2,358 +2,591 @@ SFX_Headers_2::
db $ff, $ff, $ff ; padding
SFX_Noise_Instrument01_2::
- audio_header SFX_Noise_Instrument01_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument01_2_Ch8
SFX_Noise_Instrument02_2::
- audio_header SFX_Noise_Instrument02_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument02_2_Ch8
SFX_Noise_Instrument03_2::
- audio_header SFX_Noise_Instrument03_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument03_2_Ch8
SFX_Noise_Instrument04_2::
- audio_header SFX_Noise_Instrument04_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument04_2_Ch8
SFX_Noise_Instrument05_2::
- audio_header SFX_Noise_Instrument05_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument05_2_Ch8
SFX_Noise_Instrument06_2::
- audio_header SFX_Noise_Instrument06_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument06_2_Ch8
SFX_Noise_Instrument07_2::
- audio_header SFX_Noise_Instrument07_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument07_2_Ch8
SFX_Noise_Instrument08_2::
- audio_header SFX_Noise_Instrument08_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument08_2_Ch8
SFX_Noise_Instrument09_2::
- audio_header SFX_Noise_Instrument09_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument09_2_Ch8
SFX_Noise_Instrument10_2::
- audio_header SFX_Noise_Instrument10_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument10_2_Ch8
SFX_Noise_Instrument11_2::
- audio_header SFX_Noise_Instrument11_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument11_2_Ch8
SFX_Noise_Instrument12_2::
- audio_header SFX_Noise_Instrument12_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument12_2_Ch8
SFX_Noise_Instrument13_2::
- audio_header SFX_Noise_Instrument13_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument13_2_Ch8
SFX_Noise_Instrument14_2::
- audio_header SFX_Noise_Instrument14_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument14_2_Ch8
SFX_Noise_Instrument15_2::
- audio_header SFX_Noise_Instrument15_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument15_2_Ch8
SFX_Noise_Instrument16_2::
- audio_header SFX_Noise_Instrument16_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument16_2_Ch8
SFX_Noise_Instrument17_2::
- audio_header SFX_Noise_Instrument17_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument17_2_Ch8
SFX_Noise_Instrument18_2::
- audio_header SFX_Noise_Instrument18_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument18_2_Ch8
SFX_Noise_Instrument19_2::
- audio_header SFX_Noise_Instrument19_2, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument19_2_Ch8
SFX_Cry00_2::
- audio_header SFX_Cry00_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry00_2_Ch5
+ channel 6, SFX_Cry00_2_Ch6
+ channel 8, SFX_Cry00_2_Ch8
SFX_Cry01_2::
- audio_header SFX_Cry01_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry01_2_Ch5
+ channel 6, SFX_Cry01_2_Ch6
+ channel 8, SFX_Cry01_2_Ch8
SFX_Cry02_2::
- audio_header SFX_Cry02_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry02_2_Ch5
+ channel 6, SFX_Cry02_2_Ch6
+ channel 8, SFX_Cry02_2_Ch8
SFX_Cry03_2::
- audio_header SFX_Cry03_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry03_2_Ch5
+ channel 6, SFX_Cry03_2_Ch6
+ channel 8, SFX_Cry03_2_Ch8
SFX_Cry04_2::
- audio_header SFX_Cry04_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry04_2_Ch5
+ channel 6, SFX_Cry04_2_Ch6
+ channel 8, SFX_Cry04_2_Ch8
SFX_Cry05_2::
- audio_header SFX_Cry05_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry05_2_Ch5
+ channel 6, SFX_Cry05_2_Ch6
+ channel 8, SFX_Cry05_2_Ch8
SFX_Cry06_2::
- audio_header SFX_Cry06_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry06_2_Ch5
+ channel 6, SFX_Cry06_2_Ch6
+ channel 8, SFX_Cry06_2_Ch8
SFX_Cry07_2::
- audio_header SFX_Cry07_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry07_2_Ch5
+ channel 6, SFX_Cry07_2_Ch6
+ channel 8, SFX_Cry07_2_Ch8
SFX_Cry08_2::
- audio_header SFX_Cry08_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry08_2_Ch5
+ channel 6, SFX_Cry08_2_Ch6
+ channel 8, SFX_Cry08_2_Ch8
SFX_Cry09_2::
- audio_header SFX_Cry09_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry09_2_Ch5
+ channel 6, SFX_Cry09_2_Ch6
+ channel 8, SFX_Cry09_2_Ch8
SFX_Cry0A_2::
- audio_header SFX_Cry0A_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0A_2_Ch5
+ channel 6, SFX_Cry0A_2_Ch6
+ channel 8, SFX_Cry0A_2_Ch8
SFX_Cry0B_2::
- audio_header SFX_Cry0B_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0B_2_Ch5
+ channel 6, SFX_Cry0B_2_Ch6
+ channel 8, SFX_Cry0B_2_Ch8
SFX_Cry0C_2::
- audio_header SFX_Cry0C_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0C_2_Ch5
+ channel 6, SFX_Cry0C_2_Ch6
+ channel 8, SFX_Cry0C_2_Ch8
SFX_Cry0D_2::
- audio_header SFX_Cry0D_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0D_2_Ch5
+ channel 6, SFX_Cry0D_2_Ch6
+ channel 8, SFX_Cry0D_2_Ch8
SFX_Cry0E_2::
- audio_header SFX_Cry0E_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0E_2_Ch5
+ channel 6, SFX_Cry0E_2_Ch6
+ channel 8, SFX_Cry0E_2_Ch8
SFX_Cry0F_2::
- audio_header SFX_Cry0F_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0F_2_Ch5
+ channel 6, SFX_Cry0F_2_Ch6
+ channel 8, SFX_Cry0F_2_Ch8
SFX_Cry10_2::
- audio_header SFX_Cry10_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry10_2_Ch5
+ channel 6, SFX_Cry10_2_Ch6
+ channel 8, SFX_Cry10_2_Ch8
SFX_Cry11_2::
- audio_header SFX_Cry11_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry11_2_Ch5
+ channel 6, SFX_Cry11_2_Ch6
+ channel 8, SFX_Cry11_2_Ch8
SFX_Cry12_2::
- audio_header SFX_Cry12_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry12_2_Ch5
+ channel 6, SFX_Cry12_2_Ch6
+ channel 8, SFX_Cry12_2_Ch8
SFX_Cry13_2::
- audio_header SFX_Cry13_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry13_2_Ch5
+ channel 6, SFX_Cry13_2_Ch6
+ channel 8, SFX_Cry13_2_Ch8
SFX_Cry14_2::
- audio_header SFX_Cry14_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry14_2_Ch5
+ channel 6, SFX_Cry14_2_Ch6
+ channel 8, SFX_Cry14_2_Ch8
SFX_Cry15_2::
- audio_header SFX_Cry15_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry15_2_Ch5
+ channel 6, SFX_Cry15_2_Ch6
+ channel 8, SFX_Cry15_2_Ch8
SFX_Cry16_2::
- audio_header SFX_Cry16_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry16_2_Ch5
+ channel 6, SFX_Cry16_2_Ch6
+ channel 8, SFX_Cry16_2_Ch8
SFX_Cry17_2::
- audio_header SFX_Cry17_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry17_2_Ch5
+ channel 6, SFX_Cry17_2_Ch6
+ channel 8, SFX_Cry17_2_Ch8
SFX_Cry18_2::
- audio_header SFX_Cry18_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry18_2_Ch5
+ channel 6, SFX_Cry18_2_Ch6
+ channel 8, SFX_Cry18_2_Ch8
SFX_Cry19_2::
- audio_header SFX_Cry19_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry19_2_Ch5
+ channel 6, SFX_Cry19_2_Ch6
+ channel 8, SFX_Cry19_2_Ch8
SFX_Cry1A_2::
- audio_header SFX_Cry1A_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1A_2_Ch5
+ channel 6, SFX_Cry1A_2_Ch6
+ channel 8, SFX_Cry1A_2_Ch8
SFX_Cry1B_2::
- audio_header SFX_Cry1B_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1B_2_Ch5
+ channel 6, SFX_Cry1B_2_Ch6
+ channel 8, SFX_Cry1B_2_Ch8
SFX_Cry1C_2::
- audio_header SFX_Cry1C_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1C_2_Ch5
+ channel 6, SFX_Cry1C_2_Ch6
+ channel 8, SFX_Cry1C_2_Ch8
SFX_Cry1D_2::
- audio_header SFX_Cry1D_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1D_2_Ch5
+ channel 6, SFX_Cry1D_2_Ch6
+ channel 8, SFX_Cry1D_2_Ch8
SFX_Cry1E_2::
- audio_header SFX_Cry1E_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1E_2_Ch5
+ channel 6, SFX_Cry1E_2_Ch6
+ channel 8, SFX_Cry1E_2_Ch8
SFX_Cry1F_2::
- audio_header SFX_Cry1F_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1F_2_Ch5
+ channel 6, SFX_Cry1F_2_Ch6
+ channel 8, SFX_Cry1F_2_Ch8
SFX_Cry20_2::
- audio_header SFX_Cry20_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry20_2_Ch5
+ channel 6, SFX_Cry20_2_Ch6
+ channel 8, SFX_Cry20_2_Ch8
SFX_Cry21_2::
- audio_header SFX_Cry21_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry21_2_Ch5
+ channel 6, SFX_Cry21_2_Ch6
+ channel 8, SFX_Cry21_2_Ch8
SFX_Cry22_2::
- audio_header SFX_Cry22_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry22_2_Ch5
+ channel 6, SFX_Cry22_2_Ch6
+ channel 8, SFX_Cry22_2_Ch8
SFX_Cry23_2::
- audio_header SFX_Cry23_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry23_2_Ch5
+ channel 6, SFX_Cry23_2_Ch6
+ channel 8, SFX_Cry23_2_Ch8
SFX_Cry24_2::
- audio_header SFX_Cry24_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry24_2_Ch5
+ channel 6, SFX_Cry24_2_Ch6
+ channel 8, SFX_Cry24_2_Ch8
SFX_Cry25_2::
- audio_header SFX_Cry25_2, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry25_2_Ch5
+ channel 6, SFX_Cry25_2_Ch6
+ channel 8, SFX_Cry25_2_Ch8
SFX_Level_Up::
- audio_header SFX_Level_Up, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Level_Up_Ch5
+ channel 6, SFX_Level_Up_Ch6
+ channel 7, SFX_Level_Up_Ch7
SFX_Get_Item2_2::
- audio_header SFX_Get_Item2_2, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item2_2_Ch5
+ channel 6, SFX_Get_Item2_2_Ch6
+ channel 7, SFX_Get_Item2_2_Ch7
SFX_Tink_2::
- audio_header SFX_Tink_2, Ch5
+ channel_count 1
+ channel 5, SFX_Tink_2_Ch5
SFX_Heal_HP_2::
- audio_header SFX_Heal_HP_2, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_HP_2_Ch5
SFX_Heal_Ailment_2::
- audio_header SFX_Heal_Ailment_2, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_Ailment_2_Ch5
SFX_Start_Menu_2::
- audio_header SFX_Start_Menu_2, Ch8
+ channel_count 1
+ channel 8, SFX_Start_Menu_2_Ch8
SFX_Press_AB_2::
- audio_header SFX_Press_AB_2, Ch5
+ channel_count 1
+ channel 5, SFX_Press_AB_2_Ch5
SFX_Ball_Toss::
- audio_header SFX_Ball_Toss, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Ball_Toss_Ch5
+ channel 6, SFX_Ball_Toss_Ch6
SFX_Ball_Poof::
- audio_header SFX_Ball_Poof, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Ball_Poof_Ch5
+ channel 8, SFX_Ball_Poof_Ch8
SFX_Faint_Thud::
- audio_header SFX_Faint_Thud, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Faint_Thud_Ch5
+ channel 8, SFX_Faint_Thud_Ch8
SFX_Run::
- audio_header SFX_Run, Ch8
+ channel_count 1
+ channel 8, SFX_Run_Ch8
SFX_Dex_Page_Added::
- audio_header SFX_Dex_Page_Added, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Dex_Page_Added_Ch5
+ channel 6, SFX_Dex_Page_Added_Ch6
SFX_Caught_Mon::
- audio_header SFX_Caught_Mon, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Caught_Mon_Ch5
+ channel 6, SFX_Caught_Mon_Ch6
+ channel 7, SFX_Caught_Mon_Ch7
SFX_Peck::
- audio_header SFX_Peck, Ch8
+ channel_count 1
+ channel 8, SFX_Peck_Ch8
SFX_Faint_Fall::
- audio_header SFX_Faint_Fall, Ch5
+ channel_count 1
+ channel 5, SFX_Faint_Fall_Ch5
SFX_Battle_09::
- audio_header SFX_Battle_09, Ch5
+ channel_count 1
+ channel 5, SFX_Battle_09_Ch5
SFX_Pound::
- audio_header SFX_Pound, Ch8
+ channel_count 1
+ channel 8, SFX_Pound_Ch8
SFX_Battle_0B::
- audio_header SFX_Battle_0B, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_0B_Ch8
SFX_Battle_0C::
- audio_header SFX_Battle_0C, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_0C_Ch8
SFX_Battle_0D::
- audio_header SFX_Battle_0D, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_0D_Ch8
SFX_Battle_0E::
- audio_header SFX_Battle_0E, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_0E_Ch8
SFX_Battle_0F::
- audio_header SFX_Battle_0F, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_0F_Ch8
SFX_Damage::
- audio_header SFX_Damage, Ch8
+ channel_count 1
+ channel 8, SFX_Damage_Ch8
SFX_Not_Very_Effective::
- audio_header SFX_Not_Very_Effective, Ch8
+ channel_count 1
+ channel 8, SFX_Not_Very_Effective_Ch8
SFX_Battle_12::
- audio_header SFX_Battle_12, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_12_Ch8
SFX_Battle_13::
- audio_header SFX_Battle_13, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_13_Ch8
SFX_Battle_14::
- audio_header SFX_Battle_14, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_14_Ch8
SFX_Vine_Whip::
- audio_header SFX_Vine_Whip, Ch8
+ channel_count 1
+ channel 8, SFX_Vine_Whip_Ch8
SFX_Battle_16::
- audio_header SFX_Battle_16, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_16_Ch8
SFX_Battle_17::
- audio_header SFX_Battle_17, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_17_Ch8
SFX_Battle_18::
- audio_header SFX_Battle_18, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_18_Ch8
SFX_Battle_19::
- audio_header SFX_Battle_19, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_19_Ch8
SFX_Super_Effective::
- audio_header SFX_Super_Effective, Ch8
+ channel_count 1
+ channel 8, SFX_Super_Effective_Ch8
SFX_Battle_1B::
- audio_header SFX_Battle_1B, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_1B_Ch8
SFX_Battle_1C::
- audio_header SFX_Battle_1C, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_1C_Ch8
SFX_Doubleslap::
- audio_header SFX_Doubleslap, Ch8
+ channel_count 1
+ channel 8, SFX_Doubleslap_Ch8
SFX_Battle_1E::
- audio_header SFX_Battle_1E, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Battle_1E_Ch5
+ channel 8, SFX_Battle_1E_Ch8
SFX_Horn_Drill::
- audio_header SFX_Horn_Drill, Ch8
+ channel_count 1
+ channel 8, SFX_Horn_Drill_Ch8
SFX_Battle_20::
- audio_header SFX_Battle_20, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_20_Ch8
SFX_Battle_21::
- audio_header SFX_Battle_21, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_21_Ch8
SFX_Battle_22::
- audio_header SFX_Battle_22, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_22_Ch8
SFX_Battle_23::
- audio_header SFX_Battle_23, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_23_Ch8
SFX_Battle_24::
- audio_header SFX_Battle_24, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Battle_24_Ch5
+ channel 8, SFX_Battle_24_Ch8
SFX_Battle_25::
- audio_header SFX_Battle_25, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_25_Ch8
SFX_Battle_26::
- audio_header SFX_Battle_26, Ch8
+ channel_count 1
+ channel 8, SFX_Battle_26_Ch8
SFX_Battle_27::
- audio_header SFX_Battle_27, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_27_Ch5
+ channel 6, SFX_Battle_27_Ch6
+ channel 8, SFX_Battle_27_Ch8
SFX_Battle_28::
- audio_header SFX_Battle_28, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_28_Ch5
+ channel 6, SFX_Battle_28_Ch6
+ channel 8, SFX_Battle_28_Ch8
SFX_Battle_29::
- audio_header SFX_Battle_29, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Battle_29_Ch5
+ channel 8, SFX_Battle_29_Ch8
SFX_Battle_2A::
- audio_header SFX_Battle_2A, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_2A_Ch5
+ channel 6, SFX_Battle_2A_Ch6
+ channel 8, SFX_Battle_2A_Ch8
SFX_Battle_2B::
- audio_header SFX_Battle_2B, Ch5, Ch8
+ channel_count 2
+ channel 5, SFX_Battle_2B_Ch5
+ channel 8, SFX_Battle_2B_Ch8
SFX_Battle_2C::
- audio_header SFX_Battle_2C, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_2C_Ch5
+ channel 6, SFX_Battle_2C_Ch6
+ channel 8, SFX_Battle_2C_Ch8
SFX_Psybeam::
- audio_header SFX_Psybeam, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Psybeam_Ch5
+ channel 6, SFX_Psybeam_Ch6
+ channel 8, SFX_Psybeam_Ch8
SFX_Battle_2E::
- audio_header SFX_Battle_2E, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_2E_Ch5
+ channel 6, SFX_Battle_2E_Ch6
+ channel 8, SFX_Battle_2E_Ch8
SFX_Battle_2F::
- audio_header SFX_Battle_2F, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_2F_Ch5
+ channel 6, SFX_Battle_2F_Ch6
+ channel 8, SFX_Battle_2F_Ch8
SFX_Psychic_M::
- audio_header SFX_Psychic_M, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Psychic_M_Ch5
+ channel 6, SFX_Psychic_M_Ch6
+ channel 8, SFX_Psychic_M_Ch8
SFX_Battle_31::
- audio_header SFX_Battle_31, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Battle_31_Ch5
+ channel 6, SFX_Battle_31_Ch6
SFX_Battle_32::
- audio_header SFX_Battle_32, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Battle_32_Ch5
+ channel 6, SFX_Battle_32_Ch6
SFX_Battle_33::
- audio_header SFX_Battle_33, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Battle_33_Ch5
+ channel 6, SFX_Battle_33_Ch6
SFX_Battle_34::
- audio_header SFX_Battle_34, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_34_Ch5
+ channel 6, SFX_Battle_34_Ch6
+ channel 8, SFX_Battle_34_Ch8
SFX_Battle_35::
- audio_header SFX_Battle_35, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Battle_35_Ch5
+ channel 6, SFX_Battle_35_Ch6
SFX_Battle_36::
- audio_header SFX_Battle_36, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Battle_36_Ch5
+ channel 6, SFX_Battle_36_Ch6
+ channel 8, SFX_Battle_36_Ch8
SFX_Silph_Scope::
- audio_header SFX_Silph_Scope, Ch5
+ channel_count 1
+ channel 5, SFX_Silph_Scope_Ch5
diff --git a/audio/headers/sfxheaders3.asm b/audio/headers/sfxheaders3.asm
index 2732767f..bc6451a7 100644
--- a/audio/headers/sfxheaders3.asm
+++ b/audio/headers/sfxheaders3.asm
@@ -2,310 +2,504 @@ SFX_Headers_3::
db $ff, $ff, $ff ; padding
SFX_Noise_Instrument01_3::
- audio_header SFX_Noise_Instrument01_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument01_3_Ch8
SFX_Noise_Instrument02_3::
- audio_header SFX_Noise_Instrument02_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument02_3_Ch8
SFX_Noise_Instrument03_3::
- audio_header SFX_Noise_Instrument03_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument03_3_Ch8
SFX_Noise_Instrument04_3::
- audio_header SFX_Noise_Instrument04_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument04_3_Ch8
SFX_Noise_Instrument05_3::
- audio_header SFX_Noise_Instrument05_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument05_3_Ch8
SFX_Noise_Instrument06_3::
- audio_header SFX_Noise_Instrument06_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument06_3_Ch8
SFX_Noise_Instrument07_3::
- audio_header SFX_Noise_Instrument07_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument07_3_Ch8
SFX_Noise_Instrument08_3::
- audio_header SFX_Noise_Instrument08_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument08_3_Ch8
SFX_Noise_Instrument09_3::
- audio_header SFX_Noise_Instrument09_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument09_3_Ch8
SFX_Noise_Instrument10_3::
- audio_header SFX_Noise_Instrument10_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument10_3_Ch8
SFX_Noise_Instrument11_3::
- audio_header SFX_Noise_Instrument11_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument11_3_Ch8
SFX_Noise_Instrument12_3::
- audio_header SFX_Noise_Instrument12_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument12_3_Ch8
SFX_Noise_Instrument13_3::
- audio_header SFX_Noise_Instrument13_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument13_3_Ch8
SFX_Noise_Instrument14_3::
- audio_header SFX_Noise_Instrument14_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument14_3_Ch8
SFX_Noise_Instrument15_3::
- audio_header SFX_Noise_Instrument15_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument15_3_Ch8
SFX_Noise_Instrument16_3::
- audio_header SFX_Noise_Instrument16_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument16_3_Ch8
SFX_Noise_Instrument17_3::
- audio_header SFX_Noise_Instrument17_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument17_3_Ch8
SFX_Noise_Instrument18_3::
- audio_header SFX_Noise_Instrument18_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument18_3_Ch8
SFX_Noise_Instrument19_3::
- audio_header SFX_Noise_Instrument19_3, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument19_3_Ch8
SFX_Cry00_3::
- audio_header SFX_Cry00_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry00_3_Ch5
+ channel 6, SFX_Cry00_3_Ch6
+ channel 8, SFX_Cry00_3_Ch8
SFX_Cry01_3::
- audio_header SFX_Cry01_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry01_3_Ch5
+ channel 6, SFX_Cry01_3_Ch6
+ channel 8, SFX_Cry01_3_Ch8
SFX_Cry02_3::
- audio_header SFX_Cry02_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry02_3_Ch5
+ channel 6, SFX_Cry02_3_Ch6
+ channel 8, SFX_Cry02_3_Ch8
SFX_Cry03_3::
- audio_header SFX_Cry03_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry03_3_Ch5
+ channel 6, SFX_Cry03_3_Ch6
+ channel 8, SFX_Cry03_3_Ch8
SFX_Cry04_3::
- audio_header SFX_Cry04_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry04_3_Ch5
+ channel 6, SFX_Cry04_3_Ch6
+ channel 8, SFX_Cry04_3_Ch8
SFX_Cry05_3::
- audio_header SFX_Cry05_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry05_3_Ch5
+ channel 6, SFX_Cry05_3_Ch6
+ channel 8, SFX_Cry05_3_Ch8
SFX_Cry06_3::
- audio_header SFX_Cry06_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry06_3_Ch5
+ channel 6, SFX_Cry06_3_Ch6
+ channel 8, SFX_Cry06_3_Ch8
SFX_Cry07_3::
- audio_header SFX_Cry07_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry07_3_Ch5
+ channel 6, SFX_Cry07_3_Ch6
+ channel 8, SFX_Cry07_3_Ch8
SFX_Cry08_3::
- audio_header SFX_Cry08_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry08_3_Ch5
+ channel 6, SFX_Cry08_3_Ch6
+ channel 8, SFX_Cry08_3_Ch8
SFX_Cry09_3::
- audio_header SFX_Cry09_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry09_3_Ch5
+ channel 6, SFX_Cry09_3_Ch6
+ channel 8, SFX_Cry09_3_Ch8
SFX_Cry0A_3::
- audio_header SFX_Cry0A_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0A_3_Ch5
+ channel 6, SFX_Cry0A_3_Ch6
+ channel 8, SFX_Cry0A_3_Ch8
SFX_Cry0B_3::
- audio_header SFX_Cry0B_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0B_3_Ch5
+ channel 6, SFX_Cry0B_3_Ch6
+ channel 8, SFX_Cry0B_3_Ch8
SFX_Cry0C_3::
- audio_header SFX_Cry0C_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0C_3_Ch5
+ channel 6, SFX_Cry0C_3_Ch6
+ channel 8, SFX_Cry0C_3_Ch8
SFX_Cry0D_3::
- audio_header SFX_Cry0D_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0D_3_Ch5
+ channel 6, SFX_Cry0D_3_Ch6
+ channel 8, SFX_Cry0D_3_Ch8
SFX_Cry0E_3::
- audio_header SFX_Cry0E_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0E_3_Ch5
+ channel 6, SFX_Cry0E_3_Ch6
+ channel 8, SFX_Cry0E_3_Ch8
SFX_Cry0F_3::
- audio_header SFX_Cry0F_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0F_3_Ch5
+ channel 6, SFX_Cry0F_3_Ch6
+ channel 8, SFX_Cry0F_3_Ch8
SFX_Cry10_3::
- audio_header SFX_Cry10_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry10_3_Ch5
+ channel 6, SFX_Cry10_3_Ch6
+ channel 8, SFX_Cry10_3_Ch8
SFX_Cry11_3::
- audio_header SFX_Cry11_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry11_3_Ch5
+ channel 6, SFX_Cry11_3_Ch6
+ channel 8, SFX_Cry11_3_Ch8
SFX_Cry12_3::
- audio_header SFX_Cry12_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry12_3_Ch5
+ channel 6, SFX_Cry12_3_Ch6
+ channel 8, SFX_Cry12_3_Ch8
SFX_Cry13_3::
- audio_header SFX_Cry13_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry13_3_Ch5
+ channel 6, SFX_Cry13_3_Ch6
+ channel 8, SFX_Cry13_3_Ch8
SFX_Cry14_3::
- audio_header SFX_Cry14_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry14_3_Ch5
+ channel 6, SFX_Cry14_3_Ch6
+ channel 8, SFX_Cry14_3_Ch8
SFX_Cry15_3::
- audio_header SFX_Cry15_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry15_3_Ch5
+ channel 6, SFX_Cry15_3_Ch6
+ channel 8, SFX_Cry15_3_Ch8
SFX_Cry16_3::
- audio_header SFX_Cry16_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry16_3_Ch5
+ channel 6, SFX_Cry16_3_Ch6
+ channel 8, SFX_Cry16_3_Ch8
SFX_Cry17_3::
- audio_header SFX_Cry17_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry17_3_Ch5
+ channel 6, SFX_Cry17_3_Ch6
+ channel 8, SFX_Cry17_3_Ch8
SFX_Cry18_3::
- audio_header SFX_Cry18_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry18_3_Ch5
+ channel 6, SFX_Cry18_3_Ch6
+ channel 8, SFX_Cry18_3_Ch8
SFX_Cry19_3::
- audio_header SFX_Cry19_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry19_3_Ch5
+ channel 6, SFX_Cry19_3_Ch6
+ channel 8, SFX_Cry19_3_Ch8
SFX_Cry1A_3::
- audio_header SFX_Cry1A_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1A_3_Ch5
+ channel 6, SFX_Cry1A_3_Ch6
+ channel 8, SFX_Cry1A_3_Ch8
SFX_Cry1B_3::
- audio_header SFX_Cry1B_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1B_3_Ch5
+ channel 6, SFX_Cry1B_3_Ch6
+ channel 8, SFX_Cry1B_3_Ch8
SFX_Cry1C_3::
- audio_header SFX_Cry1C_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1C_3_Ch5
+ channel 6, SFX_Cry1C_3_Ch6
+ channel 8, SFX_Cry1C_3_Ch8
SFX_Cry1D_3::
- audio_header SFX_Cry1D_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1D_3_Ch5
+ channel 6, SFX_Cry1D_3_Ch6
+ channel 8, SFX_Cry1D_3_Ch8
SFX_Cry1E_3::
- audio_header SFX_Cry1E_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1E_3_Ch5
+ channel 6, SFX_Cry1E_3_Ch6
+ channel 8, SFX_Cry1E_3_Ch8
SFX_Cry1F_3::
- audio_header SFX_Cry1F_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1F_3_Ch5
+ channel 6, SFX_Cry1F_3_Ch6
+ channel 8, SFX_Cry1F_3_Ch8
SFX_Cry20_3::
- audio_header SFX_Cry20_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry20_3_Ch5
+ channel 6, SFX_Cry20_3_Ch6
+ channel 8, SFX_Cry20_3_Ch8
SFX_Cry21_3::
- audio_header SFX_Cry21_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry21_3_Ch5
+ channel 6, SFX_Cry21_3_Ch6
+ channel 8, SFX_Cry21_3_Ch8
SFX_Cry22_3::
- audio_header SFX_Cry22_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry22_3_Ch5
+ channel 6, SFX_Cry22_3_Ch6
+ channel 8, SFX_Cry22_3_Ch8
SFX_Cry23_3::
- audio_header SFX_Cry23_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry23_3_Ch5
+ channel 6, SFX_Cry23_3_Ch6
+ channel 8, SFX_Cry23_3_Ch8
SFX_Cry24_3::
- audio_header SFX_Cry24_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry24_3_Ch5
+ channel 6, SFX_Cry24_3_Ch6
+ channel 8, SFX_Cry24_3_Ch8
SFX_Cry25_3::
- audio_header SFX_Cry25_3, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry25_3_Ch5
+ channel 6, SFX_Cry25_3_Ch6
+ channel 8, SFX_Cry25_3_Ch8
SFX_Get_Item1_3::
- audio_header SFX_Get_Item1_3, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item1_3_Ch5
+ channel 6, SFX_Get_Item1_3_Ch6
+ channel 7, SFX_Get_Item1_3_Ch7
SFX_Get_Item2_3::
- audio_header SFX_Get_Item2_3, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item2_3_Ch5
+ channel 6, SFX_Get_Item2_3_Ch6
+ channel 7, SFX_Get_Item2_3_Ch7
SFX_Tink_3::
- audio_header SFX_Tink_3, Ch5
+ channel_count 1
+ channel 5, SFX_Tink_3_Ch5
SFX_Heal_HP_3::
- audio_header SFX_Heal_HP_3, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_HP_3_Ch5
SFX_Heal_Ailment_3::
- audio_header SFX_Heal_Ailment_3, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_Ailment_3_Ch5
SFX_Start_Menu_3::
- audio_header SFX_Start_Menu_3, Ch8
+ channel_count 1
+ channel 8, SFX_Start_Menu_3_Ch8
SFX_Press_AB_3::
- audio_header SFX_Press_AB_3, Ch5
+ channel_count 1
+ channel 5, SFX_Press_AB_3_Ch5
SFX_Pokedex_Rating_3::
- audio_header SFX_Pokedex_Rating_3, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Pokedex_Rating_3_Ch5
+ channel 6, SFX_Pokedex_Rating_3_Ch6
+ channel 7, SFX_Pokedex_Rating_3_Ch7
SFX_Get_Key_Item_3::
- audio_header SFX_Get_Key_Item_3, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Key_Item_3_Ch5
+ channel 6, SFX_Get_Key_Item_3_Ch6
+ channel 7, SFX_Get_Key_Item_3_Ch7
SFX_Poisoned_3::
- audio_header SFX_Poisoned_3, Ch5
+ channel_count 1
+ channel 5, SFX_Poisoned_3_Ch5
SFX_Trade_Machine_3::
- audio_header SFX_Trade_Machine_3, Ch5
+ channel_count 1
+ channel 5, SFX_Trade_Machine_3_Ch5
SFX_Turn_On_PC_3::
- audio_header SFX_Turn_On_PC_3, Ch5
+ channel_count 1
+ channel 5, SFX_Turn_On_PC_3_Ch5
SFX_Turn_Off_PC_3::
- audio_header SFX_Turn_Off_PC_3, Ch5
+ channel_count 1
+ channel 5, SFX_Turn_Off_PC_3_Ch5
SFX_Enter_PC_3::
- audio_header SFX_Enter_PC_3, Ch5
+ channel_count 1
+ channel 5, SFX_Enter_PC_3_Ch5
SFX_Shrink_3::
- audio_header SFX_Shrink_3, Ch5
+ channel_count 1
+ channel 5, SFX_Shrink_3_Ch5
SFX_Switch_3::
- audio_header SFX_Switch_3, Ch5
+ channel_count 1
+ channel 5, SFX_Switch_3_Ch5
SFX_Healing_Machine_3::
- audio_header SFX_Healing_Machine_3, Ch5
+ channel_count 1
+ channel 5, SFX_Healing_Machine_3_Ch5
SFX_Teleport_Exit1_3::
- audio_header SFX_Teleport_Exit1_3, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Exit1_3_Ch5
SFX_Teleport_Enter1_3::
- audio_header SFX_Teleport_Enter1_3, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Enter1_3_Ch5
SFX_Teleport_Exit2_3::
- audio_header SFX_Teleport_Exit2_3, Ch5
+ channel_count 1
+ channel 5, SFX_Teleport_Exit2_3_Ch5
SFX_Ledge_3::
- audio_header SFX_Ledge_3, Ch5
+ channel_count 1
+ channel 5, SFX_Ledge_3_Ch5
SFX_Teleport_Enter2_3::
- audio_header SFX_Teleport_Enter2_3, Ch8
+ channel_count 1
+ channel 8, SFX_Teleport_Enter2_3_Ch8
SFX_Fly_3::
- audio_header SFX_Fly_3, Ch8
+ channel_count 1
+ channel 8, SFX_Fly_3_Ch8
SFX_Denied_3::
- audio_header SFX_Denied_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Denied_3_Ch5
+ channel 6, SFX_Denied_3_Ch6
SFX_Arrow_Tiles_3::
- audio_header SFX_Arrow_Tiles_3, Ch5
+ channel_count 1
+ channel 5, SFX_Arrow_Tiles_3_Ch5
SFX_Push_Boulder_3::
- audio_header SFX_Push_Boulder_3, Ch8
+ channel_count 1
+ channel 8, SFX_Push_Boulder_3_Ch8
SFX_SS_Anne_Horn_3::
- audio_header SFX_SS_Anne_Horn_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_SS_Anne_Horn_3_Ch5
+ channel 6, SFX_SS_Anne_Horn_3_Ch6
SFX_Withdraw_Deposit_3::
- audio_header SFX_Withdraw_Deposit_3, Ch5
+ channel_count 1
+ channel 5, SFX_Withdraw_Deposit_3_Ch5
SFX_Cut_3::
- audio_header SFX_Cut_3, Ch8
+ channel_count 1
+ channel 8, SFX_Cut_3_Ch8
SFX_Go_Inside_3::
- audio_header SFX_Go_Inside_3, Ch8
+ channel_count 1
+ channel 8, SFX_Go_Inside_3_Ch8
SFX_Swap_3::
- audio_header SFX_Swap_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Swap_3_Ch5
+ channel 6, SFX_Swap_3_Ch6
SFX_59_3::
- audio_header SFX_59_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_59_3_Ch5
+ channel 6, SFX_59_3_Ch6
SFX_Purchase_3::
- audio_header SFX_Purchase_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Purchase_3_Ch5
+ channel 6, SFX_Purchase_3_Ch6
SFX_Collision_3::
- audio_header SFX_Collision_3, Ch5
+ channel_count 1
+ channel 5, SFX_Collision_3_Ch5
SFX_Go_Outside_3::
- audio_header SFX_Go_Outside_3, Ch8
+ channel_count 1
+ channel 8, SFX_Go_Outside_3_Ch8
SFX_Save_3::
- audio_header SFX_Save_3, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Save_3_Ch5
+ channel 6, SFX_Save_3_Ch6
SFX_Intro_Lunge::
- audio_header SFX_Intro_Lunge, Ch8
+ channel_count 1
+ channel 8, SFX_Intro_Lunge_Ch8
SFX_Intro_Hip::
- audio_header SFX_Intro_Hip, Ch5
+ channel_count 1
+ channel 5, SFX_Intro_Hip_Ch5
SFX_Intro_Hop::
- audio_header SFX_Intro_Hop, Ch5
+ channel_count 1
+ channel 5, SFX_Intro_Hop_Ch5
SFX_Intro_Raise::
- audio_header SFX_Intro_Raise, Ch8
+ channel_count 1
+ channel 8, SFX_Intro_Raise_Ch8
SFX_Intro_Crash::
- audio_header SFX_Intro_Crash, Ch8
+ channel_count 1
+ channel 8, SFX_Intro_Crash_Ch8
SFX_Intro_Whoosh::
- audio_header SFX_Intro_Whoosh, Ch8
+ channel_count 1
+ channel 8, SFX_Intro_Whoosh_Ch8
SFX_Slots_Stop_Wheel::
- audio_header SFX_Slots_Stop_Wheel, Ch5
+ channel_count 1
+ channel 5, SFX_Slots_Stop_Wheel_Ch5
SFX_Slots_Reward::
- audio_header SFX_Slots_Reward, Ch5
+ channel_count 1
+ channel 5, SFX_Slots_Reward_Ch5
SFX_Slots_New_Spin::
- audio_header SFX_Slots_New_Spin, Ch5, Ch6
+ channel_count 2
+ channel 5, SFX_Slots_New_Spin_Ch5
+ channel 6, SFX_Slots_New_Spin_Ch6
SFX_Shooting_Star::
- audio_header SFX_Shooting_Star, Ch5
+ channel_count 1
+ channel 5, SFX_Shooting_Star_Ch5
diff --git a/audio/headers/sfxheaders4.asm b/audio/headers/sfxheaders4.asm
index d371d3f8..fc2c6166 100644
--- a/audio/headers/sfxheaders4.asm
+++ b/audio/headers/sfxheaders4.asm
@@ -2,211 +2,363 @@ SFX_Headers_4::
db $ff, $ff, $ff ; padding
SFX_Noise_Instrument01_4::
- audio_header SFX_Noise_Instrument01_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument01_4_Ch8
SFX_Noise_Instrument02_4::
- audio_header SFX_Noise_Instrument02_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument02_4_Ch8
SFX_Noise_Instrument03_4::
- audio_header SFX_Noise_Instrument03_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument03_4_Ch8
SFX_Noise_Instrument04_4::
- audio_header SFX_Noise_Instrument04_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument04_4_Ch8
SFX_Noise_Instrument05_4::
- audio_header SFX_Noise_Instrument05_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument05_4_Ch8
SFX_Noise_Instrument06_4::
- audio_header SFX_Noise_Instrument06_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument06_4_Ch8
SFX_Noise_Instrument07_4::
- audio_header SFX_Noise_Instrument07_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument07_4_Ch8
SFX_Noise_Instrument08_4::
- audio_header SFX_Noise_Instrument08_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument08_4_Ch8
SFX_Noise_Instrument09_4::
- audio_header SFX_Noise_Instrument09_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument09_4_Ch8
SFX_Noise_Instrument10_4::
- audio_header SFX_Noise_Instrument10_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument10_4_Ch8
SFX_Noise_Instrument11_4::
- audio_header SFX_Noise_Instrument11_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument11_4_Ch8
SFX_Noise_Instrument12_4::
- audio_header SFX_Noise_Instrument12_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument12_4_Ch8
SFX_Noise_Instrument13_4::
- audio_header SFX_Noise_Instrument13_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument13_4_Ch8
SFX_Noise_Instrument14_4::
- audio_header SFX_Noise_Instrument14_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument14_4_Ch8
SFX_Noise_Instrument15_4::
- audio_header SFX_Noise_Instrument15_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument15_4_Ch8
SFX_Noise_Instrument16_4::
- audio_header SFX_Noise_Instrument16_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument16_4_Ch8
SFX_Noise_Instrument17_4::
- audio_header SFX_Noise_Instrument17_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument17_4_Ch8
SFX_Noise_Instrument18_4::
- audio_header SFX_Noise_Instrument18_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument18_4_Ch8
SFX_Noise_Instrument19_4::
- audio_header SFX_Noise_Instrument19_4, Ch8
+ channel_count 1
+ channel 8, SFX_Noise_Instrument19_4_Ch8
SFX_Cry00_4::
- audio_header SFX_Cry00_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry00_4_Ch5
+ channel 6, SFX_Cry00_4_Ch6
+ channel 8, SFX_Cry00_4_Ch8
SFX_Cry01_4::
- audio_header SFX_Cry01_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry01_4_Ch5
+ channel 6, SFX_Cry01_4_Ch6
+ channel 8, SFX_Cry01_4_Ch8
SFX_Cry02_4::
- audio_header SFX_Cry02_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry02_4_Ch5
+ channel 6, SFX_Cry02_4_Ch6
+ channel 8, SFX_Cry02_4_Ch8
SFX_Cry03_4::
- audio_header SFX_Cry03_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry03_4_Ch5
+ channel 6, SFX_Cry03_4_Ch6
+ channel 8, SFX_Cry03_4_Ch8
SFX_Cry04_4::
- audio_header SFX_Cry04_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry04_4_Ch5
+ channel 6, SFX_Cry04_4_Ch6
+ channel 8, SFX_Cry04_4_Ch8
SFX_Cry05_4::
- audio_header SFX_Cry05_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry05_4_Ch5
+ channel 6, SFX_Cry05_4_Ch6
+ channel 8, SFX_Cry05_4_Ch8
SFX_Cry06_4::
- audio_header SFX_Cry06_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry06_4_Ch5
+ channel 6, SFX_Cry06_4_Ch6
+ channel 8, SFX_Cry06_4_Ch8
SFX_Cry07_4::
- audio_header SFX_Cry07_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry07_4_Ch5
+ channel 6, SFX_Cry07_4_Ch6
+ channel 8, SFX_Cry07_4_Ch8
SFX_Cry08_4::
- audio_header SFX_Cry08_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry08_4_Ch5
+ channel 6, SFX_Cry08_4_Ch6
+ channel 8, SFX_Cry08_4_Ch8
SFX_Cry09_4::
- audio_header SFX_Cry09_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry09_4_Ch5
+ channel 6, SFX_Cry09_4_Ch6
+ channel 8, SFX_Cry09_4_Ch8
SFX_Cry0A_4::
- audio_header SFX_Cry0A_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0A_4_Ch5
+ channel 6, SFX_Cry0A_4_Ch6
+ channel 8, SFX_Cry0A_4_Ch8
SFX_Cry0B_4::
- audio_header SFX_Cry0B_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0B_4_Ch5
+ channel 6, SFX_Cry0B_4_Ch6
+ channel 8, SFX_Cry0B_4_Ch8
SFX_Cry0C_4::
- audio_header SFX_Cry0C_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0C_4_Ch5
+ channel 6, SFX_Cry0C_4_Ch6
+ channel 8, SFX_Cry0C_4_Ch8
SFX_Cry0D_4::
- audio_header SFX_Cry0D_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0D_4_Ch5
+ channel 6, SFX_Cry0D_4_Ch6
+ channel 8, SFX_Cry0D_4_Ch8
SFX_Cry0E_4::
- audio_header SFX_Cry0E_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0E_4_Ch5
+ channel 6, SFX_Cry0E_4_Ch6
+ channel 8, SFX_Cry0E_4_Ch8
SFX_Cry0F_4::
- audio_header SFX_Cry0F_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry0F_4_Ch5
+ channel 6, SFX_Cry0F_4_Ch6
+ channel 8, SFX_Cry0F_4_Ch8
SFX_Cry10_4::
- audio_header SFX_Cry10_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry10_4_Ch5
+ channel 6, SFX_Cry10_4_Ch6
+ channel 8, SFX_Cry10_4_Ch8
SFX_Cry11_4::
- audio_header SFX_Cry11_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry11_4_Ch5
+ channel 6, SFX_Cry11_4_Ch6
+ channel 8, SFX_Cry11_4_Ch8
SFX_Cry12_4::
- audio_header SFX_Cry12_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry12_4_Ch5
+ channel 6, SFX_Cry12_4_Ch6
+ channel 8, SFX_Cry12_4_Ch8
SFX_Cry13_4::
- audio_header SFX_Cry13_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry13_4_Ch5
+ channel 6, SFX_Cry13_4_Ch6
+ channel 8, SFX_Cry13_4_Ch8
SFX_Cry14_4::
- audio_header SFX_Cry14_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry14_4_Ch5
+ channel 6, SFX_Cry14_4_Ch6
+ channel 8, SFX_Cry14_4_Ch8
SFX_Cry15_4::
- audio_header SFX_Cry15_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry15_4_Ch5
+ channel 6, SFX_Cry15_4_Ch6
+ channel 8, SFX_Cry15_4_Ch8
SFX_Cry16_4::
- audio_header SFX_Cry16_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry16_4_Ch5
+ channel 6, SFX_Cry16_4_Ch6
+ channel 8, SFX_Cry16_4_Ch8
SFX_Cry17_4::
- audio_header SFX_Cry17_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry17_4_Ch5
+ channel 6, SFX_Cry17_4_Ch6
+ channel 8, SFX_Cry17_4_Ch8
SFX_Cry18_4::
- audio_header SFX_Cry18_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry18_4_Ch5
+ channel 6, SFX_Cry18_4_Ch6
+ channel 8, SFX_Cry18_4_Ch8
SFX_Cry19_4::
- audio_header SFX_Cry19_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry19_4_Ch5
+ channel 6, SFX_Cry19_4_Ch6
+ channel 8, SFX_Cry19_4_Ch8
SFX_Cry1A_4::
- audio_header SFX_Cry1A_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1A_4_Ch5
+ channel 6, SFX_Cry1A_4_Ch6
+ channel 8, SFX_Cry1A_4_Ch8
SFX_Cry1B_4::
- audio_header SFX_Cry1B_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1B_4_Ch5
+ channel 6, SFX_Cry1B_4_Ch6
+ channel 8, SFX_Cry1B_4_Ch8
SFX_Cry1C_4::
- audio_header SFX_Cry1C_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1C_4_Ch5
+ channel 6, SFX_Cry1C_4_Ch6
+ channel 8, SFX_Cry1C_4_Ch8
SFX_Cry1D_4::
- audio_header SFX_Cry1D_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1D_4_Ch5
+ channel 6, SFX_Cry1D_4_Ch6
+ channel 8, SFX_Cry1D_4_Ch8
SFX_Cry1E_4::
- audio_header SFX_Cry1E_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1E_4_Ch5
+ channel 6, SFX_Cry1E_4_Ch6
+ channel 8, SFX_Cry1E_4_Ch8
SFX_Cry1F_4::
- audio_header SFX_Cry1F_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry1F_4_Ch5
+ channel 6, SFX_Cry1F_4_Ch6
+ channel 8, SFX_Cry1F_4_Ch8
SFX_Cry20_4::
- audio_header SFX_Cry20_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry20_4_Ch5
+ channel 6, SFX_Cry20_4_Ch6
+ channel 8, SFX_Cry20_4_Ch8
SFX_Cry21_4::
- audio_header SFX_Cry21_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry21_4_Ch5
+ channel 6, SFX_Cry21_4_Ch6
+ channel 8, SFX_Cry21_4_Ch8
SFX_Cry22_4::
- audio_header SFX_Cry22_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry22_4_Ch5
+ channel 6, SFX_Cry22_4_Ch6
+ channel 8, SFX_Cry22_4_Ch8
SFX_Cry23_4::
- audio_header SFX_Cry23_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry23_4_Ch5
+ channel 6, SFX_Cry23_4_Ch6
+ channel 8, SFX_Cry23_4_Ch8
SFX_Cry24_4::
- audio_header SFX_Cry24_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry24_4_Ch5
+ channel 6, SFX_Cry24_4_Ch6
+ channel 8, SFX_Cry24_4_Ch8
SFX_Cry25_4::
- audio_header SFX_Cry25_4, Ch5, Ch6, Ch8
+ channel_count 3
+ channel 5, SFX_Cry25_4_Ch5
+ channel 6, SFX_Cry25_4_Ch6
+ channel 8, SFX_Cry25_4_Ch8
SFX_Get_Item1_4::
- audio_header SFX_Get_Item1_4, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item1_4_Ch5
+ channel 6, SFX_Get_Item1_4_Ch6
+ channel 7, SFX_Get_Item1_4_Ch7
SFX_Get_Item2_4::
- audio_header SFX_Get_Item2_4, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item2_4_Ch5
+ channel 6, SFX_Get_Item2_4_Ch6
+ channel 7, SFX_Get_Item2_4_Ch7
SFX_Tink_4::
- audio_header SFX_Tink_4, Ch5
+ channel_count 1
+ channel 5, SFX_Tink_4_Ch5
SFX_Heal_HP_4::
- audio_header SFX_Heal_HP_4, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_HP_4_Ch5
SFX_Heal_Ailment_4::
- audio_header SFX_Heal_Ailment_4, Ch5
+ channel_count 1
+ channel 5, SFX_Heal_Ailment_4_Ch5
SFX_Start_Menu_4::
- audio_header SFX_Start_Menu_4, Ch8
+ channel_count 1
+ channel 8, SFX_Start_Menu_4_Ch8
SFX_Press_AB_4::
- audio_header SFX_Press_AB_4, Ch5
+ channel_count 1
+ channel 5, SFX_Press_AB_4_Ch5
SFX_Surfing_Jump::
- audio_header SFX_Surfing_Jump, Ch8
+ channel_count 1
+ channel 8, SFX_Surfing_Jump_Ch8
SFX_Surfing_Flip::
- audio_header SFX_Surfing_Flip, Ch5
+ channel_count 1
+ channel 5, SFX_Surfing_Flip_Ch5
SFX_Surfing_Crash::
- audio_header SFX_Surfing_Crash, Ch8
+ channel_count 1
+ channel 8, SFX_Surfing_Crash_Ch8
SFX_Unknown_802cc::
- audio_header SFX_Unknown_802cc, Ch5
+ channel_count 1
+ channel 5, SFX_Unknown_802cc_Ch5
SFX_Surfing_Land::
- audio_header SFX_Surfing_Land, Ch8
+ channel_count 1
+ channel 8, SFX_Surfing_Land_Ch8
SFX_Get_Item2_4_2::
- audio_header SFX_Get_Item2_4_2, Ch5, Ch6, Ch7
+ channel_count 3
+ channel 5, SFX_Get_Item2_4_2_Ch5
+ channel 6, SFX_Get_Item2_4_2_Ch6
+ channel 7, SFX_Get_Item2_4_2_Ch7
diff --git a/audio/low_health_alarm.asm b/audio/low_health_alarm.asm
index 65e19aa7..35fe1815 100644
--- a/audio/low_health_alarm.asm
+++ b/audio/low_health_alarm.asm
@@ -20,7 +20,7 @@ Music_DoLowHealthAlarm::
.noTone
ld a, $86
- ld [wChannelSoundIDs + Ch5], a ;disable sound channel?
+ ld [wChannelSoundIDs + CHAN5], a ;disable sound channel?
ld a, [wLowHealthAlarm]
and $7f ;decrement alarm timer.
dec a
@@ -34,7 +34,7 @@ Music_DoLowHealthAlarm::
.disableAlarm
xor a
ld [wLowHealthAlarm], a ;disable alarm
- ld [wChannelSoundIDs + Ch5], a ;re-enable sound channel?
+ ld [wChannelSoundIDs + CHAN5], a ;re-enable sound channel?
ld de, .toneDataSilence
jr .playTone
diff --git a/audio/music/yellowintro.asm b/audio/music/yellowintro.asm
index bb741a22..f0acb8f5 100644
--- a/audio/music/yellowintro.asm
+++ b/audio/music/yellowintro.asm
@@ -99,7 +99,6 @@ Music_YellowIntro_Ch1::
note B_, 16
sound_ret
-
Music_YellowIntro_Ch2::
duty_cycle 2
vibrato 6, 1, 5
@@ -202,7 +201,6 @@ Music_YellowIntro_Ch2::
note E_, 16
sound_ret
-
Music_YellowIntro_Ch3::
note_type 12, 1, 0
octave 4
diff --git a/audio/poke_flute.asm b/audio/poke_flute.asm
index f55a2a1f..1c0caab1 100644
--- a/audio/poke_flute.asm
+++ b/audio/poke_flute.asm
@@ -3,7 +3,7 @@ Music_PokeFluteInBattle::
ld a, SFX_CAUGHT_MON
call PlaySoundWaitForCurrent
; then immediately overwrite the channel pointers
- ld hl, wChannelCommandPointers + Ch5 * 2
+ ld hl, wChannelCommandPointers + CHAN5 * 2
ld de, SFX_Pokeflute_Ch5
call Audio2_OverwriteChannelPointer
ld de, SFX_Pokeflute_Ch6
diff --git a/audio/sfx/cry00_4.asm b/audio/sfx/cry00_4.asm
index 87bf036e..57eb49da 100644
--- a/audio/sfx/cry00_4.asm
+++ b/audio/sfx/cry00_4.asm
@@ -5,7 +5,6 @@ SFX_Cry00_4_Ch5:
square_note 8, 9, 1, 1880
sound_ret
-
SFX_Cry00_4_Ch6:
duty_cycle_pattern 2, 2, 0, 0
square_note 5, 11, 3, 1800
@@ -13,7 +12,6 @@ SFX_Cry00_4_Ch6:
square_note 8, 7, 1, 1864
sound_ret
-
SFX_Cry00_4_Ch8:
noise_note 3, 10, 1, 28
noise_note 14, 9, 4, 44
diff --git a/audio/sfx/cry01_4.asm b/audio/sfx/cry01_4.asm
index 98824d06..fd4d6674 100644
--- a/audio/sfx/cry01_4.asm
+++ b/audio/sfx/cry01_4.asm
@@ -6,7 +6,6 @@ SFX_Cry01_4_Ch5:
square_note 8, 13, 1, 1808
sound_ret
-
SFX_Cry01_4_Ch6:
duty_cycle_pattern 1, 1, 2, 2
square_note 5, 11, 3, 1777
@@ -15,7 +14,6 @@ SFX_Cry01_4_Ch6:
square_note 8, 11, 1, 1537
sound_ret
-
SFX_Cry01_4_Ch8:
noise_note 3, 10, 2, 60
noise_note 12, 9, 4, 44
diff --git a/audio/sfx/cry02_4.asm b/audio/sfx/cry02_4.asm
index aed17087..f4160af2 100644
--- a/audio/sfx/cry02_4.asm
+++ b/audio/sfx/cry02_4.asm
@@ -5,13 +5,11 @@ SFX_Cry02_4_Ch5:
square_note 8, 13, 1, 1500
sound_ret
-
SFX_Cry02_4_Ch6:
duty_cycle_pattern 2, 2, 1, 1
square_note 7, 9, 5, 1089
square_note 2, 8, 1, 1313
square_note 8, 6, 1, 1306
-
SFX_Cry02_4_Ch8:
sound_ret
diff --git a/audio/sfx/cry03_4.asm b/audio/sfx/cry03_4.asm
index b4de22ce..c261f391 100644
--- a/audio/sfx/cry03_4.asm
+++ b/audio/sfx/cry03_4.asm
@@ -9,7 +9,6 @@ SFX_Cry03_4_Ch5:
square_note 8, 14, 1, 1408
sound_ret
-
SFX_Cry03_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 4, 12, 7, 1284
@@ -21,7 +20,6 @@ SFX_Cry03_4_Ch6:
square_note 8, 12, 1, 1154
sound_ret
-
SFX_Cry03_4_Ch8:
noise_note 12, 14, 4, 76
noise_note 10, 12, 7, 92
diff --git a/audio/sfx/cry04_4.asm b/audio/sfx/cry04_4.asm
index 408ab37a..78101bbd 100644
--- a/audio/sfx/cry04_4.asm
+++ b/audio/sfx/cry04_4.asm
@@ -9,7 +9,6 @@ SFX_Cry04_4_Ch5:
square_note 8, 11, 1, 1552
sound_ret
-
SFX_Cry04_4_Ch6:
duty_cycle_pattern 1, 1, 2, 2
square_note 4, 14, 7, 1537
@@ -21,7 +20,6 @@ SFX_Cry04_4_Ch6:
square_note 8, 10, 1, 1393
sound_ret
-
SFX_Cry04_4_Ch8:
noise_note 7, 13, 6, 92
noise_note 8, 14, 6, 76
diff --git a/audio/sfx/cry05_4.asm b/audio/sfx/cry05_4.asm
index cce656b1..56fe5e02 100644
--- a/audio/sfx/cry05_4.asm
+++ b/audio/sfx/cry05_4.asm
@@ -6,7 +6,6 @@ SFX_Cry05_4_Ch5:
square_note 8, 10, 1, 1376
sound_ret
-
SFX_Cry05_4_Ch6:
duty_cycle_pattern 3, 3, 1, 1
square_note 6, 14, 2, 1154
@@ -14,6 +13,5 @@ SFX_Cry05_4_Ch6:
square_note 6, 11, 2, 1250
square_note 8, 8, 1, 1217
-
SFX_Cry05_4_Ch8:
sound_ret
diff --git a/audio/sfx/cry06_4.asm b/audio/sfx/cry06_4.asm
index 2fbbb161..7c652af2 100644
--- a/audio/sfx/cry06_4.asm
+++ b/audio/sfx/cry06_4.asm
@@ -7,11 +7,9 @@ SFX_Cry06_4_Ch5:
square_note 15, 8, 2, 549
square_note 15, 4, 2, 519
-
SFX_Cry06_4_Ch6:
sound_ret
-
SFX_Cry06_4_Ch8:
noise_note 8, 13, 4, 140
noise_note 4, 14, 2, 156
diff --git a/audio/sfx/cry07_4.asm b/audio/sfx/cry07_4.asm
index 7e44544f..9e177bc4 100644
--- a/audio/sfx/cry07_4.asm
+++ b/audio/sfx/cry07_4.asm
@@ -5,7 +5,6 @@ SFX_Cry07_4_Ch5:
square_note 8, 12, 1, 1568
sound_ret
-
SFX_Cry07_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 3, 12, 3, 1667
@@ -13,7 +12,6 @@ SFX_Cry07_4_Ch6:
square_note 8, 10, 1, 1537
sound_ret
-
SFX_Cry07_4_Ch8:
noise_note 4, 13, 3, 92
noise_note 15, 14, 6, 76
diff --git a/audio/sfx/cry08_4.asm b/audio/sfx/cry08_4.asm
index 67dcb820..0d96dffa 100644
--- a/audio/sfx/cry08_4.asm
+++ b/audio/sfx/cry08_4.asm
@@ -6,7 +6,6 @@ SFX_Cry08_4_Ch5:
square_note 15, 11, 2, 1340
sound_ret
-
SFX_Cry08_4_Ch6:
duty_cycle_pattern 1, 1, 2, 2
square_note 14, 13, 6, 1283
@@ -15,7 +14,6 @@ SFX_Cry08_4_Ch6:
square_note 15, 10, 2, 1243
sound_ret
-
SFX_Cry08_4_Ch8:
noise_note 12, 14, 6, 76
noise_note 11, 13, 7, 92
diff --git a/audio/sfx/cry09_4.asm b/audio/sfx/cry09_4.asm
index 7dec80d3..ebfae572 100644
--- a/audio/sfx/cry09_4.asm
+++ b/audio/sfx/cry09_4.asm
@@ -9,7 +9,6 @@ SFX_Cry09_4_Ch5:
square_note 15, 15, 2, 2008
sound_ret
-
SFX_Cry09_4_Ch6:
duty_cycle_pattern 0, 0, 1, 1
square_note 2, 0, 8, 0
@@ -22,7 +21,6 @@ SFX_Cry09_4_Ch6:
square_note 15, 10, 2, 1751
sound_ret
-
SFX_Cry09_4_Ch8:
noise_note 2, 15, 2, 60
noise_note 8, 14, 4, 62
diff --git a/audio/sfx/cry0a_4.asm b/audio/sfx/cry0a_4.asm
index c3cf315b..afb84c11 100644
--- a/audio/sfx/cry0a_4.asm
+++ b/audio/sfx/cry0a_4.asm
@@ -9,7 +9,6 @@ SFX_Cry0A_4_Ch5:
square_note 15, 10, 2, 1736
sound_ret
-
SFX_Cry0A_4_Ch6:
duty_cycle_pattern 0, 0, 1, 1
square_note 3, 0, 8, 0
@@ -22,7 +21,6 @@ SFX_Cry0A_4_Ch6:
square_note 15, 7, 2, 1673
sound_ret
-
SFX_Cry0A_4_Ch8:
noise_note 2, 15, 2, 60
noise_note 8, 14, 4, 62
diff --git a/audio/sfx/cry0b_4.asm b/audio/sfx/cry0b_4.asm
index 610e2831..c092bf9d 100644
--- a/audio/sfx/cry0b_4.asm
+++ b/audio/sfx/cry0b_4.asm
@@ -12,7 +12,6 @@ SFX_Cry0B_4_Ch5:
square_note 8, 11, 1, 1857
sound_ret
-
SFX_Cry0B_4_Ch6:
duty_cycle_pattern 1, 0, 1, 0
square_note 12, 0, 8, 0
@@ -24,7 +23,6 @@ SFX_Cry0B_4_Ch6:
square_note 8, 13, 1, 1793
sound_ret
-
SFX_Cry0B_4_Ch8:
noise_note 15, 0, 8, 0
noise_note 4, 0, 8, 0
diff --git a/audio/sfx/cry0c_4.asm b/audio/sfx/cry0c_4.asm
index cc8766a1..cfbe581d 100644
--- a/audio/sfx/cry0c_4.asm
+++ b/audio/sfx/cry0c_4.asm
@@ -11,7 +11,6 @@ SFX_Cry0C_4_Ch5:
square_note 8, 12, 1, 1568
sound_ret
-
SFX_Cry0C_4_Ch6:
duty_cycle_pattern 1, 0, 1, 0
square_note 12, 12, 3, 1472
@@ -24,6 +23,5 @@ SFX_Cry0C_4_Ch6:
square_note 2, 9, 1, 1497
square_note 8, 9, 1, 1505
-
SFX_Cry0C_4_Ch8:
sound_ret
diff --git a/audio/sfx/cry0d_4.asm b/audio/sfx/cry0d_4.asm
index 2119f0a9..f48cadff 100644
--- a/audio/sfx/cry0d_4.asm
+++ b/audio/sfx/cry0d_4.asm
@@ -9,7 +9,6 @@ SFX_Cry0D_4_Ch5:
sound_loop 2, SFX_Cry0D_4_Ch5
sound_ret
-
SFX_Cry0D_4_Ch6:
duty_cycle_pattern 1, 0, 0, 0
square_note 4, 0, 8, 0
@@ -25,7 +24,6 @@ SFX_Cry0D_4_Ch6:
square_note 4, 13, 1, 1569
sound_ret
-
SFX_Cry0D_4_Ch8:
noise_note 6, 13, 2, 28
noise_note 9, 11, 1, 44
diff --git a/audio/sfx/cry0e_4.asm b/audio/sfx/cry0e_4.asm
index 0c18e996..975c1296 100644
--- a/audio/sfx/cry0e_4.asm
+++ b/audio/sfx/cry0e_4.asm
@@ -6,7 +6,6 @@ SFX_Cry0E_4_Ch5:
square_note 8, 14, 1, 1536
sound_ret
-
SFX_Cry0E_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 4, 11, 1, 1761
@@ -15,7 +14,6 @@ SFX_Cry0E_4_Ch6:
square_note 8, 11, 1, 1505
sound_ret
-
SFX_Cry0E_4_Ch8:
noise_note 2, 6, 1, 50
noise_note 2, 6, 1, 33
diff --git a/audio/sfx/cry0f_4.asm b/audio/sfx/cry0f_4.asm
index 6debdb09..bf72ccb9 100644
--- a/audio/sfx/cry0f_4.asm
+++ b/audio/sfx/cry0f_4.asm
@@ -8,7 +8,6 @@ SFX_Cry0F_4_Ch5:
square_note 8, 12, 1, 1600
sound_ret
-
SFX_Cry0F_4_Ch6:
duty_cycle_pattern 3, 0, 3, 0
square_note 3, 12, 7, 1921
@@ -19,7 +18,6 @@ SFX_Cry0F_4_Ch6:
square_note 8, 10, 1, 1538
sound_ret
-
SFX_Cry0F_4_Ch8:
noise_note 3, 14, 4, 60
noise_note 12, 13, 6, 44
diff --git a/audio/sfx/cry10_4.asm b/audio/sfx/cry10_4.asm
index 39c374bc..c8f2e1e0 100644
--- a/audio/sfx/cry10_4.asm
+++ b/audio/sfx/cry10_4.asm
@@ -10,7 +10,6 @@ SFX_Cry10_4_Ch5:
square_note 15, 9, 1, 1824
sound_ret
-
SFX_Cry10_4_Ch6:
duty_cycle_pattern 1, 3, 2, 1
square_note 10, 14, 7, 1666
@@ -23,7 +22,6 @@ SFX_Cry10_4_Ch6:
square_note 15, 8, 1, 1826
sound_ret
-
SFX_Cry10_4_Ch8:
noise_note 4, 7, 4, 33
noise_note 4, 7, 4, 16
diff --git a/audio/sfx/cry11_4.asm b/audio/sfx/cry11_4.asm
index 8e75ec6a..bfff3feb 100644
--- a/audio/sfx/cry11_4.asm
+++ b/audio/sfx/cry11_4.asm
@@ -9,7 +9,6 @@ SFX_Cry11_4_Ch5:
square_note 8, 11, 1, 1840
sound_ret
-
SFX_Cry11_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 4, 0, 8, 0
@@ -22,7 +21,6 @@ SFX_Cry11_4_Ch6:
square_note 8, 7, 1, 1752
sound_ret
-
SFX_Cry11_4_Ch8:
noise_note 2, 15, 2, 76
noise_note 6, 14, 6, 58
diff --git a/audio/sfx/cry12_4.asm b/audio/sfx/cry12_4.asm
index 0c98bdee..478245b8 100644
--- a/audio/sfx/cry12_4.asm
+++ b/audio/sfx/cry12_4.asm
@@ -6,7 +6,6 @@ SFX_Cry12_4_Ch5:
square_note 8, 13, 1, 1152
sound_ret
-
SFX_Cry12_4_Ch6:
duty_cycle_pattern 3, 2, 3, 2
square_note 11, 13, 2, 1080
@@ -15,7 +14,6 @@ SFX_Cry12_4_Ch6:
square_note 8, 11, 1, 1144
sound_ret
-
SFX_Cry12_4_Ch8:
noise_note 10, 14, 6, 108
noise_note 15, 13, 2, 92
diff --git a/audio/sfx/cry13_4.asm b/audio/sfx/cry13_4.asm
index 649e1a73..f8fa39a8 100644
--- a/audio/sfx/cry13_4.asm
+++ b/audio/sfx/cry13_4.asm
@@ -8,7 +8,6 @@ SFX_Cry13_4_Ch5:
square_note 8, 11, 1, 1536
sound_ret
-
SFX_Cry13_4_Ch6:
duty_cycle_pattern 2, 1, 2, 1
square_note 14, 12, 6, 1201
@@ -19,7 +18,6 @@ SFX_Cry13_4_Ch6:
square_note 8, 9, 1, 1265
sound_ret
-
SFX_Cry13_4_Ch8:
noise_note 10, 14, 6, 92
noise_note 10, 13, 6, 108
diff --git a/audio/sfx/cry14_4.asm b/audio/sfx/cry14_4.asm
index b3dc1b2d..0cddc4f0 100644
--- a/audio/sfx/cry14_4.asm
+++ b/audio/sfx/cry14_4.asm
@@ -5,7 +5,6 @@ SFX_Cry14_4_Ch5:
square_note 8, 13, 1, 2008
sound_ret
-
SFX_Cry14_4_Ch6:
duty_cycle_pattern 2, 2, 1, 1
square_note 10, 12, 4, 1905
@@ -13,7 +12,6 @@ SFX_Cry14_4_Ch6:
square_note 8, 10, 1, 1975
sound_ret
-
SFX_Cry14_4_Ch8:
noise_note 8, 14, 4, 76
noise_note 14, 12, 4, 60
diff --git a/audio/sfx/cry15_4.asm b/audio/sfx/cry15_4.asm
index 7764d751..7ebaad94 100644
--- a/audio/sfx/cry15_4.asm
+++ b/audio/sfx/cry15_4.asm
@@ -8,7 +8,6 @@ SFX_Cry15_4_Ch5:
square_note 8, 12, 1, 1760
sound_ret
-
SFX_Cry15_4_Ch6:
duty_cycle_pattern 1, 1, 2, 2
square_note 6, 12, 3, 1793
@@ -19,7 +18,6 @@ SFX_Cry15_4_Ch6:
square_note 8, 10, 1, 1633
sound_ret
-
SFX_Cry15_4_Ch8:
noise_note 6, 14, 3, 92
noise_note 14, 13, 6, 76
diff --git a/audio/sfx/cry16_4.asm b/audio/sfx/cry16_4.asm
index 35ddd284..a0190bea 100644
--- a/audio/sfx/cry16_4.asm
+++ b/audio/sfx/cry16_4.asm
@@ -5,7 +5,6 @@ SFX_Cry16_4_Ch5:
square_note 15, 13, 2, 1856
sound_ret
-
SFX_Cry16_4_Ch6:
duty_cycle_pattern 1, 1, 2, 2
square_note 15, 12, 7, 1875
@@ -13,7 +12,6 @@ SFX_Cry16_4_Ch6:
square_note 15, 12, 2, 1809
sound_ret
-
SFX_Cry16_4_Ch8:
noise_note 13, 15, 6, 76
noise_note 4, 14, 6, 60
diff --git a/audio/sfx/cry17_4.asm b/audio/sfx/cry17_4.asm
index a5c8de8e..695060dc 100644
--- a/audio/sfx/cry17_4.asm
+++ b/audio/sfx/cry17_4.asm
@@ -6,7 +6,6 @@ SFX_Cry17_4_Ch5:
square_note 15, 10, 2, 1120
sound_ret
-
SFX_Cry17_4_Ch6:
duty_cycle_pattern 1, 0, 1, 0
square_note 14, 13, 7, 1153
@@ -15,7 +14,6 @@ SFX_Cry17_4_Ch6:
square_note 15, 12, 2, 993
sound_ret
-
SFX_Cry17_4_Ch8:
noise_note 14, 15, 7, 124
noise_note 12, 15, 6, 108
diff --git a/audio/sfx/cry18_4.asm b/audio/sfx/cry18_4.asm
index 2909234a..f8f0535a 100644
--- a/audio/sfx/cry18_4.asm
+++ b/audio/sfx/cry18_4.asm
@@ -10,7 +10,6 @@ SFX_Cry18_4_Ch5:
square_note 8, 12, 1, 1696
sound_ret
-
SFX_Cry18_4_Ch6:
duty_cycle_pattern 0, 0, 3, 3
square_note 9, 13, 5, 1585
@@ -23,7 +22,6 @@ SFX_Cry18_4_Ch6:
square_note 8, 11, 1, 1617
sound_ret
-
SFX_Cry18_4_Ch8:
noise_note 6, 14, 3, 76
noise_note 4, 12, 3, 60
diff --git a/audio/sfx/cry19_4.asm b/audio/sfx/cry19_4.asm
index 0deaf3e3..18501479 100644
--- a/audio/sfx/cry19_4.asm
+++ b/audio/sfx/cry19_4.asm
@@ -5,7 +5,6 @@ SFX_Cry19_4_Ch5:
square_note 15, 12, 1, 1840
sound_ret
-
SFX_Cry19_4_Ch6:
duty_cycle_pattern 2, 0, 0, 1
square_note 2, 12, 2, 1793
@@ -13,6 +12,5 @@ SFX_Cry19_4_Ch6:
square_note 15, 13, 7, 1857
square_note 15, 10, 2, 1793
-
SFX_Cry19_4_Ch8:
sound_ret
diff --git a/audio/sfx/cry1a_4.asm b/audio/sfx/cry1a_4.asm
index 1a1856e7..86e1ff52 100644
--- a/audio/sfx/cry1a_4.asm
+++ b/audio/sfx/cry1a_4.asm
@@ -8,7 +8,6 @@ SFX_Cry1A_4_Ch5:
square_note 8, 13, 1, 1952
sound_ret
-
SFX_Cry1A_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 6, 12, 7, 1793
@@ -19,7 +18,6 @@ SFX_Cry1A_4_Ch6:
square_note 8, 9, 1, 1890
sound_ret
-
SFX_Cry1A_4_Ch8:
noise_note 3, 14, 2, 60
noise_note 8, 13, 6, 76
diff --git a/audio/sfx/cry1b_4.asm b/audio/sfx/cry1b_4.asm
index f0a57d88..22917735 100644
--- a/audio/sfx/cry1b_4.asm
+++ b/audio/sfx/cry1b_4.asm
@@ -7,7 +7,6 @@ SFX_Cry1B_4_Ch5:
square_note 8, 13, 1, 1744
sound_ret
-
SFX_Cry1B_4_Ch6:
duty_cycle_pattern 0, 0, 2, 2
square_note 7, 14, 6, 1665
@@ -17,7 +16,6 @@ SFX_Cry1B_4_Ch6:
square_note 8, 12, 1, 1681
sound_ret
-
SFX_Cry1B_4_Ch8:
noise_note 10, 10, 6, 60
noise_note 14, 9, 4, 44
diff --git a/audio/sfx/cry1c_4.asm b/audio/sfx/cry1c_4.asm
index 2df760db..2792c227 100644
--- a/audio/sfx/cry1c_4.asm
+++ b/audio/sfx/cry1c_4.asm
@@ -10,7 +10,6 @@ SFX_Cry1C_4_Ch5:
square_note 8, 10, 1, 2015
sound_ret
-
SFX_Cry1C_4_Ch6:
duty_cycle_pattern 1, 0, 1, 0
square_note 6, 12, 3, 1993
@@ -21,7 +20,6 @@ SFX_Cry1C_4_Ch6:
square_note 15, 10, 2, 1989
sound_ret
-
SFX_Cry1C_4_Ch8:
noise_note 13, 1, -1, 124
noise_note 13, 15, 7, 140
diff --git a/audio/sfx/cry1d_4.asm b/audio/sfx/cry1d_4.asm
index 52f4f474..de923afd 100644
--- a/audio/sfx/cry1d_4.asm
+++ b/audio/sfx/cry1d_4.asm
@@ -8,7 +8,6 @@ SFX_Cry1D_4_Ch5:
square_note 8, 10, 1, 1572
sound_ret
-
SFX_Cry1D_4_Ch6:
duty_cycle_pattern 0, 2, 0, 2
square_note 15, 11, 0, 1731
@@ -19,7 +18,6 @@ SFX_Cry1D_4_Ch6:
square_note 8, 6, 1, 1512
sound_ret
-
SFX_Cry1D_4_Ch8:
noise_note 6, 14, 6, 76
noise_note 15, 13, 6, 60
diff --git a/audio/sfx/cry1e_4.asm b/audio/sfx/cry1e_4.asm
index 70bbc648..57fd5bea 100644
--- a/audio/sfx/cry1e_4.asm
+++ b/audio/sfx/cry1e_4.asm
@@ -10,7 +10,6 @@ SFX_Cry1E_4_Ch5:
square_note 8, 10, 1, 1984
sound_ret
-
SFX_Cry1E_4_Ch6:
duty_cycle_pattern 0, 1, 0, 1
square_note 3, 0, 8, 1
@@ -24,7 +23,6 @@ SFX_Cry1E_4_Ch6:
square_note 8, 8, 1, 1921
sound_ret
-
SFX_Cry1E_4_Ch8:
noise_note 6, 0, 8, 1
noise_note 5, 14, 2, 92
diff --git a/audio/sfx/cry1f_4.asm b/audio/sfx/cry1f_4.asm
index b0c843f2..f18364e3 100644
--- a/audio/sfx/cry1f_4.asm
+++ b/audio/sfx/cry1f_4.asm
@@ -6,7 +6,6 @@ SFX_Cry1F_4_Ch5:
square_note 8, 12, 1, 1818
sound_ret
-
SFX_Cry1F_4_Ch6:
duty_cycle_pattern 3, 0, 3, 0
square_note 4, 15, 4, 1408
@@ -15,7 +14,6 @@ SFX_Cry1F_4_Ch6:
square_note 8, 13, 1, 1756
sound_ret
-
SFX_Cry1F_4_Ch8:
noise_note 5, 12, 4, 70
noise_note 13, 10, 5, 68
diff --git a/audio/sfx/cry20_4.asm b/audio/sfx/cry20_4.asm
index 858fe171..c14bfae3 100644
--- a/audio/sfx/cry20_4.asm
+++ b/audio/sfx/cry20_4.asm
@@ -6,7 +6,6 @@ SFX_Cry20_4_Ch5:
square_note 8, 13, 1, 1297
sound_ret
-
SFX_Cry20_4_Ch6:
duty_cycle_pattern 0, 1, 1, 1
square_note 12, 14, 1, 1292
@@ -15,7 +14,6 @@ SFX_Cry20_4_Ch6:
square_note 8, 12, 1, 1290
sound_ret
-
SFX_Cry20_4_Ch8:
noise_note 14, 15, 2, 101
noise_note 13, 14, 2, 85
diff --git a/audio/sfx/cry21_4.asm b/audio/sfx/cry21_4.asm
index bc720c10..85e07050 100644
--- a/audio/sfx/cry21_4.asm
+++ b/audio/sfx/cry21_4.asm
@@ -10,7 +10,6 @@ SFX_Cry21_4_Ch5:
square_note 8, 13, 1, 1282
sound_ret
-
SFX_Cry21_4_Ch6:
duty_cycle_pattern 3, 0, 3, 0
square_note 3, 13, 3, 1376
@@ -22,6 +21,5 @@ SFX_Cry21_4_Ch6:
square_note 3, 12, 4, 1248
square_note 8, 12, 1, 1280
-
SFX_Cry21_4_Ch8:
sound_ret
diff --git a/audio/sfx/cry22_4.asm b/audio/sfx/cry22_4.asm
index e27f0770..0a0c6c32 100644
--- a/audio/sfx/cry22_4.asm
+++ b/audio/sfx/cry22_4.asm
@@ -6,7 +6,6 @@ SFX_Cry22_4_Ch5:
square_note 8, 9, 1, 897
sound_ret
-
SFX_Cry22_4_Ch6:
duty_cycle_pattern 3, 2, 3, 2
square_note 2, 3, -6, 1456
@@ -15,7 +14,6 @@ SFX_Cry22_4_Ch6:
square_note 8, 6, 1, 1456
sound_ret
-
SFX_Cry22_4_Ch8:
noise_note 2, 9, 2, 73
noise_note 7, 11, 5, 41
diff --git a/audio/sfx/cry23_4.asm b/audio/sfx/cry23_4.asm
index 7e087dd2..e4dcb242 100644
--- a/audio/sfx/cry23_4.asm
+++ b/audio/sfx/cry23_4.asm
@@ -7,7 +7,6 @@ SFX_Cry23_4_Ch5:
square_note 8, 12, 1, 1984
sound_ret
-
SFX_Cry23_4_Ch6:
duty_cycle_pattern 1, 1, 3, 3
square_note 15, 9, 7, 1921
@@ -16,7 +15,6 @@ SFX_Cry23_4_Ch6:
square_note 15, 8, 3, 1921
sound_ret
-
SFX_Cry23_4_Ch8:
noise_note 3, 15, 2, 60
noise_note 13, 14, 6, 44
diff --git a/audio/sfx/cry24_4.asm b/audio/sfx/cry24_4.asm
index e08d59f4..a70aafdd 100644
--- a/audio/sfx/cry24_4.asm
+++ b/audio/sfx/cry24_4.asm
@@ -10,7 +10,6 @@ SFX_Cry24_4_Ch5:
square_note 8, 12, 1, 1600
sound_ret
-
SFX_Cry24_4_Ch6:
duty_cycle_pattern 0, 0, 1, 1
square_note 15, 11, 7, 1601
@@ -23,7 +22,6 @@ SFX_Cry24_4_Ch6:
square_note 8, 7, 1, 1537
sound_ret
-
SFX_Cry24_4_Ch8:
noise_note 15, 14, 4, 60
noise_note 10, 12, 7, 76
diff --git a/audio/sfx/cry25_4.asm b/audio/sfx/cry25_4.asm
index 02af0c0a..f75663ee 100644
--- a/audio/sfx/cry25_4.asm
+++ b/audio/sfx/cry25_4.asm
@@ -7,7 +7,6 @@ SFX_Cry25_4_Ch5:
square_note 8, 13, 1, 1872
sound_ret
-
SFX_Cry25_4_Ch6:
duty_cycle_pattern 1, 3, 1, 3
square_note 6, 12, 3, 1810
@@ -17,7 +16,6 @@ SFX_Cry25_4_Ch6:
square_note 8, 11, 1, 1842
sound_ret
-
SFX_Cry25_4_Ch8:
noise_note 8, 13, 6, 44
noise_note 12, 12, 6, 60
diff --git a/audio/sfx/get_item1_4.asm b/audio/sfx/get_item1_4.asm
index 3fc984c5..d8900a40 100644
--- a/audio/sfx/get_item1_4.asm
+++ b/audio/sfx/get_item1_4.asm
@@ -15,7 +15,6 @@ SFX_Get_Item1_4_Ch5:
note E_, 4
sound_ret
-
SFX_Get_Item1_4_Ch6:
execute_music
vibrato 8, 2, 7
@@ -29,7 +28,6 @@ SFX_Get_Item1_4_Ch6:
note B_, 4
sound_ret
-
SFX_Get_Item1_4_Ch7:
execute_music
note_type 4, 1, 0
diff --git a/audio/sfx/get_item1_4_2.asm b/audio/sfx/get_item1_4_2.asm
index f2889b62..52c75cd4 100644
--- a/audio/sfx/get_item1_4_2.asm
+++ b/audio/sfx/get_item1_4_2.asm
@@ -15,7 +15,6 @@ SFX_Get_Item1_4_2_Ch5:
note E_, 4
sound_ret
-
SFX_Get_Item1_4_2_Ch6:
execute_music
vibrato 8, 2, 7
@@ -29,7 +28,6 @@ SFX_Get_Item1_4_2_Ch6:
note B_, 4
sound_ret
-
SFX_Get_Item1_4_2_Ch8:
execute_music
note_type 4, 1, 0
diff --git a/audio/sfx/get_item2_4.asm b/audio/sfx/get_item2_4.asm
index 33681fb2..fe414241 100644
--- a/audio/sfx/get_item2_4.asm
+++ b/audio/sfx/get_item2_4.asm
@@ -24,7 +24,6 @@ SFX_Get_Item2_4_Ch5:
note C_, 8
sound_ret
-
SFX_Get_Item2_4_Ch6:
execute_music
vibrato 8, 2, 7
@@ -45,7 +44,6 @@ SFX_Get_Item2_4_Ch6:
note A_, 8
sound_ret
-
SFX_Get_Item2_4_Ch7:
execute_music
note_type 5, 1, 0
diff --git a/audio/sfx/get_item2_4_2.asm b/audio/sfx/get_item2_4_2.asm
index 04ca9f21..0ce0a66e 100644
--- a/audio/sfx/get_item2_4_2.asm
+++ b/audio/sfx/get_item2_4_2.asm
@@ -24,7 +24,6 @@ SFX_Get_Item2_4_2_Ch5:
note C_, 8
sound_ret
-
SFX_Get_Item2_4_2_Ch6:
execute_music
vibrato 8, 2, 7
@@ -45,7 +44,6 @@ SFX_Get_Item2_4_2_Ch6:
note A_, 8
sound_ret
-
SFX_Get_Item2_4_2_Ch7:
execute_music
note_type 5, 1, 0
diff --git a/audio/sfx/swap_2.asm b/audio/sfx/swap_2.asm
index 51d0f273..c9459a76 100644
--- a/audio/sfx/swap_2.asm
+++ b/audio/sfx/swap_2.asm
@@ -3,7 +3,6 @@ SFX_Swap_2_Ch5:
square_note 8, 14, 1, 1856
sound_ret
-
SFX_Swap_2_Ch6:
duty_cycle 2
square_note 2, 0, 8, 0
diff --git a/audio/sfx/unused_cry_4.asm b/audio/sfx/unused_cry_4.asm
index 72e534aa..2221e5f4 100644
--- a/audio/sfx/unused_cry_4.asm
+++ b/audio/sfx/unused_cry_4.asm
@@ -9,7 +9,6 @@ SFX_UnusedCry_4_Ch5: ; unreferenced
square_note 8, 7, 1, 1924
sound_ret
-
SFX_UnusedCry_4_Ch6: ; unreferenced
duty_cycle_pattern 0, 0, 1, 1
square_note 15, 10, 0, 1857
@@ -20,7 +19,6 @@ SFX_UnusedCry_4_Ch6: ; unreferenced
square_note 8, 3, 1, 1862
sound_ret
-
SFX_UnusedCry_4_Ch8: ; unreferenced
noise_note 2, 15, 2, 76
noise_note 6, 14, 0, 58
diff --git a/audio/wave_instruments.asm b/audio/wave_samples.asm
index 842fafd9..842fafd9 100644
--- a/audio/wave_instruments.asm
+++ b/audio/wave_samples.asm
diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm
index 1fbc2bc0..5cecedf3 100644
--- a/constants/audio_constants.asm
+++ b/constants/audio_constants.asm
@@ -19,15 +19,15 @@ DEF NUM_NOTES EQU const_value
; Audio[1|2|3]_HWChannelBaseAddresses, Audio[1|2|3]_HWChannelDisableMasks,
; and Audio[1|2|3]_HWChannelEnableMasks indexes (see audio/engine_[1|2|3].asm)
const_def
- const Ch1 ; 0
- const Ch2 ; 1
- const Ch3 ; 2
- const Ch4 ; 3
+ const CHAN1 ; 0
+ const CHAN2 ; 1
+ const CHAN3 ; 2
+ const CHAN4 ; 3
DEF NUM_MUSIC_CHANS EQU const_value
- const Ch5 ; 4
- const Ch6 ; 5
- const Ch7 ; 6
- const Ch8 ; 7
+ const CHAN5 ; 4
+ const CHAN6 ; 5
+ const CHAN7 ; 6
+ const CHAN8 ; 7
DEF NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
DEF NUM_CHANNELS EQU const_value
diff --git a/constants/map_constants.asm b/constants/map_constants.asm
index 8d973c8e..cf23caa7 100644
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -1,7 +1,7 @@
-MACRO mapconst
+MACRO map_const
const \1
- DEF \1_HEIGHT EQU \2
- DEF \1_WIDTH EQU \3
+ DEF \1_WIDTH EQU \2
+ DEF \1_HEIGHT EQU \3
ENDM
; map ids
@@ -16,258 +16,258 @@ ENDM
; Each map also has associated data in maps.asm.
; Order: towns/cities, then routes, then indoor/dungeon maps
const_def
- mapconst PALLET_TOWN, 9, 10 ; $00
- mapconst VIRIDIAN_CITY, 18, 20 ; $01
- mapconst PEWTER_CITY, 18, 20 ; $02
- mapconst CERULEAN_CITY, 18, 20 ; $03
- mapconst LAVENDER_TOWN, 9, 10 ; $04
- mapconst VERMILION_CITY, 18, 20 ; $05
- mapconst CELADON_CITY, 18, 25 ; $06
- mapconst FUCHSIA_CITY, 18, 20 ; $07
- mapconst CINNABAR_ISLAND, 9, 10 ; $08
- mapconst INDIGO_PLATEAU, 9, 10 ; $09
- mapconst SAFFRON_CITY, 18, 20 ; $0A
+ map_const PALLET_TOWN, 10, 9 ; $00
+ map_const VIRIDIAN_CITY, 20, 18 ; $01
+ map_const PEWTER_CITY, 20, 18 ; $02
+ map_const CERULEAN_CITY, 20, 18 ; $03
+ map_const LAVENDER_TOWN, 10, 9 ; $04
+ map_const VERMILION_CITY, 20, 18 ; $05
+ map_const CELADON_CITY, 25, 18 ; $06
+ map_const FUCHSIA_CITY, 20, 18 ; $07
+ map_const CINNABAR_ISLAND, 10, 9 ; $08
+ map_const INDIGO_PLATEAU, 10, 9 ; $09
+ map_const SAFFRON_CITY, 20, 18 ; $0A
DEF NUM_CITY_MAPS EQU const_value
- mapconst UNUSED_MAP_0B, 0, 0 ; $0B
+ map_const UNUSED_MAP_0B, 0, 0 ; $0B
DEF FIRST_ROUTE_MAP EQU const_value
- mapconst ROUTE_1, 18, 10 ; $0C
- mapconst ROUTE_2, 36, 10 ; $0D
- mapconst ROUTE_3, 9, 35 ; $0E
- mapconst ROUTE_4, 9, 45 ; $0F
- mapconst ROUTE_5, 18, 10 ; $10
- mapconst ROUTE_6, 18, 10 ; $11
- mapconst ROUTE_7, 9, 10 ; $12
- mapconst ROUTE_8, 9, 30 ; $13
- mapconst ROUTE_9, 9, 30 ; $14
- mapconst ROUTE_10, 36, 10 ; $15
- mapconst ROUTE_11, 9, 30 ; $16
- mapconst ROUTE_12, 54, 10 ; $17
- mapconst ROUTE_13, 9, 30 ; $18
- mapconst ROUTE_14, 27, 10 ; $19
- mapconst ROUTE_15, 9, 30 ; $1A
- mapconst ROUTE_16, 9, 20 ; $1B
- mapconst ROUTE_17, 72, 10 ; $1C
- mapconst ROUTE_18, 9, 25 ; $1D
- mapconst ROUTE_19, 27, 10 ; $1E
- mapconst ROUTE_20, 9, 50 ; $1F
- mapconst ROUTE_21, 45, 10 ; $20
- mapconst ROUTE_22, 9, 20 ; $21
- mapconst ROUTE_23, 72, 10 ; $22
- mapconst ROUTE_24, 18, 10 ; $23
- mapconst ROUTE_25, 9, 30 ; $24
+ map_const ROUTE_1, 10, 18 ; $0C
+ map_const ROUTE_2, 10, 36 ; $0D
+ map_const ROUTE_3, 35, 9 ; $0E
+ map_const ROUTE_4, 45, 9 ; $0F
+ map_const ROUTE_5, 10, 18 ; $10
+ map_const ROUTE_6, 10, 18 ; $11
+ map_const ROUTE_7, 10, 9 ; $12
+ map_const ROUTE_8, 30, 9 ; $13
+ map_const ROUTE_9, 30, 9 ; $14
+ map_const ROUTE_10, 10, 36 ; $15
+ map_const ROUTE_11, 30, 9 ; $16
+ map_const ROUTE_12, 10, 54 ; $17
+ map_const ROUTE_13, 30, 9 ; $18
+ map_const ROUTE_14, 10, 27 ; $19
+ map_const ROUTE_15, 30, 9 ; $1A
+ map_const ROUTE_16, 20, 9 ; $1B
+ map_const ROUTE_17, 10, 72 ; $1C
+ map_const ROUTE_18, 25, 9 ; $1D
+ map_const ROUTE_19, 10, 27 ; $1E
+ map_const ROUTE_20, 50, 9 ; $1F
+ map_const ROUTE_21, 10, 45 ; $20
+ map_const ROUTE_22, 20, 9 ; $21
+ map_const ROUTE_23, 10, 72 ; $22
+ map_const ROUTE_24, 10, 18 ; $23
+ map_const ROUTE_25, 30, 9 ; $24
DEF FIRST_INDOOR_MAP EQU const_value
- mapconst REDS_HOUSE_1F, 4, 4 ; $25
- mapconst REDS_HOUSE_2F, 4, 4 ; $26
- mapconst BLUES_HOUSE, 4, 4 ; $27
- mapconst OAKS_LAB, 6, 5 ; $28
- mapconst VIRIDIAN_POKECENTER, 4, 7 ; $29
- mapconst VIRIDIAN_MART, 4, 4 ; $2A
- mapconst VIRIDIAN_SCHOOL_HOUSE, 4, 4 ; $2B
- mapconst VIRIDIAN_NICKNAME_HOUSE, 4, 4 ; $2C
- mapconst VIRIDIAN_GYM, 9, 10 ; $2D
- mapconst DIGLETTS_CAVE_ROUTE_2, 4, 4 ; $2E
- mapconst VIRIDIAN_FOREST_NORTH_GATE, 4, 5 ; $2F
- mapconst ROUTE_2_TRADE_HOUSE, 4, 4 ; $30
- mapconst ROUTE_2_GATE, 4, 5 ; $31
- mapconst VIRIDIAN_FOREST_SOUTH_GATE, 4, 5 ; $32
- mapconst VIRIDIAN_FOREST, 24, 17 ; $33
- mapconst MUSEUM_1F, 4, 10 ; $34
- mapconst MUSEUM_2F, 4, 7 ; $35
- mapconst PEWTER_GYM, 7, 5 ; $36
- mapconst PEWTER_NIDORAN_HOUSE, 4, 4 ; $37
- mapconst PEWTER_MART, 4, 4 ; $38
- mapconst PEWTER_SPEECH_HOUSE, 4, 4 ; $39
- mapconst PEWTER_POKECENTER, 4, 7 ; $3A
- mapconst MT_MOON_1F, 18, 20 ; $3B
- mapconst MT_MOON_B1F, 14, 14 ; $3C
- mapconst MT_MOON_B2F, 18, 20 ; $3D
- mapconst CERULEAN_TRASHED_HOUSE, 4, 4 ; $3E
- mapconst CERULEAN_MELANIES_HOUSE, 4, 4 ; $3F
- mapconst CERULEAN_POKECENTER, 4, 7 ; $40
- mapconst CERULEAN_GYM, 7, 5 ; $41
- mapconst BIKE_SHOP, 4, 4 ; $42
- mapconst CERULEAN_MART, 4, 4 ; $43
- mapconst MT_MOON_POKECENTER, 4, 7 ; $44
- mapconst CERULEAN_TRASHED_HOUSE_COPY, 4, 4 ; $45
- mapconst ROUTE_5_GATE, 3, 4 ; $46
- mapconst UNDERGROUND_PATH_ROUTE_5, 4, 4 ; $47
- mapconst DAYCARE, 4, 4 ; $48
- mapconst ROUTE_6_GATE, 3, 4 ; $49
- mapconst UNDERGROUND_PATH_ROUTE_6, 4, 4 ; $4A
- mapconst UNDERGROUND_PATH_ROUTE_6_COPY, 4, 4 ; $4B
- mapconst ROUTE_7_GATE, 4, 3 ; $4C
- mapconst UNDERGROUND_PATH_ROUTE_7, 4, 4 ; $4D
- mapconst UNDERGROUND_PATH_ROUTE_7_COPY, 4, 4 ; $4E
- mapconst ROUTE_8_GATE, 4, 3 ; $4F
- mapconst UNDERGROUND_PATH_ROUTE_8, 4, 4 ; $50
- mapconst ROCK_TUNNEL_POKECENTER, 4, 7 ; $51
- mapconst ROCK_TUNNEL_1F, 18, 20 ; $52
- mapconst POWER_PLANT, 18, 20 ; $53
- mapconst ROUTE_11_GATE_1F, 5, 4 ; $54
- mapconst DIGLETTS_CAVE_ROUTE_11, 4, 4 ; $55
- mapconst ROUTE_11_GATE_2F, 4, 4 ; $56
- mapconst ROUTE_12_GATE_1F, 4, 5 ; $57
- mapconst BILLS_HOUSE, 4, 4 ; $58
- mapconst VERMILION_POKECENTER, 4, 7 ; $59
- mapconst POKEMON_FAN_CLUB, 4, 4 ; $5A
- mapconst VERMILION_MART, 4, 4 ; $5B
- mapconst VERMILION_GYM, 9, 5 ; $5C
- mapconst VERMILION_PIDGEY_HOUSE, 4, 4 ; $5D
- mapconst VERMILION_DOCK, 6, 14 ; $5E
- mapconst SS_ANNE_1F, 9, 20 ; $5F
- mapconst SS_ANNE_2F, 9, 20 ; $60
- mapconst SS_ANNE_3F, 3, 10 ; $61
- mapconst SS_ANNE_B1F, 4, 15 ; $62
- mapconst SS_ANNE_BOW, 7, 10 ; $63
- mapconst SS_ANNE_KITCHEN, 8, 7 ; $64
- mapconst SS_ANNE_CAPTAINS_ROOM, 4, 3 ; $65
- mapconst SS_ANNE_1F_ROOMS, 8, 12 ; $66
- mapconst SS_ANNE_2F_ROOMS, 8, 12 ; $67
- mapconst SS_ANNE_B1F_ROOMS, 8, 12 ; $68
- mapconst UNUSED_MAP_69, 0, 0 ; $69
- mapconst UNUSED_MAP_6A, 0, 0 ; $6A
- mapconst UNUSED_MAP_6B, 0, 0 ; $6B
- mapconst VICTORY_ROAD_1F, 9, 10 ; $6C
- mapconst UNUSED_MAP_6D, 0, 0 ; $6D
- mapconst UNUSED_MAP_6E, 0, 0 ; $6E
- mapconst UNUSED_MAP_6F, 0, 0 ; $6F
- mapconst UNUSED_MAP_70, 0, 0 ; $70
- mapconst LANCES_ROOM, 13, 13 ; $71
- mapconst UNUSED_MAP_72, 0, 0 ; $72
- mapconst UNUSED_MAP_73, 0, 0 ; $73
- mapconst UNUSED_MAP_74, 0, 0 ; $74
- mapconst UNUSED_MAP_75, 0, 0 ; $75
- mapconst HALL_OF_FAME, 4, 5 ; $76
- mapconst UNDERGROUND_PATH_NORTH_SOUTH, 24, 4 ; $77
- mapconst CHAMPIONS_ROOM, 4, 4 ; $78
- mapconst UNDERGROUND_PATH_WEST_EAST, 4, 25 ; $79
- mapconst CELADON_MART_1F, 4, 10 ; $7A
- mapconst CELADON_MART_2F, 4, 10 ; $7B
- mapconst CELADON_MART_3F, 4, 10 ; $7C
- mapconst CELADON_MART_4F, 4, 10 ; $7D
- mapconst CELADON_MART_ROOF, 4, 10 ; $7E
- mapconst CELADON_MART_ELEVATOR, 2, 2 ; $7F
- mapconst CELADON_MANSION_1F, 6, 4 ; $80
- mapconst CELADON_MANSION_2F, 6, 4 ; $81
- mapconst CELADON_MANSION_3F, 6, 4 ; $82
- mapconst CELADON_MANSION_ROOF, 6, 4 ; $83
- mapconst CELADON_MANSION_ROOF_HOUSE, 4, 4 ; $84
- mapconst CELADON_POKECENTER, 4, 7 ; $85
- mapconst CELADON_GYM, 9, 5 ; $86
- mapconst GAME_CORNER, 9, 10 ; $87
- mapconst CELADON_MART_5F, 4, 10 ; $88
- mapconst GAME_CORNER_PRIZE_ROOM, 4, 5 ; $89
- mapconst CELADON_DINER, 4, 5 ; $8A
- mapconst CELADON_CHIEF_HOUSE, 4, 4 ; $8B
- mapconst CELADON_HOTEL, 4, 7 ; $8C
- mapconst LAVENDER_POKECENTER, 4, 7 ; $8D
- mapconst POKEMON_TOWER_1F, 9, 10 ; $8E
- mapconst POKEMON_TOWER_2F, 9, 10 ; $8F
- mapconst POKEMON_TOWER_3F, 9, 10 ; $90
- mapconst POKEMON_TOWER_4F, 9, 10 ; $91
- mapconst POKEMON_TOWER_5F, 9, 10 ; $92
- mapconst POKEMON_TOWER_6F, 9, 10 ; $93
- mapconst POKEMON_TOWER_7F, 9, 10 ; $94
- mapconst MR_FUJIS_HOUSE, 4, 4 ; $95
- mapconst LAVENDER_MART, 4, 4 ; $96
- mapconst LAVENDER_CUBONE_HOUSE, 4, 4 ; $97
- mapconst FUCHSIA_MART, 4, 4 ; $98
- mapconst FUCHSIA_BILLS_GRANDPAS_HOUSE, 4, 4 ; $99
- mapconst FUCHSIA_POKECENTER, 4, 7 ; $9A
- mapconst WARDENS_HOUSE, 4, 5 ; $9B
- mapconst SAFARI_ZONE_GATE, 3, 4 ; $9C
- mapconst FUCHSIA_GYM, 9, 5 ; $9D
- mapconst FUCHSIA_MEETING_ROOM, 4, 7 ; $9E
- mapconst SEAFOAM_ISLANDS_B1F, 9, 15 ; $9F
- mapconst SEAFOAM_ISLANDS_B2F, 9, 15 ; $A0
- mapconst SEAFOAM_ISLANDS_B3F, 9, 15 ; $A1
- mapconst SEAFOAM_ISLANDS_B4F, 9, 15 ; $A2
- mapconst VERMILION_OLD_ROD_HOUSE, 4, 4 ; $A3
- mapconst FUCHSIA_GOOD_ROD_HOUSE, 4, 4 ; $A4
- mapconst POKEMON_MANSION_1F, 14, 15 ; $A5
- mapconst CINNABAR_GYM, 9, 10 ; $A6
- mapconst CINNABAR_LAB, 4, 9 ; $A7
- mapconst CINNABAR_LAB_TRADE_ROOM, 4, 4 ; $A8
- mapconst CINNABAR_LAB_METRONOME_ROOM, 4, 4 ; $A9
- mapconst CINNABAR_LAB_FOSSIL_ROOM, 4, 4 ; $AA
- mapconst CINNABAR_POKECENTER, 4, 7 ; $AB
- mapconst CINNABAR_MART, 4, 4 ; $AC
- mapconst CINNABAR_MART_COPY, 4, 4 ; $AD
- mapconst INDIGO_PLATEAU_LOBBY, 6, 8 ; $AE
- mapconst COPYCATS_HOUSE_1F, 4, 4 ; $AF
- mapconst COPYCATS_HOUSE_2F, 4, 4 ; $B0
- mapconst FIGHTING_DOJO, 6, 5 ; $B1
- mapconst SAFFRON_GYM, 9, 10 ; $B2
- mapconst SAFFRON_PIDGEY_HOUSE, 4, 4 ; $B3
- mapconst SAFFRON_MART, 4, 4 ; $B4
- mapconst SILPH_CO_1F, 9, 15 ; $B5
- mapconst SAFFRON_POKECENTER, 4, 7 ; $B6
- mapconst MR_PSYCHICS_HOUSE, 4, 4 ; $B7
- mapconst ROUTE_15_GATE_1F, 5, 4 ; $B8
- mapconst ROUTE_15_GATE_2F, 4, 4 ; $B9
- mapconst ROUTE_16_GATE_1F, 7, 4 ; $BA
- mapconst ROUTE_16_GATE_2F, 4, 4 ; $BB
- mapconst ROUTE_16_FLY_HOUSE, 4, 4 ; $BC
- mapconst ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; $BD
- mapconst ROUTE_18_GATE_1F, 5, 4 ; $BE
- mapconst ROUTE_18_GATE_2F, 4, 4 ; $BF
- mapconst SEAFOAM_ISLANDS_1F, 9, 15 ; $C0
- mapconst ROUTE_22_GATE, 4, 5 ; $C1
- mapconst VICTORY_ROAD_2F, 9, 15 ; $C2
- mapconst ROUTE_12_GATE_2F, 4, 4 ; $C3
- mapconst VERMILION_TRADE_HOUSE, 4, 4 ; $C4
- mapconst DIGLETTS_CAVE, 18, 20 ; $C5
- mapconst VICTORY_ROAD_3F, 9, 15 ; $C6
- mapconst ROCKET_HIDEOUT_B1F, 14, 15 ; $C7
- mapconst ROCKET_HIDEOUT_B2F, 14, 15 ; $C8
- mapconst ROCKET_HIDEOUT_B3F, 14, 15 ; $C9
- mapconst ROCKET_HIDEOUT_B4F, 12, 15 ; $CA
- mapconst ROCKET_HIDEOUT_ELEVATOR, 4, 3 ; $CB
- mapconst UNUSED_MAP_CC, 0, 0 ; $CC
- mapconst UNUSED_MAP_CD, 0, 0 ; $CD
- mapconst UNUSED_MAP_CE, 0, 0 ; $CE
- mapconst SILPH_CO_2F, 9, 15 ; $CF
- mapconst SILPH_CO_3F, 9, 15 ; $D0
- mapconst SILPH_CO_4F, 9, 15 ; $D1
- mapconst SILPH_CO_5F, 9, 15 ; $D2
- mapconst SILPH_CO_6F, 9, 13 ; $D3
- mapconst SILPH_CO_7F, 9, 13 ; $D4
- mapconst SILPH_CO_8F, 9, 13 ; $D5
- mapconst POKEMON_MANSION_2F, 14, 15 ; $D6
- mapconst POKEMON_MANSION_3F, 9, 15 ; $D7
- mapconst POKEMON_MANSION_B1F, 14, 15 ; $D8
- mapconst SAFARI_ZONE_EAST, 13, 15 ; $D9
- mapconst SAFARI_ZONE_NORTH, 18, 20 ; $DA
- mapconst SAFARI_ZONE_WEST, 13, 15 ; $DB
- mapconst SAFARI_ZONE_CENTER, 13, 15 ; $DC
- mapconst SAFARI_ZONE_CENTER_REST_HOUSE, 4, 4 ; $DD
- mapconst SAFARI_ZONE_SECRET_HOUSE, 4, 4 ; $DE
- mapconst SAFARI_ZONE_WEST_REST_HOUSE, 4, 4 ; $DF
- mapconst SAFARI_ZONE_EAST_REST_HOUSE, 4, 4 ; $E0
- mapconst SAFARI_ZONE_NORTH_REST_HOUSE, 4, 4 ; $E1
- mapconst CERULEAN_CAVE_2F, 9, 15 ; $E2
- mapconst CERULEAN_CAVE_B1F, 9, 15 ; $E3
- mapconst CERULEAN_CAVE_1F, 9, 15 ; $E4
- mapconst NAME_RATERS_HOUSE, 4, 4 ; $E5
- mapconst CERULEAN_BADGE_HOUSE, 4, 4 ; $E6
- mapconst UNUSED_MAP_E7, 0, 0 ; $E7
- mapconst ROCK_TUNNEL_B1F, 18, 20 ; $E8
- mapconst SILPH_CO_9F, 9, 13 ; $E9
- mapconst SILPH_CO_10F, 9, 8 ; $EA
- mapconst SILPH_CO_11F, 9, 9 ; $EB
- mapconst SILPH_CO_ELEVATOR, 2, 2 ; $EC
- mapconst UNUSED_MAP_ED, 0, 0 ; $ED
- mapconst UNUSED_MAP_EE, 0, 0 ; $EE
- mapconst TRADE_CENTER, 4, 5 ; $EF
- mapconst COLOSSEUM, 4, 5 ; $F0
- mapconst UNUSED_MAP_F1, 0, 0 ; $F1
- mapconst UNUSED_MAP_F2, 0, 0 ; $F2
- mapconst UNUSED_MAP_F3, 0, 0 ; $F3
- mapconst UNUSED_MAP_F4, 0, 0 ; $F4
- mapconst LORELEIS_ROOM, 6, 5 ; $F5
- mapconst BRUNOS_ROOM, 6, 5 ; $F6
- mapconst AGATHAS_ROOM, 6, 5 ; $F7
- mapconst SUMMER_BEACH_HOUSE, 4, 7 ; $F8
+ map_const REDS_HOUSE_1F, 4, 4 ; $25
+ map_const REDS_HOUSE_2F, 4, 4 ; $26
+ map_const BLUES_HOUSE, 4, 4 ; $27
+ map_const OAKS_LAB, 5, 6 ; $28
+ map_const VIRIDIAN_POKECENTER, 7, 4 ; $29
+ map_const VIRIDIAN_MART, 4, 4 ; $2A
+ map_const VIRIDIAN_SCHOOL_HOUSE, 4, 4 ; $2B
+ map_const VIRIDIAN_NICKNAME_HOUSE, 4, 4 ; $2C
+ map_const VIRIDIAN_GYM, 10, 9 ; $2D
+ map_const DIGLETTS_CAVE_ROUTE_2, 4, 4 ; $2E
+ map_const VIRIDIAN_FOREST_NORTH_GATE, 5, 4 ; $2F
+ map_const ROUTE_2_TRADE_HOUSE, 4, 4 ; $30
+ map_const ROUTE_2_GATE, 5, 4 ; $31
+ map_const VIRIDIAN_FOREST_SOUTH_GATE, 5, 4 ; $32
+ map_const VIRIDIAN_FOREST, 17, 24 ; $33
+ map_const MUSEUM_1F, 10, 4 ; $34
+ map_const MUSEUM_2F, 7, 4 ; $35
+ map_const PEWTER_GYM, 5, 7 ; $36
+ map_const PEWTER_NIDORAN_HOUSE, 4, 4 ; $37
+ map_const PEWTER_MART, 4, 4 ; $38
+ map_const PEWTER_SPEECH_HOUSE, 4, 4 ; $39
+ map_const PEWTER_POKECENTER, 7, 4 ; $3A
+ map_const MT_MOON_1F, 20, 18 ; $3B
+ map_const MT_MOON_B1F, 14, 14 ; $3C
+ map_const MT_MOON_B2F, 20, 18 ; $3D
+ map_const CERULEAN_TRASHED_HOUSE, 4, 4 ; $3E
+ map_const CERULEAN_MELANIES_HOUSE, 4, 4 ; $3F
+ map_const CERULEAN_POKECENTER, 7, 4 ; $40
+ map_const CERULEAN_GYM, 5, 7 ; $41
+ map_const BIKE_SHOP, 4, 4 ; $42
+ map_const CERULEAN_MART, 4, 4 ; $43
+ map_const MT_MOON_POKECENTER, 7, 4 ; $44
+ map_const CERULEAN_TRASHED_HOUSE_COPY, 4, 4 ; $45
+ map_const ROUTE_5_GATE, 4, 3 ; $46
+ map_const UNDERGROUND_PATH_ROUTE_5, 4, 4 ; $47
+ map_const DAYCARE, 4, 4 ; $48
+ map_const ROUTE_6_GATE, 4, 3 ; $49
+ map_const UNDERGROUND_PATH_ROUTE_6, 4, 4 ; $4A
+ map_const UNDERGROUND_PATH_ROUTE_6_COPY, 4, 4 ; $4B
+ map_const ROUTE_7_GATE, 3, 4 ; $4C
+ map_const UNDERGROUND_PATH_ROUTE_7, 4, 4 ; $4D
+ map_const UNDERGROUND_PATH_ROUTE_7_COPY, 4, 4 ; $4E
+ map_const ROUTE_8_GATE, 3, 4 ; $4F
+ map_const UNDERGROUND_PATH_ROUTE_8, 4, 4 ; $50
+ map_const ROCK_TUNNEL_POKECENTER, 7, 4 ; $51
+ map_const ROCK_TUNNEL_1F, 20, 18 ; $52
+ map_const POWER_PLANT, 20, 18 ; $53
+ map_const ROUTE_11_GATE_1F, 4, 5 ; $54
+ map_const DIGLETTS_CAVE_ROUTE_11, 4, 4 ; $55
+ map_const ROUTE_11_GATE_2F, 4, 4 ; $56
+ map_const ROUTE_12_GATE_1F, 5, 4 ; $57
+ map_const BILLS_HOUSE, 4, 4 ; $58
+ map_const VERMILION_POKECENTER, 7, 4 ; $59
+ map_const POKEMON_FAN_CLUB, 4, 4 ; $5A
+ map_const VERMILION_MART, 4, 4 ; $5B
+ map_const VERMILION_GYM, 5, 9 ; $5C
+ map_const VERMILION_PIDGEY_HOUSE, 4, 4 ; $5D
+ map_const VERMILION_DOCK, 14, 6 ; $5E
+ map_const SS_ANNE_1F, 20, 9 ; $5F
+ map_const SS_ANNE_2F, 20, 9 ; $60
+ map_const SS_ANNE_3F, 10, 3 ; $61
+ map_const SS_ANNE_B1F, 15, 4 ; $62
+ map_const SS_ANNE_BOW, 10, 7 ; $63
+ map_const SS_ANNE_KITCHEN, 7, 8 ; $64
+ map_const SS_ANNE_CAPTAINS_ROOM, 3, 4 ; $65
+ map_const SS_ANNE_1F_ROOMS, 12, 8 ; $66
+ map_const SS_ANNE_2F_ROOMS, 12, 8 ; $67
+ map_const SS_ANNE_B1F_ROOMS, 12, 8 ; $68
+ map_const UNUSED_MAP_69, 0, 0 ; $69
+ map_const UNUSED_MAP_6A, 0, 0 ; $6A
+ map_const UNUSED_MAP_6B, 0, 0 ; $6B
+ map_const VICTORY_ROAD_1F, 10, 9 ; $6C
+ map_const UNUSED_MAP_6D, 0, 0 ; $6D
+ map_const UNUSED_MAP_6E, 0, 0 ; $6E
+ map_const UNUSED_MAP_6F, 0, 0 ; $6F
+ map_const UNUSED_MAP_70, 0, 0 ; $70
+ map_const LANCES_ROOM, 13, 13 ; $71
+ map_const UNUSED_MAP_72, 0, 0 ; $72
+ map_const UNUSED_MAP_73, 0, 0 ; $73
+ map_const UNUSED_MAP_74, 0, 0 ; $74
+ map_const UNUSED_MAP_75, 0, 0 ; $75
+ map_const HALL_OF_FAME, 5, 4 ; $76
+ map_const UNDERGROUND_PATH_NORTH_SOUTH, 4, 24 ; $77 ; UndergroundPathNorthSouth.blk is actually 4x23
+ map_const CHAMPIONS_ROOM, 4, 4 ; $78
+ map_const UNDERGROUND_PATH_WEST_EAST, 25, 4 ; $79
+ map_const CELADON_MART_1F, 10, 4 ; $7A
+ map_const CELADON_MART_2F, 10, 4 ; $7B
+ map_const CELADON_MART_3F, 10, 4 ; $7C
+ map_const CELADON_MART_4F, 10, 4 ; $7D
+ map_const CELADON_MART_ROOF, 10, 4 ; $7E
+ map_const CELADON_MART_ELEVATOR, 2, 2 ; $7F
+ map_const CELADON_MANSION_1F, 4, 6 ; $80
+ map_const CELADON_MANSION_2F, 4, 6 ; $81
+ map_const CELADON_MANSION_3F, 4, 6 ; $82
+ map_const CELADON_MANSION_ROOF, 4, 6 ; $83
+ map_const CELADON_MANSION_ROOF_HOUSE, 4, 4 ; $84
+ map_const CELADON_POKECENTER, 7, 4 ; $85
+ map_const CELADON_GYM, 5, 9 ; $86
+ map_const GAME_CORNER, 10, 9 ; $87
+ map_const CELADON_MART_5F, 10, 4 ; $88
+ map_const GAME_CORNER_PRIZE_ROOM, 5, 4 ; $89
+ map_const CELADON_DINER, 5, 4 ; $8A
+ map_const CELADON_CHIEF_HOUSE, 4, 4 ; $8B
+ map_const CELADON_HOTEL, 7, 4 ; $8C
+ map_const LAVENDER_POKECENTER, 7, 4 ; $8D
+ map_const POKEMON_TOWER_1F, 10, 9 ; $8E
+ map_const POKEMON_TOWER_2F, 10, 9 ; $8F
+ map_const POKEMON_TOWER_3F, 10, 9 ; $90
+ map_const POKEMON_TOWER_4F, 10, 9 ; $91
+ map_const POKEMON_TOWER_5F, 10, 9 ; $92
+ map_const POKEMON_TOWER_6F, 10, 9 ; $93
+ map_const POKEMON_TOWER_7F, 10, 9 ; $94
+ map_const MR_FUJIS_HOUSE, 4, 4 ; $95
+ map_const LAVENDER_MART, 4, 4 ; $96
+ map_const LAVENDER_CUBONE_HOUSE, 4, 4 ; $97
+ map_const FUCHSIA_MART, 4, 4 ; $98
+ map_const FUCHSIA_BILLS_GRANDPAS_HOUSE, 4, 4 ; $99
+ map_const FUCHSIA_POKECENTER, 7, 4 ; $9A
+ map_const WARDENS_HOUSE, 5, 4 ; $9B
+ map_const SAFARI_ZONE_GATE, 4, 3 ; $9C
+ map_const FUCHSIA_GYM, 5, 9 ; $9D
+ map_const FUCHSIA_MEETING_ROOM, 7, 4 ; $9E
+ map_const SEAFOAM_ISLANDS_B1F, 15, 9 ; $9F
+ map_const SEAFOAM_ISLANDS_B2F, 15, 9 ; $A0
+ map_const SEAFOAM_ISLANDS_B3F, 15, 9 ; $A1
+ map_const SEAFOAM_ISLANDS_B4F, 15, 9 ; $A2
+ map_const VERMILION_OLD_ROD_HOUSE, 4, 4 ; $A3
+ map_const FUCHSIA_GOOD_ROD_HOUSE, 4, 4 ; $A4
+ map_const POKEMON_MANSION_1F, 15, 14 ; $A5
+ map_const CINNABAR_GYM, 10, 9 ; $A6
+ map_const CINNABAR_LAB, 9, 4 ; $A7
+ map_const CINNABAR_LAB_TRADE_ROOM, 4, 4 ; $A8
+ map_const CINNABAR_LAB_METRONOME_ROOM, 4, 4 ; $A9
+ map_const CINNABAR_LAB_FOSSIL_ROOM, 4, 4 ; $AA
+ map_const CINNABAR_POKECENTER, 7, 4 ; $AB
+ map_const CINNABAR_MART, 4, 4 ; $AC
+ map_const CINNABAR_MART_COPY, 4, 4 ; $AD
+ map_const INDIGO_PLATEAU_LOBBY, 8, 6 ; $AE
+ map_const COPYCATS_HOUSE_1F, 4, 4 ; $AF
+ map_const COPYCATS_HOUSE_2F, 4, 4 ; $B0
+ map_const FIGHTING_DOJO, 5, 6 ; $B1
+ map_const SAFFRON_GYM, 10, 9 ; $B2
+ map_const SAFFRON_PIDGEY_HOUSE, 4, 4 ; $B3
+ map_const SAFFRON_MART, 4, 4 ; $B4
+ map_const SILPH_CO_1F, 15, 9 ; $B5
+ map_const SAFFRON_POKECENTER, 7, 4 ; $B6
+ map_const MR_PSYCHICS_HOUSE, 4, 4 ; $B7
+ map_const ROUTE_15_GATE_1F, 4, 5 ; $B8
+ map_const ROUTE_15_GATE_2F, 4, 4 ; $B9
+ map_const ROUTE_16_GATE_1F, 4, 7 ; $BA
+ map_const ROUTE_16_GATE_2F, 4, 4 ; $BB
+ map_const ROUTE_16_FLY_HOUSE, 4, 4 ; $BC
+ map_const ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; $BD
+ map_const ROUTE_18_GATE_1F, 4, 5 ; $BE
+ map_const ROUTE_18_GATE_2F, 4, 4 ; $BF
+ map_const SEAFOAM_ISLANDS_1F, 15, 9 ; $C0
+ map_const ROUTE_22_GATE, 5, 4 ; $C1
+ map_const VICTORY_ROAD_2F, 15, 9 ; $C2
+ map_const ROUTE_12_GATE_2F, 4, 4 ; $C3
+ map_const VERMILION_TRADE_HOUSE, 4, 4 ; $C4
+ map_const DIGLETTS_CAVE, 20, 18 ; $C5
+ map_const VICTORY_ROAD_3F, 15, 9 ; $C6
+ map_const ROCKET_HIDEOUT_B1F, 15, 14 ; $C7
+ map_const ROCKET_HIDEOUT_B2F, 15, 14 ; $C8
+ map_const ROCKET_HIDEOUT_B3F, 15, 14 ; $C9
+ map_const ROCKET_HIDEOUT_B4F, 15, 12 ; $CA
+ map_const ROCKET_HIDEOUT_ELEVATOR, 3, 4 ; $CB
+ map_const UNUSED_MAP_CC, 0, 0 ; $CC
+ map_const UNUSED_MAP_CD, 0, 0 ; $CD
+ map_const UNUSED_MAP_CE, 0, 0 ; $CE
+ map_const SILPH_CO_2F, 15, 9 ; $CF
+ map_const SILPH_CO_3F, 15, 9 ; $D0
+ map_const SILPH_CO_4F, 15, 9 ; $D1
+ map_const SILPH_CO_5F, 15, 9 ; $D2
+ map_const SILPH_CO_6F, 13, 9 ; $D3
+ map_const SILPH_CO_7F, 13, 9 ; $D4
+ map_const SILPH_CO_8F, 13, 9 ; $D5
+ map_const POKEMON_MANSION_2F, 15, 14 ; $D6
+ map_const POKEMON_MANSION_3F, 15, 9 ; $D7
+ map_const POKEMON_MANSION_B1F, 15, 14 ; $D8
+ map_const SAFARI_ZONE_EAST, 15, 13 ; $D9
+ map_const SAFARI_ZONE_NORTH, 20, 18 ; $DA
+ map_const SAFARI_ZONE_WEST, 15, 13 ; $DB
+ map_const SAFARI_ZONE_CENTER, 15, 13 ; $DC
+ map_const SAFARI_ZONE_CENTER_REST_HOUSE, 4, 4 ; $DD
+ map_const SAFARI_ZONE_SECRET_HOUSE, 4, 4 ; $DE
+ map_const SAFARI_ZONE_WEST_REST_HOUSE, 4, 4 ; $DF
+ map_const SAFARI_ZONE_EAST_REST_HOUSE, 4, 4 ; $E0
+ map_const SAFARI_ZONE_NORTH_REST_HOUSE, 4, 4 ; $E1
+ map_const CERULEAN_CAVE_2F, 15, 9 ; $E2
+ map_const CERULEAN_CAVE_B1F, 15, 9 ; $E3
+ map_const CERULEAN_CAVE_1F, 15, 9 ; $E4
+ map_const NAME_RATERS_HOUSE, 4, 4 ; $E5
+ map_const CERULEAN_BADGE_HOUSE, 4, 4 ; $E6
+ map_const UNUSED_MAP_E7, 0, 0 ; $E7
+ map_const ROCK_TUNNEL_B1F, 20, 18 ; $E8
+ map_const SILPH_CO_9F, 13, 9 ; $E9
+ map_const SILPH_CO_10F, 8, 9 ; $EA
+ map_const SILPH_CO_11F, 9, 9 ; $EB
+ map_const SILPH_CO_ELEVATOR, 2, 2 ; $EC
+ map_const UNUSED_MAP_ED, 0, 0 ; $ED
+ map_const UNUSED_MAP_EE, 0, 0 ; $EE
+ map_const TRADE_CENTER, 5, 4 ; $EF
+ map_const COLOSSEUM, 5, 4 ; $F0
+ map_const UNUSED_MAP_F1, 0, 0 ; $F1
+ map_const UNUSED_MAP_F2, 0, 0 ; $F2
+ map_const UNUSED_MAP_F3, 0, 0 ; $F3
+ map_const UNUSED_MAP_F4, 0, 0 ; $F4
+ map_const LORELEIS_ROOM, 5, 6 ; $F5
+ map_const BRUNOS_ROOM, 5, 6 ; $F6
+ map_const AGATHAS_ROOM, 5, 6 ; $F7
+ map_const SUMMER_BEACH_HOUSE, 7, 4 ; $F8
DEF NUM_MAPS EQU const_value
; Indoor maps, such as houses, use this as the Map ID in their exit warps
diff --git a/constants/map_object_constants.asm b/constants/map_object_constants.asm
index 5c666d83..377edcea 100644
--- a/constants/map_object_constants.asm
+++ b/constants/map_object_constants.asm
@@ -1,4 +1,4 @@
-; spritestatedata1 struct members (see macros/wram.asm)
+; spritestatedata1 struct members (see macros/ram.asm)
const_def
const SPRITESTATEDATA1_PICTUREID ; 0
const SPRITESTATEDATA1_MOVEMENTSTATUS ; 1
@@ -18,7 +18,7 @@
const SPRITESTATEDATA1_0F ; f
DEF SPRITESTATEDATA1_LENGTH EQU const_value
-; spritestatedata2 struct members (see macros/wram.asm)
+; spritestatedata2 struct members (see macros/ram.asm)
const_def
const SPRITESTATEDATA2_WALKANIMATIONCOUNTER ; 0
const SPRITESTATEDATA2_01 ; 1
diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm
index 1b7f15f4..84775608 100644
--- a/constants/misc_constants.asm
+++ b/constants/misc_constants.asm
@@ -9,9 +9,9 @@ DEF TRUE EQU 1
const FLAG_TEST ; 2
; wOptions
-DEF TEXT_DELAY_FAST EQU %001 ; 1
-DEF TEXT_DELAY_MEDIUM EQU %011 ; 3
-DEF TEXT_DELAY_SLOW EQU %101 ; 5
+DEF TEXT_DELAY_FAST EQU %001 ; 1
+DEF TEXT_DELAY_MEDIUM EQU %011 ; 3
+DEF TEXT_DELAY_SLOW EQU %101 ; 5
const_def 6
const BIT_BATTLE_SHIFT ; 6
diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm
index 1fd7ce19..028d6711 100644
--- a/constants/pokemon_data_constants.asm
+++ b/constants/pokemon_data_constants.asm
@@ -23,7 +23,7 @@ DEF BASE_TMHM rb (NUM_TM_HM + 7) / 8
rb_skip
DEF BASE_DATA_SIZE EQU _RS
-; party_struct members (see macros/wram.asm)
+; party_struct members (see macros/ram.asm)
rsreset
DEF MON_SPECIES rb
DEF MON_HP rw
diff --git a/constants/script_constants.asm b/constants/script_constants.asm
index ed2ffe31..005fbb14 100644
--- a/constants/script_constants.asm
+++ b/constants/script_constants.asm
@@ -25,23 +25,23 @@ DEF SLOTS_SOMEONESKEYS EQU $ff
; in game trades
; TradeMons indexes (see data/events/trades.asm)
const_def
- const TRADE_FOR_TERRY
- const TRADE_FOR_MARCEL
- const TRADE_FOR_CHIKUCHIKU
- const TRADE_FOR_SAILOR
- const TRADE_FOR_DUX
- const TRADE_FOR_MARC
- const TRADE_FOR_LOLA
- const TRADE_FOR_DORIS
- const TRADE_FOR_CRINKLES
- const TRADE_FOR_SPOT
+ const TRADE_FOR_GURIO
+ const TRADE_FOR_MILES
+ const TRADE_FOR_STINGER ; unused
+ const TRADE_FOR_STICKY
+ const TRADE_FOR_BART ; unused
+ const TRADE_FOR_SPIKE
+ const TRADE_FOR_MARTY ; unused
+ const TRADE_FOR_BUFFY
+ const TRADE_FOR_CEZANNE
+ const TRADE_FOR_RICKY
DEF NUM_NPC_TRADES EQU const_value
; in game trade dialog sets
; InGameTradeTextPointers indexes (see engine/events/in_game_trades.asm)
const_def
const TRADE_DIALOGSET_CASUAL
- const TRADE_DIALOGSET_POLITE
+ const TRADE_DIALOGSET_EVOLUTION
const TRADE_DIALOGSET_HAPPY
; badges
diff --git a/constants/sprite_anim_constants.asm b/constants/sprite_anim_constants.asm
index 1540e1e3..a6f0a98a 100644
--- a/constants/sprite_anim_constants.asm
+++ b/constants/sprite_anim_constants.asm
@@ -1,4 +1,4 @@
-; animated_object struct members (see macros/wram.asm)
+; animated_object struct members (see macros/ram.asm)
DEF ANIM_OBJ_INDEX EQUS "wAnimatedObject0Index - wAnimatedObject0"
DEF ANIM_OBJ_FRAME_SET EQUS "wAnimatedObject0FramesetID - wAnimatedObject0"
DEF ANIM_OBJ_CALLBACK EQUS "wAnimatedObject0AnimSeqID - wAnimatedObject0"
diff --git a/constants/type_constants.asm b/constants/type_constants.asm
index e9df7faf..8226af1a 100644
--- a/constants/type_constants.asm
+++ b/constants/type_constants.asm
@@ -12,7 +12,9 @@ DEF PHYSICAL EQU const_value
const BUG ; $07
const GHOST ; $08
+DEF UNUSED_TYPES EQU const_value
const_next 20
+DEF UNUSED_TYPES_END EQU const_value
DEF SPECIAL EQU const_value
const FIRE ; $14
diff --git a/data/events/trades.asm b/data/events/trades.asm
index d7afa5ff..31a0dd9d 100644
--- a/data/events/trades.asm
+++ b/data/events/trades.asm
@@ -2,14 +2,18 @@ TradeMons:
; entries correspond to TRADE_FOR_* constants
table_width 3 + NAME_LENGTH, TradeMons
; give mon, get mon, dialog id, nickname
- db LICKITUNG, DUGTRIO, TRADE_DIALOGSET_CASUAL, "GURIO@@@@@@"
- db CLEFAIRY, MR_MIME, TRADE_DIALOGSET_CASUAL, "MILES@@@@@@"
- db BUTTERFREE, BEEDRILL, TRADE_DIALOGSET_HAPPY, "STINGER@@@@"
- db KANGASKHAN, MUK, TRADE_DIALOGSET_CASUAL, "STICKY@@@@@"
- db MEW, MEW, TRADE_DIALOGSET_HAPPY, "BART@@@@@@@"
- db TANGELA, PARASECT, TRADE_DIALOGSET_CASUAL, "SPIKE@@@@@@"
- db PIDGEOT, PIDGEOT, TRADE_DIALOGSET_POLITE, "MARTY@@@@@@"
- db GOLDUCK, RHYDON, TRADE_DIALOGSET_POLITE, "BUFFY@@@@@@"
- db GROWLITHE, DEWGONG, TRADE_DIALOGSET_HAPPY, "CEZANNE@@@@"
- db CUBONE, MACHOKE, TRADE_DIALOGSET_HAPPY, "RICKY@@@@@@"
+ ; The two instances of TRADE_DIALOGSET_EVOLUTION are a leftover
+ ; from the Japanese Blue trades, which used species that evolve.
+ ; Japanese Red and Green used TRADE_DIALOGSET_CASUAL, and had
+ ; the same species as English Red and Blue.
+ db LICKITUNG, DUGTRIO, TRADE_DIALOGSET_CASUAL, "GURIO@@@@@@"
+ db CLEFAIRY, MR_MIME, TRADE_DIALOGSET_CASUAL, "MILES@@@@@@"
+ db BUTTERFREE, BEEDRILL, TRADE_DIALOGSET_HAPPY, "STINGER@@@@" ; unused
+ db KANGASKHAN, MUK, TRADE_DIALOGSET_CASUAL, "STICKY@@@@@"
+ db MEW, MEW, TRADE_DIALOGSET_HAPPY, "BART@@@@@@@" ; unused
+ db TANGELA, PARASECT, TRADE_DIALOGSET_CASUAL, "SPIKE@@@@@@"
+ db PIDGEOT, PIDGEOT, TRADE_DIALOGSET_EVOLUTION, "MARTY@@@@@@" ; unused
+ db GOLDUCK, RHYDON, TRADE_DIALOGSET_EVOLUTION, "BUFFY@@@@@@"
+ db GROWLITHE, DEWGONG, TRADE_DIALOGSET_HAPPY, "CEZANNE@@@@"
+ db CUBONE, MACHOKE, TRADE_DIALOGSET_HAPPY, "RICKY@@@@@@"
assert_table_length NUM_NPC_TRADES
diff --git a/data/trainers/pic_pointers_money.asm b/data/trainers/pic_pointers_money.asm
index ada0afc2..4515d880 100644
--- a/data/trainers/pic_pointers_money.asm
+++ b/data/trainers/pic_pointers_money.asm
@@ -6,7 +6,7 @@ ENDM
TrainerPicAndMoneyPointers::
table_width 5, TrainerPicAndMoneyPointers
; pic pointer, base reward money
- ; money received after battle = base money × level of highest-level enemy mon
+ ; money received after battle = base money × level of last enemy mon
pic_money YoungsterPic, 1500
pic_money BugCatcherPic, 1000
pic_money LassPic, 1500
diff --git a/data/types/names.asm b/data/types/names.asm
index b63c072e..87da5c5f 100644
--- a/data/types/names.asm
+++ b/data/types/names.asm
@@ -11,7 +11,7 @@ TypeNames:
dw .Bug
dw .Ghost
-REPT FIRE - GHOST - 1
+REPT UNUSED_TYPES_END - UNUSED_TYPES
dw .Normal
ENDR
diff --git a/engine/battle/core.asm b/engine/battle/core.asm
index 27ed1093..8618cced 100644
--- a/engine/battle/core.asm
+++ b/engine/battle/core.asm
@@ -411,12 +411,12 @@ MainInBattleLoop:
cp USING_INTERNAL_CLOCK
jr z, .invertOutcome
call BattleRandom
- cp $80
+ cp 50 percent + 1
jr c, .playerMovesFirst
jr .enemyMovesFirst
.invertOutcome
call BattleRandom
- cp $80
+ cp 50 percent + 1
jr c, .enemyMovesFirst
jr .playerMovesFirst
.enemyMovesFirst
@@ -791,7 +791,7 @@ FaintEnemyPokemon:
ld a, SFX_FAINT_FALL
call PlaySoundWaitForCurrent
.sfxwait
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp SFX_FAINT_FALL
jr z, .sfxwait
ld a, SFX_FAINT_THUD
@@ -875,7 +875,7 @@ EndLowHealthAlarm:
; the low health alarm and prevents it from reactivating until the next battle.
xor a
ld [wLowHealthAlarm], a ; turn off low health alarm
- ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + CHAN5], a
inc a
ld [wLowHealthAlarmDisabled], a ; prevent it from reactivating
ret
@@ -1358,7 +1358,7 @@ EnemySendOutFirstMon:
ld [wWhichPokemon], a
jr .next3
.next
- ld b, $FF
+ ld b, $ff
.next2
inc b
ld a, [wEnemyMonPartyPos]
@@ -1411,7 +1411,7 @@ EnemySendOutFirstMon:
cp LINK_STATE_BATTLING
jr z, .next4
ld a, [wOptions]
- bit 6, a
+ bit BIT_BATTLE_SHIFT, a
jr nz, .next4
ld hl, TrainerAboutToUseText
call PrintText
@@ -1939,7 +1939,7 @@ DrawPlayerHUDAndHPBar:
ld [hl], $0
ret z
xor a
- ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + CHAN5], a
ret
.setLowHealthAlarm
ld hl, wLowHealthAlarm
@@ -2174,7 +2174,7 @@ DisplayBattleMenu::
ld [hli], a ; wMaxMenuItem
ld [hl], D_RIGHT | A_BUTTON ; wMenuWatchedKeys
call HandleMenuInput
- bit 4, a ; check if right was pressed
+ bit BIT_D_RIGHT, a
jr nz, .rightColumn
jr .AButtonPressed ; the A button was pressed
.rightColumn ; put cursor in right column of menu
@@ -2455,7 +2455,7 @@ PartyMenuOrRockOrRun:
xor a
ld [hl], a ; wLastMenuItem
call HandleMenuInput
- bit 1, a ; was A pressed?
+ bit BIT_B_BUTTON, a
jr nz, .partyMonDeselected ; if B was pressed, jump
; A was pressed
call PlaceUnfilledArrowMenuCursor
@@ -3131,19 +3131,19 @@ SelectEnemyMove:
.chooseRandomMove
push hl
call BattleRandom
- ld b, $1
- cp $3f ; select move 1, [0,3e] (63/256 chance)
+ ld b, 1 ; 25% chance to select move 1
+ cp 25 percent
jr c, .moveChosen
inc hl
- inc b
- cp $7f ; select move 2, [3f,7e] (64/256 chance)
+ inc b ; 25% chance to select move 2
+ cp 50 percent
jr c, .moveChosen
inc hl
- inc b
- cp $be ; select move 3, [7f,bd] (63/256 chance)
+ inc b ; 25% chance to select move 3
+ cp 75 percent - 1
jr c, .moveChosen
inc hl
- inc b ; select move 4, [be,ff] (66/256 chance)
+ inc b ; 25% chance to select move 4
.moveChosen
ld a, b
dec a
@@ -3583,7 +3583,7 @@ CheckPlayerStatusConditions:
ld a, CONF_ANIM - 1
call PlayMoveAnimation
call BattleRandom
- cp $80 ; 50% chance to hurt itself
+ cp 50 percent + 1 ; chance to hurt itself
jr c, .TriedToUseDisabledMoveCheck
ld hl, wPlayerBattleStatus1
ld a, [hl]
@@ -4792,7 +4792,7 @@ CriticalHitTest:
dec hl
ld c, [hl] ; read move id
ld a, [de]
- bit GETTING_PUMPED, a ; test for focus energy
+ bit GETTING_PUMPED, a ; test for focus energy
jr nz, .focusEnergyUsed ; bug: using focus energy causes a shift to the right instead of left,
; resulting in 1/4 the usual crit chance
sla b ; (effective (base speed/2)*2)
@@ -5548,10 +5548,10 @@ MoveHitTest:
.swiftCheck
ld a, [de]
cp SWIFT_EFFECT
- ret z ; Swift never misses (interestingly, Azure Heights lists this is a myth, but it appears to be true)
+ ret z ; Swift never misses (this was fixed from the Japanese versions)
call CheckTargetSubstitute ; substitute check (note that this overwrites a)
jr z, .checkForDigOrFlyStatus
-; This code is buggy. It's supposed to prevent HP draining moves from working on substitutes.
+; The fix for Swift broke this code. It's supposed to prevent HP draining moves from working on Substitutes.
; Since CheckTargetSubstitute overwrites a with either $00 or $01, it never works.
cp DRAIN_HP_EFFECT
jp z, .moveMissed
@@ -6129,7 +6129,7 @@ CheckEnemyStatusConditions:
bit PAR, [hl]
jr z, .checkIfUsingBide
call BattleRandom
- cp $3f ; 25% to be fully paralysed
+ cp 25 percent ; chance to be fully paralysed
jr nc, .checkIfUsingBide
ld hl, FullyParalyzedText
call PrintText
diff --git a/engine/battle/end_of_battle.asm b/engine/battle/end_of_battle.asm
index e64f54e7..e07c243e 100644
--- a/engine/battle/end_of_battle.asm
+++ b/engine/battle/end_of_battle.asm
@@ -50,7 +50,7 @@ EndOfBattle:
.resetVariables
xor a
ld [wLowHealthAlarm], a ;disable low health alarm
- ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + CHAN5], a
ld [wIsInBattle], a
ld [wBattleType], a
ld [wMoveMissed], a
diff --git a/engine/battle/init_battle.asm b/engine/battle/init_battle.asm
index 680befda..e7be112c 100644
--- a/engine/battle/init_battle.asm
+++ b/engine/battle/init_battle.asm
@@ -12,11 +12,11 @@ InitOpponent:
DetermineWildOpponent:
ld a, [wd732]
bit 1, a
- jr z, .asm_3ef2f
+ jr z, .notDebug
ldh a, [hJoyHeld]
- bit 1, a ; B button pressed?
+ bit BIT_B_BUTTON, a
ret nz
-.asm_3ef2f
+.notDebug
ld a, [wNumberOfNoRandomBattleStepsLeft]
and a
ret nz
diff --git a/engine/events/diploma2.asm b/engine/events/diploma2.asm
index efc3b9cd..87a44439 100644
--- a/engine/events/diploma2.asm
+++ b/engine/events/diploma2.asm
@@ -23,11 +23,11 @@ _DisplayDiploma:
hlcoord 19, 0
ld [hl], a
- ld de, String_e9a73
+ ld de, DiplomaText
hlcoord 5, 2
call PlaceString
- ld de, String_e9a7d
+ ld de, DiplomaPlayer
hlcoord 3, 4
call PlaceString
@@ -35,11 +35,11 @@ _DisplayDiploma:
hlcoord 10, 4
call PlaceString
- ld de, String_e9a84
+ ld de, DiplomaCongrats
hlcoord 2, 6
call PlaceString
- ld de, String_e9ac8
+ ld de, DiplomaGameFreak
hlcoord 9, 16
call PlaceString
@@ -51,20 +51,20 @@ _DisplayDiploma:
call GBPalNormal
ret
-String_e9a73:
+DiplomaText:
db CIRCLE_TILE_ID, "Diploma", CIRCLE_TILE_ID, "@"
-String_e9a7d:
+DiplomaPlayer:
db "Player@"
-String_e9a84:
+DiplomaCongrats:
db "Congrats! This"
next "diploma certifies"
next "that you have"
next "completed your"
next "#DEX.@"
-String_e9ac8:
+DiplomaGameFreak:
db "GAME FREAK@"
Func_e9ad3:
diff --git a/engine/events/hidden_objects/museum_fossils2.asm b/engine/events/hidden_objects/museum_fossils2.asm
index fce0f03a..d8090e0a 100644
--- a/engine/events/hidden_objects/museum_fossils2.asm
+++ b/engine/events/hidden_objects/museum_fossils2.asm
@@ -14,7 +14,7 @@ DisplayMonFrontSpriteInBox:
ld a, [wcf91]
ld [wd0b5], a
call GetMonHeader
- ld de, vChars1 + $310
+ ld de, vChars1 tile $31
call LoadMonFrontSprite
ld a, $80
ldh [hStartTileID], a
diff --git a/engine/events/hidden_objects/safari_game.asm b/engine/events/hidden_objects/safari_game.asm
index 5a267346..2863a201 100644
--- a/engine/events/hidden_objects/safari_game.asm
+++ b/engine/events/hidden_objects/safari_game.asm
@@ -36,7 +36,7 @@ SafariZoneGameOver:
ld a, SFX_SAFARI_ZONE_PA
call PlayMusic
.waitForMusicToPlay
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp SFX_SAFARI_ZONE_PA
jr nz, .waitForMusicToPlay
ld a, TEXT_SAFARI_GAME_OVER
diff --git a/engine/events/in_game_trades.asm b/engine/events/in_game_trades.asm
index a0a23dfa..1b7d2678 100644
--- a/engine/events/in_game_trades.asm
+++ b/engine/events/in_game_trades.asm
@@ -244,7 +244,7 @@ InGameTrade_CheckForTradeEvo:
ld [wForceEvolution], a
ld a, LINK_STATE_TRADING
ld [wLinkState], a
- callfar EvolveTradeMon
+ callfar TryEvolvingMon
xor a ; LINK_STATE_NONE
ld [wLinkState], a
jp PlayDefaultMusic
diff --git a/engine/gfx/hp_bar.asm b/engine/gfx/hp_bar.asm
index fcbf1a29..6db3956d 100644
--- a/engine/gfx/hp_bar.asm
+++ b/engine/gfx/hp_bar.asm
@@ -216,9 +216,9 @@ UpdateHPBar_PrintHPNumber:
ld de, $15
ldh a, [hUILayoutFlags]
bit 0, a
- jr z, .next
+ jr z, .hpBelowBar
ld de, $9
-.next
+.hpBelowBar
add hl, de
push hl
ld a, " "
diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm
index 47d48062..c2ff34dc 100644
--- a/engine/items/item_effects.asm
+++ b/engine/items/item_effects.asm
@@ -1108,7 +1108,7 @@ ItemUseMedicine:
.notFullHP ; if the pokemon's current HP doesn't equal its max HP
xor a
ld [wLowHealthAlarm], a ;disable low health alarm
- ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + CHAN5], a
push hl
push de
ld bc, wPartyMon1MaxHP - (wPartyMon1HP + 1)
@@ -1933,7 +1933,7 @@ ItemUsePokeflute:
call WaitForSoundToFinish ; wait for sound to end
farcall Music_PokeFluteInBattle ; play in-battle pokeflute music
.musicWaitLoop ; wait for music to finish playing
- ld a, [wChannelSoundIDs + Ch7]
+ ld a, [wChannelSoundIDs + CHAN7]
and a ; music off?
jr nz, .musicWaitLoop
.skipMusic
@@ -1999,7 +1999,7 @@ PlayedFluteHadEffectText:
ld c, BANK(SFX_Pokeflute)
call PlayMusic
.musicWaitLoop ; wait for music to finish playing
- ld a, [wChannelSoundIDs + Ch3]
+ ld a, [wChannelSoundIDs + CHAN3]
cp SFX_POKEFLUTE
jr z, .musicWaitLoop
call PlayDefaultMusic ; start playing normal music again
diff --git a/engine/menus/link_menu.asm b/engine/menus/link_menu.asm
index 409316c9..ada3941e 100644
--- a/engine/menus/link_menu.asm
+++ b/engine/menus/link_menu.asm
@@ -690,13 +690,13 @@ LinkMenu:
ld b, a
and $f0
cp $d0
- jr z, .asm_f5c7d
+ jr z, .checkEnemyMenuSelection
ld a, [wLinkMenuSelectionReceiveBuffer + 1]
ld b, a
and $f0
cp $d0
jr nz, .exchangeMenuSelectionLoop
-.asm_f5c7d
+.checkEnemyMenuSelection
ld a, b
and $c ; did the enemy press A or B?
jr nz, .enemyPressedAOrB
@@ -720,7 +720,7 @@ LinkMenu:
ld a, b
ld [wLinkMenuSelectionSendBuffer], a
and $3
- ld [wCurrentMenuItem], a ; wCurrentMenuItem
+ ld [wCurrentMenuItem], a
.doneChoosingMenuSelection
ldh a, [hSerialConnectionStatus]
cp USING_INTERNAL_CLOCK
diff --git a/engine/menus/main_menu.asm b/engine/menus/main_menu.asm
index 6ccbb597..cfcfcb74 100644
--- a/engine/menus/main_menu.asm
+++ b/engine/menus/main_menu.asm
@@ -123,9 +123,9 @@ MainMenu:
jp SpecialEnterMap
InitOptions:
- ld a, 1 ; no delay
+ ld a, TEXT_DELAY_FAST
ld [wLetterPrintingDelayFlags], a
- ld a, 3 ; medium speed
+ ld a, TEXT_DELAY_MEDIUM
ld [wOptions], a
ld a, 64 ; audio?
ld [wPrinterSettings], a
diff --git a/engine/menus/pokedex.asm b/engine/menus/pokedex.asm
index 1ab1ff9b..36b2bb04 100644
--- a/engine/menus/pokedex.asm
+++ b/engine/menus/pokedex.asm
@@ -100,7 +100,7 @@ HandlePokedexSideMenu:
ldh [hJoy7], a
.handleMenuInput
call HandleMenuInput
- bit 1, a ; was the B button pressed?
+ bit BIT_B_BUTTON, a
ld b, 2
jr nz, .buttonBPressed
ld a, [wCurrentMenuItem]
diff --git a/engine/menus/text_box.asm b/engine/menus/text_box.asm
index 7a315af2..697fe507 100644
--- a/engine/menus/text_box.asm
+++ b/engine/menus/text_box.asm
@@ -173,9 +173,9 @@ DoBuySellQuitMenu:
ld [wd730], a
call HandleMenuInput
call PlaceUnfilledArrowMenuCursor
- bit 0, a ; was A pressed?
+ bit BIT_A_BUTTON, a
jr nz, .pressedA
- bit 1, a ; was B pressed? (always true since only A/B are watched)
+ bit BIT_B_BUTTON, a ; always true since only A/B are watched
jr z, .pressedA
ld a, CANCELLED_MENU
ld [wMenuExitMethod], a
@@ -282,7 +282,7 @@ DisplayTwoOptionMenu:
res 6, [hl] ; turn on the printing delay
call HandleMenuInput
pop hl
- bit 1, a ; A button pressed?
+ bit BIT_B_BUTTON, a
jr nz, .choseSecondMenuItem ; automatically choose the second option if B is pressed
.pressedAButton
ld a, [wCurrentMenuItem]
diff --git a/engine/minigame/surfing_pikachu.asm b/engine/minigame/surfing_pikachu.asm
index 3d0ed892..9e93d970 100644
--- a/engine/minigame/surfing_pikachu.asm
+++ b/engine/minigame/surfing_pikachu.asm
@@ -715,7 +715,7 @@ Func_f848d:
ld [wSurfingMinigameRadnessMeter], a
ld [wSurfingMinigameTrickFlags], a
xor a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN8], a
ld a, SFX_SURFING_JUMP
call PlaySound
ret
@@ -751,7 +751,7 @@ SurfingMinigame_ScoreCurrentWave:
ld a, $10
call SetCurrentAnimatedObjectCallbackAndResetFrameStateRegisters
xor a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN8], a
ld a, SFX_SURFING_CRASH
call PlaySound
ret
@@ -1010,7 +1010,7 @@ SurfingMinigame_TileInteraction:
call SufingMinigame_ReduceSpeedBy64
.action_3
xor a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN8], a
ld a, SFX_SURFING_LAND
call PlaySound
and a
diff --git a/engine/movie/evolution.asm b/engine/movie/evolution.asm
index 2cf841c8..37e10188 100644
--- a/engine/movie/evolution.asm
+++ b/engine/movie/evolution.asm
@@ -8,7 +8,7 @@ EvolveMon:
push af
xor a
ld [wLowHealthAlarm], a
- ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + CHAN5], a
call StopAllMusic
ld a, $1
ldh [hAutoBGTransferEnabled], a
diff --git a/engine/movie/splash.asm b/engine/movie/splash.asm
index 13f80bb1..03337525 100644
--- a/engine/movie/splash.asm
+++ b/engine/movie/splash.asm
@@ -7,7 +7,7 @@ LoadShootingStarGraphics:
call UpdateGBCPal_OBP1
ld de, AnimationTileset2 tile 3 ; star tile (top left quadrant)
ld hl, vChars1 tile $20
- lb bc, BANK(AnimationTileset2), $01
+ lb bc, BANK(AnimationTileset2), 1
call CopyVideoData
ld de, AnimationTileset2 tile 19 ; star tile (bottom left quadrant)
ld hl, vChars1 tile $21
diff --git a/engine/movie/trade.asm b/engine/movie/trade.asm
index 3617f40a..7143701b 100644
--- a/engine/movie/trade.asm
+++ b/engine/movie/trade.asm
@@ -624,7 +624,7 @@ Trade_WriteCircledMonOAM:
Trade_AddOffsetsToOAMCoords:
ld hl, wShadowOAM
- ld c, $14 ; SCREEN_WIDTH?
+ ld c, $14
.loop
ld a, [wBaseCoordY]
add [hl]
diff --git a/engine/overworld/elevator.asm b/engine/overworld/elevator.asm
index b873ffad..3c425caa 100644
--- a/engine/overworld/elevator.asm
+++ b/engine/overworld/elevator.asm
@@ -31,7 +31,7 @@ ShakeElevator::
ld a, SFX_SAFARI_ZONE_PA
call PlayMusic
.musicLoop
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp SFX_SAFARI_ZONE_PA
jr z, .musicLoop
call UpdateSprites
diff --git a/engine/overworld/player_animations.asm b/engine/overworld/player_animations.asm
index 008d5057..6f8a5c18 100644
--- a/engine/overworld/player_animations.asm
+++ b/engine/overworld/player_animations.asm
@@ -14,7 +14,6 @@ EnterMapAnim::
ld hl, wd732
bit 4, [hl] ; used dungeon warp?
pop hl
- ;res 4, [hl]
jr nz, .dungeonWarpAnimation
call PlayerSpinWhileMovingDown
ld a, SFX_TELEPORT_ENTER_2
diff --git a/engine/overworld/player_state.asm b/engine/overworld/player_state.asm
index 4e37523b..4998360d 100644
--- a/engine/overworld/player_state.asm
+++ b/engine/overworld/player_state.asm
@@ -240,11 +240,11 @@ PrintSafariZoneSteps::
call PlaceString
ld a, [wNumSafariBalls]
cp 10
- jr nc, .numSafariBallsTwoDigits
+ jr nc, .tenOrMore
hlcoord 5, 3
ld a, " "
ld [hl], a
-.numSafariBallsTwoDigits
+.tenOrMore
hlcoord 6, 3
ld de, wNumSafariBalls
lb bc, 1, 2
diff --git a/engine/overworld/push_boulder.asm b/engine/overworld/push_boulder.asm
index 09911ca3..a8e532d3 100644
--- a/engine/overworld/push_boulder.asm
+++ b/engine/overworld/push_boulder.asm
@@ -2,8 +2,6 @@ TryPushingBoulder::
ld a, [wd728]
bit 0, a ; using Strength?
ret z
-Func_f0a7:
-; where LoadMissableObjects predef points to now
ld a, [wFlags_0xcd60]
bit 1, a ; has boulder dust animation from previous push played yet?
ret nz
diff --git a/engine/overworld/tilesets.asm b/engine/overworld/tilesets.asm
index 21101e7b..11c2bef6 100644
--- a/engine/overworld/tilesets.asm
+++ b/engine/overworld/tilesets.asm
@@ -26,13 +26,13 @@ LoadTilesetHeader:
call IsInArray
pop de
pop hl
- jr c, .notDungeonTileset
+ jr c, .dungeon
ld a, [wCurMapTileset]
ld b, a
ldh a, [hPreviousTileset]
cp b
jr z, .done
-.notDungeonTileset
+.dungeon
ld a, [wDestinationWarpID]
cp $ff
jr z, .done
diff --git a/engine/pikachu/pikachu_pcm.asm b/engine/pikachu/pikachu_pcm.asm
index 844449f9..3fb5ca07 100644
--- a/engine/pikachu/pikachu_pcm.asm
+++ b/engine/pikachu/pikachu_pcm.asm
@@ -84,10 +84,10 @@ ENDC
and $bb
ldh [rNR51], a
xor a
- ld [wChannelSoundIDs + Ch5], a
- ld [wChannelSoundIDs + Ch6], a
- ld [wChannelSoundIDs + Ch7], a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN5], a
+ ld [wChannelSoundIDs + CHAN6], a
+ ld [wChannelSoundIDs + CHAN7], a
+ ld [wChannelSoundIDs + CHAN8], a
ldh a, [hLoadedROMBank]
ei
ret
diff --git a/engine/pokemon/evos_moves.asm b/engine/pokemon/evos_moves.asm
index d5449b5c..6ff91597 100644
--- a/engine/pokemon/evos_moves.asm
+++ b/engine/pokemon/evos_moves.asm
@@ -1,6 +1,5 @@
; try to evolve the mon in [wWhichPokemon]
TryEvolvingMon:
-EvolveTradeMon:
ld hl, wCanEvolveFlags
xor a
ld [hl], a
diff --git a/home/audio.asm b/home/audio.asm
index 41fb503a..48e00f67 100644
--- a/home/audio.asm
+++ b/home/audio.asm
@@ -140,10 +140,10 @@ PlayMusic::
Func_2223::
xor a
- ld [wChannelSoundIDs + Ch5], a
- ld [wChannelSoundIDs + Ch6], a
- ld [wChannelSoundIDs + Ch7], a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN5], a
+ ld [wChannelSoundIDs + CHAN6], a
+ ld [wChannelSoundIDs + CHAN7], a
+ ld [wChannelSoundIDs + CHAN8], a
ldh [rNR10], a
ret
@@ -160,10 +160,10 @@ PlaySound::
and a
jr z, .next
xor a
- ld [wChannelSoundIDs + Ch5], a
- ld [wChannelSoundIDs + Ch6], a
- ld [wChannelSoundIDs + Ch7], a
- ld [wChannelSoundIDs + Ch8], a
+ ld [wChannelSoundIDs + CHAN5], a
+ ld [wChannelSoundIDs + CHAN6], a
+ ld [wChannelSoundIDs + CHAN7], a
+ ld [wChannelSoundIDs + CHAN8], a
.next
ld a, [wAudioFadeOutControl]
and a ; has a fade-out length been specified?
diff --git a/home/delay.asm b/home/delay.asm
index eba865c2..edd3a5cd 100644
--- a/home/delay.asm
+++ b/home/delay.asm
@@ -18,7 +18,7 @@ WaitForSoundToFinish::
ret nz
push hl
.waitLoop
- ld hl, wChannelSoundIDs + Ch5
+ ld hl, wChannelSoundIDs + CHAN5
xor a
or [hl]
inc hl
diff --git a/home/overworld.asm b/home/overworld.asm
index e9ef2fc0..62d0e3b7 100644
--- a/home/overworld.asm
+++ b/home/overworld.asm
@@ -1257,7 +1257,7 @@ CollisionCheckOnLand::
call CheckTilePassable
jr nc, .noCollision
.collision
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp SFX_COLLISION ; check if collision sound is already playing
jr z, .setCarry
ld a, SFX_COLLISION
@@ -1686,7 +1686,7 @@ CollisionCheckOnWater::
call IsTilePassable
jr nc, .stopSurfing
.collision
- ld a, [wChannelSoundIDs + Ch5]
+ ld a, [wChannelSoundIDs + CHAN5]
cp SFX_COLLISION ; check if collision sound is already playing
jr z, .setCarry
ld a, SFX_COLLISION
diff --git a/home/printer.asm b/home/printer.asm
index 6d9f145c..2591567b 100644
--- a/home/printer.asm
+++ b/home/printer.asm
@@ -1,4 +1,3 @@
-
PrinterSerial::
homecall PrinterSerial_
ret
diff --git a/home/window.asm b/home/window.asm
index a3c313c0..f8cc4589 100644
--- a/home/window.asm
+++ b/home/window.asm
@@ -70,7 +70,7 @@ HandleMenuInput_::
ld [wCurrentMenuItem], a ; wrap to the bottom of the menu
jr .checkOtherKeys
.checkIfDownPressed
- bit 7, a
+ bit BIT_D_DOWN, a
jr z, .checkOtherKeys
.downPressed
ld a, [wCurrentMenuItem]
diff --git a/macros/asserts.asm b/macros/asserts.asm
index b8498537..64e6bc7b 100644
--- a/macros/asserts.asm
+++ b/macros/asserts.asm
@@ -55,7 +55,7 @@ MACRO nybble
DEF CURRENT_NYBBLE_ARRAY_LENGTH += 1
IF CURRENT_NYBBLE_ARRAY_LENGTH % 2 == 0
db CURRENT_NYBBLE_ARRAY_VALUE
- DEF CURRENT_NYBBLE_ARRAY_VALUE = 0
+ DEF CURRENT_NYBBLE_ARRAY_VALUE = 0
ENDC
ENDM
diff --git a/macros/data.asm b/macros/data.asm
index 38ec8c9f..b7a16190 100644
--- a/macros/data.asm
+++ b/macros/data.asm
@@ -18,7 +18,7 @@ MACRO tmhm
; initialize bytes to 0
FOR n, (NUM_TM_HM + 7) / 8
DEF _tm{d:n} = 0
- ENDR
+ ENDR
; set bits of bytes
REPT _NARG
IF DEF(\1_TMNUM)
diff --git a/macros/wram.asm b/macros/ram.asm
index f45708a3..f45708a3 100644
--- a/macros/wram.asm
+++ b/macros/ram.asm
diff --git a/macros/scripts/audio.asm b/macros/scripts/audio.asm
index 114bf576..6b8a650a 100644
--- a/macros/scripts/audio.asm
+++ b/macros/scripts/audio.asm
@@ -1,18 +1,15 @@
-MACRO audio_header
- db (_NARG - 2) << 6 | \2
- dw \1_\2
- IF _NARG > 2
- db \3
- dw \1_\3
- ENDC
- IF _NARG > 3
- db \4
- dw \1_\4
- ENDC
- IF _NARG > 4
- db \5
- dw \1_\5
- ENDC
+MACRO channel_count
+ ASSERT 0 < (\1) && (\1) <= NUM_MUSIC_CHANS, \
+ "channel_count must be 1-{d:NUM_MUSIC_CHANS}"
+ DEF _num_channels = \1 - 1
+ENDM
+
+MACRO channel
+ ASSERT 0 < (\1) && (\1) <= NUM_CHANNELS, \
+ "channel id must be 1-{d:NUM_CHANNELS}"
+ dn (_num_channels << 2), \1 - 1 ; channel id
+ dw \2 ; address
+ DEF _num_channels = 0
ENDM
const_def $10
@@ -27,9 +24,9 @@ ENDM
MACRO pitch_sweep
db pitch_sweep_cmd
IF \2 < 0
- db (\1 << 4) | (%1000 | (\2 * -1))
+ dn \1, %1000 | (\2 * -1)
ELSE
- db (\1 << 4) | \2
+ dn \1, \2
ENDC
ENDM
@@ -45,9 +42,9 @@ DEF square_note_cmd EQU sfx_note_cmd ; $20
MACRO square_note
db square_note_cmd | \1
IF \3 < 0
- db (\2 << 4) | (%1000 | (\3 * -1))
+ dn \2, %1000 | (\3 * -1)
ELSE
- db (\2 << 4) | \3
+ dn \2, \3
ENDC
dw \4
ENDM
@@ -60,16 +57,16 @@ DEF noise_note_cmd EQU sfx_note_cmd ; $20
MACRO noise_note
db noise_note_cmd | \1
IF \3 < 0
- db (\2 << 4) | (%1000 | (\3 * -1))
+ dn \2, %1000 | (\3 * -1)
ELSE
- db (\2 << 4) | \3
+ dn \2, \3
ENDC
db \4
ENDM
; arguments: pitch, length [1, 16]
MACRO note
- db (\1 << 4) | (\2 - 1)
+ dn \1, \2 - 1
ENDM
const_next $b0
@@ -86,7 +83,7 @@ ENDM
; can only be used with instruments 1-10, excluding 2
; unused
MACRO drum_note_short
- db (\1 << 4) | (\2 - 1)
+ note \1, \2
ENDM
const_next $c0
@@ -107,9 +104,9 @@ ENDM
MACRO note_type
db note_type_cmd | \1
IF \3 < 0
- db (\2 << 4) | (%1000 | (\3 * -1))
+ dn \2, %1000 | (\3 * -1)
ELSE
- db (\2 << 4) | \3
+ dn \2, \3
ENDC
ENDM
@@ -145,7 +142,7 @@ ENDM
MACRO vibrato
db vibrato_cmd
db \1
- db (\2 << 4) | \3
+ dn \2, \3
ENDM
; arguments: length [1, 256], octave [1, 8], pitch
@@ -153,7 +150,7 @@ ENDM
MACRO pitch_slide
db pitch_slide_cmd
db \1 - 1
- db ((8 - \2) << 4) | \3
+ dn 8 - \2, \3
ENDM
; arguments: duty cycle [0, 3] (12.5%, 25%, 50%, 75%)
@@ -179,7 +176,7 @@ ENDM
const stereo_panning_cmd ; $ee
MACRO stereo_panning
db stereo_panning_cmd
- db (\1 << 4) | \2
+ dn \1, \2
ENDM
const unknownmusic0xef_cmd ; $ef
@@ -192,7 +189,7 @@ ENDM
const volume_cmd ; $f0
MACRO volume
db volume_cmd
- db (\1 << 4) | \2
+ dn \1, \2
ENDM
const_next $f8
diff --git a/ram.asm b/ram.asm
index 24040b14..077ae799 100644
--- a/ram.asm
+++ b/ram.asm
@@ -1,6 +1,6 @@
INCLUDE "constants.asm"
-INCLUDE "macros/wram.asm"
+INCLUDE "macros/ram.asm"
INCLUDE "ram/vram.asm"
diff --git a/ram/wram.asm b/ram/wram.asm
index 0e9d54a0..f6d1c76d 100644
--- a/ram/wram.asm
+++ b/ram/wram.asm
@@ -1368,7 +1368,7 @@ ENDU
ds 2
-; money received after battle = base money × level of highest-level enemy mon
+; money received after battle = base money × level of last enemy mon
wTrainerBaseMoney:: dw ; BCD
wMissableObjectCounter:: db
diff --git a/scripts/CinnabarLabFossilRoom.asm b/scripts/CinnabarLabFossilRoom.asm
index 2c388119..7ed9b1a9 100644
--- a/scripts/CinnabarLabFossilRoom.asm
+++ b/scripts/CinnabarLabFossilRoom.asm
@@ -100,7 +100,7 @@ Lab4Text_75dd5:
Lab4Text2:
text_asm
- ld a, TRADE_FOR_SAILOR
+ ld a, TRADE_FOR_STICKY
ld [wWhichTrade], a
predef DoInGameTradeDialogue
jp TextScriptEnd
diff --git a/scripts/CinnabarLabTradeRoom.asm b/scripts/CinnabarLabTradeRoom.asm
index 1f8710be..64f1975d 100644
--- a/scripts/CinnabarLabTradeRoom.asm
+++ b/scripts/CinnabarLabTradeRoom.asm
@@ -12,13 +12,13 @@ Lab2Text1:
Lab2Text2:
text_asm
- ld a, TRADE_FOR_DORIS
+ ld a, TRADE_FOR_BUFFY
ld [wWhichTrade], a
jr Lab2DoTrade
Lab2Text3:
text_asm
- ld a, TRADE_FOR_CRINKLES
+ ld a, TRADE_FOR_CEZANNE
ld [wWhichTrade], a
Lab2DoTrade:
predef DoInGameTradeDialogue
diff --git a/scripts/PewterPokecenter2.asm b/scripts/PewterPokecenter2.asm
index 79d22b2f..dd80e901 100644
--- a/scripts/PewterPokecenter2.asm
+++ b/scripts/PewterPokecenter2.asm
@@ -52,7 +52,7 @@ PewterJigglypuff::
call DelayFrames
ld a, [wChannelSoundIDs]
ld b, a
- ld a, [wChannelSoundIDs + Ch2]
+ ld a, [wChannelSoundIDs + CHAN2]
or b
jr nz, .spinMovementLoop
diff --git a/scripts/Route11Gate2F.asm b/scripts/Route11Gate2F.asm
index 65352cd9..4026dbc9 100644
--- a/scripts/Route11Gate2F.asm
+++ b/scripts/Route11Gate2F.asm
@@ -9,7 +9,7 @@ Route11Gate2F_TextPointers:
Route11GateUpstairsText1:
text_asm
- ld a, TRADE_FOR_TERRY
+ ld a, TRADE_FOR_GURIO
ld [wWhichTrade], a
predef DoInGameTradeDialogue
Route11GateUpstairsScriptEnd:
diff --git a/scripts/Route18Gate2F.asm b/scripts/Route18Gate2F.asm
index efb6d70a..67ec2641 100644
--- a/scripts/Route18Gate2F.asm
+++ b/scripts/Route18Gate2F.asm
@@ -8,7 +8,7 @@ Route18Gate2F_TextPointers:
Route18GateUpstairsText1:
text_asm
- ld a, TRADE_FOR_MARC
+ ld a, TRADE_FOR_SPIKE
ld [wWhichTrade], a
predef DoInGameTradeDialogue
jp TextScriptEnd
diff --git a/scripts/Route2TradeHouse.asm b/scripts/Route2TradeHouse.asm
index 85ed2d34..8f2661f1 100644
--- a/scripts/Route2TradeHouse.asm
+++ b/scripts/Route2TradeHouse.asm
@@ -11,7 +11,7 @@ Route2HouseText1:
Route2HouseText2:
text_asm
- ld a, TRADE_FOR_MARCEL
+ ld a, TRADE_FOR_MILES
ld [wWhichTrade], a
predef DoInGameTradeDialogue
jp TextScriptEnd
diff --git a/scripts/UndergroundPathRoute5.asm b/scripts/UndergroundPathRoute5.asm
index 5c078050..47c75fef 100644
--- a/scripts/UndergroundPathRoute5.asm
+++ b/scripts/UndergroundPathRoute5.asm
@@ -11,7 +11,7 @@ UndergroundPathRoute5_TextPointers:
UndergroundPathEntranceRoute5Text1:
text_asm
- ld a, TRADE_FOR_SPOT
+ ld a, TRADE_FOR_RICKY
ld [wWhichTrade], a
predef DoInGameTradeDialogue
ld hl, UndergroundPathEntranceRoute5_TextScriptEndingText