From b29e5ee203b6fa4592180ef6cca732462cca9af6 Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 11:51:00 -0400 Subject: Add subdirectories to data/ similar to pokecrystal Top level text/ is now solely for the former text/maps/ files, and other files are in their respective subdirectories in data/. --- constants/evolution_constants.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'constants') diff --git a/constants/evolution_constants.asm b/constants/evolution_constants.asm index 86c466d8..01c4c078 100755 --- a/constants/evolution_constants.asm +++ b/constants/evolution_constants.asm @@ -1,4 +1,4 @@ -; See data/evos_moves.asm +; See data/pokemon/evos_moves.asm ; Evolution types EV_LEVEL EQU 1 -- cgit v1.3.1-sl0p From c9c59dc34323a5e0b1886db5f845c8d41620826e Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 12:44:47 -0400 Subject: Reorganize constants/ To do: add comments associating constants with data and code --- constants.asm | 18 +- constants/audio_constants.asm | 46 + constants/battle_constants.asm | 51 + constants/connection_constants.asm | 9 - constants/credits_constants.asm | 4 +- constants/event_constants.asm | 5123 ++++++++++++++++---------------- constants/evolution_constants.asm | 9 - constants/gfx_constants.asm | 17 + constants/hide_show_constants.asm | 3 +- constants/icon_constants.asm | 12 + constants/input_constants.asm | 18 + constants/item_constants.asm | 4 +- constants/list_constants.asm | 39 +- constants/map_data_constants.asm | 9 + constants/menu_constants.asm | 70 + constants/misc_constants.asm | 206 +- constants/move_animation_constants.asm | 6 +- constants/move_constants.asm | 6 +- constants/move_effect_constants.asm | 6 +- constants/music_constants.asm | 47 - constants/palette_constants.asm | 38 +- constants/pokedex_constants.asm | 3 +- constants/pokemon_constants.asm | 4 +- constants/pokemon_data_constants.asm | 28 + constants/script_constants.asm | 12 + constants/serial_constants.asm | 27 + constants/sprite_constants.asm | 30 +- constants/sprite_data_constants.asm | 28 + constants/status_constants.asm | 32 - constants/text_constants.asm | 3 + constants/tilesets.asm | 3 +- constants/trainer_constants.asm | 4 +- constants/type_constants.asm | 39 +- data/pokemon/evos_moves.asm | 2 +- engine/battle/core.asm | 4 +- macros/data_macros.asm | 4 + text.asm | 7 +- 37 files changed, 2988 insertions(+), 2983 deletions(-) create mode 100644 constants/audio_constants.asm create mode 100644 constants/battle_constants.asm delete mode 100755 constants/connection_constants.asm delete mode 100755 constants/evolution_constants.asm create mode 100644 constants/gfx_constants.asm create mode 100644 constants/icon_constants.asm create mode 100644 constants/input_constants.asm create mode 100755 constants/map_data_constants.asm create mode 100644 constants/menu_constants.asm create mode 100755 constants/pokemon_data_constants.asm create mode 100644 constants/script_constants.asm create mode 100644 constants/serial_constants.asm create mode 100644 constants/sprite_data_constants.asm delete mode 100755 constants/status_constants.asm (limited to 'constants') diff --git a/constants.asm b/constants.asm index c8e5a78d..996458a4 100644 --- a/constants.asm +++ b/constants.asm @@ -1,32 +1,40 @@ -INCLUDE "macros.asm" INCLUDE "charmap.asm" +INCLUDE "macros.asm" + INCLUDE "hram.asm" INCLUDE "vram.asm" INCLUDE "constants/hardware_constants.asm" INCLUDE "constants/oam_constants.asm" INCLUDE "constants/misc_constants.asm" - +INCLUDE "constants/gfx_constants.asm" +INCLUDE "constants/input_constants.asm" +INCLUDE "constants/serial_constants.asm" +INCLUDE "constants/script_constants.asm" INCLUDE "constants/pokemon_constants.asm" INCLUDE "constants/pokedex_constants.asm" +INCLUDE "constants/pokemon_data_constants.asm" INCLUDE "constants/trainer_constants.asm" INCLUDE "constants/item_constants.asm" INCLUDE "constants/type_constants.asm" INCLUDE "constants/move_constants.asm" INCLUDE "constants/move_animation_constants.asm" INCLUDE "constants/move_effect_constants.asm" -INCLUDE "constants/status_constants.asm" +INCLUDE "constants/battle_constants.asm" +INCLUDE "constants/icon_constants.asm" INCLUDE "constants/sprite_constants.asm" +INCLUDE "constants/sprite_data_constants.asm" INCLUDE "constants/palette_constants.asm" -INCLUDE "constants/evolution_constants.asm" INCLUDE "constants/list_constants.asm" INCLUDE "constants/map_constants.asm" -INCLUDE "constants/connection_constants.asm" +INCLUDE "constants/map_data_constants.asm" INCLUDE "constants/hide_show_constants.asm" INCLUDE "constants/credits_constants.asm" +INCLUDE "constants/audio_constants.asm" INCLUDE "constants/music_constants.asm" INCLUDE "constants/tilesets.asm" INCLUDE "constants/starter_mons.asm" INCLUDE "constants/event_constants.asm" INCLUDE "constants/text_constants.asm" +INCLUDE "constants/menu_constants.asm" diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm new file mode 100644 index 00000000..434bb4a3 --- /dev/null +++ b/constants/audio_constants.asm @@ -0,0 +1,46 @@ +; HW sound channel register base addresses +HW_CH1_BASE EQU (rNR10 % $100) +HW_CH2_BASE EQU ((rNR21 % $100) - 1) +HW_CH3_BASE EQU (rNR30 % $100) +HW_CH4_BASE EQU ((rNR41 % $100) - 1) + +; HW sound channel enable bit masks +HW_CH1_ENABLE_MASK EQU %00010001 +HW_CH2_ENABLE_MASK EQU %00100010 +HW_CH3_ENABLE_MASK EQU %01000100 +HW_CH4_ENABLE_MASK EQU %10001000 + +; HW sound channel disable bit masks +HW_CH1_DISABLE_MASK EQU (~HW_CH1_ENABLE_MASK & $ff) +HW_CH2_DISABLE_MASK EQU (~HW_CH2_ENABLE_MASK & $ff) +HW_CH3_DISABLE_MASK EQU (~HW_CH3_ENABLE_MASK & $ff) +HW_CH4_DISABLE_MASK EQU (~HW_CH4_ENABLE_MASK & $ff) + +REG_DUTY_SOUND_LEN EQU 1 +REG_VOLUME_ENVELOPE EQU 2 +REG_FREQUENCY_LO EQU 3 + +MAX_SFX_ID_1 EQUS "SFX_SAFARI_ZONE_PA" +MAX_SFX_ID_2 EQUS "SFX_SILPH_SCOPE" +MAX_SFX_ID_3 EQUS "SFX_SHOOTING_STAR" + +NOISE_INSTRUMENTS_START EQUS "SFX_NOISE_INSTRUMENT01" +NOISE_INSTRUMENTS_END EQUS "SFX_NOISE_INSTRUMENT19 + 1" + +CRY_SFX_START EQUS "SFX_CRY_00" +CRY_SFX_END EQUS "SFX_CRY_25 + 3" + +BATTLE_SFX_START EQUS "SFX_PECK" +BATTLE_SFX_END EQUS "SFX_SILPH_SCOPE + 1" + +; wChannelFlags1 constants +BIT_PERFECT_PITCH EQU 0 ; controlled by toggle_perfect_pitch command +BIT_SOUND_CALL EQU 1 ; if in sound call +BIT_NOISE_OR_SFX EQU 2 ; if channel is the music noise channel or an SFX channel +BIT_VIBRATO_DIRECTION EQU 3 ; if the pitch is above or below normal (cycles) +BIT_PITCH_SLIDE_ON EQU 4 ; if pitch slide is active +BIT_PITCH_SLIDE_DECREASING EQU 5 ; if the pitch slide frequency is decreasing (instead of increasing) +BIT_ROTATE_DUTY_CYCLE EQU 6 ; if rotating duty cycle + +; wChannelFlags2 constant (only has one flag) +BIT_EXECUTE_MUSIC EQU 0 ; if in execute music diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm new file mode 100644 index 00000000..e45ad7f1 --- /dev/null +++ b/constants/battle_constants.asm @@ -0,0 +1,51 @@ +MAX_LEVEL EQU 100 + +NUM_MOVES EQU 4 +NUM_STATS EQU 5 +NUM_STAT_MODS EQU 8 +NUM_DVS EQU 2 + +; D733 flags +BIT_TEST_BATTLE EQU 0 + +; battle type constants +BATTLE_TYPE_NORMAL EQU 0 +BATTLE_TYPE_OLD_MAN EQU 1 +BATTLE_TYPE_SAFARI EQU 2 + +; fixed damage constants +SONICBOOM_DAMAGE EQU 20 +DRAGON_RAGE_DAMAGE EQU 40 + +; non-volatile statuses +SLP EQU %111 ; sleep counter +PSN EQU 3 +BRN EQU 4 +FRZ EQU 5 +PAR EQU 6 + +; volatile statuses 1 +STORING_ENERGY EQU 0 ; Bide +THRASHING_ABOUT EQU 1 ; e.g. Thrash +ATTACKING_MULTIPLE_TIMES EQU 2 ; e.g. Double Kick, Fury Attack +FLINCHED EQU 3 +CHARGING_UP EQU 4 ; e.g. Solar Beam, Fly +USING_TRAPPING_MOVE EQU 5 ; e.g. Wrap +INVULNERABLE EQU 6 ; charging up Fly/Dig +CONFUSED EQU 7 + +; volatile statuses 2 +USING_X_ACCURACY EQU 0 +PROTECTED_BY_MIST EQU 1 +GETTING_PUMPED EQU 2 ; Focus Energy +; EQU 3 ; unused +HAS_SUBSTITUTE_UP EQU 4 +NEEDS_TO_RECHARGE EQU 5 ; Hyper Beam +USING_RAGE EQU 6 +SEEDED EQU 7 + +; volatile statuses 3 +BADLY_POISONED EQU 0 +HAS_LIGHT_SCREEN_UP EQU 1 +HAS_REFLECT_UP EQU 2 +TRANSFORMED EQU 3 diff --git a/constants/connection_constants.asm b/constants/connection_constants.asm deleted file mode 100755 index 154c4163..00000000 --- a/constants/connection_constants.asm +++ /dev/null @@ -1,9 +0,0 @@ -; width of east/west connections -; height of north/south connections -MAP_BORDER EQU 3 - -; connection directions -EAST EQU 1 -WEST EQU 2 -SOUTH EQU 4 -NORTH EQU 8 diff --git a/constants/credits_constants.asm b/constants/credits_constants.asm index f5715072..c9d15e9b 100644 --- a/constants/credits_constants.asm +++ b/constants/credits_constants.asm @@ -1,5 +1,4 @@ -const_value = 0 - + const_def const CRED_VERSION ; $00 const CRED_TAJIRI ; $01 const CRED_TA_OOTA ; $02 @@ -64,4 +63,3 @@ const_value = 0 const CRED_FUKUI ; $3D const CRED_CLUB ; $3E const CRED_PAAD ; $3F - diff --git a/constants/event_constants.asm b/constants/event_constants.asm index 5b73012b..e8697daa 100755 --- a/constants/event_constants.asm +++ b/constants/event_constants.asm @@ -1,2562 +1,2561 @@ -const_value = 0 - - const EVENT_FOLLOWED_OAK_INTO_LAB ; 000, (D747, bit 0) - const EVENT_001 ; 001, (D747, bit 1) - const EVENT_002 ; 002, (D747, bit 2) - const EVENT_HALL_OF_FAME_DEX_RATING ; 003, (D747, bit 3) - const EVENT_004 ; 004, (D747, bit 4) - const EVENT_005 ; 005, (D747, bit 5) - const EVENT_PALLET_AFTER_GETTING_POKEBALLS ; 006, (D747, bit 6) - const EVENT_007 ; 007, (D747, bit 7) - const EVENT_008 ; 008, (D748, bit 0) - const EVENT_009 ; 009, (D748, bit 1) - const EVENT_00A ; 00A, (D748, bit 2) - const EVENT_00B ; 00B, (D748, bit 3) - const EVENT_00C ; 00C, (D748, bit 4) - const EVENT_00D ; 00D, (D748, bit 5) - const EVENT_00E ; 00E, (D748, bit 6) - const EVENT_00F ; 00F, (D748, bit 7) - const EVENT_010 ; 010, (D749, bit 0) - const EVENT_011 ; 011, (D749, bit 1) - const EVENT_012 ; 012, (D749, bit 2) - const EVENT_013 ; 013, (D749, bit 3) - const EVENT_014 ; 014, (D749, bit 4) - const EVENT_015 ; 015, (D749, bit 5) - const EVENT_016 ; 016, (D749, bit 6) - const EVENT_017 ; 017, (D749, bit 7) - const EVENT_GOT_TOWN_MAP ; 018, (D74A, bit 0) - const EVENT_ENTERED_BLUES_HOUSE ; 019, (D74A, bit 1) - const EVENT_DAISY_WALKING ; 01A, (D74A, bit 2) - const EVENT_01B ; 01B, (D74A, bit 3) - const EVENT_01C ; 01C, (D74A, bit 4) - const EVENT_01D ; 01D, (D74A, bit 5) - const EVENT_01E ; 01E, (D74A, bit 6) - const EVENT_01F ; 01F, (D74A, bit 7) - const EVENT_FOLLOWED_OAK_INTO_LAB_2 ; 020, (D74B, bit 0) - const EVENT_OAK_ASKED_TO_CHOOSE_MON ; 021, (D74B, bit 1) - const EVENT_GOT_STARTER ; 022, (D74B, bit 2) - const EVENT_BATTLED_RIVAL_IN_OAKS_LAB ; 023, (D74B, bit 3) - const EVENT_GOT_POKEBALLS_FROM_OAK ; 024, (D74B, bit 4) - const EVENT_GOT_POKEDEX ; 025, (D74B, bit 5) - const EVENT_PALLET_AFTER_GETTING_POKEBALLS_2 ; 026, (D74B, bit 6) - const EVENT_OAK_APPEARED_IN_PALLET ; 027, (D74B, bit 7) - const EVENT_VIRIDIAN_GYM_OPEN ; 028, (D74C, bit 0) - const EVENT_GOT_TM42 ; 029, (D74C, bit 1) - const EVENT_02A ; 02A, (D74C, bit 2) - const EVENT_02B ; 02B, (D74C, bit 3) - const EVENT_02C ; 02C, (D74C, bit 4) - const EVENT_02D ; 02D, (D74C, bit 5) - const EVENT_02E ; 02E, (D74C, bit 6) - const EVENT_02F ; 02F, (D74C, bit 7) - const EVENT_030 ; 030, (D74D, bit 0) - const EVENT_031 ; 031, (D74D, bit 1) - const EVENT_032 ; 032, (D74D, bit 2) - const EVENT_033 ; 033, (D74D, bit 3) - const EVENT_034 ; 034, (D74D, bit 4) - const EVENT_035 ; 035, (D74D, bit 5) - const EVENT_036 ; 036, (D74D, bit 6) - const EVENT_037 ; 037, (D74D, bit 7) - const EVENT_OAK_GOT_PARCEL ; 038, (D74E, bit 0) - const EVENT_GOT_OAKS_PARCEL ; 039, (D74E, bit 1) - const EVENT_03A ; 03A, (D74E, bit 2) - const EVENT_03B ; 03B, (D74E, bit 3) - const EVENT_03C ; 03C, (D74E, bit 4) - const EVENT_03D ; 03D, (D74E, bit 5) - const EVENT_03E ; 03E, (D74E, bit 6) - const EVENT_03F ; 03F, (D74E, bit 7) - const EVENT_040 ; 040, (D74F, bit 0) - const EVENT_041 ; 041, (D74F, bit 1) - const EVENT_042 ; 042, (D74F, bit 2) - const EVENT_043 ; 043, (D74F, bit 3) - const EVENT_044 ; 044, (D74F, bit 4) - const EVENT_045 ; 045, (D74F, bit 5) - const EVENT_046 ; 046, (D74F, bit 6) - const EVENT_047 ; 047, (D74F, bit 7) - const EVENT_048 ; 048, (D750, bit 0) - const EVENT_049 ; 049, (D750, bit 1) - const EVENT_04A ; 04A, (D750, bit 2) - const EVENT_04B ; 04B, (D750, bit 3) - const EVENT_04C ; 04C, (D750, bit 4) - const EVENT_04D ; 04D, (D750, bit 5) - const EVENT_04E ; 04E, (D750, bit 6) - const EVENT_04F ; 04F, (D750, bit 7) - const EVENT_GOT_TM27 ; 050, (D751, bit 0) - const EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI ; 051, (D751, bit 1) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0 ; 052, (D751, bit 2) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1 ; 053, (D751, bit 3) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2 ; 054, (D751, bit 4) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3 ; 055, (D751, bit 5) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4 ; 056, (D751, bit 6) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5 ; 057, (D751, bit 7) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6 ; 058, (D752, bit 0) - const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7 ; 059, (D752, bit 1) - const EVENT_05A ; 05A, (D752, bit 2) - const EVENT_05B ; 05B, (D752, bit 3) - const EVENT_05C ; 05C, (D752, bit 4) - const EVENT_05D ; 05D, (D752, bit 5) - const EVENT_05E ; 05E, (D752, bit 6) - const EVENT_05F ; 05F, (D752, bit 7) - const EVENT_060 ; 060, (D753, bit 0) - const EVENT_061 ; 061, (D753, bit 1) - const EVENT_062 ; 062, (D753, bit 2) - const EVENT_063 ; 063, (D753, bit 3) - const EVENT_064 ; 064, (D753, bit 4) - const EVENT_065 ; 065, (D753, bit 5) - const EVENT_066 ; 066, (D753, bit 6) - const EVENT_067 ; 067, (D753, bit 7) - const EVENT_BOUGHT_MUSEUM_TICKET ; 068, (D754, bit 0) - const EVENT_GOT_OLD_AMBER ; 069, (D754, bit 1) - const EVENT_06A ; 06A, (D754, bit 2) - const EVENT_06B ; 06B, (D754, bit 3) - const EVENT_06C ; 06C, (D754, bit 4) - const EVENT_06D ; 06D, (D754, bit 5) - const EVENT_06E ; 06E, (D754, bit 6) - const EVENT_06F ; 06F, (D754, bit 7) - const EVENT_070 ; 070, (D755, bit 0) - const EVENT_071 ; 071, (D755, bit 1) - const EVENT_BEAT_PEWTER_GYM_TRAINER_0 ; 072, (D755, bit 2) - const EVENT_073 ; 073, (D755, bit 3) - const EVENT_074 ; 074, (D755, bit 4) - const EVENT_075 ; 075, (D755, bit 5) - const EVENT_GOT_TM34 ; 076, (D755, bit 6) - const EVENT_BEAT_BROCK ; 077, (D755, bit 7) - const EVENT_078 ; 078, (D756, bit 0) - const EVENT_079 ; 079, (D756, bit 1) - const EVENT_07A ; 07A, (D756, bit 2) - const EVENT_07B ; 07B, (D756, bit 3) - const EVENT_07C ; 07C, (D756, bit 4) - const EVENT_07D ; 07D, (D756, bit 5) - const EVENT_07E ; 07E, (D756, bit 6) - const EVENT_07F ; 07F, (D756, bit 7) - const EVENT_080 ; 080, (D757, bit 0) - const EVENT_081 ; 081, (D757, bit 1) - const EVENT_082 ; 082, (D757, bit 2) - const EVENT_083 ; 083, (D757, bit 3) - const EVENT_084 ; 084, (D757, bit 4) - const EVENT_085 ; 085, (D757, bit 5) - const EVENT_086 ; 086, (D757, bit 6) - const EVENT_087 ; 087, (D757, bit 7) - const EVENT_088 ; 088, (D758, bit 0) - const EVENT_089 ; 089, (D758, bit 1) - const EVENT_08A ; 08A, (D758, bit 2) - const EVENT_08B ; 08B, (D758, bit 3) - const EVENT_08C ; 08C, (D758, bit 4) - const EVENT_08D ; 08D, (D758, bit 5) - const EVENT_08E ; 08E, (D758, bit 6) - const EVENT_08F ; 08F, (D758, bit 7) - const EVENT_090 ; 090, (D759, bit 0) - const EVENT_091 ; 091, (D759, bit 1) - const EVENT_092 ; 092, (D759, bit 2) - const EVENT_093 ; 093, (D759, bit 3) - const EVENT_094 ; 094, (D759, bit 4) - const EVENT_095 ; 095, (D759, bit 5) - const EVENT_096 ; 096, (D759, bit 6) - const EVENT_097 ; 097, (D759, bit 7) - const EVENT_BEAT_CERULEAN_RIVAL ; 098, (D75A, bit 0) - const EVENT_099 ; 099, (D75A, bit 1) - const EVENT_09A ; 09A, (D75A, bit 2) - const EVENT_09B ; 09B, (D75A, bit 3) - const EVENT_09C ; 09C, (D75A, bit 4) - const EVENT_09D ; 09D, (D75A, bit 5) - const EVENT_09E ; 09E, (D75A, bit 6) - const EVENT_09F ; 09F, (D75A, bit 7) - const EVENT_0A0 ; 0A0, (D75B, bit 0) - const EVENT_0A1 ; 0A1, (D75B, bit 1) - const EVENT_0A2 ; 0A2, (D75B, bit 2) - const EVENT_0A3 ; 0A3, (D75B, bit 3) - const EVENT_0A4 ; 0A4, (D75B, bit 4) - const EVENT_0A5 ; 0A5, (D75B, bit 5) - const EVENT_0A6 ; 0A6, (D75B, bit 6) - const EVENT_BEAT_CERULEAN_ROCKET_THIEF ; 0A7, (D75B, bit 7) - const EVENT_0A8 ; 0A8, (D75C, bit 0) - const EVENT_0A9 ; 0A9, (D75C, bit 1) - const EVENT_0AA ; 0AA, (D75C, bit 2) - const EVENT_0AB ; 0AB, (D75C, bit 3) - const EVENT_0AC ; 0AC, (D75C, bit 4) - const EVENT_0AD ; 0AD, (D75C, bit 5) - const EVENT_0AE ; 0AE, (D75C, bit 6) - const EVENT_0AF ; 0AF, (D75C, bit 7) - const EVENT_0B0 ; 0B0, (D75D, bit 0) - const EVENT_0B1 ; 0B1, (D75D, bit 1) - const EVENT_0B2 ; 0B2, (D75D, bit 2) - const EVENT_0B3 ; 0B3, (D75D, bit 3) - const EVENT_0B4 ; 0B4, (D75D, bit 4) - const EVENT_0B5 ; 0B5, (D75D, bit 5) - const EVENT_0B6 ; 0B6, (D75D, bit 6) - const EVENT_0B7 ; 0B7, (D75D, bit 7) - const EVENT_0B8 ; 0B8, (D75E, bit 0) - const EVENT_0B9 ; 0B9, (D75E, bit 1) - const EVENT_BEAT_CERULEAN_GYM_TRAINER_0 ; 0BA, (D75E, bit 2) - const EVENT_BEAT_CERULEAN_GYM_TRAINER_1 ; 0BB, (D75E, bit 3) - const EVENT_0BC ; 0BC, (D75E, bit 4) - const EVENT_0BD ; 0BD, (D75E, bit 5) - const EVENT_GOT_TM11 ; 0BE, (D75E, bit 6) - const EVENT_BEAT_MISTY ; 0BF, (D75E, bit 7) - const EVENT_GOT_BICYCLE ; 0C0, (D75F, bit 0) - const EVENT_0C1 ; 0C1, (D75F, bit 1) - const EVENT_0C2 ; 0C2, (D75F, bit 2) - const EVENT_0C3 ; 0C3, (D75F, bit 3) - const EVENT_0C4 ; 0C4, (D75F, bit 4) - const EVENT_0C5 ; 0C5, (D75F, bit 5) - const EVENT_0C6 ; 0C6, (D75F, bit 6) - const EVENT_0C7 ; 0C7, (D75F, bit 7) - const EVENT_0C8 ; 0C8, (D760, bit 0) - const EVENT_0C9 ; 0C9, (D760, bit 1) - const EVENT_0CA ; 0CA, (D760, bit 2) - const EVENT_0CB ; 0CB, (D760, bit 3) - const EVENT_0CC ; 0CC, (D760, bit 4) - const EVENT_0CD ; 0CD, (D760, bit 5) - const EVENT_0CE ; 0CE, (D760, bit 6) - const EVENT_0CF ; 0CF, (D760, bit 7) - const EVENT_0D0 ; 0D0, (D761, bit 0) - const EVENT_0D1 ; 0D1, (D761, bit 1) - const EVENT_0D2 ; 0D2, (D761, bit 2) - const EVENT_0D3 ; 0D3, (D761, bit 3) - const EVENT_0D4 ; 0D4, (D761, bit 4) - const EVENT_0D5 ; 0D5, (D761, bit 5) - const EVENT_0D6 ; 0D6, (D761, bit 6) - const EVENT_0D7 ; 0D7, (D761, bit 7) - const EVENT_0D8 ; 0D8, (D762, bit 0) - const EVENT_0D9 ; 0D9, (D762, bit 1) - const EVENT_0DA ; 0DA, (D762, bit 2) - const EVENT_0DB ; 0DB, (D762, bit 3) - const EVENT_0DC ; 0DC, (D762, bit 4) - const EVENT_0DD ; 0DD, (D762, bit 5) - const EVENT_0DE ; 0DE, (D762, bit 6) - const EVENT_0DF ; 0DF, (D762, bit 7) - const EVENT_0E0 ; 0E0, (D763, bit 0) - const EVENT_0E1 ; 0E1, (D763, bit 1) - const EVENT_0E2 ; 0E2, (D763, bit 2) - const EVENT_0E3 ; 0E3, (D763, bit 3) - const EVENT_0E4 ; 0E4, (D763, bit 4) - const EVENT_0E5 ; 0E5, (D763, bit 5) - const EVENT_0E6 ; 0E6, (D763, bit 6) - const EVENT_0E7 ; 0E7, (D763, bit 7) - const EVENT_0E8 ; 0E8, (D764, bit 0) - const EVENT_0E9 ; 0E9, (D764, bit 1) - const EVENT_0EA ; 0EA, (D764, bit 2) - const EVENT_0EB ; 0EB, (D764, bit 3) - const EVENT_0EC ; 0EC, (D764, bit 4) - const EVENT_0ED ; 0ED, (D764, bit 5) - const EVENT_POKEMON_TOWER_RIVAL_ON_LEFT ; 0EE, (D764, bit 6) - const EVENT_BEAT_POKEMON_TOWER_RIVAL ; 0EF, (D764, bit 7) - const EVENT_0F0 ; 0F0, (D765, bit 0) - const EVENT_BEAT_POKEMONTOWER_3_TRAINER_0 ; 0F1, (D765, bit 1) - const EVENT_BEAT_POKEMONTOWER_3_TRAINER_1 ; 0F2, (D765, bit 2) - const EVENT_BEAT_POKEMONTOWER_3_TRAINER_2 ; 0F3, (D765, bit 3) - const EVENT_0F4 ; 0F4, (D765, bit 4) - const EVENT_0F5 ; 0F5, (D765, bit 5) - const EVENT_0F6 ; 0F6, (D765, bit 6) - const EVENT_0F7 ; 0F7, (D765, bit 7) - const EVENT_0F8 ; 0F8, (D766, bit 0) - const EVENT_BEAT_POKEMONTOWER_4_TRAINER_0 ; 0F9, (D766, bit 1) - const EVENT_BEAT_POKEMONTOWER_4_TRAINER_1 ; 0FA, (D766, bit 2) - const EVENT_BEAT_POKEMONTOWER_4_TRAINER_2 ; 0FB, (D766, bit 3) - const EVENT_0FC ; 0FC, (D766, bit 4) - const EVENT_0FD ; 0FD, (D766, bit 5) - const EVENT_0FE ; 0FE, (D766, bit 6) - const EVENT_0FF ; 0FF, (D766, bit 7) - const EVENT_100 ; 100, (D767, bit 0) - const EVENT_101 ; 101, (D767, bit 1) - const EVENT_BEAT_POKEMONTOWER_5_TRAINER_0 ; 102, (D767, bit 2) - const EVENT_BEAT_POKEMONTOWER_5_TRAINER_1 ; 103, (D767, bit 3) - const EVENT_BEAT_POKEMONTOWER_5_TRAINER_2 ; 104, (D767, bit 4) - const EVENT_BEAT_POKEMONTOWER_5_TRAINER_3 ; 105, (D767, bit 5) - const EVENT_106 ; 106, (D767, bit 6) - const EVENT_IN_PURIFIED_ZONE ; 107, (D767, bit 7) - const EVENT_108 ; 108, (D768, bit 0) - const EVENT_BEAT_POKEMONTOWER_6_TRAINER_0 ; 109, (D768, bit 1) - const EVENT_BEAT_POKEMONTOWER_6_TRAINER_1 ; 10A, (D768, bit 2) - const EVENT_BEAT_POKEMONTOWER_6_TRAINER_2 ; 10B, (D768, bit 3) - const EVENT_10C ; 10C, (D768, bit 4) - const EVENT_10D ; 10D, (D768, bit 5) - const EVENT_10E ; 10E, (D768, bit 6) - const EVENT_BEAT_GHOST_MAROWAK ; 10F, (D768, bit 7) - const EVENT_110 ; 110, (D769, bit 0) - const EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 ; 111, (D769, bit 1) - const EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 ; 112, (D769, bit 2) - const EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 ; 113, (D769, bit 3) - const EVENT_114 ; 114, (D769, bit 4) - const EVENT_115 ; 115, (D769, bit 5) - const EVENT_116 ; 116, (D769, bit 6) - const EVENT_RESCUED_MR_FUJI_2 ; 117, (D769, bit 7) - const EVENT_118 ; 118, (D76A, bit 0) - const EVENT_119 ; 119, (D76A, bit 1) - const EVENT_11A ; 11A, (D76A, bit 2) - const EVENT_11B ; 11B, (D76A, bit 3) - const EVENT_11C ; 11C, (D76A, bit 4) - const EVENT_11D ; 11D, (D76A, bit 5) - const EVENT_11E ; 11E, (D76A, bit 6) - const EVENT_11F ; 11F, (D76A, bit 7) - const EVENT_120 ; 120, (D76B, bit 0) - const EVENT_121 ; 121, (D76B, bit 1) - const EVENT_122 ; 122, (D76B, bit 2) - const EVENT_123 ; 123, (D76B, bit 3) - const EVENT_124 ; 124, (D76B, bit 4) - const EVENT_125 ; 125, (D76B, bit 5) - const EVENT_126 ; 126, (D76B, bit 6) - const EVENT_127 ; 127, (D76B, bit 7) - const EVENT_GOT_POKE_FLUTE ; 128, (D76C, bit 0) - const EVENT_129 ; 129, (D76C, bit 1) - const EVENT_12A ; 12A, (D76C, bit 2) - const EVENT_12B ; 12B, (D76C, bit 3) - const EVENT_12C ; 12C, (D76C, bit 4) - const EVENT_12D ; 12D, (D76C, bit 5) - const EVENT_12E ; 12E, (D76C, bit 6) - const EVENT_12F ; 12F, (D76C, bit 7) - const EVENT_130 ; 130, (D76D, bit 0) - const EVENT_131 ; 131, (D76D, bit 1) - const EVENT_132 ; 132, (D76D, bit 2) - const EVENT_133 ; 133, (D76D, bit 3) - const EVENT_134 ; 134, (D76D, bit 4) - const EVENT_135 ; 135, (D76D, bit 5) - const EVENT_136 ; 136, (D76D, bit 6) - const EVENT_137 ; 137, (D76D, bit 7) - const EVENT_138 ; 138, (D76E, bit 0) - const EVENT_139 ; 139, (D76E, bit 1) - const EVENT_13A ; 13A, (D76E, bit 2) - const EVENT_13B ; 13B, (D76E, bit 3) - const EVENT_13C ; 13C, (D76E, bit 4) - const EVENT_13D ; 13D, (D76E, bit 5) - const EVENT_13E ; 13E, (D76E, bit 6) - const EVENT_13F ; 13F, (D76E, bit 7) - const EVENT_140 ; 140, (D76F, bit 0) - const EVENT_141 ; 141, (D76F, bit 1) - const EVENT_142 ; 142, (D76F, bit 2) - const EVENT_143 ; 143, (D76F, bit 3) - const EVENT_144 ; 144, (D76F, bit 4) - const EVENT_145 ; 145, (D76F, bit 5) - const EVENT_146 ; 146, (D76F, bit 6) - const EVENT_147 ; 147, (D76F, bit 7) - const EVENT_148 ; 148, (D770, bit 0) - const EVENT_149 ; 149, (D770, bit 1) - const EVENT_14A ; 14A, (D770, bit 2) - const EVENT_14B ; 14B, (D770, bit 3) - const EVENT_14C ; 14C, (D770, bit 4) - const EVENT_14D ; 14D, (D770, bit 5) - const EVENT_14E ; 14E, (D770, bit 6) - const EVENT_14F ; 14F, (D770, bit 7) - const EVENT_150 ; 150, (D771, bit 0) - const EVENT_GOT_BIKE_VOUCHER ; 151, (D771, bit 1) - const EVENT_152 ; 152, (D771, bit 2) - const EVENT_153 ; 153, (D771, bit 3) - const EVENT_154 ; 154, (D771, bit 4) - const EVENT_155 ; 155, (D771, bit 5) - const EVENT_SEEL_FAN_BOAST ; 156, (D771, bit 6) - const EVENT_PIKACHU_FAN_BOAST ; 157, (D771, bit 7) - const EVENT_158 ; 158, (D772, bit 0) - const EVENT_159 ; 159, (D772, bit 1) - const EVENT_15A ; 15A, (D772, bit 2) - const EVENT_15B ; 15B, (D772, bit 3) - const EVENT_15C ; 15C, (D772, bit 4) - const EVENT_15D ; 15D, (D772, bit 5) - const EVENT_15E ; 15E, (D772, bit 6) - const EVENT_15F ; 15F, (D772, bit 7) - const EVENT_2ND_LOCK_OPENED ; 160, (D773, bit 0) - const EVENT_1ST_LOCK_OPENED ; 161, (D773, bit 1) - const EVENT_BEAT_VERMILION_GYM_TRAINER_0 ; 162, (D773, bit 2) - const EVENT_BEAT_VERMILION_GYM_TRAINER_1 ; 163, (D773, bit 3) - const EVENT_BEAT_VERMILION_GYM_TRAINER_2 ; 164, (D773, bit 4) - const EVENT_165 ; 165, (D773, bit 5) - const EVENT_GOT_TM24 ; 166, (D773, bit 6) - const EVENT_BEAT_LT_SURGE ; 167, (D773, bit 7) - const EVENT_168 ; 168, (D774, bit 0) - const EVENT_169 ; 169, (D774, bit 1) - const EVENT_16A ; 16A, (D774, bit 2) - const EVENT_16B ; 16B, (D774, bit 3) - const EVENT_16C ; 16C, (D774, bit 4) - const EVENT_16D ; 16D, (D774, bit 5) - const EVENT_16E ; 16E, (D774, bit 6) - const EVENT_16F ; 16F, (D774, bit 7) - const EVENT_170 ; 170, (D775, bit 0) - const EVENT_171 ; 171, (D775, bit 1) - const EVENT_172 ; 172, (D775, bit 2) - const EVENT_173 ; 173, (D775, bit 3) - const EVENT_174 ; 174, (D775, bit 4) - const EVENT_175 ; 175, (D775, bit 5) - const EVENT_176 ; 176, (D775, bit 6) - const EVENT_177 ; 177, (D775, bit 7) - const EVENT_178 ; 178, (D776, bit 0) - const EVENT_179 ; 179, (D776, bit 1) - const EVENT_17A ; 17A, (D776, bit 2) - const EVENT_17B ; 17B, (D776, bit 3) - const EVENT_17C ; 17C, (D776, bit 4) - const EVENT_17D ; 17D, (D776, bit 5) - const EVENT_17E ; 17E, (D776, bit 6) - const EVENT_17F ; 17F, (D776, bit 7) - const EVENT_GOT_TM41 ; 180, (D777, bit 0) - const EVENT_181 ; 181, (D777, bit 1) - const EVENT_182 ; 182, (D777, bit 2) - const EVENT_183 ; 183, (D777, bit 3) - const EVENT_184 ; 184, (D777, bit 4) - const EVENT_185 ; 185, (D777, bit 5) - const EVENT_186 ; 186, (D777, bit 6) - const EVENT_187 ; 187, (D777, bit 7) - const EVENT_188 ; 188, (D778, bit 0) - const EVENT_189 ; 189, (D778, bit 1) - const EVENT_18A ; 18A, (D778, bit 2) - const EVENT_18B ; 18B, (D778, bit 3) - const EVENT_GOT_TM13 ; 18C, (D778, bit 4) - const EVENT_GOT_TM48 ; 18D, (D778, bit 5) - const EVENT_GOT_TM49 ; 18E, (D778, bit 6) - const EVENT_GOT_TM18 ; 18F, (D778, bit 7) - const EVENT_190 ; 190, (D779, bit 0) - const EVENT_191 ; 191, (D779, bit 1) - const EVENT_192 ; 192, (D779, bit 2) - const EVENT_193 ; 193, (D779, bit 3) - const EVENT_194 ; 194, (D779, bit 4) - const EVENT_195 ; 195, (D779, bit 5) - const EVENT_196 ; 196, (D779, bit 6) - const EVENT_197 ; 197, (D779, bit 7) - const EVENT_198 ; 198, (D77A, bit 0) - const EVENT_199 ; 199, (D77A, bit 1) - const EVENT_19A ; 19A, (D77A, bit 2) - const EVENT_19B ; 19B, (D77A, bit 3) - const EVENT_19C ; 19C, (D77A, bit 4) - const EVENT_19D ; 19D, (D77A, bit 5) - const EVENT_19E ; 19E, (D77A, bit 6) - const EVENT_19F ; 19F, (D77A, bit 7) - const EVENT_1A0 ; 1A0, (D77B, bit 0) - const EVENT_1A1 ; 1A1, (D77B, bit 1) - const EVENT_1A2 ; 1A2, (D77B, bit 2) - const EVENT_1A3 ; 1A3, (D77B, bit 3) - const EVENT_1A4 ; 1A4, (D77B, bit 4) - const EVENT_1A5 ; 1A5, (D77B, bit 5) - const EVENT_1A6 ; 1A6, (D77B, bit 6) - const EVENT_1A7 ; 1A7, (D77B, bit 7) - const EVENT_GOT_TM21 ; 1A8, (D77C, bit 0) - const EVENT_BEAT_ERIKA ; 1A9, (D77C, bit 1) - const EVENT_BEAT_CELADON_GYM_TRAINER_0 ; 1AA, (D77C, bit 2) - const EVENT_BEAT_CELADON_GYM_TRAINER_1 ; 1AB, (D77C, bit 3) - const EVENT_BEAT_CELADON_GYM_TRAINER_2 ; 1AC, (D77C, bit 4) - const EVENT_BEAT_CELADON_GYM_TRAINER_3 ; 1AD, (D77C, bit 5) - const EVENT_BEAT_CELADON_GYM_TRAINER_4 ; 1AE, (D77C, bit 6) - const EVENT_BEAT_CELADON_GYM_TRAINER_5 ; 1AF, (D77C, bit 7) - const EVENT_BEAT_CELADON_GYM_TRAINER_6 ; 1B0, (D77D, bit 0) - const EVENT_1B1 ; 1B1, (D77D, bit 1) - const EVENT_1B2 ; 1B2, (D77D, bit 2) - const EVENT_1B3 ; 1B3, (D77D, bit 3) - const EVENT_1B4 ; 1B4, (D77D, bit 4) - const EVENT_1B5 ; 1B5, (D77D, bit 5) - const EVENT_1B6 ; 1B6, (D77D, bit 6) - const EVENT_1B7 ; 1B7, (D77D, bit 7) - const EVENT_1B8 ; 1B8, (D77E, bit 0) - const EVENT_FOUND_ROCKET_HIDEOUT ; 1B9, (D77E, bit 1) - const EVENT_GOT_10_COINS ; 1BA, (D77E, bit 2) - const EVENT_GOT_20_COINS ; 1BB, (D77E, bit 3) - const EVENT_GOT_20_COINS_2 ; 1BC, (D77E, bit 4) - const EVENT_1BD ; 1BD, (D77E, bit 5) - const EVENT_1BE ; 1BE, (D77E, bit 6) - const EVENT_1BF ; 1BF, (D77E, bit 7) - const EVENT_1C0 ; 1C0, (D77F, bit 0) - const EVENT_1C1 ; 1C1, (D77F, bit 1) - const EVENT_1C2 ; 1C2, (D77F, bit 2) - const EVENT_1C3 ; 1C3, (D77F, bit 3) - const EVENT_1C4 ; 1C4, (D77F, bit 4) - const EVENT_1C5 ; 1C5, (D77F, bit 5) - const EVENT_1C6 ; 1C6, (D77F, bit 6) - const EVENT_1C7 ; 1C7, (D77F, bit 7) - const EVENT_1C8 ; 1C8, (D780, bit 0) - const EVENT_1C9 ; 1C9, (D780, bit 1) - const EVENT_1CA ; 1CA, (D780, bit 2) - const EVENT_1CB ; 1CB, (D780, bit 3) - const EVENT_1CC ; 1CC, (D780, bit 4) - const EVENT_1CD ; 1CD, (D780, bit 5) - const EVENT_1CE ; 1CE, (D780, bit 6) - const EVENT_1CF ; 1CF, (D780, bit 7) - const EVENT_1D0 ; 1D0, (D781, bit 0) - const EVENT_1D1 ; 1D1, (D781, bit 1) - const EVENT_1D2 ; 1D2, (D781, bit 2) - const EVENT_1D3 ; 1D3, (D781, bit 3) - const EVENT_1D4 ; 1D4, (D781, bit 4) - const EVENT_1D5 ; 1D5, (D781, bit 5) - const EVENT_1D6 ; 1D6, (D781, bit 6) - const EVENT_1D7 ; 1D7, (D781, bit 7) - const EVENT_1D8 ; 1D8, (D782, bit 0) - const EVENT_1D9 ; 1D9, (D782, bit 1) - const EVENT_1DA ; 1DA, (D782, bit 2) - const EVENT_1DB ; 1DB, (D782, bit 3) - const EVENT_1DC ; 1DC, (D782, bit 4) - const EVENT_1DD ; 1DD, (D782, bit 5) - const EVENT_1DE ; 1DE, (D782, bit 6) - const EVENT_1DF ; 1DF, (D782, bit 7) - const EVENT_GOT_COIN_CASE ; 1E0, (D783, bit 0) - const EVENT_1E1 ; 1E1, (D783, bit 1) - const EVENT_1E2 ; 1E2, (D783, bit 2) - const EVENT_1E3 ; 1E3, (D783, bit 3) - const EVENT_1E4 ; 1E4, (D783, bit 4) - const EVENT_1E5 ; 1E5, (D783, bit 5) - const EVENT_1E6 ; 1E6, (D783, bit 6) - const EVENT_1E7 ; 1E7, (D783, bit 7) - const EVENT_1E8 ; 1E8, (D784, bit 0) - const EVENT_1E9 ; 1E9, (D784, bit 1) - const EVENT_1EA ; 1EA, (D784, bit 2) - const EVENT_1EB ; 1EB, (D784, bit 3) - const EVENT_1EC ; 1EC, (D784, bit 4) - const EVENT_1ED ; 1ED, (D784, bit 5) - const EVENT_1EE ; 1EE, (D784, bit 6) - const EVENT_1EF ; 1EF, (D784, bit 7) - const EVENT_1F0 ; 1F0, (D785, bit 0) - const EVENT_1F1 ; 1F1, (D785, bit 1) - const EVENT_1F2 ; 1F2, (D785, bit 2) - const EVENT_1F3 ; 1F3, (D785, bit 3) - const EVENT_1F4 ; 1F4, (D785, bit 4) - const EVENT_1F5 ; 1F5, (D785, bit 5) - const EVENT_1F6 ; 1F6, (D785, bit 6) - const EVENT_1F7 ; 1F7, (D785, bit 7) - const EVENT_1F8 ; 1F8, (D786, bit 0) - const EVENT_1F9 ; 1F9, (D786, bit 1) - const EVENT_1FA ; 1FA, (D786, bit 2) - const EVENT_1FB ; 1FB, (D786, bit 3) - const EVENT_1FC ; 1FC, (D786, bit 4) - const EVENT_1FD ; 1FD, (D786, bit 5) - const EVENT_1FE ; 1FE, (D786, bit 6) - const EVENT_1FF ; 1FF, (D786, bit 7) - const EVENT_200 ; 200, (D787, bit 0) - const EVENT_201 ; 201, (D787, bit 1) - const EVENT_202 ; 202, (D787, bit 2) - const EVENT_203 ; 203, (D787, bit 3) - const EVENT_204 ; 204, (D787, bit 4) - const EVENT_205 ; 205, (D787, bit 5) - const EVENT_206 ; 206, (D787, bit 6) - const EVENT_207 ; 207, (D787, bit 7) - const EVENT_208 ; 208, (D788, bit 0) - const EVENT_209 ; 209, (D788, bit 1) - const EVENT_20A ; 20A, (D788, bit 2) - const EVENT_20B ; 20B, (D788, bit 3) - const EVENT_20C ; 20C, (D788, bit 4) - const EVENT_20D ; 20D, (D788, bit 5) - const EVENT_20E ; 20E, (D788, bit 6) - const EVENT_20F ; 20F, (D788, bit 7) - const EVENT_210 ; 210, (D789, bit 0) - const EVENT_211 ; 211, (D789, bit 1) - const EVENT_212 ; 212, (D789, bit 2) - const EVENT_213 ; 213, (D789, bit 3) - const EVENT_214 ; 214, (D789, bit 4) - const EVENT_215 ; 215, (D789, bit 5) - const EVENT_216 ; 216, (D789, bit 6) - const EVENT_217 ; 217, (D789, bit 7) - const EVENT_218 ; 218, (D78A, bit 0) - const EVENT_219 ; 219, (D78A, bit 1) - const EVENT_21A ; 21A, (D78A, bit 2) - const EVENT_21B ; 21B, (D78A, bit 3) - const EVENT_21C ; 21C, (D78A, bit 4) - const EVENT_21D ; 21D, (D78A, bit 5) - const EVENT_21E ; 21E, (D78A, bit 6) - const EVENT_21F ; 21F, (D78A, bit 7) - const EVENT_220 ; 220, (D78B, bit 0) - const EVENT_221 ; 221, (D78B, bit 1) - const EVENT_222 ; 222, (D78B, bit 2) - const EVENT_223 ; 223, (D78B, bit 3) - const EVENT_224 ; 224, (D78B, bit 4) - const EVENT_225 ; 225, (D78B, bit 5) - const EVENT_226 ; 226, (D78B, bit 6) - const EVENT_227 ; 227, (D78B, bit 7) - const EVENT_228 ; 228, (D78C, bit 0) - const EVENT_229 ; 229, (D78C, bit 1) - const EVENT_22A ; 22A, (D78C, bit 2) - const EVENT_22B ; 22B, (D78C, bit 3) - const EVENT_22C ; 22C, (D78C, bit 4) - const EVENT_22D ; 22D, (D78C, bit 5) - const EVENT_22E ; 22E, (D78C, bit 6) - const EVENT_22F ; 22F, (D78C, bit 7) - const EVENT_230 ; 230, (D78D, bit 0) - const EVENT_231 ; 231, (D78D, bit 1) - const EVENT_232 ; 232, (D78D, bit 2) - const EVENT_233 ; 233, (D78D, bit 3) - const EVENT_234 ; 234, (D78D, bit 4) - const EVENT_235 ; 235, (D78D, bit 5) - const EVENT_236 ; 236, (D78D, bit 6) - const EVENT_237 ; 237, (D78D, bit 7) - const EVENT_GOT_HM04 ; 238, (D78E, bit 0) - const EVENT_GAVE_GOLD_TEETH ; 239, (D78E, bit 1) - const EVENT_23A ; 23A, (D78E, bit 2) - const EVENT_23B ; 23B, (D78E, bit 3) - const EVENT_23C ; 23C, (D78E, bit 4) - const EVENT_23D ; 23D, (D78E, bit 5) - const EVENT_23E ; 23E, (D78E, bit 6) - const EVENT_23F ; 23F, (D78E, bit 7) - const EVENT_240 ; 240, (D78F, bit 0) - const EVENT_241 ; 241, (D78F, bit 1) - const EVENT_242 ; 242, (D78F, bit 2) - const EVENT_243 ; 243, (D78F, bit 3) - const EVENT_244 ; 244, (D78F, bit 4) - const EVENT_245 ; 245, (D78F, bit 5) - const EVENT_246 ; 246, (D78F, bit 6) - const EVENT_247 ; 247, (D78F, bit 7) - const EVENT_248 ; 248, (D790, bit 0) - const EVENT_249 ; 249, (D790, bit 1) - const EVENT_24A ; 24A, (D790, bit 2) - const EVENT_24B ; 24B, (D790, bit 3) - const EVENT_24C ; 24C, (D790, bit 4) - const EVENT_24D ; 24D, (D790, bit 5) - const EVENT_SAFARI_GAME_OVER ; 24E, (D790, bit 6) - const EVENT_IN_SAFARI_ZONE ; 24F, (D790, bit 7) - const EVENT_250 ; 250, (D791, bit 0) - const EVENT_251 ; 251, (D791, bit 1) - const EVENT_252 ; 252, (D791, bit 2) - const EVENT_253 ; 253, (D791, bit 3) - const EVENT_254 ; 254, (D791, bit 4) - const EVENT_255 ; 255, (D791, bit 5) - const EVENT_256 ; 256, (D791, bit 6) - const EVENT_257 ; 257, (D791, bit 7) - const EVENT_GOT_TM06 ; 258, (D792, bit 0) - const EVENT_BEAT_KOGA ; 259, (D792, bit 1) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_0 ; 25A, (D792, bit 2) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_1 ; 25B, (D792, bit 3) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_2 ; 25C, (D792, bit 4) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_3 ; 25D, (D792, bit 5) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_4 ; 25E, (D792, bit 6) - const EVENT_BEAT_FUCHSIA_GYM_TRAINER_5 ; 25F, (D792, bit 7) - const EVENT_260 ; 260, (D793, bit 0) - const EVENT_261 ; 261, (D793, bit 1) - const EVENT_262 ; 262, (D793, bit 2) - const EVENT_263 ; 263, (D793, bit 3) - const EVENT_264 ; 264, (D793, bit 4) - const EVENT_265 ; 265, (D793, bit 5) - const EVENT_266 ; 266, (D793, bit 6) - const EVENT_267 ; 267, (D793, bit 7) - const EVENT_268 ; 268, (D794, bit 0) - const EVENT_269 ; 269, (D794, bit 1) - const EVENT_26A ; 26A, (D794, bit 2) - const EVENT_26B ; 26B, (D794, bit 3) - const EVENT_26C ; 26C, (D794, bit 4) - const EVENT_26D ; 26D, (D794, bit 5) - const EVENT_26E ; 26E, (D794, bit 6) - const EVENT_26F ; 26F, (D794, bit 7) - const EVENT_270 ; 270, (D795, bit 0) - const EVENT_271 ; 271, (D795, bit 1) - const EVENT_272 ; 272, (D795, bit 2) - const EVENT_273 ; 273, (D795, bit 3) - const EVENT_274 ; 274, (D795, bit 4) - const EVENT_275 ; 275, (D795, bit 5) - const EVENT_276 ; 276, (D795, bit 6) - const EVENT_277 ; 277, (D795, bit 7) - const EVENT_MANSION_SWITCH_ON ; 278, (D796, bit 0) - const EVENT_279 ; 279, (D796, bit 1) - const EVENT_27A ; 27A, (D796, bit 2) - const EVENT_27B ; 27B, (D796, bit 3) - const EVENT_27C ; 27C, (D796, bit 4) - const EVENT_27D ; 27D, (D796, bit 5) - const EVENT_27E ; 27E, (D796, bit 6) - const EVENT_27F ; 27F, (D796, bit 7) - const EVENT_280 ; 280, (D797, bit 0) - const EVENT_281 ; 281, (D797, bit 1) - const EVENT_282 ; 282, (D797, bit 2) - const EVENT_283 ; 283, (D797, bit 3) - const EVENT_284 ; 284, (D797, bit 4) - const EVENT_285 ; 285, (D797, bit 5) - const EVENT_286 ; 286, (D797, bit 6) - const EVENT_287 ; 287, (D797, bit 7) - const EVENT_288 ; 288, (D798, bit 0) - const EVENT_BEAT_MANSION_1_TRAINER_0 ; 289, (D798, bit 1) - const EVENT_28A ; 28A, (D798, bit 2) - const EVENT_28B ; 28B, (D798, bit 3) - const EVENT_28C ; 28C, (D798, bit 4) - const EVENT_28D ; 28D, (D798, bit 5) - const EVENT_28E ; 28E, (D798, bit 6) - const EVENT_28F ; 28F, (D798, bit 7) - const EVENT_290 ; 290, (D799, bit 0) - const EVENT_291 ; 291, (D799, bit 1) - const EVENT_292 ; 292, (D799, bit 2) - const EVENT_293 ; 293, (D799, bit 3) - const EVENT_294 ; 294, (D799, bit 4) - const EVENT_295 ; 295, (D799, bit 5) - const EVENT_296 ; 296, (D799, bit 6) - const EVENT_297 ; 297, (D799, bit 7) - const EVENT_GOT_TM38 ; 298, (D79A, bit 0) - const EVENT_BEAT_BLAINE ; 299, (D79A, bit 1) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_0 ; 29A, (D79A, bit 2) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_1 ; 29B, (D79A, bit 3) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_2 ; 29C, (D79A, bit 4) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_3 ; 29D, (D79A, bit 5) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_4 ; 29E, (D79A, bit 6) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_5 ; 29F, (D79A, bit 7) - const EVENT_BEAT_CINNABAR_GYM_TRAINER_6 ; 2A0, (D79B, bit 0) - const EVENT_2A1 ; 2A1, (D79B, bit 1) - const EVENT_2A2 ; 2A2, (D79B, bit 2) - const EVENT_2A3 ; 2A3, (D79B, bit 3) - const EVENT_2A4 ; 2A4, (D79B, bit 4) - const EVENT_2A5 ; 2A5, (D79B, bit 5) - const EVENT_2A6 ; 2A6, (D79B, bit 6) - const EVENT_2A7 ; 2A7, (D79B, bit 7) - const EVENT_CINNABAR_GYM_GATE0_UNLOCKED ; 2A8, (D79C, bit 0) doesn't exist, but the bit is set - const EVENT_CINNABAR_GYM_GATE1_UNLOCKED ; 2A9, (D79C, bit 1) - const EVENT_CINNABAR_GYM_GATE2_UNLOCKED ; 2AA, (D79C, bit 2) - const EVENT_CINNABAR_GYM_GATE3_UNLOCKED ; 2AB, (D79C, bit 3) - const EVENT_CINNABAR_GYM_GATE4_UNLOCKED ; 2AC, (D79C, bit 4) - const EVENT_CINNABAR_GYM_GATE5_UNLOCKED ; 2AD, (D79C, bit 5) - const EVENT_CINNABAR_GYM_GATE6_UNLOCKED ; 2AE, (D79C, bit 6) - const EVENT_2AF ; 2AF, (D79C, bit 7) - const EVENT_2B0 ; 2B0, (D79D, bit 0) - const EVENT_2B1 ; 2B1, (D79D, bit 1) - const EVENT_2B2 ; 2B2, (D79D, bit 2) - const EVENT_2B3 ; 2B3, (D79D, bit 3) - const EVENT_2B4 ; 2B4, (D79D, bit 4) - const EVENT_2B5 ; 2B5, (D79D, bit 5) - const EVENT_2B6 ; 2B6, (D79D, bit 6) - const EVENT_2B7 ; 2B7, (D79D, bit 7) - const EVENT_2B8 ; 2B8, (D79E, bit 0) - const EVENT_2B9 ; 2B9, (D79E, bit 1) - const EVENT_2BA ; 2BA, (D79E, bit 2) - const EVENT_2BB ; 2BB, (D79E, bit 3) - const EVENT_2BC ; 2BC, (D79E, bit 4) - const EVENT_2BD ; 2BD, (D79E, bit 5) - const EVENT_2BE ; 2BE, (D79E, bit 6) - const EVENT_2BF ; 2BF, (D79E, bit 7) - const EVENT_2C0 ; 2C0, (D79F, bit 0) - const EVENT_2C1 ; 2C1, (D79F, bit 1) - const EVENT_2C2 ; 2C2, (D79F, bit 2) - const EVENT_2C3 ; 2C3, (D79F, bit 3) - const EVENT_2C4 ; 2C4, (D79F, bit 4) - const EVENT_2C5 ; 2C5, (D79F, bit 5) - const EVENT_2C6 ; 2C6, (D79F, bit 6) - const EVENT_2C7 ; 2C7, (D79F, bit 7) - const EVENT_2C8 ; 2C8, (D7A0, bit 0) - const EVENT_2C9 ; 2C9, (D7A0, bit 1) - const EVENT_2CA ; 2CA, (D7A0, bit 2) - const EVENT_2CB ; 2CB, (D7A0, bit 3) - const EVENT_2CC ; 2CC, (D7A0, bit 4) - const EVENT_2CD ; 2CD, (D7A0, bit 5) - const EVENT_2CE ; 2CE, (D7A0, bit 6) - const EVENT_2CF ; 2CF, (D7A0, bit 7) - const EVENT_2D0 ; 2D0, (D7A1, bit 0) - const EVENT_2D1 ; 2D1, (D7A1, bit 1) - const EVENT_2D2 ; 2D2, (D7A1, bit 2) - const EVENT_2D3 ; 2D3, (D7A1, bit 3) - const EVENT_2D4 ; 2D4, (D7A1, bit 4) - const EVENT_2D5 ; 2D5, (D7A1, bit 5) - const EVENT_2D6 ; 2D6, (D7A1, bit 6) - const EVENT_GOT_TM35 ; 2D7, (D7A1, bit 7) - const EVENT_2D8 ; 2D8, (D7A2, bit 0) - const EVENT_2D9 ; 2D9, (D7A2, bit 1) - const EVENT_2DA ; 2DA, (D7A2, bit 2) - const EVENT_2DB ; 2DB, (D7A2, bit 3) - const EVENT_2DC ; 2DC, (D7A2, bit 4) - const EVENT_2DD ; 2DD, (D7A2, bit 5) - const EVENT_2DE ; 2DE, (D7A2, bit 6) - const EVENT_2DF ; 2DF, (D7A2, bit 7) - const EVENT_GAVE_FOSSIL_TO_LAB ; 2E0, (D7A3, bit 0) - const EVENT_LAB_STILL_REVIVING_FOSSIL ; 2E1, (D7A3, bit 1) - const EVENT_LAB_HANDING_OVER_FOSSIL_MON ; 2E2, (D7A3, bit 2) - const EVENT_2E3 ; 2E3, (D7A3, bit 3) - const EVENT_2E4 ; 2E4, (D7A3, bit 4) - const EVENT_2E5 ; 2E5, (D7A3, bit 5) - const EVENT_2E6 ; 2E6, (D7A3, bit 6) - const EVENT_2E7 ; 2E7, (D7A3, bit 7) - const EVENT_2E8 ; 2E8, (D7A4, bit 0) - const EVENT_2E9 ; 2E9, (D7A4, bit 1) - const EVENT_2EA ; 2EA, (D7A4, bit 2) - const EVENT_2EB ; 2EB, (D7A4, bit 3) - const EVENT_2EC ; 2EC, (D7A4, bit 4) - const EVENT_2ED ; 2ED, (D7A4, bit 5) - const EVENT_2EE ; 2EE, (D7A4, bit 6) - const EVENT_2EF ; 2EF, (D7A4, bit 7) - const EVENT_2F0 ; 2F0, (D7A5, bit 0) - const EVENT_2F1 ; 2F1, (D7A5, bit 1) - const EVENT_2F2 ; 2F2, (D7A5, bit 2) - const EVENT_2F3 ; 2F3, (D7A5, bit 3) - const EVENT_2F4 ; 2F4, (D7A5, bit 4) - const EVENT_2F5 ; 2F5, (D7A5, bit 5) - const EVENT_2F6 ; 2F6, (D7A5, bit 6) - const EVENT_2F7 ; 2F7, (D7A5, bit 7) - const EVENT_2F8 ; 2F8, (D7A6, bit 0) - const EVENT_2F9 ; 2F9, (D7A6, bit 1) - const EVENT_2FA ; 2FA, (D7A6, bit 2) - const EVENT_2FB ; 2FB, (D7A6, bit 3) - const EVENT_2FC ; 2FC, (D7A6, bit 4) - const EVENT_2FD ; 2FD, (D7A6, bit 5) - const EVENT_2FE ; 2FE, (D7A6, bit 6) - const EVENT_2FF ; 2FF, (D7A6, bit 7) - const EVENT_300 ; 300, (D7A7, bit 0) - const EVENT_301 ; 301, (D7A7, bit 1) - const EVENT_302 ; 302, (D7A7, bit 2) - const EVENT_303 ; 303, (D7A7, bit 3) - const EVENT_304 ; 304, (D7A7, bit 4) - const EVENT_305 ; 305, (D7A7, bit 5) - const EVENT_306 ; 306, (D7A7, bit 6) - const EVENT_307 ; 307, (D7A7, bit 7) - const EVENT_308 ; 308, (D7A8, bit 0) - const EVENT_309 ; 309, (D7A8, bit 1) - const EVENT_30A ; 30A, (D7A8, bit 2) - const EVENT_30B ; 30B, (D7A8, bit 3) - const EVENT_30C ; 30C, (D7A8, bit 4) - const EVENT_30D ; 30D, (D7A8, bit 5) - const EVENT_30E ; 30E, (D7A8, bit 6) - const EVENT_30F ; 30F, (D7A8, bit 7) - const EVENT_310 ; 310, (D7A9, bit 0) - const EVENT_311 ; 311, (D7A9, bit 1) - const EVENT_312 ; 312, (D7A9, bit 2) - const EVENT_313 ; 313, (D7A9, bit 3) - const EVENT_314 ; 314, (D7A9, bit 4) - const EVENT_315 ; 315, (D7A9, bit 5) - const EVENT_316 ; 316, (D7A9, bit 6) - const EVENT_317 ; 317, (D7A9, bit 7) - const EVENT_318 ; 318, (D7AA, bit 0) - const EVENT_319 ; 319, (D7AA, bit 1) - const EVENT_31A ; 31A, (D7AA, bit 2) - const EVENT_31B ; 31B, (D7AA, bit 3) - const EVENT_31C ; 31C, (D7AA, bit 4) - const EVENT_31D ; 31D, (D7AA, bit 5) - const EVENT_31E ; 31E, (D7AA, bit 6) - const EVENT_31F ; 31F, (D7AA, bit 7) - const EVENT_320 ; 320, (D7AB, bit 0) - const EVENT_321 ; 321, (D7AB, bit 1) - const EVENT_322 ; 322, (D7AB, bit 2) - const EVENT_323 ; 323, (D7AB, bit 3) - const EVENT_324 ; 324, (D7AB, bit 4) - const EVENT_325 ; 325, (D7AB, bit 5) - const EVENT_326 ; 326, (D7AB, bit 6) - const EVENT_327 ; 327, (D7AB, bit 7) - const EVENT_328 ; 328, (D7AC, bit 0) - const EVENT_329 ; 329, (D7AC, bit 1) - const EVENT_32A ; 32A, (D7AC, bit 2) - const EVENT_32B ; 32B, (D7AC, bit 3) - const EVENT_32C ; 32C, (D7AC, bit 4) - const EVENT_32D ; 32D, (D7AC, bit 5) - const EVENT_32E ; 32E, (D7AC, bit 6) - const EVENT_32F ; 32F, (D7AC, bit 7) - const EVENT_330 ; 330, (D7AD, bit 0) - const EVENT_331 ; 331, (D7AD, bit 1) - const EVENT_332 ; 332, (D7AD, bit 2) - const EVENT_333 ; 333, (D7AD, bit 3) - const EVENT_334 ; 334, (D7AD, bit 4) - const EVENT_335 ; 335, (D7AD, bit 5) - const EVENT_336 ; 336, (D7AD, bit 6) - const EVENT_337 ; 337, (D7AD, bit 7) - const EVENT_338 ; 338, (D7AE, bit 0) - const EVENT_339 ; 339, (D7AE, bit 1) - const EVENT_33A ; 33A, (D7AE, bit 2) - const EVENT_33B ; 33B, (D7AE, bit 3) - const EVENT_33C ; 33C, (D7AE, bit 4) - const EVENT_33D ; 33D, (D7AE, bit 5) - const EVENT_33E ; 33E, (D7AE, bit 6) - const EVENT_33F ; 33F, (D7AE, bit 7) - const EVENT_GOT_TM31 ; 340, (D7AF, bit 0) - const EVENT_341 ; 341, (D7AF, bit 1) - const EVENT_342 ; 342, (D7AF, bit 2) - const EVENT_343 ; 343, (D7AF, bit 3) - const EVENT_344 ; 344, (D7AF, bit 4) - const EVENT_345 ; 345, (D7AF, bit 5) - const EVENT_346 ; 346, (D7AF, bit 6) - const EVENT_347 ; 347, (D7AF, bit 7) - const EVENT_348 ; 348, (D7B0, bit 0) - const EVENT_349 ; 349, (D7B0, bit 1) - const EVENT_34A ; 34A, (D7B0, bit 2) - const EVENT_34B ; 34B, (D7B0, bit 3) - const EVENT_34C ; 34C, (D7B0, bit 4) - const EVENT_34D ; 34D, (D7B0, bit 5) - const EVENT_34E ; 34E, (D7B0, bit 6) - const EVENT_34F ; 34F, (D7B0, bit 7) - const EVENT_DEFEATED_FIGHTING_DOJO ; 350, (D7B1, bit 0) - const EVENT_BEAT_KARATE_MASTER ; 351, (D7B1, bit 1) - const EVENT_BEAT_FIGHTING_DOJO_TRAINER_0 ; 352, (D7B1, bit 2) - const EVENT_BEAT_FIGHTING_DOJO_TRAINER_1 ; 353, (D7B1, bit 3) - const EVENT_BEAT_FIGHTING_DOJO_TRAINER_2 ; 354, (D7B1, bit 4) - const EVENT_BEAT_FIGHTING_DOJO_TRAINER_3 ; 355, (D7B1, bit 5) - const EVENT_GOT_HITMONLEE ; 356, (D7B1, bit 6) - const EVENT_GOT_HITMONCHAN ; 357, (D7B1, bit 7) - const EVENT_358 ; 358, (D7B2, bit 0) - const EVENT_359 ; 359, (D7B2, bit 1) - const EVENT_35A ; 35A, (D7B2, bit 2) - const EVENT_35B ; 35B, (D7B2, bit 3) - const EVENT_35C ; 35C, (D7B2, bit 4) - const EVENT_35D ; 35D, (D7B2, bit 5) - const EVENT_35E ; 35E, (D7B2, bit 6) - const EVENT_35F ; 35F, (D7B2, bit 7) - const EVENT_GOT_TM46 ; 360, (D7B3, bit 0) - const EVENT_BEAT_SABRINA ; 361, (D7B3, bit 1) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_0 ; 362, (D7B3, bit 2) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_1 ; 363, (D7B3, bit 3) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_2 ; 364, (D7B3, bit 4) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_3 ; 365, (D7B3, bit 5) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_4 ; 366, (D7B3, bit 6) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_5 ; 367, (D7B3, bit 7) - const EVENT_BEAT_SAFFRON_GYM_TRAINER_6 ; 368, (D7B4, bit 0) - const EVENT_369 ; 369, (D7B4, bit 1) - const EVENT_36A ; 36A, (D7B4, bit 2) - const EVENT_36B ; 36B, (D7B4, bit 3) - const EVENT_36C ; 36C, (D7B4, bit 4) - const EVENT_36D ; 36D, (D7B4, bit 5) - const EVENT_36E ; 36E, (D7B4, bit 6) - const EVENT_36F ; 36F, (D7B4, bit 7) - const EVENT_370 ; 370, (D7B5, bit 0) - const EVENT_371 ; 371, (D7B5, bit 1) - const EVENT_372 ; 372, (D7B5, bit 2) - const EVENT_373 ; 373, (D7B5, bit 3) - const EVENT_374 ; 374, (D7B5, bit 4) - const EVENT_375 ; 375, (D7B5, bit 5) - const EVENT_376 ; 376, (D7B5, bit 6) - const EVENT_377 ; 377, (D7B5, bit 7) - const EVENT_378 ; 378, (D7B6, bit 0) - const EVENT_379 ; 379, (D7B6, bit 1) - const EVENT_37A ; 37A, (D7B6, bit 2) - const EVENT_37B ; 37B, (D7B6, bit 3) - const EVENT_37C ; 37C, (D7B6, bit 4) - const EVENT_37D ; 37D, (D7B6, bit 5) - const EVENT_37E ; 37E, (D7B6, bit 6) - const EVENT_37F ; 37F, (D7B6, bit 7) - const EVENT_380 ; 380, (D7B7, bit 0) - const EVENT_381 ; 381, (D7B7, bit 1) - const EVENT_382 ; 382, (D7B7, bit 2) - const EVENT_383 ; 383, (D7B7, bit 3) - const EVENT_384 ; 384, (D7B7, bit 4) - const EVENT_385 ; 385, (D7B7, bit 5) - const EVENT_386 ; 386, (D7B7, bit 6) - const EVENT_387 ; 387, (D7B7, bit 7) - const EVENT_388 ; 388, (D7B8, bit 0) - const EVENT_389 ; 389, (D7B8, bit 1) - const EVENT_38A ; 38A, (D7B8, bit 2) - const EVENT_38B ; 38B, (D7B8, bit 3) - const EVENT_38C ; 38C, (D7B8, bit 4) - const EVENT_38D ; 38D, (D7B8, bit 5) - const EVENT_38E ; 38E, (D7B8, bit 6) - const EVENT_38F ; 38F, (D7B8, bit 7) - const EVENT_390 ; 390, (D7B9, bit 0) - const EVENT_391 ; 391, (D7B9, bit 1) - const EVENT_392 ; 392, (D7B9, bit 2) - const EVENT_393 ; 393, (D7B9, bit 3) - const EVENT_394 ; 394, (D7B9, bit 4) - const EVENT_395 ; 395, (D7B9, bit 5) - const EVENT_396 ; 396, (D7B9, bit 6) - const EVENT_SILPH_CO_RECEPTIONIST_AT_DESK ; 397, (D7B9, bit 7) - const EVENT_398 ; 398, (D7BA, bit 0) - const EVENT_399 ; 399, (D7BA, bit 1) - const EVENT_39A ; 39A, (D7BA, bit 2) - const EVENT_39B ; 39B, (D7BA, bit 3) - const EVENT_39C ; 39C, (D7BA, bit 4) - const EVENT_39D ; 39D, (D7BA, bit 5) - const EVENT_39E ; 39E, (D7BA, bit 6) - const EVENT_39F ; 39F, (D7BA, bit 7) - const EVENT_3A0 ; 3A0, (D7BB, bit 0) - const EVENT_3A1 ; 3A1, (D7BB, bit 1) - const EVENT_3A2 ; 3A2, (D7BB, bit 2) - const EVENT_3A3 ; 3A3, (D7BB, bit 3) - const EVENT_3A4 ; 3A4, (D7BB, bit 4) - const EVENT_3A5 ; 3A5, (D7BB, bit 5) - const EVENT_3A6 ; 3A6, (D7BB, bit 6) - const EVENT_3A7 ; 3A7, (D7BB, bit 7) - const EVENT_3A8 ; 3A8, (D7BC, bit 0) - const EVENT_3A9 ; 3A9, (D7BC, bit 1) - const EVENT_3AA ; 3AA, (D7BC, bit 2) - const EVENT_3AB ; 3AB, (D7BC, bit 3) - const EVENT_3AC ; 3AC, (D7BC, bit 4) - const EVENT_3AD ; 3AD, (D7BC, bit 5) - const EVENT_3AE ; 3AE, (D7BC, bit 6) - const EVENT_3AF ; 3AF, (D7BC, bit 7) - const EVENT_GOT_TM29 ; 3B0, (D7BD, bit 0) - const EVENT_3B1 ; 3B1, (D7BD, bit 1) - const EVENT_3B2 ; 3B2, (D7BD, bit 2) - const EVENT_3B3 ; 3B3, (D7BD, bit 3) - const EVENT_3B4 ; 3B4, (D7BD, bit 4) - const EVENT_3B5 ; 3B5, (D7BD, bit 5) - const EVENT_3B6 ; 3B6, (D7BD, bit 6) - const EVENT_3B7 ; 3B7, (D7BD, bit 7) - const EVENT_3B8 ; 3B8, (D7BE, bit 0) - const EVENT_3B9 ; 3B9, (D7BE, bit 1) - const EVENT_3BA ; 3BA, (D7BE, bit 2) - const EVENT_3BB ; 3BB, (D7BE, bit 3) - const EVENT_3BC ; 3BC, (D7BE, bit 4) - const EVENT_3BD ; 3BD, (D7BE, bit 5) - const EVENT_3BE ; 3BE, (D7BE, bit 6) - const EVENT_3BF ; 3BF, (D7BE, bit 7) - const EVENT_GOT_POTION_SAMPLE ; 3C0, (D7BF, bit 0) - const EVENT_3C1 ; 3C1, (D7BF, bit 1) - const EVENT_3C2 ; 3C2, (D7BF, bit 2) - const EVENT_3C3 ; 3C3, (D7BF, bit 3) - const EVENT_3C4 ; 3C4, (D7BF, bit 4) - const EVENT_3C5 ; 3C5, (D7BF, bit 5) - const EVENT_3C6 ; 3C6, (D7BF, bit 6) - const EVENT_3C7 ; 3C7, (D7BF, bit 7) - const EVENT_3C8 ; 3C8, (D7C0, bit 0) - const EVENT_3C9 ; 3C9, (D7C0, bit 1) - const EVENT_3CA ; 3CA, (D7C0, bit 2) - const EVENT_3CB ; 3CB, (D7C0, bit 3) - const EVENT_3CC ; 3CC, (D7C0, bit 4) - const EVENT_3CD ; 3CD, (D7C0, bit 5) - const EVENT_3CE ; 3CE, (D7C0, bit 6) - const EVENT_3CF ; 3CF, (D7C0, bit 7) - const EVENT_3D0 ; 3D0, (D7C1, bit 0) - const EVENT_3D1 ; 3D1, (D7C1, bit 1) - const EVENT_3D2 ; 3D2, (D7C1, bit 2) - const EVENT_3D3 ; 3D3, (D7C1, bit 3) - const EVENT_3D4 ; 3D4, (D7C1, bit 4) - const EVENT_3D5 ; 3D5, (D7C1, bit 5) - const EVENT_3D6 ; 3D6, (D7C1, bit 6) - const EVENT_3D7 ; 3D7, (D7C1, bit 7) - const EVENT_GOT_HM05 ; 3D8, (D7C2, bit 0) - const EVENT_3D9 ; 3D9, (D7C2, bit 1) - const EVENT_3DA ; 3DA, (D7C2, bit 2) - const EVENT_3DB ; 3DB, (D7C2, bit 3) - const EVENT_3DC ; 3DC, (D7C2, bit 4) - const EVENT_3DD ; 3DD, (D7C2, bit 5) - const EVENT_3DE ; 3DE, (D7C2, bit 6) - const EVENT_3DF ; 3DF, (D7C2, bit 7) - const EVENT_3E0 ; 3E0, (D7C3, bit 0) - const EVENT_3E1 ; 3E1, (D7C3, bit 1) - const EVENT_BEAT_ROUTE_3_TRAINER_0 ; 3E2, (D7C3, bit 2) - const EVENT_BEAT_ROUTE_3_TRAINER_1 ; 3E3, (D7C3, bit 3) - const EVENT_BEAT_ROUTE_3_TRAINER_2 ; 3E4, (D7C3, bit 4) - const EVENT_BEAT_ROUTE_3_TRAINER_3 ; 3E5, (D7C3, bit 5) - const EVENT_BEAT_ROUTE_3_TRAINER_4 ; 3E6, (D7C3, bit 6) - const EVENT_BEAT_ROUTE_3_TRAINER_5 ; 3E7, (D7C3, bit 7) - const EVENT_BEAT_ROUTE_3_TRAINER_6 ; 3E8, (D7C4, bit 0) - const EVENT_BEAT_ROUTE_3_TRAINER_7 ; 3E9, (D7C4, bit 1) - const EVENT_3EA ; 3EA, (D7C4, bit 2) - const EVENT_3EB ; 3EB, (D7C4, bit 3) - const EVENT_3EC ; 3EC, (D7C4, bit 4) - const EVENT_3ED ; 3ED, (D7C4, bit 5) - const EVENT_3EE ; 3EE, (D7C4, bit 6) - const EVENT_3EF ; 3EF, (D7C4, bit 7) - const EVENT_3F0 ; 3F0, (D7C5, bit 0) - const EVENT_3F1 ; 3F1, (D7C5, bit 1) - const EVENT_BEAT_ROUTE_4_TRAINER_0 ; 3F2, (D7C5, bit 2) - const EVENT_3F3 ; 3F3, (D7C5, bit 3) - const EVENT_3F4 ; 3F4, (D7C5, bit 4) - const EVENT_3F5 ; 3F5, (D7C5, bit 5) - const EVENT_3F6 ; 3F6, (D7C5, bit 6) - const EVENT_3F7 ; 3F7, (D7C5, bit 7) - const EVENT_3F8 ; 3F8, (D7C6, bit 0) - const EVENT_3F9 ; 3F9, (D7C6, bit 1) - const EVENT_3FA ; 3FA, (D7C6, bit 2) - const EVENT_3FB ; 3FB, (D7C6, bit 3) - const EVENT_3FC ; 3FC, (D7C6, bit 4) - const EVENT_3FD ; 3FD, (D7C6, bit 5) - const EVENT_3FE ; 3FE, (D7C6, bit 6) - const EVENT_BOUGHT_MAGIKARP ; 3FF, (D7C6, bit 7) - const EVENT_400 ; 400, (D7C7, bit 0) - const EVENT_401 ; 401, (D7C7, bit 1) - const EVENT_402 ; 402, (D7C7, bit 2) - const EVENT_403 ; 403, (D7C7, bit 3) - const EVENT_404 ; 404, (D7C7, bit 4) - const EVENT_405 ; 405, (D7C7, bit 5) - const EVENT_406 ; 406, (D7C7, bit 6) - const EVENT_407 ; 407, (D7C7, bit 7) - const EVENT_408 ; 408, (D7C8, bit 0) - const EVENT_409 ; 409, (D7C8, bit 1) - const EVENT_40A ; 40A, (D7C8, bit 2) - const EVENT_40B ; 40B, (D7C8, bit 3) - const EVENT_40C ; 40C, (D7C8, bit 4) - const EVENT_40D ; 40D, (D7C8, bit 5) - const EVENT_40E ; 40E, (D7C8, bit 6) - const EVENT_40F ; 40F, (D7C8, bit 7) - const EVENT_410 ; 410, (D7C9, bit 0) - const EVENT_BEAT_ROUTE_6_TRAINER_0 ; 411, (D7C9, bit 1) - const EVENT_BEAT_ROUTE_6_TRAINER_1 ; 412, (D7C9, bit 2) - const EVENT_BEAT_ROUTE_6_TRAINER_2 ; 413, (D7C9, bit 3) - const EVENT_BEAT_ROUTE_6_TRAINER_3 ; 414, (D7C9, bit 4) - const EVENT_BEAT_ROUTE_6_TRAINER_4 ; 415, (D7C9, bit 5) - const EVENT_BEAT_ROUTE_6_TRAINER_5 ; 416, (D7C9, bit 6) - const EVENT_417 ; 417, (D7C9, bit 7) - const EVENT_418 ; 418, (D7CA, bit 0) - const EVENT_419 ; 419, (D7CA, bit 1) - const EVENT_41A ; 41A, (D7CA, bit 2) - const EVENT_41B ; 41B, (D7CA, bit 3) - const EVENT_41C ; 41C, (D7CA, bit 4) - const EVENT_41D ; 41D, (D7CA, bit 5) - const EVENT_41E ; 41E, (D7CA, bit 6) - const EVENT_41F ; 41F, (D7CA, bit 7) - const EVENT_420 ; 420, (D7CB, bit 0) - const EVENT_421 ; 421, (D7CB, bit 1) - const EVENT_422 ; 422, (D7CB, bit 2) - const EVENT_423 ; 423, (D7CB, bit 3) - const EVENT_424 ; 424, (D7CB, bit 4) - const EVENT_425 ; 425, (D7CB, bit 5) - const EVENT_426 ; 426, (D7CB, bit 6) - const EVENT_427 ; 427, (D7CB, bit 7) - const EVENT_428 ; 428, (D7CC, bit 0) - const EVENT_429 ; 429, (D7CC, bit 1) - const EVENT_42A ; 42A, (D7CC, bit 2) - const EVENT_42B ; 42B, (D7CC, bit 3) - const EVENT_42C ; 42C, (D7CC, bit 4) - const EVENT_42D ; 42D, (D7CC, bit 5) - const EVENT_42E ; 42E, (D7CC, bit 6) - const EVENT_42F ; 42F, (D7CC, bit 7) - const EVENT_430 ; 430, (D7CD, bit 0) - const EVENT_BEAT_ROUTE_8_TRAINER_0 ; 431, (D7CD, bit 1) - const EVENT_BEAT_ROUTE_8_TRAINER_1 ; 432, (D7CD, bit 2) - const EVENT_BEAT_ROUTE_8_TRAINER_2 ; 433, (D7CD, bit 3) - const EVENT_BEAT_ROUTE_8_TRAINER_3 ; 434, (D7CD, bit 4) - const EVENT_BEAT_ROUTE_8_TRAINER_4 ; 435, (D7CD, bit 5) - const EVENT_BEAT_ROUTE_8_TRAINER_5 ; 436, (D7CD, bit 6) - const EVENT_BEAT_ROUTE_8_TRAINER_6 ; 437, (D7CD, bit 7) - const EVENT_BEAT_ROUTE_8_TRAINER_7 ; 438, (D7CE, bit 0) - const EVENT_BEAT_ROUTE_8_TRAINER_8 ; 439, (D7CE, bit 1) - const EVENT_43A ; 43A, (D7CE, bit 2) - const EVENT_43B ; 43B, (D7CE, bit 3) - const EVENT_43C ; 43C, (D7CE, bit 4) - const EVENT_43D ; 43D, (D7CE, bit 5) - const EVENT_43E ; 43E, (D7CE, bit 6) - const EVENT_43F ; 43F, (D7CE, bit 7) - const EVENT_440 ; 440, (D7CF, bit 0) - const EVENT_BEAT_ROUTE_9_TRAINER_0 ; 441, (D7CF, bit 1) - const EVENT_BEAT_ROUTE_9_TRAINER_1 ; 442, (D7CF, bit 2) - const EVENT_BEAT_ROUTE_9_TRAINER_2 ; 443, (D7CF, bit 3) - const EVENT_BEAT_ROUTE_9_TRAINER_3 ; 444, (D7CF, bit 4) - const EVENT_BEAT_ROUTE_9_TRAINER_4 ; 445, (D7CF, bit 5) - const EVENT_BEAT_ROUTE_9_TRAINER_5 ; 446, (D7CF, bit 6) - const EVENT_BEAT_ROUTE_9_TRAINER_6 ; 447, (D7CF, bit 7) - const EVENT_BEAT_ROUTE_9_TRAINER_7 ; 448, (D7D0, bit 0) - const EVENT_BEAT_ROUTE_9_TRAINER_8 ; 449, (D7D0, bit 1) - const EVENT_44A ; 44A, (D7D0, bit 2) - const EVENT_44B ; 44B, (D7D0, bit 3) - const EVENT_44C ; 44C, (D7D0, bit 4) - const EVENT_44D ; 44D, (D7D0, bit 5) - const EVENT_44E ; 44E, (D7D0, bit 6) - const EVENT_44F ; 44F, (D7D0, bit 7) - const EVENT_450 ; 450, (D7D1, bit 0) - const EVENT_BEAT_ROUTE_10_TRAINER_0 ; 451, (D7D1, bit 1) - const EVENT_BEAT_ROUTE_10_TRAINER_1 ; 452, (D7D1, bit 2) - const EVENT_BEAT_ROUTE_10_TRAINER_2 ; 453, (D7D1, bit 3) - const EVENT_BEAT_ROUTE_10_TRAINER_3 ; 454, (D7D1, bit 4) - const EVENT_BEAT_ROUTE_10_TRAINER_4 ; 455, (D7D1, bit 5) - const EVENT_BEAT_ROUTE_10_TRAINER_5 ; 456, (D7D1, bit 6) - const EVENT_457 ; 457, (D7D1, bit 7) - const EVENT_458 ; 458, (D7D2, bit 0) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_0 ; 459, (D7D2, bit 1) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1 ; 45A, (D7D2, bit 2) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2 ; 45B, (D7D2, bit 3) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3 ; 45C, (D7D2, bit 4) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4 ; 45D, (D7D2, bit 5) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5 ; 45E, (D7D2, bit 6) - const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6 ; 45F, (D7D2, bit 7) - const EVENT_460 ; 460, (D7D3, bit 0) - const EVENT_BEAT_POWER_PLANT_VOLTORB_0 ; 461, (D7D3, bit 1) - const EVENT_BEAT_POWER_PLANT_VOLTORB_1 ; 462, (D7D3, bit 2) - const EVENT_BEAT_POWER_PLANT_VOLTORB_2 ; 463, (D7D3, bit 3) - const EVENT_BEAT_POWER_PLANT_VOLTORB_3 ; 464, (D7D3, bit 4) - const EVENT_BEAT_POWER_PLANT_VOLTORB_4 ; 465, (D7D3, bit 5) - const EVENT_BEAT_POWER_PLANT_VOLTORB_5 ; 466, (D7D3, bit 6) - const EVENT_BEAT_POWER_PLANT_VOLTORB_6 ; 467, (D7D3, bit 7) - const EVENT_BEAT_POWER_PLANT_VOLTORB_7 ; 468, (D7D4, bit 0) - const EVENT_BEAT_ZAPDOS ; 469, (D7D4, bit 1) - const EVENT_46A ; 46A, (D7D4, bit 2) - const EVENT_46B ; 46B, (D7D4, bit 3) - const EVENT_46C ; 46C, (D7D4, bit 4) - const EVENT_46D ; 46D, (D7D4, bit 5) - const EVENT_46E ; 46E, (D7D4, bit 6) - const EVENT_46F ; 46F, (D7D4, bit 7) - const EVENT_470 ; 470, (D7D5, bit 0) - const EVENT_BEAT_ROUTE_11_TRAINER_0 ; 471, (D7D5, bit 1) - const EVENT_BEAT_ROUTE_11_TRAINER_1 ; 472, (D7D5, bit 2) - const EVENT_BEAT_ROUTE_11_TRAINER_2 ; 473, (D7D5, bit 3) - const EVENT_BEAT_ROUTE_11_TRAINER_3 ; 474, (D7D5, bit 4) - const EVENT_BEAT_ROUTE_11_TRAINER_4 ; 475, (D7D5, bit 5) - const EVENT_BEAT_ROUTE_11_TRAINER_5 ; 476, (D7D5, bit 6) - const EVENT_BEAT_ROUTE_11_TRAINER_6 ; 477, (D7D5, bit 7) - const EVENT_BEAT_ROUTE_11_TRAINER_7 ; 478, (D7D6, bit 0) - const EVENT_BEAT_ROUTE_11_TRAINER_8 ; 479, (D7D6, bit 1) - const EVENT_BEAT_ROUTE_11_TRAINER_9 ; 47A, (D7D6, bit 2) - const EVENT_47B ; 47B, (D7D6, bit 3) - const EVENT_47C ; 47C, (D7D6, bit 4) - const EVENT_47D ; 47D, (D7D6, bit 5) - const EVENT_47E ; 47E, (D7D6, bit 6) - const EVENT_GOT_ITEMFINDER ; 47F, (D7D6, bit 7) - const EVENT_GOT_TM39 ; 480, (D7D7, bit 0) - const EVENT_481 ; 481, (D7D7, bit 1) - const EVENT_BEAT_ROUTE_12_TRAINER_0 ; 482, (D7D7, bit 2) - const EVENT_BEAT_ROUTE_12_TRAINER_1 ; 483, (D7D7, bit 3) - const EVENT_BEAT_ROUTE_12_TRAINER_2 ; 484, (D7D7, bit 4) - const EVENT_BEAT_ROUTE_12_TRAINER_3 ; 485, (D7D7, bit 5) - const EVENT_BEAT_ROUTE_12_TRAINER_4 ; 486, (D7D7, bit 6) - const EVENT_BEAT_ROUTE_12_TRAINER_5 ; 487, (D7D7, bit 7) - const EVENT_BEAT_ROUTE_12_TRAINER_6 ; 488, (D7D8, bit 0) - const EVENT_489 ; 489, (D7D8, bit 1) - const EVENT_48A ; 48A, (D7D8, bit 2) - const EVENT_48B ; 48B, (D7D8, bit 3) - const EVENT_48C ; 48C, (D7D8, bit 4) - const EVENT_48D ; 48D, (D7D8, bit 5) - const EVENT_FIGHT_ROUTE12_SNORLAX ; 48E, (D7D8, bit 6) - const EVENT_BEAT_ROUTE12_SNORLAX ; 48F, (D7D8, bit 7) - const EVENT_490 ; 490, (D7D9, bit 0) - const EVENT_BEAT_ROUTE_13_TRAINER_0 ; 491, (D7D9, bit 1) - const EVENT_BEAT_ROUTE_13_TRAINER_1 ; 492, (D7D9, bit 2) - const EVENT_BEAT_ROUTE_13_TRAINER_2 ; 493, (D7D9, bit 3) - const EVENT_BEAT_ROUTE_13_TRAINER_3 ; 494, (D7D9, bit 4) - const EVENT_BEAT_ROUTE_13_TRAINER_4 ; 495, (D7D9, bit 5) - const EVENT_BEAT_ROUTE_13_TRAINER_5 ; 496, (D7D9, bit 6) - const EVENT_BEAT_ROUTE_13_TRAINER_6 ; 497, (D7D9, bit 7) - const EVENT_BEAT_ROUTE_13_TRAINER_7 ; 498, (D7DA, bit 0) - const EVENT_BEAT_ROUTE_13_TRAINER_8 ; 499, (D7DA, bit 1) - const EVENT_BEAT_ROUTE_13_TRAINER_9 ; 49A, (D7DA, bit 2) - const EVENT_49B ; 49B, (D7DA, bit 3) - const EVENT_49C ; 49C, (D7DA, bit 4) - const EVENT_49D ; 49D, (D7DA, bit 5) - const EVENT_49E ; 49E, (D7DA, bit 6) - const EVENT_49F ; 49F, (D7DA, bit 7) - const EVENT_4A0 ; 4A0, (D7DB, bit 0) - const EVENT_BEAT_ROUTE_14_TRAINER_0 ; 4A1, (D7DB, bit 1) - const EVENT_BEAT_ROUTE_14_TRAINER_1 ; 4A2, (D7DB, bit 2) - const EVENT_BEAT_ROUTE_14_TRAINER_2 ; 4A3, (D7DB, bit 3) - const EVENT_BEAT_ROUTE_14_TRAINER_3 ; 4A4, (D7DB, bit 4) - const EVENT_BEAT_ROUTE_14_TRAINER_4 ; 4A5, (D7DB, bit 5) - const EVENT_BEAT_ROUTE_14_TRAINER_5 ; 4A6, (D7DB, bit 6) - const EVENT_BEAT_ROUTE_14_TRAINER_6 ; 4A7, (D7DB, bit 7) - const EVENT_BEAT_ROUTE_14_TRAINER_7 ; 4A8, (D7DC, bit 0) - const EVENT_BEAT_ROUTE_14_TRAINER_8 ; 4A9, (D7DC, bit 1) - const EVENT_BEAT_ROUTE_14_TRAINER_9 ; 4AA, (D7DC, bit 2) - const EVENT_4AB ; 4AB, (D7DC, bit 3) - const EVENT_4AC ; 4AC, (D7DC, bit 4) - const EVENT_4AD ; 4AD, (D7DC, bit 5) - const EVENT_4AE ; 4AE, (D7DC, bit 6) - const EVENT_4AF ; 4AF, (D7DC, bit 7) - const EVENT_GOT_EXP_ALL ; 4B0, (D7DD, bit 0) - const EVENT_BEAT_ROUTE_15_TRAINER_0 ; 4B1, (D7DD, bit 1) - const EVENT_BEAT_ROUTE_15_TRAINER_1 ; 4B2, (D7DD, bit 2) - const EVENT_BEAT_ROUTE_15_TRAINER_2 ; 4B3, (D7DD, bit 3) - const EVENT_BEAT_ROUTE_15_TRAINER_3 ; 4B4, (D7DD, bit 4) - const EVENT_BEAT_ROUTE_15_TRAINER_4 ; 4B5, (D7DD, bit 5) - const EVENT_BEAT_ROUTE_15_TRAINER_5 ; 4B6, (D7DD, bit 6) - const EVENT_BEAT_ROUTE_15_TRAINER_6 ; 4B7, (D7DD, bit 7) - const EVENT_BEAT_ROUTE_15_TRAINER_7 ; 4B8, (D7DE, bit 0) - const EVENT_BEAT_ROUTE_15_TRAINER_8 ; 4B9, (D7DE, bit 1) - const EVENT_BEAT_ROUTE_15_TRAINER_9 ; 4BA, (D7DE, bit 2) - const EVENT_4BB ; 4BB, (D7DE, bit 3) - const EVENT_4BC ; 4BC, (D7DE, bit 4) - const EVENT_4BD ; 4BD, (D7DE, bit 5) - const EVENT_4BE ; 4BE, (D7DE, bit 6) - const EVENT_4BF ; 4BF, (D7DE, bit 7) - const EVENT_4C0 ; 4C0, (D7DF, bit 0) - const EVENT_BEAT_ROUTE_16_TRAINER_0 ; 4C1, (D7DF, bit 1) - const EVENT_BEAT_ROUTE_16_TRAINER_1 ; 4C2, (D7DF, bit 2) - const EVENT_BEAT_ROUTE_16_TRAINER_2 ; 4C3, (D7DF, bit 3) - const EVENT_BEAT_ROUTE_16_TRAINER_3 ; 4C4, (D7DF, bit 4) - const EVENT_BEAT_ROUTE_16_TRAINER_4 ; 4C5, (D7DF, bit 5) - const EVENT_BEAT_ROUTE_16_TRAINER_5 ; 4C6, (D7DF, bit 6) - const EVENT_4C7 ; 4C7, (D7DF, bit 7) - const EVENT_FIGHT_ROUTE16_SNORLAX ; 4C8, (D7E0, bit 0) - const EVENT_BEAT_ROUTE16_SNORLAX ; 4C9, (D7E0, bit 1) - const EVENT_4CA ; 4CA, (D7E0, bit 2) - const EVENT_4CB ; 4CB, (D7E0, bit 3) - const EVENT_4CC ; 4CC, (D7E0, bit 4) - const EVENT_4CD ; 4CD, (D7E0, bit 5) - const EVENT_GOT_HM02 ; 4CE, (D7E0, bit 6) - const EVENT_RESCUED_MR_FUJI ; 4CF, (D7E0, bit 7) - const EVENT_4D0 ; 4D0, (D7E1, bit 0) - const EVENT_BEAT_ROUTE_17_TRAINER_0 ; 4D1, (D7E1, bit 1) - const EVENT_BEAT_ROUTE_17_TRAINER_1 ; 4D2, (D7E1, bit 2) - const EVENT_BEAT_ROUTE_17_TRAINER_2 ; 4D3, (D7E1, bit 3) - const EVENT_BEAT_ROUTE_17_TRAINER_3 ; 4D4, (D7E1, bit 4) - const EVENT_BEAT_ROUTE_17_TRAINER_4 ; 4D5, (D7E1, bit 5) - const EVENT_BEAT_ROUTE_17_TRAINER_5 ; 4D6, (D7E1, bit 6) - const EVENT_BEAT_ROUTE_17_TRAINER_6 ; 4D7, (D7E1, bit 7) - const EVENT_BEAT_ROUTE_17_TRAINER_7 ; 4D8, (D7E2, bit 0) - const EVENT_BEAT_ROUTE_17_TRAINER_8 ; 4D9, (D7E2, bit 1) - const EVENT_BEAT_ROUTE_17_TRAINER_9 ; 4DA, (D7E2, bit 2) - const EVENT_4DB ; 4DB, (D7E2, bit 3) - const EVENT_4DC ; 4DC, (D7E2, bit 4) - const EVENT_4DD ; 4DD, (D7E2, bit 5) - const EVENT_4DE ; 4DE, (D7E2, bit 6) - const EVENT_4DF ; 4DF, (D7E2, bit 7) - const EVENT_4E0 ; 4E0, (D7E3, bit 0) - const EVENT_BEAT_ROUTE_18_TRAINER_0 ; 4E1, (D7E3, bit 1) - const EVENT_BEAT_ROUTE_18_TRAINER_1 ; 4E2, (D7E3, bit 2) - const EVENT_BEAT_ROUTE_18_TRAINER_2 ; 4E3, (D7E3, bit 3) - const EVENT_4E4 ; 4E4, (D7E3, bit 4) - const EVENT_4E5 ; 4E5, (D7E3, bit 5) - const EVENT_4E6 ; 4E6, (D7E3, bit 6) - const EVENT_4E7 ; 4E7, (D7E3, bit 7) - const EVENT_4E8 ; 4E8, (D7E4, bit 0) - const EVENT_4E9 ; 4E9, (D7E4, bit 1) - const EVENT_4EA ; 4EA, (D7E4, bit 2) - const EVENT_4EB ; 4EB, (D7E4, bit 3) - const EVENT_4EC ; 4EC, (D7E4, bit 4) - const EVENT_4ED ; 4ED, (D7E4, bit 5) - const EVENT_4EE ; 4EE, (D7E4, bit 6) - const EVENT_4EF ; 4EF, (D7E4, bit 7) - const EVENT_4F0 ; 4F0, (D7E5, bit 0) - const EVENT_BEAT_ROUTE_19_TRAINER_0 ; 4F1, (D7E5, bit 1) - const EVENT_BEAT_ROUTE_19_TRAINER_1 ; 4F2, (D7E5, bit 2) - const EVENT_BEAT_ROUTE_19_TRAINER_2 ; 4F3, (D7E5, bit 3) - const EVENT_BEAT_ROUTE_19_TRAINER_3 ; 4F4, (D7E5, bit 4) - const EVENT_BEAT_ROUTE_19_TRAINER_4 ; 4F5, (D7E5, bit 5) - const EVENT_BEAT_ROUTE_19_TRAINER_5 ; 4F6, (D7E5, bit 6) - const EVENT_BEAT_ROUTE_19_TRAINER_6 ; 4F7, (D7E5, bit 7) - const EVENT_BEAT_ROUTE_19_TRAINER_7 ; 4F8, (D7E6, bit 0) - const EVENT_BEAT_ROUTE_19_TRAINER_8 ; 4F9, (D7E6, bit 1) - const EVENT_BEAT_ROUTE_19_TRAINER_9 ; 4FA, (D7E6, bit 2) - const EVENT_4FB ; 4FB, (D7E6, bit 3) - const EVENT_4FC ; 4FC, (D7E6, bit 4) - const EVENT_4FD ; 4FD, (D7E6, bit 5) - const EVENT_4FE ; 4FE, (D7E6, bit 6) - const EVENT_4FF ; 4FF, (D7E6, bit 7) - const EVENT_IN_SEAFOAM_ISLANDS ; 500, (D7E7, bit 0) - const EVENT_BEAT_ROUTE_20_TRAINER_0 ; 501, (D7E7, bit 1) - const EVENT_BEAT_ROUTE_20_TRAINER_1 ; 502, (D7E7, bit 2) - const EVENT_BEAT_ROUTE_20_TRAINER_2 ; 503, (D7E7, bit 3) - const EVENT_BEAT_ROUTE_20_TRAINER_3 ; 504, (D7E7, bit 4) - const EVENT_BEAT_ROUTE_20_TRAINER_4 ; 505, (D7E7, bit 5) - const EVENT_BEAT_ROUTE_20_TRAINER_5 ; 506, (D7E7, bit 6) - const EVENT_BEAT_ROUTE_20_TRAINER_6 ; 507, (D7E7, bit 7) - const EVENT_BEAT_ROUTE_20_TRAINER_7 ; 508, (D7E8, bit 0) - const EVENT_BEAT_ROUTE_20_TRAINER_8 ; 509, (D7E8, bit 1) - const EVENT_BEAT_ROUTE_20_TRAINER_9 ; 50A, (D7E8, bit 2) - const EVENT_50B ; 50B, (D7E8, bit 3) - const EVENT_50C ; 50C, (D7E8, bit 4) - const EVENT_50D ; 50D, (D7E8, bit 5) - const EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE ; 50E, (D7E8, bit 6) - const EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE ; 50F, (D7E8, bit 7) - const EVENT_510 ; 510, (D7E9, bit 0) - const EVENT_BEAT_ROUTE_21_TRAINER_0 ; 511, (D7E9, bit 1) - const EVENT_BEAT_ROUTE_21_TRAINER_1 ; 512, (D7E9, bit 2) - const EVENT_BEAT_ROUTE_21_TRAINER_2 ; 513, (D7E9, bit 3) - const EVENT_BEAT_ROUTE_21_TRAINER_3 ; 514, (D7E9, bit 4) - const EVENT_BEAT_ROUTE_21_TRAINER_4 ; 515, (D7E9, bit 5) - const EVENT_BEAT_ROUTE_21_TRAINER_5 ; 516, (D7E9, bit 6) - const EVENT_BEAT_ROUTE_21_TRAINER_6 ; 517, (D7E9, bit 7) - const EVENT_BEAT_ROUTE_21_TRAINER_7 ; 518, (D7EA, bit 0) - const EVENT_BEAT_ROUTE_21_TRAINER_8 ; 519, (D7EA, bit 1) - const EVENT_51A ; 51A, (D7EA, bit 2) - const EVENT_51B ; 51B, (D7EA, bit 3) - const EVENT_51C ; 51C, (D7EA, bit 4) - const EVENT_51D ; 51D, (D7EA, bit 5) - const EVENT_51E ; 51E, (D7EA, bit 6) - const EVENT_51F ; 51F, (D7EA, bit 7) - const EVENT_1ST_ROUTE22_RIVAL_BATTLE ; 520, (D7EB, bit 0) - const EVENT_2ND_ROUTE22_RIVAL_BATTLE ; 521, (D7EB, bit 1) - const EVENT_522 ; 522, (D7EB, bit 2) - const EVENT_523 ; 523, (D7EB, bit 3) - const EVENT_524 ; 524, (D7EB, bit 4) - const EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE ; 525, (D7EB, bit 5) - const EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE ; 526, (D7EB, bit 6) - const EVENT_ROUTE22_RIVAL_WANTS_BATTLE ; 527, (D7EB, bit 7) - const EVENT_528 ; 528, (D7EC, bit 0) - const EVENT_529 ; 529, (D7EC, bit 1) - const EVENT_52A ; 52A, (D7EC, bit 2) - const EVENT_52B ; 52B, (D7EC, bit 3) - const EVENT_52C ; 52C, (D7EC, bit 4) - const EVENT_52D ; 52D, (D7EC, bit 5) - const EVENT_52E ; 52E, (D7EC, bit 6) - const EVENT_52F ; 52F, (D7EC, bit 7) - const EVENT_PASSED_CASCADEBADGE_CHECK ; 530, (D7ED, bit 0) - const EVENT_PASSED_THUNDERBADGE_CHECK ; 531, (D7ED, bit 1) - const EVENT_PASSED_RAINBOWBADGE_CHECK ; 532, (D7ED, bit 2) - const EVENT_PASSED_SOULBADGE_CHECK ; 533, (D7ED, bit 3) - const EVENT_PASSED_MARSHBADGE_CHECK ; 534, (D7ED, bit 4) - const EVENT_PASSED_VOLCANOBADGE_CHECK ; 535, (D7ED, bit 5) - const EVENT_PASSED_EARTHBADGE_CHECK ; 536, (D7ED, bit 6) - const EVENT_537 ; 537, (D7ED, bit 7) - const EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1 ; 538, (D7EE, bit 0) - const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0 ; 539, (D7EE, bit 1) - const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_1 ; 53A, (D7EE, bit 2) - const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2 ; 53B, (D7EE, bit 3) - const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3 ; 53C, (D7EE, bit 4) - const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4 ; 53D, (D7EE, bit 5) - const EVENT_BEAT_MOLTRES ; 53E, (D7EE, bit 6) - const EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2 ; 53F, (D7EE, bit 7) - const EVENT_GOT_NUGGET ; 540, (D7EF, bit 0) - const EVENT_BEAT_ROUTE24_ROCKET ; 541, (D7EF, bit 1) - const EVENT_BEAT_ROUTE_24_TRAINER_0 ; 542, (D7EF, bit 2) - const EVENT_BEAT_ROUTE_24_TRAINER_1 ; 543, (D7EF, bit 3) - const EVENT_BEAT_ROUTE_24_TRAINER_2 ; 544, (D7EF, bit 4) - const EVENT_BEAT_ROUTE_24_TRAINER_3 ; 545, (D7EF, bit 5) - const EVENT_BEAT_ROUTE_24_TRAINER_4 ; 546, (D7EF, bit 6) - const EVENT_BEAT_ROUTE_24_TRAINER_5 ; 547, (D7EF, bit 7) - const EVENT_548 ; 548, (D7F0, bit 0) - const EVENT_NUGGET_REWARD_AVAILABLE ; 549, (D7F0, bit 1) - const EVENT_54A ; 54A, (D7F0, bit 2) - const EVENT_54B ; 54B, (D7F0, bit 3) - const EVENT_54C ; 54C, (D7F0, bit 4) - const EVENT_54D ; 54D, (D7F0, bit 5) - const EVENT_54E ; 54E, (D7F0, bit 6) - const EVENT_54F ; 54F, (D7F0, bit 7) - const EVENT_MET_BILL ; 550, (D7F1, bit 0) - const EVENT_BEAT_ROUTE_25_TRAINER_0 ; 551, (D7F1, bit 1) - const EVENT_BEAT_ROUTE_25_TRAINER_1 ; 552, (D7F1, bit 2) - const EVENT_BEAT_ROUTE_25_TRAINER_2 ; 553, (D7F1, bit 3) - const EVENT_BEAT_ROUTE_25_TRAINER_3 ; 554, (D7F1, bit 4) - const EVENT_BEAT_ROUTE_25_TRAINER_4 ; 555, (D7F1, bit 5) - const EVENT_BEAT_ROUTE_25_TRAINER_5 ; 556, (D7F1, bit 6) - const EVENT_BEAT_ROUTE_25_TRAINER_6 ; 557, (D7F1, bit 7) - const EVENT_BEAT_ROUTE_25_TRAINER_7 ; 558, (D7F2, bit 0) - const EVENT_BEAT_ROUTE_25_TRAINER_8 ; 559, (D7F2, bit 1) - const EVENT_55A ; 55A, (D7F2, bit 2) - const EVENT_USED_CELL_SEPARATOR_ON_BILL ; 55B, (D7F2, bit 3) - const EVENT_GOT_SS_TICKET ; 55C, (D7F2, bit 4) - const EVENT_MET_BILL_2 ; 55D, (D7F2, bit 5) - const EVENT_BILL_SAID_USE_CELL_SEPARATOR ; 55E, (D7F2, bit 6) - const EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING ; 55F, (D7F2, bit 7) - const EVENT_560 ; 560, (D7F3, bit 0) - const EVENT_561 ; 561, (D7F3, bit 1) - const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0 ; 562, (D7F3, bit 2) - const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1 ; 563, (D7F3, bit 3) - const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2 ; 564, (D7F3, bit 4) - const EVENT_565 ; 565, (D7F3, bit 5) - const EVENT_566 ; 566, (D7F3, bit 6) - const EVENT_567 ; 567, (D7F3, bit 7) - const EVENT_568 ; 568, (D7F4, bit 0) - const EVENT_569 ; 569, (D7F4, bit 1) - const EVENT_56A ; 56A, (D7F4, bit 2) - const EVENT_56B ; 56B, (D7F4, bit 3) - const EVENT_56C ; 56C, (D7F4, bit 4) - const EVENT_56D ; 56D, (D7F4, bit 5) - const EVENT_56E ; 56E, (D7F4, bit 6) - const EVENT_56F ; 56F, (D7F4, bit 7) - const EVENT_570 ; 570, (D7F5, bit 0) - const EVENT_BEAT_MT_MOON_1_TRAINER_0 ; 571, (D7F5, bit 1) - const EVENT_BEAT_MT_MOON_1_TRAINER_1 ; 572, (D7F5, bit 2) - const EVENT_BEAT_MT_MOON_1_TRAINER_2 ; 573, (D7F5, bit 3) - const EVENT_BEAT_MT_MOON_1_TRAINER_3 ; 574, (D7F5, bit 4) - const EVENT_BEAT_MT_MOON_1_TRAINER_4 ; 575, (D7F5, bit 5) - const EVENT_BEAT_MT_MOON_1_TRAINER_5 ; 576, (D7F5, bit 6) - const EVENT_BEAT_MT_MOON_1_TRAINER_6 ; 577, (D7F5, bit 7) - const EVENT_578 ; 578, (D7F6, bit 0) - const EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD ; 579, (D7F6, bit 1) - const EVENT_BEAT_MT_MOON_3_TRAINER_0 ; 57A, (D7F6, bit 2) - const EVENT_BEAT_MT_MOON_3_TRAINER_1 ; 57B, (D7F6, bit 3) - const EVENT_BEAT_MT_MOON_3_TRAINER_2 ; 57C, (D7F6, bit 4) - const EVENT_BEAT_MT_MOON_3_TRAINER_3 ; 57D, (D7F6, bit 5) - const EVENT_GOT_DOME_FOSSIL ; 57E, (D7F6, bit 6) - const EVENT_GOT_HELIX_FOSSIL ; 57F, (D7F6, bit 7) - const EVENT_580 ; 580, (D7F7, bit 0) - const EVENT_581 ; 581, (D7F7, bit 1) - const EVENT_582 ; 582, (D7F7, bit 2) - const EVENT_583 ; 583, (D7F7, bit 3) - const EVENT_584 ; 584, (D7F7, bit 4) - const EVENT_585 ; 585, (D7F7, bit 5) - const EVENT_586 ; 586, (D7F7, bit 6) - const EVENT_587 ; 587, (D7F7, bit 7) - const EVENT_588 ; 588, (D7F8, bit 0) - const EVENT_589 ; 589, (D7F8, bit 1) - const EVENT_58A ; 58A, (D7F8, bit 2) - const EVENT_58B ; 58B, (D7F8, bit 3) - const EVENT_58C ; 58C, (D7F8, bit 4) - const EVENT_58D ; 58D, (D7F8, bit 5) - const EVENT_58E ; 58E, (D7F8, bit 6) - const EVENT_58F ; 58F, (D7F8, bit 7) - const EVENT_590 ; 590, (D7F9, bit 0) - const EVENT_591 ; 591, (D7F9, bit 1) - const EVENT_592 ; 592, (D7F9, bit 2) - const EVENT_593 ; 593, (D7F9, bit 3) - const EVENT_594 ; 594, (D7F9, bit 4) - const EVENT_595 ; 595, (D7F9, bit 5) - const EVENT_596 ; 596, (D7F9, bit 6) - const EVENT_597 ; 597, (D7F9, bit 7) - const EVENT_598 ; 598, (D7FA, bit 0) - const EVENT_599 ; 599, (D7FA, bit 1) - const EVENT_59A ; 59A, (D7FA, bit 2) - const EVENT_59B ; 59B, (D7FA, bit 3) - const EVENT_59C ; 59C, (D7FA, bit 4) - const EVENT_59D ; 59D, (D7FA, bit 5) - const EVENT_59E ; 59E, (D7FA, bit 6) - const EVENT_59F ; 59F, (D7FA, bit 7) - const EVENT_5A0 ; 5A0, (D7FB, bit 0) - const EVENT_5A1 ; 5A1, (D7FB, bit 1) - const EVENT_5A2 ; 5A2, (D7FB, bit 2) - const EVENT_5A3 ; 5A3, (D7FB, bit 3) - const EVENT_5A4 ; 5A4, (D7FB, bit 4) - const EVENT_5A5 ; 5A5, (D7FB, bit 5) - const EVENT_5A6 ; 5A6, (D7FB, bit 6) - const EVENT_5A7 ; 5A7, (D7FB, bit 7) - const EVENT_5A8 ; 5A8, (D7FC, bit 0) - const EVENT_5A9 ; 5A9, (D7FC, bit 1) - const EVENT_5AA ; 5AA, (D7FC, bit 2) - const EVENT_5AB ; 5AB, (D7FC, bit 3) - const EVENT_5AC ; 5AC, (D7FC, bit 4) - const EVENT_5AD ; 5AD, (D7FC, bit 5) - const EVENT_5AE ; 5AE, (D7FC, bit 6) - const EVENT_5AF ; 5AF, (D7FC, bit 7) - const EVENT_5B0 ; 5B0, (D7FD, bit 0) - const EVENT_5B1 ; 5B1, (D7FD, bit 1) - const EVENT_5B2 ; 5B2, (D7FD, bit 2) - const EVENT_5B3 ; 5B3, (D7FD, bit 3) - const EVENT_5B4 ; 5B4, (D7FD, bit 4) - const EVENT_5B5 ; 5B5, (D7FD, bit 5) - const EVENT_5B6 ; 5B6, (D7FD, bit 6) - const EVENT_5B7 ; 5B7, (D7FD, bit 7) - const EVENT_5B8 ; 5B8, (D7FE, bit 0) - const EVENT_5B9 ; 5B9, (D7FE, bit 1) - const EVENT_5BA ; 5BA, (D7FE, bit 2) - const EVENT_5BB ; 5BB, (D7FE, bit 3) - const EVENT_5BC ; 5BC, (D7FE, bit 4) - const EVENT_5BD ; 5BD, (D7FE, bit 5) - const EVENT_5BE ; 5BE, (D7FE, bit 6) - const EVENT_5BF ; 5BF, (D7FE, bit 7) - const EVENT_5C0 ; 5C0, (D7FF, bit 0) - const EVENT_5C1 ; 5C1, (D7FF, bit 1) - const EVENT_5C2 ; 5C2, (D7FF, bit 2) - const EVENT_5C3 ; 5C3, (D7FF, bit 3) - const EVENT_BEAT_SS_ANNE_5_TRAINER_0 ; 5C4, (D7FF, bit 4) - const EVENT_BEAT_SS_ANNE_5_TRAINER_1 ; 5C5, (D7FF, bit 5) - const EVENT_5C6 ; 5C6, (D7FF, bit 6) - const EVENT_5C7 ; 5C7, (D7FF, bit 7) - const EVENT_5C8 ; 5C8, (D800, bit 0) - const EVENT_5C9 ; 5C9, (D800, bit 1) - const EVENT_5CA ; 5CA, (D800, bit 2) - const EVENT_5CB ; 5CB, (D800, bit 3) - const EVENT_5CC ; 5CC, (D800, bit 4) - const EVENT_5CD ; 5CD, (D800, bit 5) - const EVENT_5CE ; 5CE, (D800, bit 6) - const EVENT_5CF ; 5CF, (D800, bit 7) - const EVENT_5D0 ; 5D0, (D801, bit 0) - const EVENT_5D1 ; 5D1, (D801, bit 1) - const EVENT_5D2 ; 5D2, (D801, bit 2) - const EVENT_5D3 ; 5D3, (D801, bit 3) - const EVENT_5D4 ; 5D4, (D801, bit 4) - const EVENT_5D5 ; 5D5, (D801, bit 5) - const EVENT_5D6 ; 5D6, (D801, bit 6) - const EVENT_5D7 ; 5D7, (D801, bit 7) - const EVENT_5D8 ; 5D8, (D802, bit 0) - const EVENT_5D9 ; 5D9, (D802, bit 1) - const EVENT_5DA ; 5DA, (D802, bit 2) - const EVENT_5DB ; 5DB, (D802, bit 3) - const EVENT_5DC ; 5DC, (D802, bit 4) - const EVENT_5DD ; 5DD, (D802, bit 5) - const EVENT_5DE ; 5DE, (D802, bit 6) - const EVENT_5DF ; 5DF, (D802, bit 7) - const EVENT_GOT_HM01 ; 5E0, (D803, bit 0) - const EVENT_RUBBED_CAPTAINS_BACK ; 5E1, (D803, bit 1) - const EVENT_SS_ANNE_LEFT ; 5E2, (D803, bit 2) - const EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT ; 5E3, (D803, bit 3) - const EVENT_STARTED_WALKING_OUT_OF_DOCK ; 5E4, (D803, bit 4) - const EVENT_WALKED_OUT_OF_DOCK ; 5E5, (D803, bit 5) - const EVENT_5E6 ; 5E6, (D803, bit 6) - const EVENT_5E7 ; 5E7, (D803, bit 7) - const EVENT_5E8 ; 5E8, (D804, bit 0) - const EVENT_5E9 ; 5E9, (D804, bit 1) - const EVENT_5EA ; 5EA, (D804, bit 2) - const EVENT_5EB ; 5EB, (D804, bit 3) - const EVENT_5EC ; 5EC, (D804, bit 4) - const EVENT_5ED ; 5ED, (D804, bit 5) - const EVENT_5EE ; 5EE, (D804, bit 6) - const EVENT_5EF ; 5EF, (D804, bit 7) - const EVENT_5F0 ; 5F0, (D805, bit 0) - const EVENT_BEAT_SS_ANNE_8_TRAINER_0 ; 5F1, (D805, bit 1) - const EVENT_BEAT_SS_ANNE_8_TRAINER_1 ; 5F2, (D805, bit 2) - const EVENT_BEAT_SS_ANNE_8_TRAINER_2 ; 5F3, (D805, bit 3) - const EVENT_BEAT_SS_ANNE_8_TRAINER_3 ; 5F4, (D805, bit 4) - const EVENT_5F5 ; 5F5, (D805, bit 5) - const EVENT_5F6 ; 5F6, (D805, bit 6) - const EVENT_5F7 ; 5F7, (D805, bit 7) - const EVENT_5F8 ; 5F8, (D806, bit 0) - const EVENT_5F9 ; 5F9, (D806, bit 1) - const EVENT_5FA ; 5FA, (D806, bit 2) - const EVENT_5FB ; 5FB, (D806, bit 3) - const EVENT_5FC ; 5FC, (D806, bit 4) - const EVENT_5FD ; 5FD, (D806, bit 5) - const EVENT_5FE ; 5FE, (D806, bit 6) - const EVENT_5FF ; 5FF, (D806, bit 7) - const EVENT_600 ; 600, (D807, bit 0) - const EVENT_BEAT_SS_ANNE_9_TRAINER_0 ; 601, (D807, bit 1) - const EVENT_BEAT_SS_ANNE_9_TRAINER_1 ; 602, (D807, bit 2) - const EVENT_BEAT_SS_ANNE_9_TRAINER_2 ; 603, (D807, bit 3) - const EVENT_BEAT_SS_ANNE_9_TRAINER_3 ; 604, (D807, bit 4) - const EVENT_605 ; 605, (D807, bit 5) - const EVENT_606 ; 606, (D807, bit 6) - const EVENT_607 ; 607, (D807, bit 7) - const EVENT_608 ; 608, (D808, bit 0) - const EVENT_609 ; 609, (D808, bit 1) - const EVENT_60A ; 60A, (D808, bit 2) - const EVENT_60B ; 60B, (D808, bit 3) - const EVENT_60C ; 60C, (D808, bit 4) - const EVENT_60D ; 60D, (D808, bit 5) - const EVENT_60E ; 60E, (D808, bit 6) - const EVENT_60F ; 60F, (D808, bit 7) - const EVENT_610 ; 610, (D809, bit 0) - const EVENT_BEAT_SS_ANNE_10_TRAINER_0 ; 611, (D809, bit 1) - const EVENT_BEAT_SS_ANNE_10_TRAINER_1 ; 612, (D809, bit 2) - const EVENT_BEAT_SS_ANNE_10_TRAINER_2 ; 613, (D809, bit 3) - const EVENT_BEAT_SS_ANNE_10_TRAINER_3 ; 614, (D809, bit 4) - const EVENT_BEAT_SS_ANNE_10_TRAINER_4 ; 615, (D809, bit 5) - const EVENT_BEAT_SS_ANNE_10_TRAINER_5 ; 616, (D809, bit 6) - const EVENT_617 ; 617, (D809, bit 7) - const EVENT_618 ; 618, (D80A, bit 0) - const EVENT_619 ; 619, (D80A, bit 1) - const EVENT_61A ; 61A, (D80A, bit 2) - const EVENT_61B ; 61B, (D80A, bit 3) - const EVENT_61C ; 61C, (D80A, bit 4) - const EVENT_61D ; 61D, (D80A, bit 5) - const EVENT_61E ; 61E, (D80A, bit 6) - const EVENT_61F ; 61F, (D80A, bit 7) - const EVENT_620 ; 620, (D80B, bit 0) - const EVENT_621 ; 621, (D80B, bit 1) - const EVENT_622 ; 622, (D80B, bit 2) - const EVENT_623 ; 623, (D80B, bit 3) - const EVENT_624 ; 624, (D80B, bit 4) - const EVENT_625 ; 625, (D80B, bit 5) - const EVENT_626 ; 626, (D80B, bit 6) - const EVENT_627 ; 627, (D80B, bit 7) - const EVENT_628 ; 628, (D80C, bit 0) - const EVENT_629 ; 629, (D80C, bit 1) - const EVENT_62A ; 62A, (D80C, bit 2) - const EVENT_62B ; 62B, (D80C, bit 3) - const EVENT_62C ; 62C, (D80C, bit 4) - const EVENT_62D ; 62D, (D80C, bit 5) - const EVENT_62E ; 62E, (D80C, bit 6) - const EVENT_62F ; 62F, (D80C, bit 7) - const EVENT_630 ; 630, (D80D, bit 0) - const EVENT_631 ; 631, (D80D, bit 1) - const EVENT_632 ; 632, (D80D, bit 2) - const EVENT_633 ; 633, (D80D, bit 3) - const EVENT_634 ; 634, (D80D, bit 4) - const EVENT_635 ; 635, (D80D, bit 5) - const EVENT_636 ; 636, (D80D, bit 6) - const EVENT_637 ; 637, (D80D, bit 7) - const EVENT_638 ; 638, (D80E, bit 0) - const EVENT_639 ; 639, (D80E, bit 1) - const EVENT_63A ; 63A, (D80E, bit 2) - const EVENT_63B ; 63B, (D80E, bit 3) - const EVENT_63C ; 63C, (D80E, bit 4) - const EVENT_63D ; 63D, (D80E, bit 5) - const EVENT_63E ; 63E, (D80E, bit 6) - const EVENT_63F ; 63F, (D80E, bit 7) - const EVENT_640 ; 640, (D80F, bit 0) - const EVENT_641 ; 641, (D80F, bit 1) - const EVENT_642 ; 642, (D80F, bit 2) - const EVENT_643 ; 643, (D80F, bit 3) - const EVENT_644 ; 644, (D80F, bit 4) - const EVENT_645 ; 645, (D80F, bit 5) - const EVENT_646 ; 646, (D80F, bit 6) - const EVENT_647 ; 647, (D80F, bit 7) - const EVENT_648 ; 648, (D810, bit 0) - const EVENT_649 ; 649, (D810, bit 1) - const EVENT_64A ; 64A, (D810, bit 2) - const EVENT_64B ; 64B, (D810, bit 3) - const EVENT_64C ; 64C, (D810, bit 4) - const EVENT_64D ; 64D, (D810, bit 5) - const EVENT_64E ; 64E, (D810, bit 6) - const EVENT_64F ; 64F, (D810, bit 7) - const EVENT_650 ; 650, (D811, bit 0) - const EVENT_651 ; 651, (D811, bit 1) - const EVENT_652 ; 652, (D811, bit 2) - const EVENT_653 ; 653, (D811, bit 3) - const EVENT_654 ; 654, (D811, bit 4) - const EVENT_655 ; 655, (D811, bit 5) - const EVENT_656 ; 656, (D811, bit 6) - const EVENT_657 ; 657, (D811, bit 7) - const EVENT_658 ; 658, (D812, bit 0) - const EVENT_659 ; 659, (D812, bit 1) - const EVENT_65A ; 65A, (D812, bit 2) - const EVENT_65B ; 65B, (D812, bit 3) - const EVENT_65C ; 65C, (D812, bit 4) - const EVENT_65D ; 65D, (D812, bit 5) - const EVENT_65E ; 65E, (D812, bit 6) - const EVENT_65F ; 65F, (D812, bit 7) - const EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1 ; 660, (D813, bit 0) - const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0 ; 661, (D813, bit 1) - const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_1 ; 662, (D813, bit 2) - const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2 ; 663, (D813, bit 3) - const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3 ; 664, (D813, bit 4) - const EVENT_665 ; 665, (D813, bit 5) - const EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2 ; 666, (D813, bit 6) - const EVENT_667 ; 667, (D813, bit 7) - const EVENT_668 ; 668, (D814, bit 0) - const EVENT_669 ; 669, (D814, bit 1) - const EVENT_66A ; 66A, (D814, bit 2) - const EVENT_66B ; 66B, (D814, bit 3) - const EVENT_66C ; 66C, (D814, bit 4) - const EVENT_66D ; 66D, (D814, bit 5) - const EVENT_66E ; 66E, (D814, bit 6) - const EVENT_66F ; 66F, (D814, bit 7) - const EVENT_670 ; 670, (D815, bit 0) - const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0 ; 671, (D815, bit 1) - const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1 ; 672, (D815, bit 2) - const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2 ; 673, (D815, bit 3) - const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3 ; 674, (D815, bit 4) - const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4 ; 675, (D815, bit 5) - const EVENT_676 ; 676, (D815, bit 6) - const EVENT_677 ; 677, (D815, bit 7) - const EVENT_678 ; 678, (D816, bit 0) - const EVENT_679 ; 679, (D816, bit 1) - const EVENT_67A ; 67A, (D816, bit 2) - const EVENT_67B ; 67B, (D816, bit 3) - const EVENT_67C ; 67C, (D816, bit 4) - const EVENT_67D ; 67D, (D816, bit 5) - const EVENT_67E ; 67E, (D816, bit 6) - const EVENT_67F ; 67F, (D816, bit 7) - const EVENT_680 ; 680, (D817, bit 0) - const EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0 ; 681, (D817, bit 1) - const EVENT_682 ; 682, (D817, bit 2) - const EVENT_683 ; 683, (D817, bit 3) - const EVENT_684 ; 684, (D817, bit 4) - const EVENT_685 ; 685, (D817, bit 5) - const EVENT_686 ; 686, (D817, bit 6) - const EVENT_687 ; 687, (D817, bit 7) - const EVENT_688 ; 688, (D818, bit 0) - const EVENT_689 ; 689, (D818, bit 1) - const EVENT_68A ; 68A, (D818, bit 2) - const EVENT_68B ; 68B, (D818, bit 3) - const EVENT_68C ; 68C, (D818, bit 4) - const EVENT_68D ; 68D, (D818, bit 5) - const EVENT_68E ; 68E, (D818, bit 6) - const EVENT_68F ; 68F, (D818, bit 7) - const EVENT_690 ; 690, (D819, bit 0) - const EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0 ; 691, (D819, bit 1) - const EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_1 ; 692, (D819, bit 2) - const EVENT_693 ; 693, (D819, bit 3) - const EVENT_694 ; 694, (D819, bit 4) - const EVENT_695 ; 695, (D819, bit 5) - const EVENT_696 ; 696, (D819, bit 6) - const EVENT_697 ; 697, (D819, bit 7) - const EVENT_698 ; 698, (D81A, bit 0) - const EVENT_699 ; 699, (D81A, bit 1) - const EVENT_69A ; 69A, (D81A, bit 2) - const EVENT_69B ; 69B, (D81A, bit 3) - const EVENT_69C ; 69C, (D81A, bit 4) - const EVENT_69D ; 69D, (D81A, bit 5) - const EVENT_69E ; 69E, (D81A, bit 6) - const EVENT_69F ; 69F, (D81A, bit 7) - const EVENT_6A0 ; 6A0, (D81B, bit 0) - const EVENT_6A1 ; 6A1, (D81B, bit 1) - const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 ; 6A2, (D81B, bit 2) - const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1 ; 6A3, (D81B, bit 3) - const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 ; 6A4, (D81B, bit 4) - const EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED ; 6A5, (D81B, bit 5) - const EVENT_ROCKET_DROPPED_LIFT_KEY ; 6A6, (D81B, bit 6) - const EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI ; 6A7, (D81B, bit 7) - const EVENT_6A8 ; 6A8, (D81C, bit 0) - const EVENT_6A9 ; 6A9, (D81C, bit 1) - const EVENT_6AA ; 6AA, (D81C, bit 2) - const EVENT_6AB ; 6AB, (D81C, bit 3) - const EVENT_6AC ; 6AC, (D81C, bit 4) - const EVENT_6AD ; 6AD, (D81C, bit 5) - const EVENT_6AE ; 6AE, (D81C, bit 6) - const EVENT_6AF ; 6AF, (D81C, bit 7) - const EVENT_6B0 ; 6B0, (D81D, bit 0) - const EVENT_6B1 ; 6B1, (D81D, bit 1) - const EVENT_6B2 ; 6B2, (D81D, bit 2) - const EVENT_6B3 ; 6B3, (D81D, bit 3) - const EVENT_6B4 ; 6B4, (D81D, bit 4) - const EVENT_6B5 ; 6B5, (D81D, bit 5) - const EVENT_6B6 ; 6B6, (D81D, bit 6) - const EVENT_6B7 ; 6B7, (D81D, bit 7) - const EVENT_6B8 ; 6B8, (D81E, bit 0) - const EVENT_6B9 ; 6B9, (D81E, bit 1) - const EVENT_6BA ; 6BA, (D81E, bit 2) - const EVENT_6BB ; 6BB, (D81E, bit 3) - const EVENT_6BC ; 6BC, (D81E, bit 4) - const EVENT_6BD ; 6BD, (D81E, bit 5) - const EVENT_6BE ; 6BE, (D81E, bit 6) - const EVENT_6BF ; 6BF, (D81E, bit 7) - const EVENT_6C0 ; 6C0, (D81F, bit 0) - const EVENT_6C1 ; 6C1, (D81F, bit 1) - const EVENT_6C2 ; 6C2, (D81F, bit 2) - const EVENT_6C3 ; 6C3, (D81F, bit 3) - const EVENT_6C4 ; 6C4, (D81F, bit 4) - const EVENT_6C5 ; 6C5, (D81F, bit 5) - const EVENT_6C6 ; 6C6, (D81F, bit 6) - const EVENT_6C7 ; 6C7, (D81F, bit 7) - const EVENT_6C8 ; 6C8, (D820, bit 0) - const EVENT_6C9 ; 6C9, (D820, bit 1) - const EVENT_6CA ; 6CA, (D820, bit 2) - const EVENT_6CB ; 6CB, (D820, bit 3) - const EVENT_6CC ; 6CC, (D820, bit 4) - const EVENT_6CD ; 6CD, (D820, bit 5) - const EVENT_6CE ; 6CE, (D820, bit 6) - const EVENT_6CF ; 6CF, (D820, bit 7) - const EVENT_6D0 ; 6D0, (D821, bit 0) - const EVENT_6D1 ; 6D1, (D821, bit 1) - const EVENT_6D2 ; 6D2, (D821, bit 2) - const EVENT_6D3 ; 6D3, (D821, bit 3) - const EVENT_6D4 ; 6D4, (D821, bit 4) - const EVENT_6D5 ; 6D5, (D821, bit 5) - const EVENT_6D6 ; 6D6, (D821, bit 6) - const EVENT_6D7 ; 6D7, (D821, bit 7) - const EVENT_6D8 ; 6D8, (D822, bit 0) - const EVENT_6D9 ; 6D9, (D822, bit 1) - const EVENT_6DA ; 6DA, (D822, bit 2) - const EVENT_6DB ; 6DB, (D822, bit 3) - const EVENT_6DC ; 6DC, (D822, bit 4) - const EVENT_6DD ; 6DD, (D822, bit 5) - const EVENT_6DE ; 6DE, (D822, bit 6) - const EVENT_6DF ; 6DF, (D822, bit 7) - const EVENT_6E0 ; 6E0, (D823, bit 0) - const EVENT_6E1 ; 6E1, (D823, bit 1) - const EVENT_6E2 ; 6E2, (D823, bit 2) - const EVENT_6E3 ; 6E3, (D823, bit 3) - const EVENT_6E4 ; 6E4, (D823, bit 4) - const EVENT_6E5 ; 6E5, (D823, bit 5) - const EVENT_6E6 ; 6E6, (D823, bit 6) - const EVENT_6E7 ; 6E7, (D823, bit 7) - const EVENT_6E8 ; 6E8, (D824, bit 0) - const EVENT_6E9 ; 6E9, (D824, bit 1) - const EVENT_6EA ; 6EA, (D824, bit 2) - const EVENT_6EB ; 6EB, (D824, bit 3) - const EVENT_6EC ; 6EC, (D824, bit 4) - const EVENT_6ED ; 6ED, (D824, bit 5) - const EVENT_6EE ; 6EE, (D824, bit 6) - const EVENT_6EF ; 6EF, (D824, bit 7) - const EVENT_6F0 ; 6F0, (D825, bit 0) - const EVENT_6F1 ; 6F1, (D825, bit 1) - const EVENT_BEAT_SILPH_CO_2F_TRAINER_0 ; 6F2, (D825, bit 2) - const EVENT_BEAT_SILPH_CO_2F_TRAINER_1 ; 6F3, (D825, bit 3) - const EVENT_BEAT_SILPH_CO_2F_TRAINER_2 ; 6F4, (D825, bit 4) - const EVENT_BEAT_SILPH_CO_2F_TRAINER_3 ; 6F5, (D825, bit 5) - const EVENT_6F6 ; 6F6, (D825, bit 6) - const EVENT_6F7 ; 6F7, (D825, bit 7) - const EVENT_6F8 ; 6F8, (D826, bit 0) - const EVENT_6F9 ; 6F9, (D826, bit 1) - const EVENT_6FA ; 6FA, (D826, bit 2) - const EVENT_6FB ; 6FB, (D826, bit 3) - const EVENT_6FC ; 6FC, (D826, bit 4) - const EVENT_SILPH_CO_2_UNLOCKED_DOOR1 ; 6FD, (D826, bit 5) - const EVENT_SILPH_CO_2_UNLOCKED_DOOR2 ; 6FE, (D826, bit 6) - const EVENT_GOT_TM36 ; 6FF, (D826, bit 7) - const EVENT_700 ; 700, (D827, bit 0) - const EVENT_701 ; 701, (D827, bit 1) - const EVENT_BEAT_SILPH_CO_3F_TRAINER_0 ; 702, (D827, bit 2) - const EVENT_BEAT_SILPH_CO_3F_TRAINER_1 ; 703, (D827, bit 3) - const EVENT_704 ; 704, (D827, bit 4) - const EVENT_705 ; 705, (D827, bit 5) - const EVENT_706 ; 706, (D827, bit 6) - const EVENT_707 ; 707, (D827, bit 7) - const EVENT_SILPH_CO_3_UNLOCKED_DOOR1 ; 708, (D828, bit 0) - const EVENT_SILPH_CO_3_UNLOCKED_DOOR2 ; 709, (D828, bit 1) - const EVENT_70A ; 70A, (D828, bit 2) - const EVENT_70B ; 70B, (D828, bit 3) - const EVENT_70C ; 70C, (D828, bit 4) - const EVENT_70D ; 70D, (D828, bit 5) - const EVENT_70E ; 70E, (D828, bit 6) - const EVENT_70F ; 70F, (D828, bit 7) - const EVENT_710 ; 710, (D829, bit 0) - const EVENT_711 ; 711, (D829, bit 1) - const EVENT_BEAT_SILPH_CO_4F_TRAINER_0 ; 712, (D829, bit 2) - const EVENT_BEAT_SILPH_CO_4F_TRAINER_1 ; 713, (D829, bit 3) - const EVENT_BEAT_SILPH_CO_4F_TRAINER_2 ; 714, (D829, bit 4) - const EVENT_715 ; 715, (D829, bit 5) - const EVENT_716 ; 716, (D829, bit 6) - const EVENT_717 ; 717, (D829, bit 7) - const EVENT_SILPH_CO_4_UNLOCKED_DOOR1 ; 718, (D82A, bit 0) - const EVENT_SILPH_CO_4_UNLOCKED_DOOR2 ; 719, (D82A, bit 1) - const EVENT_71A ; 71A, (D82A, bit 2) - const EVENT_71B ; 71B, (D82A, bit 3) - const EVENT_71C ; 71C, (D82A, bit 4) - const EVENT_71D ; 71D, (D82A, bit 5) - const EVENT_71E ; 71E, (D82A, bit 6) - const EVENT_71F ; 71F, (D82A, bit 7) - const EVENT_720 ; 720, (D82B, bit 0) - const EVENT_721 ; 721, (D82B, bit 1) - const EVENT_BEAT_SILPH_CO_5F_TRAINER_0 ; 722, (D82B, bit 2) - const EVENT_BEAT_SILPH_CO_5F_TRAINER_1 ; 723, (D82B, bit 3) - const EVENT_BEAT_SILPH_CO_5F_TRAINER_2 ; 724, (D82B, bit 4) - const EVENT_BEAT_SILPH_CO_5F_TRAINER_3 ; 725, (D82B, bit 5) - const EVENT_726 ; 726, (D82B, bit 6) - const EVENT_727 ; 727, (D82B, bit 7) - const EVENT_SILPH_CO_5_UNLOCKED_DOOR1 ; 728, (D82C, bit 0) - const EVENT_SILPH_CO_5_UNLOCKED_DOOR2 ; 729, (D82C, bit 1) - const EVENT_SILPH_CO_5_UNLOCKED_DOOR3 ; 72A, (D82C, bit 2) - const EVENT_72B ; 72B, (D82C, bit 3) - const EVENT_72C ; 72C, (D82C, bit 4) - const EVENT_72D ; 72D, (D82C, bit 5) - const EVENT_72E ; 72E, (D82C, bit 6) - const EVENT_72F ; 72F, (D82C, bit 7) - const EVENT_730 ; 730, (D82D, bit 0) - const EVENT_731 ; 731, (D82D, bit 1) - const EVENT_732 ; 732, (D82D, bit 2) - const EVENT_733 ; 733, (D82D, bit 3) - const EVENT_734 ; 734, (D82D, bit 4) - const EVENT_735 ; 735, (D82D, bit 5) - const EVENT_BEAT_SILPH_CO_6F_TRAINER_0 ; 736, (D82D, bit 6) - const EVENT_BEAT_SILPH_CO_6F_TRAINER_1 ; 737, (D82D, bit 7) - const EVENT_BEAT_SILPH_CO_6F_TRAINER_2 ; 738, (D82E, bit 0) - const EVENT_739 ; 739, (D82E, bit 1) - const EVENT_73A ; 73A, (D82E, bit 2) - const EVENT_73B ; 73B, (D82E, bit 3) - const EVENT_73C ; 73C, (D82E, bit 4) - const EVENT_73D ; 73D, (D82E, bit 5) - const EVENT_73E ; 73E, (D82E, bit 6) - const EVENT_SILPH_CO_6_UNLOCKED_DOOR ; 73F, (D82E, bit 7) - const EVENT_BEAT_SILPH_CO_RIVAL ; 740, (D82F, bit 0) - const EVENT_741 ; 741, (D82F, bit 1) - const EVENT_742 ; 742, (D82F, bit 2) - const EVENT_743 ; 743, (D82F, bit 3) - const EVENT_744 ; 744, (D82F, bit 4) - const EVENT_BEAT_SILPH_CO_7F_TRAINER_0 ; 745, (D82F, bit 5) - const EVENT_BEAT_SILPH_CO_7F_TRAINER_1 ; 746, (D82F, bit 6) - const EVENT_BEAT_SILPH_CO_7F_TRAINER_2 ; 747, (D82F, bit 7) - const EVENT_BEAT_SILPH_CO_7F_TRAINER_3 ; 748, (D830, bit 0) - const EVENT_749 ; 749, (D830, bit 1) - const EVENT_74A ; 74A, (D830, bit 2) - const EVENT_74B ; 74B, (D830, bit 3) - const EVENT_SILPH_CO_7_UNLOCKED_DOOR1 ; 74C, (D830, bit 4) - const EVENT_SILPH_CO_7_UNLOCKED_DOOR2 ; 74D, (D830, bit 5) - const EVENT_SILPH_CO_7_UNLOCKED_DOOR3 ; 74E, (D830, bit 6) - const EVENT_74F ; 74F, (D830, bit 7) - const EVENT_750 ; 750, (D831, bit 0) - const EVENT_751 ; 751, (D831, bit 1) - const EVENT_BEAT_SILPH_CO_8F_TRAINER_0 ; 752, (D831, bit 2) - const EVENT_BEAT_SILPH_CO_8F_TRAINER_1 ; 753, (D831, bit 3) - const EVENT_BEAT_SILPH_CO_8F_TRAINER_2 ; 754, (D831, bit 4) - const EVENT_755 ; 755, (D831, bit 5) - const EVENT_756 ; 756, (D831, bit 6) - const EVENT_757 ; 757, (D831, bit 7) - const EVENT_SILPH_CO_8_UNLOCKED_DOOR ; 758, (D832, bit 0) - const EVENT_759 ; 759, (D832, bit 1) - const EVENT_75A ; 75A, (D832, bit 2) - const EVENT_75B ; 75B, (D832, bit 3) - const EVENT_75C ; 75C, (D832, bit 4) - const EVENT_75D ; 75D, (D832, bit 5) - const EVENT_75E ; 75E, (D832, bit 6) - const EVENT_75F ; 75F, (D832, bit 7) - const EVENT_760 ; 760, (D833, bit 0) - const EVENT_761 ; 761, (D833, bit 1) - const EVENT_BEAT_SILPH_CO_9F_TRAINER_0 ; 762, (D833, bit 2) - const EVENT_BEAT_SILPH_CO_9F_TRAINER_1 ; 763, (D833, bit 3) - const EVENT_BEAT_SILPH_CO_9F_TRAINER_2 ; 764, (D833, bit 4) - const EVENT_765 ; 765, (D833, bit 5) - const EVENT_766 ; 766, (D833, bit 6) - const EVENT_767 ; 767, (D833, bit 7) - const EVENT_SILPH_CO_9_UNLOCKED_DOOR1 ; 768, (D834, bit 0) - const EVENT_SILPH_CO_9_UNLOCKED_DOOR2 ; 769, (D834, bit 1) - const EVENT_SILPH_CO_9_UNLOCKED_DOOR3 ; 76A, (D834, bit 2) - const EVENT_SILPH_CO_9_UNLOCKED_DOOR4 ; 76B, (D834, bit 3) - const EVENT_76C ; 76C, (D834, bit 4) - const EVENT_76D ; 76D, (D834, bit 5) - const EVENT_76E ; 76E, (D834, bit 6) - const EVENT_76F ; 76F, (D834, bit 7) - const EVENT_770 ; 770, (D835, bit 0) - const EVENT_BEAT_SILPH_CO_10F_TRAINER_0 ; 771, (D835, bit 1) - const EVENT_BEAT_SILPH_CO_10F_TRAINER_1 ; 772, (D835, bit 2) - const EVENT_773 ; 773, (D835, bit 3) - const EVENT_774 ; 774, (D835, bit 4) - const EVENT_775 ; 775, (D835, bit 5) - const EVENT_776 ; 776, (D835, bit 6) - const EVENT_777 ; 777, (D835, bit 7) - const EVENT_SILPH_CO_10_UNLOCKED_DOOR ; 778, (D836, bit 0) - const EVENT_779 ; 779, (D836, bit 1) - const EVENT_77A ; 77A, (D836, bit 2) - const EVENT_77B ; 77B, (D836, bit 3) - const EVENT_77C ; 77C, (D836, bit 4) - const EVENT_77D ; 77D, (D836, bit 5) - const EVENT_77E ; 77E, (D836, bit 6) - const EVENT_77F ; 77F, (D836, bit 7) - const EVENT_780 ; 780, (D837, bit 0) - const EVENT_781 ; 781, (D837, bit 1) - const EVENT_782 ; 782, (D837, bit 2) - const EVENT_783 ; 783, (D837, bit 3) - const EVENT_BEAT_SILPH_CO_11F_TRAINER_0 ; 784, (D837, bit 4) - const EVENT_BEAT_SILPH_CO_11F_TRAINER_1 ; 785, (D837, bit 5) - const EVENT_786 ; 786, (D837, bit 6) - const EVENT_787 ; 787, (D837, bit 7) - const EVENT_SILPH_CO_11_UNLOCKED_DOOR ; 788, (D838, bit 0) - const EVENT_789 ; 789, (D838, bit 1) - const EVENT_78A ; 78A, (D838, bit 2) - const EVENT_78B ; 78B, (D838, bit 3) - const EVENT_78C ; 78C, (D838, bit 4) - const EVENT_GOT_MASTER_BALL ; 78D, (D838, bit 5) - const EVENT_78E ; 78E, (D838, bit 6) - const EVENT_BEAT_SILPH_CO_GIOVANNI ; 78F, (D838, bit 7) - const EVENT_790 ; 790, (D839, bit 0) - const EVENT_791 ; 791, (D839, bit 1) - const EVENT_792 ; 792, (D839, bit 2) - const EVENT_793 ; 793, (D839, bit 3) - const EVENT_794 ; 794, (D839, bit 4) - const EVENT_795 ; 795, (D839, bit 5) - const EVENT_796 ; 796, (D839, bit 6) - const EVENT_797 ; 797, (D839, bit 7) - const EVENT_798 ; 798, (D83A, bit 0) - const EVENT_799 ; 799, (D83A, bit 1) - const EVENT_79A ; 79A, (D83A, bit 2) - const EVENT_79B ; 79B, (D83A, bit 3) - const EVENT_79C ; 79C, (D83A, bit 4) - const EVENT_79D ; 79D, (D83A, bit 5) - const EVENT_79E ; 79E, (D83A, bit 6) - const EVENT_79F ; 79F, (D83A, bit 7) - const EVENT_7A0 ; 7A0, (D83B, bit 0) - const EVENT_7A1 ; 7A1, (D83B, bit 1) - const EVENT_7A2 ; 7A2, (D83B, bit 2) - const EVENT_7A3 ; 7A3, (D83B, bit 3) - const EVENT_7A4 ; 7A4, (D83B, bit 4) - const EVENT_7A5 ; 7A5, (D83B, bit 5) - const EVENT_7A6 ; 7A6, (D83B, bit 6) - const EVENT_7A7 ; 7A7, (D83B, bit 7) - const EVENT_7A8 ; 7A8, (D83C, bit 0) - const EVENT_7A9 ; 7A9, (D83C, bit 1) - const EVENT_7AA ; 7AA, (D83C, bit 2) - const EVENT_7AB ; 7AB, (D83C, bit 3) - const EVENT_7AC ; 7AC, (D83C, bit 4) - const EVENT_7AD ; 7AD, (D83C, bit 5) - const EVENT_7AE ; 7AE, (D83C, bit 6) - const EVENT_7AF ; 7AF, (D83C, bit 7) - const EVENT_7B0 ; 7B0, (D83D, bit 0) - const EVENT_7B1 ; 7B1, (D83D, bit 1) - const EVENT_7B2 ; 7B2, (D83D, bit 2) - const EVENT_7B3 ; 7B3, (D83D, bit 3) - const EVENT_7B4 ; 7B4, (D83D, bit 4) - const EVENT_7B5 ; 7B5, (D83D, bit 5) - const EVENT_7B6 ; 7B6, (D83D, bit 6) - const EVENT_7B7 ; 7B7, (D83D, bit 7) - const EVENT_7B8 ; 7B8, (D83E, bit 0) - const EVENT_7B9 ; 7B9, (D83E, bit 1) - const EVENT_7BA ; 7BA, (D83E, bit 2) - const EVENT_7BB ; 7BB, (D83E, bit 3) - const EVENT_7BC ; 7BC, (D83E, bit 4) - const EVENT_7BD ; 7BD, (D83E, bit 5) - const EVENT_7BE ; 7BE, (D83E, bit 6) - const EVENT_7BF ; 7BF, (D83E, bit 7) - const EVENT_7C0 ; 7C0, (D83F, bit 0) - const EVENT_7C1 ; 7C1, (D83F, bit 1) - const EVENT_7C2 ; 7C2, (D83F, bit 2) - const EVENT_7C3 ; 7C3, (D83F, bit 3) - const EVENT_7C4 ; 7C4, (D83F, bit 4) - const EVENT_7C5 ; 7C5, (D83F, bit 5) - const EVENT_7C6 ; 7C6, (D83F, bit 6) - const EVENT_7C7 ; 7C7, (D83F, bit 7) - const EVENT_7C8 ; 7C8, (D840, bit 0) - const EVENT_7C9 ; 7C9, (D840, bit 1) - const EVENT_7CA ; 7CA, (D840, bit 2) - const EVENT_7CB ; 7CB, (D840, bit 3) - const EVENT_7CC ; 7CC, (D840, bit 4) - const EVENT_7CD ; 7CD, (D840, bit 5) - const EVENT_7CE ; 7CE, (D840, bit 6) - const EVENT_7CF ; 7CF, (D840, bit 7) - const EVENT_7D0 ; 7D0, (D841, bit 0) - const EVENT_7D1 ; 7D1, (D841, bit 1) - const EVENT_7D2 ; 7D2, (D841, bit 2) - const EVENT_7D3 ; 7D3, (D841, bit 3) - const EVENT_7D4 ; 7D4, (D841, bit 4) - const EVENT_7D5 ; 7D5, (D841, bit 5) - const EVENT_7D6 ; 7D6, (D841, bit 6) - const EVENT_7D7 ; 7D7, (D841, bit 7) - const EVENT_7D8 ; 7D8, (D842, bit 0) - const EVENT_7D9 ; 7D9, (D842, bit 1) - const EVENT_7DA ; 7DA, (D842, bit 2) - const EVENT_7DB ; 7DB, (D842, bit 3) - const EVENT_7DC ; 7DC, (D842, bit 4) - const EVENT_7DD ; 7DD, (D842, bit 5) - const EVENT_7DE ; 7DE, (D842, bit 6) - const EVENT_7DF ; 7DF, (D842, bit 7) - const EVENT_7E0 ; 7E0, (D843, bit 0) - const EVENT_7E1 ; 7E1, (D843, bit 1) - const EVENT_7E2 ; 7E2, (D843, bit 2) - const EVENT_7E3 ; 7E3, (D843, bit 3) - const EVENT_7E4 ; 7E4, (D843, bit 4) - const EVENT_7E5 ; 7E5, (D843, bit 5) - const EVENT_7E6 ; 7E6, (D843, bit 6) - const EVENT_7E7 ; 7E7, (D843, bit 7) - const EVENT_7E8 ; 7E8, (D844, bit 0) - const EVENT_7E9 ; 7E9, (D844, bit 1) - const EVENT_7EA ; 7EA, (D844, bit 2) - const EVENT_7EB ; 7EB, (D844, bit 3) - const EVENT_7EC ; 7EC, (D844, bit 4) - const EVENT_7ED ; 7ED, (D844, bit 5) - const EVENT_7EE ; 7EE, (D844, bit 6) - const EVENT_7EF ; 7EF, (D844, bit 7) - const EVENT_7F0 ; 7F0, (D845, bit 0) - const EVENT_7F1 ; 7F1, (D845, bit 1) - const EVENT_7F2 ; 7F2, (D845, bit 2) - const EVENT_7F3 ; 7F3, (D845, bit 3) - const EVENT_7F4 ; 7F4, (D845, bit 4) - const EVENT_7F5 ; 7F5, (D845, bit 5) - const EVENT_7F6 ; 7F6, (D845, bit 6) - const EVENT_7F7 ; 7F7, (D845, bit 7) - const EVENT_7F8 ; 7F8, (D846, bit 0) - const EVENT_7F9 ; 7F9, (D846, bit 1) - const EVENT_7FA ; 7FA, (D846, bit 2) - const EVENT_7FB ; 7FB, (D846, bit 3) - const EVENT_7FC ; 7FC, (D846, bit 4) - const EVENT_7FD ; 7FD, (D846, bit 5) - const EVENT_7FE ; 7FE, (D846, bit 6) - const EVENT_7FF ; 7FF, (D846, bit 7) - const EVENT_800 ; 800, (D847, bit 0) - const EVENT_BEAT_MANSION_2_TRAINER_0 ; 801, (D847, bit 1) - const EVENT_802 ; 802, (D847, bit 2) - const EVENT_803 ; 803, (D847, bit 3) - const EVENT_804 ; 804, (D847, bit 4) - const EVENT_805 ; 805, (D847, bit 5) - const EVENT_806 ; 806, (D847, bit 6) - const EVENT_807 ; 807, (D847, bit 7) - const EVENT_808 ; 808, (D848, bit 0) - const EVENT_809 ; 809, (D848, bit 1) - const EVENT_80A ; 80A, (D848, bit 2) - const EVENT_80B ; 80B, (D848, bit 3) - const EVENT_80C ; 80C, (D848, bit 4) - const EVENT_80D ; 80D, (D848, bit 5) - const EVENT_80E ; 80E, (D848, bit 6) - const EVENT_80F ; 80F, (D848, bit 7) - const EVENT_810 ; 810, (D849, bit 0) - const EVENT_BEAT_MANSION_3_TRAINER_0 ; 811, (D849, bit 1) - const EVENT_BEAT_MANSION_3_TRAINER_1 ; 812, (D849, bit 2) - const EVENT_813 ; 813, (D849, bit 3) - const EVENT_814 ; 814, (D849, bit 4) - const EVENT_815 ; 815, (D849, bit 5) - const EVENT_816 ; 816, (D849, bit 6) - const EVENT_817 ; 817, (D849, bit 7) - const EVENT_818 ; 818, (D84A, bit 0) - const EVENT_819 ; 819, (D84A, bit 1) - const EVENT_81A ; 81A, (D84A, bit 2) - const EVENT_81B ; 81B, (D84A, bit 3) - const EVENT_81C ; 81C, (D84A, bit 4) - const EVENT_81D ; 81D, (D84A, bit 5) - const EVENT_81E ; 81E, (D84A, bit 6) - const EVENT_81F ; 81F, (D84A, bit 7) - const EVENT_820 ; 820, (D84B, bit 0) - const EVENT_BEAT_MANSION_4_TRAINER_0 ; 821, (D84B, bit 1) - const EVENT_BEAT_MANSION_4_TRAINER_1 ; 822, (D84B, bit 2) - const EVENT_823 ; 823, (D84B, bit 3) - const EVENT_824 ; 824, (D84B, bit 4) - const EVENT_825 ; 825, (D84B, bit 5) - const EVENT_826 ; 826, (D84B, bit 6) - const EVENT_827 ; 827, (D84B, bit 7) - const EVENT_828 ; 828, (D84C, bit 0) - const EVENT_829 ; 829, (D84C, bit 1) - const EVENT_82A ; 82A, (D84C, bit 2) - const EVENT_82B ; 82B, (D84C, bit 3) - const EVENT_82C ; 82C, (D84C, bit 4) - const EVENT_82D ; 82D, (D84C, bit 5) - const EVENT_82E ; 82E, (D84C, bit 6) - const EVENT_82F ; 82F, (D84C, bit 7) - const EVENT_830 ; 830, (D84D, bit 0) - const EVENT_831 ; 831, (D84D, bit 1) - const EVENT_832 ; 832, (D84D, bit 2) - const EVENT_833 ; 833, (D84D, bit 3) - const EVENT_834 ; 834, (D84D, bit 4) - const EVENT_835 ; 835, (D84D, bit 5) - const EVENT_836 ; 836, (D84D, bit 6) - const EVENT_837 ; 837, (D84D, bit 7) - const EVENT_838 ; 838, (D84E, bit 0) - const EVENT_839 ; 839, (D84E, bit 1) - const EVENT_83A ; 83A, (D84E, bit 2) - const EVENT_83B ; 83B, (D84E, bit 3) - const EVENT_83C ; 83C, (D84E, bit 4) - const EVENT_83D ; 83D, (D84E, bit 5) - const EVENT_83E ; 83E, (D84E, bit 6) - const EVENT_83F ; 83F, (D84E, bit 7) - const EVENT_840 ; 840, (D84F, bit 0) - const EVENT_841 ; 841, (D84F, bit 1) - const EVENT_842 ; 842, (D84F, bit 2) - const EVENT_843 ; 843, (D84F, bit 3) - const EVENT_844 ; 844, (D84F, bit 4) - const EVENT_845 ; 845, (D84F, bit 5) - const EVENT_846 ; 846, (D84F, bit 6) - const EVENT_847 ; 847, (D84F, bit 7) - const EVENT_848 ; 848, (D850, bit 0) - const EVENT_849 ; 849, (D850, bit 1) - const EVENT_84A ; 84A, (D850, bit 2) - const EVENT_84B ; 84B, (D850, bit 3) - const EVENT_84C ; 84C, (D850, bit 4) - const EVENT_84D ; 84D, (D850, bit 5) - const EVENT_84E ; 84E, (D850, bit 6) - const EVENT_84F ; 84F, (D850, bit 7) - const EVENT_850 ; 850, (D851, bit 0) - const EVENT_851 ; 851, (D851, bit 1) - const EVENT_852 ; 852, (D851, bit 2) - const EVENT_853 ; 853, (D851, bit 3) - const EVENT_854 ; 854, (D851, bit 4) - const EVENT_855 ; 855, (D851, bit 5) - const EVENT_856 ; 856, (D851, bit 6) - const EVENT_857 ; 857, (D851, bit 7) - const EVENT_858 ; 858, (D852, bit 0) - const EVENT_859 ; 859, (D852, bit 1) - const EVENT_85A ; 85A, (D852, bit 2) - const EVENT_85B ; 85B, (D852, bit 3) - const EVENT_85C ; 85C, (D852, bit 4) - const EVENT_85D ; 85D, (D852, bit 5) - const EVENT_85E ; 85E, (D852, bit 6) - const EVENT_85F ; 85F, (D852, bit 7) - const EVENT_860 ; 860, (D853, bit 0) - const EVENT_861 ; 861, (D853, bit 1) - const EVENT_862 ; 862, (D853, bit 2) - const EVENT_863 ; 863, (D853, bit 3) - const EVENT_864 ; 864, (D853, bit 4) - const EVENT_865 ; 865, (D853, bit 5) - const EVENT_866 ; 866, (D853, bit 6) - const EVENT_867 ; 867, (D853, bit 7) - const EVENT_868 ; 868, (D854, bit 0) - const EVENT_869 ; 869, (D854, bit 1) - const EVENT_86A ; 86A, (D854, bit 2) - const EVENT_86B ; 86B, (D854, bit 3) - const EVENT_86C ; 86C, (D854, bit 4) - const EVENT_86D ; 86D, (D854, bit 5) - const EVENT_86E ; 86E, (D854, bit 6) - const EVENT_86F ; 86F, (D854, bit 7) - const EVENT_870 ; 870, (D855, bit 0) - const EVENT_871 ; 871, (D855, bit 1) - const EVENT_872 ; 872, (D855, bit 2) - const EVENT_873 ; 873, (D855, bit 3) - const EVENT_874 ; 874, (D855, bit 4) - const EVENT_875 ; 875, (D855, bit 5) - const EVENT_876 ; 876, (D855, bit 6) - const EVENT_877 ; 877, (D855, bit 7) - const EVENT_878 ; 878, (D856, bit 0) - const EVENT_879 ; 879, (D856, bit 1) - const EVENT_87A ; 87A, (D856, bit 2) - const EVENT_87B ; 87B, (D856, bit 3) - const EVENT_87C ; 87C, (D856, bit 4) - const EVENT_87D ; 87D, (D856, bit 5) - const EVENT_87E ; 87E, (D856, bit 6) - const EVENT_87F ; 87F, (D856, bit 7) - const EVENT_GOT_HM03 ; 880, (D857, bit 0) - const EVENT_881 ; 881, (D857, bit 1) - const EVENT_882 ; 882, (D857, bit 2) - const EVENT_883 ; 883, (D857, bit 3) - const EVENT_884 ; 884, (D857, bit 4) - const EVENT_885 ; 885, (D857, bit 5) - const EVENT_886 ; 886, (D857, bit 6) - const EVENT_887 ; 887, (D857, bit 7) - const EVENT_888 ; 888, (D858, bit 0) - const EVENT_889 ; 889, (D858, bit 1) - const EVENT_88A ; 88A, (D858, bit 2) - const EVENT_88B ; 88B, (D858, bit 3) - const EVENT_88C ; 88C, (D858, bit 4) - const EVENT_88D ; 88D, (D858, bit 5) - const EVENT_88E ; 88E, (D858, bit 6) - const EVENT_88F ; 88F, (D858, bit 7) - const EVENT_890 ; 890, (D859, bit 0) - const EVENT_891 ; 891, (D859, bit 1) - const EVENT_892 ; 892, (D859, bit 2) - const EVENT_893 ; 893, (D859, bit 3) - const EVENT_894 ; 894, (D859, bit 4) - const EVENT_895 ; 895, (D859, bit 5) - const EVENT_896 ; 896, (D859, bit 6) - const EVENT_897 ; 897, (D859, bit 7) - const EVENT_898 ; 898, (D85A, bit 0) - const EVENT_899 ; 899, (D85A, bit 1) - const EVENT_89A ; 89A, (D85A, bit 2) - const EVENT_89B ; 89B, (D85A, bit 3) - const EVENT_89C ; 89C, (D85A, bit 4) - const EVENT_89D ; 89D, (D85A, bit 5) - const EVENT_89E ; 89E, (D85A, bit 6) - const EVENT_89F ; 89F, (D85A, bit 7) - const EVENT_8A0 ; 8A0, (D85B, bit 0) - const EVENT_8A1 ; 8A1, (D85B, bit 1) - const EVENT_8A2 ; 8A2, (D85B, bit 2) - const EVENT_8A3 ; 8A3, (D85B, bit 3) - const EVENT_8A4 ; 8A4, (D85B, bit 4) - const EVENT_8A5 ; 8A5, (D85B, bit 5) - const EVENT_8A6 ; 8A6, (D85B, bit 6) - const EVENT_8A7 ; 8A7, (D85B, bit 7) - const EVENT_8A8 ; 8A8, (D85C, bit 0) - const EVENT_8A9 ; 8A9, (D85C, bit 1) - const EVENT_8AA ; 8AA, (D85C, bit 2) - const EVENT_8AB ; 8AB, (D85C, bit 3) - const EVENT_8AC ; 8AC, (D85C, bit 4) - const EVENT_8AD ; 8AD, (D85C, bit 5) - const EVENT_8AE ; 8AE, (D85C, bit 6) - const EVENT_8AF ; 8AF, (D85C, bit 7) - const EVENT_8B0 ; 8B0, (D85D, bit 0) - const EVENT_8B1 ; 8B1, (D85D, bit 1) - const EVENT_8B2 ; 8B2, (D85D, bit 2) - const EVENT_8B3 ; 8B3, (D85D, bit 3) - const EVENT_8B4 ; 8B4, (D85D, bit 4) - const EVENT_8B5 ; 8B5, (D85D, bit 5) - const EVENT_8B6 ; 8B6, (D85D, bit 6) - const EVENT_8B7 ; 8B7, (D85D, bit 7) - const EVENT_8B8 ; 8B8, (D85E, bit 0) - const EVENT_8B9 ; 8B9, (D85E, bit 1) - const EVENT_8BA ; 8BA, (D85E, bit 2) - const EVENT_8BB ; 8BB, (D85E, bit 3) - const EVENT_8BC ; 8BC, (D85E, bit 4) - const EVENT_8BD ; 8BD, (D85E, bit 5) - const EVENT_8BE ; 8BE, (D85E, bit 6) - const EVENT_8BF ; 8BF, (D85E, bit 7) - const EVENT_8C0 ; 8C0, (D85F, bit 0) - const EVENT_BEAT_MEWTWO ; 8C1, (D85F, bit 1) - const EVENT_8C2 ; 8C2, (D85F, bit 2) - const EVENT_8C3 ; 8C3, (D85F, bit 3) - const EVENT_8C4 ; 8C4, (D85F, bit 4) - const EVENT_8C5 ; 8C5, (D85F, bit 5) - const EVENT_8C6 ; 8C6, (D85F, bit 6) - const EVENT_8C7 ; 8C7, (D85F, bit 7) - const EVENT_8C8 ; 8C8, (D860, bit 0) - const EVENT_8C9 ; 8C9, (D860, bit 1) - const EVENT_8CA ; 8CA, (D860, bit 2) - const EVENT_8CB ; 8CB, (D860, bit 3) - const EVENT_8CC ; 8CC, (D860, bit 4) - const EVENT_8CD ; 8CD, (D860, bit 5) - const EVENT_8CE ; 8CE, (D860, bit 6) - const EVENT_8CF ; 8CF, (D860, bit 7) - const EVENT_8D0 ; 8D0, (D861, bit 0) - const EVENT_8D1 ; 8D1, (D861, bit 1) - const EVENT_8D2 ; 8D2, (D861, bit 2) - const EVENT_8D3 ; 8D3, (D861, bit 3) - const EVENT_8D4 ; 8D4, (D861, bit 4) - const EVENT_8D5 ; 8D5, (D861, bit 5) - const EVENT_8D6 ; 8D6, (D861, bit 6) - const EVENT_8D7 ; 8D7, (D861, bit 7) - const EVENT_8D8 ; 8D8, (D862, bit 0) - const EVENT_8D9 ; 8D9, (D862, bit 1) - const EVENT_8DA ; 8DA, (D862, bit 2) - const EVENT_8DB ; 8DB, (D862, bit 3) - const EVENT_8DC ; 8DC, (D862, bit 4) - const EVENT_8DD ; 8DD, (D862, bit 5) - const EVENT_8DE ; 8DE, (D862, bit 6) - const EVENT_8DF ; 8DF, (D862, bit 7) - const ELITE4_EVENTS_START ; 8E0, (D863, bit 0) - const EVENT_BEAT_LORELEIS_ROOM_TRAINER_0 ; 8E1, (D863, bit 1) - const EVENT_8E2 ; 8E2, (D863, bit 2) - const EVENT_8E3 ; 8E3, (D863, bit 3) - const EVENT_8E4 ; 8E4, (D863, bit 4) - const EVENT_8E5 ; 8E5, (D863, bit 5) - const EVENT_AUTOWALKED_INTO_LORELEIS_ROOM ; 8E6, (D863, bit 6) - const EVENT_8E7 ; 8E7, (D863, bit 7) - const EVENT_8E8 ; 8E8, (D864, bit 0) - const EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 ; 8E9, (D864, bit 1) - const EVENT_8EA ; 8EA, (D864, bit 2) - const EVENT_8EB ; 8EB, (D864, bit 3) - const EVENT_8EC ; 8EC, (D864, bit 4) - const EVENT_8ED ; 8ED, (D864, bit 5) - const EVENT_AUTOWALKED_INTO_BRUNOS_ROOM ; 8EE, (D864, bit 6) - const EVENT_8EF ; 8EF, (D864, bit 7) - const EVENT_8F0 ; 8F0, (D865, bit 0) - const EVENT_BEAT_AGATHAS_ROOM_TRAINER_0 ; 8F1, (D865, bit 1) - const EVENT_8F2 ; 8F2, (D865, bit 2) - const EVENT_8F3 ; 8F3, (D865, bit 3) - const EVENT_8F4 ; 8F4, (D865, bit 4) - const EVENT_8F5 ; 8F5, (D865, bit 5) - const EVENT_AUTOWALKED_INTO_AGATHAS_ROOM ; 8F6, (D865, bit 6) - const EVENT_8F7 ; 8F7, (D865, bit 7) - const EVENT_8F8 ; 8F8, (D866, bit 0) - const EVENT_BEAT_LANCES_ROOM_TRAINER_0 ; 8F9, (D866, bit 1) - const EVENT_8FA ; 8FA, (D866, bit 2) - const EVENT_8FB ; 8FB, (D866, bit 3) - const EVENT_8FC ; 8FC, (D866, bit 4) - const EVENT_8FD ; 8FD, (D866, bit 5) - const EVENT_BEAT_LANCE ; 8FE, (D866, bit 6) - const EVENT_LANCES_ROOM_LOCK_DOOR ; 8FF, (D866, bit 7) - const EVENT_900 ; 900, (D867, bit 0) - const EVENT_BEAT_CHAMPION_RIVAL ; 901, (D867, bit 1) - const EVENT_902 ; 902, (D867, bit 2) - const EVENT_903 ; 903, (D867, bit 3) - const EVENT_904 ; 904, (D867, bit 4) - const EVENT_905 ; 905, (D867, bit 5) - const EVENT_906 ; 906, (D867, bit 6) - const ELITE4_CHAMPION_EVENTS_END ; 907, (D867, bit 7) - const EVENT_908 ; 908, (D868, bit 0) - const EVENT_909 ; 909, (D868, bit 1) - const EVENT_90A ; 90A, (D868, bit 2) - const EVENT_90B ; 90B, (D868, bit 3) - const EVENT_90C ; 90C, (D868, bit 4) - const EVENT_90D ; 90D, (D868, bit 5) - const EVENT_90E ; 90E, (D868, bit 6) - const EVENT_90F ; 90F, (D868, bit 7) - const EVENT_910 ; 910, (D869, bit 0) - const EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0 ; 911, (D869, bit 1) - const EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1 ; 912, (D869, bit 2) - const EVENT_913 ; 913, (D869, bit 3) - const EVENT_914 ; 914, (D869, bit 4) - const EVENT_915 ; 915, (D869, bit 5) - const EVENT_916 ; 916, (D869, bit 6) - const EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH ; 917, (D869, bit 7) - const EVENT_918 ; 918, (D86A, bit 0) - const EVENT_919 ; 919, (D86A, bit 1) - const EVENT_91A ; 91A, (D86A, bit 2) - const EVENT_91B ; 91B, (D86A, bit 3) - const EVENT_91C ; 91C, (D86A, bit 4) - const EVENT_91D ; 91D, (D86A, bit 5) - const EVENT_91E ; 91E, (D86A, bit 6) - const EVENT_91F ; 91F, (D86A, bit 7) - const EVENT_920 ; 920, (D86B, bit 0) - const EVENT_921 ; 921, (D86B, bit 1) - const EVENT_922 ; 922, (D86B, bit 2) - const EVENT_923 ; 923, (D86B, bit 3) - const EVENT_924 ; 924, (D86B, bit 4) - const EVENT_925 ; 925, (D86B, bit 5) - const EVENT_926 ; 926, (D86B, bit 6) - const EVENT_927 ; 927, (D86B, bit 7) - const EVENT_928 ; 928, (D86C, bit 0) - const EVENT_929 ; 929, (D86C, bit 1) - const EVENT_92A ; 92A, (D86C, bit 2) - const EVENT_92B ; 92B, (D86C, bit 3) - const EVENT_92C ; 92C, (D86C, bit 4) - const EVENT_92D ; 92D, (D86C, bit 5) - const EVENT_92E ; 92E, (D86C, bit 6) - const EVENT_92F ; 92F, (D86C, bit 7) - const EVENT_930 ; 930, (D86D, bit 0) - const EVENT_931 ; 931, (D86D, bit 1) - const EVENT_932 ; 932, (D86D, bit 2) - const EVENT_933 ; 933, (D86D, bit 3) - const EVENT_934 ; 934, (D86D, bit 4) - const EVENT_935 ; 935, (D86D, bit 5) - const EVENT_936 ; 936, (D86D, bit 6) - const EVENT_937 ; 937, (D86D, bit 7) - const EVENT_938 ; 938, (D86E, bit 0) - const EVENT_939 ; 939, (D86E, bit 1) - const EVENT_93A ; 93A, (D86E, bit 2) - const EVENT_93B ; 93B, (D86E, bit 3) - const EVENT_93C ; 93C, (D86E, bit 4) - const EVENT_93D ; 93D, (D86E, bit 5) - const EVENT_93E ; 93E, (D86E, bit 6) - const EVENT_93F ; 93F, (D86E, bit 7) - const EVENT_940 ; 940, (D86F, bit 0) - const EVENT_941 ; 941, (D86F, bit 1) - const EVENT_942 ; 942, (D86F, bit 2) - const EVENT_943 ; 943, (D86F, bit 3) - const EVENT_944 ; 944, (D86F, bit 4) - const EVENT_945 ; 945, (D86F, bit 5) - const EVENT_946 ; 946, (D86F, bit 6) - const EVENT_947 ; 947, (D86F, bit 7) - const EVENT_948 ; 948, (D870, bit 0) - const EVENT_949 ; 949, (D870, bit 1) - const EVENT_94A ; 94A, (D870, bit 2) - const EVENT_94B ; 94B, (D870, bit 3) - const EVENT_94C ; 94C, (D870, bit 4) - const EVENT_94D ; 94D, (D870, bit 5) - const EVENT_94E ; 94E, (D870, bit 6) - const EVENT_94F ; 94F, (D870, bit 7) - const EVENT_950 ; 950, (D871, bit 0) - const EVENT_951 ; 951, (D871, bit 1) - const EVENT_952 ; 952, (D871, bit 2) - const EVENT_953 ; 953, (D871, bit 3) - const EVENT_954 ; 954, (D871, bit 4) - const EVENT_955 ; 955, (D871, bit 5) - const EVENT_956 ; 956, (D871, bit 6) - const EVENT_957 ; 957, (D871, bit 7) - const EVENT_958 ; 958, (D872, bit 0) - const EVENT_959 ; 959, (D872, bit 1) - const EVENT_95A ; 95A, (D872, bit 2) - const EVENT_95B ; 95B, (D872, bit 3) - const EVENT_95C ; 95C, (D872, bit 4) - const EVENT_95D ; 95D, (D872, bit 5) - const EVENT_95E ; 95E, (D872, bit 6) - const EVENT_95F ; 95F, (D872, bit 7) - const EVENT_960 ; 960, (D873, bit 0) - const EVENT_961 ; 961, (D873, bit 1) - const EVENT_962 ; 962, (D873, bit 2) - const EVENT_963 ; 963, (D873, bit 3) - const EVENT_964 ; 964, (D873, bit 4) - const EVENT_965 ; 965, (D873, bit 5) - const EVENT_966 ; 966, (D873, bit 6) - const EVENT_967 ; 967, (D873, bit 7) - const EVENT_968 ; 968, (D874, bit 0) - const EVENT_969 ; 969, (D874, bit 1) - const EVENT_96A ; 96A, (D874, bit 2) - const EVENT_96B ; 96B, (D874, bit 3) - const EVENT_96C ; 96C, (D874, bit 4) - const EVENT_96D ; 96D, (D874, bit 5) - const EVENT_96E ; 96E, (D874, bit 6) - const EVENT_96F ; 96F, (D874, bit 7) - const EVENT_970 ; 970, (D875, bit 0) - const EVENT_971 ; 971, (D875, bit 1) - const EVENT_972 ; 972, (D875, bit 2) - const EVENT_973 ; 973, (D875, bit 3) - const EVENT_974 ; 974, (D875, bit 4) - const EVENT_975 ; 975, (D875, bit 5) - const EVENT_976 ; 976, (D875, bit 6) - const EVENT_977 ; 977, (D875, bit 7) - const EVENT_978 ; 978, (D876, bit 0) - const EVENT_979 ; 979, (D876, bit 1) - const EVENT_97A ; 97A, (D876, bit 2) - const EVENT_97B ; 97B, (D876, bit 3) - const EVENT_97C ; 97C, (D876, bit 4) - const EVENT_97D ; 97D, (D876, bit 5) - const EVENT_97E ; 97E, (D876, bit 6) - const EVENT_97F ; 97F, (D876, bit 7) - const EVENT_980 ; 980, (D877, bit 0) - const EVENT_981 ; 981, (D877, bit 1) - const EVENT_982 ; 982, (D877, bit 2) - const EVENT_983 ; 983, (D877, bit 3) - const EVENT_984 ; 984, (D877, bit 4) - const EVENT_985 ; 985, (D877, bit 5) - const EVENT_986 ; 986, (D877, bit 6) - const EVENT_987 ; 987, (D877, bit 7) - const EVENT_988 ; 988, (D878, bit 0) - const EVENT_989 ; 989, (D878, bit 1) - const EVENT_98A ; 98A, (D878, bit 2) - const EVENT_98B ; 98B, (D878, bit 3) - const EVENT_98C ; 98C, (D878, bit 4) - const EVENT_98D ; 98D, (D878, bit 5) - const EVENT_98E ; 98E, (D878, bit 6) - const EVENT_98F ; 98F, (D878, bit 7) - const EVENT_990 ; 990, (D879, bit 0) - const EVENT_991 ; 991, (D879, bit 1) - const EVENT_992 ; 992, (D879, bit 2) - const EVENT_993 ; 993, (D879, bit 3) - const EVENT_994 ; 994, (D879, bit 4) - const EVENT_995 ; 995, (D879, bit 5) - const EVENT_996 ; 996, (D879, bit 6) - const EVENT_997 ; 997, (D879, bit 7) - const EVENT_998 ; 998, (D87A, bit 0) - const EVENT_999 ; 999, (D87A, bit 1) - const EVENT_99A ; 99A, (D87A, bit 2) - const EVENT_99B ; 99B, (D87A, bit 3) - const EVENT_99C ; 99C, (D87A, bit 4) - const EVENT_99D ; 99D, (D87A, bit 5) - const EVENT_99E ; 99E, (D87A, bit 6) - const EVENT_99F ; 99F, (D87A, bit 7) - const EVENT_9A0 ; 9A0, (D87B, bit 0) - const EVENT_9A1 ; 9A1, (D87B, bit 1) - const EVENT_9A2 ; 9A2, (D87B, bit 2) - const EVENT_9A3 ; 9A3, (D87B, bit 3) - const EVENT_9A4 ; 9A4, (D87B, bit 4) - const EVENT_9A5 ; 9A5, (D87B, bit 5) - const EVENT_9A6 ; 9A6, (D87B, bit 6) - const EVENT_9A7 ; 9A7, (D87B, bit 7) - const EVENT_9A8 ; 9A8, (D87C, bit 0) - const EVENT_9A9 ; 9A9, (D87C, bit 1) - const EVENT_9AA ; 9AA, (D87C, bit 2) - const EVENT_9AB ; 9AB, (D87C, bit 3) - const EVENT_9AC ; 9AC, (D87C, bit 4) - const EVENT_9AD ; 9AD, (D87C, bit 5) - const EVENT_9AE ; 9AE, (D87C, bit 6) - const EVENT_9AF ; 9AF, (D87C, bit 7) - const EVENT_9B0 ; 9B0, (D87D, bit 0) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0 ; 9B1, (D87D, bit 1) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_1 ; 9B2, (D87D, bit 2) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2 ; 9B3, (D87D, bit 3) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3 ; 9B4, (D87D, bit 4) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4 ; 9B5, (D87D, bit 5) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5 ; 9B6, (D87D, bit 6) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6 ; 9B7, (D87D, bit 7) - const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7 ; 9B8, (D87E, bit 0) - const EVENT_9B9 ; 9B9, (D87E, bit 1) - const EVENT_9BA ; 9BA, (D87E, bit 2) - const EVENT_9BB ; 9BB, (D87E, bit 3) - const EVENT_9BC ; 9BC, (D87E, bit 4) - const EVENT_9BD ; 9BD, (D87E, bit 5) - const EVENT_9BE ; 9BE, (D87E, bit 6) - const EVENT_9BF ; 9BF, (D87E, bit 7) - const EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE ; 9C0, (D87F, bit 0) - const EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE ; 9C1, (D87F, bit 1) - const EVENT_9C2 ; 9C2, (D87F, bit 2) - const EVENT_9C3 ; 9C3, (D87F, bit 3) - const EVENT_9C4 ; 9C4, (D87F, bit 4) - const EVENT_9C5 ; 9C5, (D87F, bit 5) - const EVENT_9C6 ; 9C6, (D87F, bit 6) - const EVENT_9C7 ; 9C7, (D87F, bit 7) - const EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE ; 9C8, (D880, bit 0) - const EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE ; 9C9, (D880, bit 1) - const EVENT_9CA ; 9CA, (D880, bit 2) - const EVENT_9CB ; 9CB, (D880, bit 3) - const EVENT_9CC ; 9CC, (D880, bit 4) - const EVENT_9CD ; 9CD, (D880, bit 5) - const EVENT_9CE ; 9CE, (D880, bit 6) - const EVENT_9CF ; 9CF, (D880, bit 7) - const EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE ; 9D0, (D881, bit 0) - const EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE ; 9D1, (D881, bit 1) - const EVENT_9D2 ; 9D2, (D881, bit 2) - const EVENT_9D3 ; 9D3, (D881, bit 3) - const EVENT_9D4 ; 9D4, (D881, bit 4) - const EVENT_9D5 ; 9D5, (D881, bit 5) - const EVENT_9D6 ; 9D6, (D881, bit 6) - const EVENT_9D7 ; 9D7, (D881, bit 7) - const EVENT_9D8 ; 9D8, (D882, bit 0) - const EVENT_9D9 ; 9D9, (D882, bit 1) - const EVENT_BEAT_ARTICUNO ; 9DA, (D882, bit 2) - const EVENT_9DB ; 9DB, (D882, bit 3) - const EVENT_9DC ; 9DC, (D882, bit 4) - const EVENT_9DD ; 9DD, (D882, bit 5) - const EVENT_9DE ; 9DE, (D882, bit 6) - const EVENT_9DF ; 9DF, (D882, bit 7) - const EVENT_9E0 ; 9E0, (D883, bit 0) - const EVENT_9E1 ; 9E1, (D883, bit 1) - const EVENT_9E2 ; 9E2, (D883, bit 2) - const EVENT_9E3 ; 9E3, (D883, bit 3) - const EVENT_9E4 ; 9E4, (D883, bit 4) - const EVENT_9E5 ; 9E5, (D883, bit 5) - const EVENT_9E6 ; 9E6, (D883, bit 6) - const EVENT_9E7 ; 9E7, (D883, bit 7) - const EVENT_9E8 ; 9E8, (D884, bit 0) - const EVENT_9E9 ; 9E9, (D884, bit 1) - const EVENT_9EA ; 9EA, (D884, bit 2) - const EVENT_9EB ; 9EB, (D884, bit 3) - const EVENT_9EC ; 9EC, (D884, bit 4) - const EVENT_9ED ; 9ED, (D884, bit 5) - const EVENT_9EE ; 9EE, (D884, bit 6) - const EVENT_9EF ; 9EF, (D884, bit 7) - const EVENT_9F0 ; 9F0, (D885, bit 0) - const EVENT_9F1 ; 9F1, (D885, bit 1) - const EVENT_9F2 ; 9F2, (D885, bit 2) - const EVENT_9F3 ; 9F3, (D885, bit 3) - const EVENT_9F4 ; 9F4, (D885, bit 4) - const EVENT_9F5 ; 9F5, (D885, bit 5) - const EVENT_9F6 ; 9F6, (D885, bit 6) - const EVENT_9F7 ; 9F7, (D885, bit 7) - const EVENT_9F8 ; 9F8, (D886, bit 0) - const EVENT_9F9 ; 9F9, (D886, bit 1) - const EVENT_9FA ; 9FA, (D886, bit 2) - const EVENT_9FB ; 9FB, (D886, bit 3) - const EVENT_9FC ; 9FC, (D886, bit 4) - const EVENT_9FD ; 9FD, (D886, bit 5) - const EVENT_9FE ; 9FE, (D886, bit 6) - const EVENT_9FF ; 9FF, (D886, bit 7) + const_def + const EVENT_FOLLOWED_OAK_INTO_LAB + const EVENT_001 + const EVENT_002 + const EVENT_HALL_OF_FAME_DEX_RATING + const EVENT_004 + const EVENT_005 + const EVENT_PALLET_AFTER_GETTING_POKEBALLS + const EVENT_007 + const EVENT_008 + const EVENT_009 + const EVENT_00A + const EVENT_00B + const EVENT_00C + const EVENT_00D + const EVENT_00E + const EVENT_00F + const EVENT_010 + const EVENT_011 + const EVENT_012 + const EVENT_013 + const EVENT_014 + const EVENT_015 + const EVENT_016 + const EVENT_017 + const EVENT_GOT_TOWN_MAP + const EVENT_ENTERED_BLUES_HOUSE + const EVENT_DAISY_WALKING + const EVENT_01B + const EVENT_01C + const EVENT_01D + const EVENT_01E + const EVENT_01F + const EVENT_FOLLOWED_OAK_INTO_LAB_2 + const EVENT_OAK_ASKED_TO_CHOOSE_MON + const EVENT_GOT_STARTER + const EVENT_BATTLED_RIVAL_IN_OAKS_LAB + const EVENT_GOT_POKEBALLS_FROM_OAK + const EVENT_GOT_POKEDEX + const EVENT_PALLET_AFTER_GETTING_POKEBALLS_2 + const EVENT_OAK_APPEARED_IN_PALLET + const EVENT_VIRIDIAN_GYM_OPEN + const EVENT_GOT_TM42 + const EVENT_02A + const EVENT_02B + const EVENT_02C + const EVENT_02D + const EVENT_02E + const EVENT_02F + const EVENT_030 + const EVENT_031 + const EVENT_032 + const EVENT_033 + const EVENT_034 + const EVENT_035 + const EVENT_036 + const EVENT_037 + const EVENT_OAK_GOT_PARCEL + const EVENT_GOT_OAKS_PARCEL + const EVENT_03A + const EVENT_03B + const EVENT_03C + const EVENT_03D + const EVENT_03E + const EVENT_03F + const EVENT_040 + const EVENT_041 + const EVENT_042 + const EVENT_043 + const EVENT_044 + const EVENT_045 + const EVENT_046 + const EVENT_047 + const EVENT_048 + const EVENT_049 + const EVENT_04A + const EVENT_04B + const EVENT_04C + const EVENT_04D + const EVENT_04E + const EVENT_04F + const EVENT_GOT_TM27 + const EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6 + const EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7 + const EVENT_05A + const EVENT_05B + const EVENT_05C + const EVENT_05D + const EVENT_05E + const EVENT_05F + const EVENT_060 + const EVENT_061 + const EVENT_062 + const EVENT_063 + const EVENT_064 + const EVENT_065 + const EVENT_066 + const EVENT_067 + const EVENT_BOUGHT_MUSEUM_TICKET + const EVENT_GOT_OLD_AMBER + const EVENT_06A + const EVENT_06B + const EVENT_06C + const EVENT_06D + const EVENT_06E + const EVENT_06F + const EVENT_070 + const EVENT_071 + const EVENT_BEAT_PEWTER_GYM_TRAINER_0 + const EVENT_073 + const EVENT_074 + const EVENT_075 + const EVENT_GOT_TM34 + const EVENT_BEAT_BROCK + const EVENT_078 + const EVENT_079 + const EVENT_07A + const EVENT_07B + const EVENT_07C + const EVENT_07D + const EVENT_07E + const EVENT_07F + const EVENT_080 + const EVENT_081 + const EVENT_082 + const EVENT_083 + const EVENT_084 + const EVENT_085 + const EVENT_086 + const EVENT_087 + const EVENT_088 + const EVENT_089 + const EVENT_08A + const EVENT_08B + const EVENT_08C + const EVENT_08D + const EVENT_08E + const EVENT_08F + const EVENT_090 + const EVENT_091 + const EVENT_092 + const EVENT_093 + const EVENT_094 + const EVENT_095 + const EVENT_096 + const EVENT_097 + const EVENT_BEAT_CERULEAN_RIVAL + const EVENT_099 + const EVENT_09A + const EVENT_09B + const EVENT_09C + const EVENT_09D + const EVENT_09E + const EVENT_09F + const EVENT_0A0 + const EVENT_0A1 + const EVENT_0A2 + const EVENT_0A3 + const EVENT_0A4 + const EVENT_0A5 + const EVENT_0A6 + const EVENT_BEAT_CERULEAN_ROCKET_THIEF + const EVENT_0A8 + const EVENT_0A9 + const EVENT_0AA + const EVENT_0AB + const EVENT_0AC + const EVENT_0AD + const EVENT_0AE + const EVENT_0AF + const EVENT_0B0 + const EVENT_0B1 + const EVENT_0B2 + const EVENT_0B3 + const EVENT_0B4 + const EVENT_0B5 + const EVENT_0B6 + const EVENT_0B7 + const EVENT_0B8 + const EVENT_0B9 + const EVENT_BEAT_CERULEAN_GYM_TRAINER_0 + const EVENT_BEAT_CERULEAN_GYM_TRAINER_1 + const EVENT_0BC + const EVENT_0BD + const EVENT_GOT_TM11 + const EVENT_BEAT_MISTY + const EVENT_GOT_BICYCLE + const EVENT_0C1 + const EVENT_0C2 + const EVENT_0C3 + const EVENT_0C4 + const EVENT_0C5 + const EVENT_0C6 + const EVENT_0C7 + const EVENT_0C8 + const EVENT_0C9 + const EVENT_0CA + const EVENT_0CB + const EVENT_0CC + const EVENT_0CD + const EVENT_0CE + const EVENT_0CF + const EVENT_0D0 + const EVENT_0D1 + const EVENT_0D2 + const EVENT_0D3 + const EVENT_0D4 + const EVENT_0D5 + const EVENT_0D6 + const EVENT_0D7 + const EVENT_0D8 + const EVENT_0D9 + const EVENT_0DA + const EVENT_0DB + const EVENT_0DC + const EVENT_0DD + const EVENT_0DE + const EVENT_0DF + const EVENT_0E0 + const EVENT_0E1 + const EVENT_0E2 + const EVENT_0E3 + const EVENT_0E4 + const EVENT_0E5 + const EVENT_0E6 + const EVENT_0E7 + const EVENT_0E8 + const EVENT_0E9 + const EVENT_0EA + const EVENT_0EB + const EVENT_0EC + const EVENT_0ED + const EVENT_POKEMON_TOWER_RIVAL_ON_LEFT + const EVENT_BEAT_POKEMON_TOWER_RIVAL + const EVENT_0F0 + const EVENT_BEAT_POKEMONTOWER_3_TRAINER_0 + const EVENT_BEAT_POKEMONTOWER_3_TRAINER_1 + const EVENT_BEAT_POKEMONTOWER_3_TRAINER_2 + const EVENT_0F4 + const EVENT_0F5 + const EVENT_0F6 + const EVENT_0F7 + const EVENT_0F8 + const EVENT_BEAT_POKEMONTOWER_4_TRAINER_0 + const EVENT_BEAT_POKEMONTOWER_4_TRAINER_1 + const EVENT_BEAT_POKEMONTOWER_4_TRAINER_2 + const EVENT_0FC + const EVENT_0FD + const EVENT_0FE + const EVENT_0FF + const EVENT_100 + const EVENT_101 + const EVENT_BEAT_POKEMONTOWER_5_TRAINER_0 + const EVENT_BEAT_POKEMONTOWER_5_TRAINER_1 + const EVENT_BEAT_POKEMONTOWER_5_TRAINER_2 + const EVENT_BEAT_POKEMONTOWER_5_TRAINER_3 + const EVENT_106 + const EVENT_IN_PURIFIED_ZONE + const EVENT_108 + const EVENT_BEAT_POKEMONTOWER_6_TRAINER_0 + const EVENT_BEAT_POKEMONTOWER_6_TRAINER_1 + const EVENT_BEAT_POKEMONTOWER_6_TRAINER_2 + const EVENT_10C + const EVENT_10D + const EVENT_10E + const EVENT_BEAT_GHOST_MAROWAK + const EVENT_110 + const EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 + const EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + const EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 + const EVENT_114 + const EVENT_115 + const EVENT_116 + const EVENT_RESCUED_MR_FUJI_2 + const EVENT_118 + const EVENT_119 + const EVENT_11A + const EVENT_11B + const EVENT_11C + const EVENT_11D + const EVENT_11E + const EVENT_11F + const EVENT_120 + const EVENT_121 + const EVENT_122 + const EVENT_123 + const EVENT_124 + const EVENT_125 + const EVENT_126 + const EVENT_127 + const EVENT_GOT_POKE_FLUTE + const EVENT_129 + const EVENT_12A + const EVENT_12B + const EVENT_12C + const EVENT_12D + const EVENT_12E + const EVENT_12F + const EVENT_130 + const EVENT_131 + const EVENT_132 + const EVENT_133 + const EVENT_134 + const EVENT_135 + const EVENT_136 + const EVENT_137 + const EVENT_138 + const EVENT_139 + const EVENT_13A + const EVENT_13B + const EVENT_13C + const EVENT_13D + const EVENT_13E + const EVENT_13F + const EVENT_140 + const EVENT_141 + const EVENT_142 + const EVENT_143 + const EVENT_144 + const EVENT_145 + const EVENT_146 + const EVENT_147 + const EVENT_148 + const EVENT_149 + const EVENT_14A + const EVENT_14B + const EVENT_14C + const EVENT_14D + const EVENT_14E + const EVENT_14F + const EVENT_150 + const EVENT_GOT_BIKE_VOUCHER + const EVENT_152 + const EVENT_153 + const EVENT_154 + const EVENT_155 + const EVENT_SEEL_FAN_BOAST + const EVENT_PIKACHU_FAN_BOAST + const EVENT_158 + const EVENT_159 + const EVENT_15A + const EVENT_15B + const EVENT_15C + const EVENT_15D + const EVENT_15E + const EVENT_15F + const EVENT_2ND_LOCK_OPENED + const EVENT_1ST_LOCK_OPENED + const EVENT_BEAT_VERMILION_GYM_TRAINER_0 + const EVENT_BEAT_VERMILION_GYM_TRAINER_1 + const EVENT_BEAT_VERMILION_GYM_TRAINER_2 + const EVENT_165 + const EVENT_GOT_TM24 + const EVENT_BEAT_LT_SURGE + const EVENT_168 + const EVENT_169 + const EVENT_16A + const EVENT_16B + const EVENT_16C + const EVENT_16D + const EVENT_16E + const EVENT_16F + const EVENT_170 + const EVENT_171 + const EVENT_172 + const EVENT_173 + const EVENT_174 + const EVENT_175 + const EVENT_176 + const EVENT_177 + const EVENT_178 + const EVENT_179 + const EVENT_17A + const EVENT_17B + const EVENT_17C + const EVENT_17D + const EVENT_17E + const EVENT_17F + const EVENT_GOT_TM41 + const EVENT_181 + const EVENT_182 + const EVENT_183 + const EVENT_184 + const EVENT_185 + const EVENT_186 + const EVENT_187 + const EVENT_188 + const EVENT_189 + const EVENT_18A + const EVENT_18B + const EVENT_GOT_TM13 + const EVENT_GOT_TM48 + const EVENT_GOT_TM49 + const EVENT_GOT_TM18 + const EVENT_190 + const EVENT_191 + const EVENT_192 + const EVENT_193 + const EVENT_194 + const EVENT_195 + const EVENT_196 + const EVENT_197 + const EVENT_198 + const EVENT_199 + const EVENT_19A + const EVENT_19B + const EVENT_19C + const EVENT_19D + const EVENT_19E + const EVENT_19F + const EVENT_1A0 + const EVENT_1A1 + const EVENT_1A2 + const EVENT_1A3 + const EVENT_1A4 + const EVENT_1A5 + const EVENT_1A6 + const EVENT_1A7 + const EVENT_GOT_TM21 + const EVENT_BEAT_ERIKA + const EVENT_BEAT_CELADON_GYM_TRAINER_0 + const EVENT_BEAT_CELADON_GYM_TRAINER_1 + const EVENT_BEAT_CELADON_GYM_TRAINER_2 + const EVENT_BEAT_CELADON_GYM_TRAINER_3 + const EVENT_BEAT_CELADON_GYM_TRAINER_4 + const EVENT_BEAT_CELADON_GYM_TRAINER_5 + const EVENT_BEAT_CELADON_GYM_TRAINER_6 + const EVENT_1B1 + const EVENT_1B2 + const EVENT_1B3 + const EVENT_1B4 + const EVENT_1B5 + const EVENT_1B6 + const EVENT_1B7 + const EVENT_1B8 + const EVENT_FOUND_ROCKET_HIDEOUT + const EVENT_GOT_10_COINS + const EVENT_GOT_20_COINS + const EVENT_GOT_20_COINS_2 + const EVENT_1BD + const EVENT_1BE + const EVENT_1BF + const EVENT_1C0 + const EVENT_1C1 + const EVENT_1C2 + const EVENT_1C3 + const EVENT_1C4 + const EVENT_1C5 + const EVENT_1C6 + const EVENT_1C7 + const EVENT_1C8 + const EVENT_1C9 + const EVENT_1CA + const EVENT_1CB + const EVENT_1CC + const EVENT_1CD + const EVENT_1CE + const EVENT_1CF + const EVENT_1D0 + const EVENT_1D1 + const EVENT_1D2 + const EVENT_1D3 + const EVENT_1D4 + const EVENT_1D5 + const EVENT_1D6 + const EVENT_1D7 + const EVENT_1D8 + const EVENT_1D9 + const EVENT_1DA + const EVENT_1DB + const EVENT_1DC + const EVENT_1DD + const EVENT_1DE + const EVENT_1DF + const EVENT_GOT_COIN_CASE + const EVENT_1E1 + const EVENT_1E2 + const EVENT_1E3 + const EVENT_1E4 + const EVENT_1E5 + const EVENT_1E6 + const EVENT_1E7 + const EVENT_1E8 + const EVENT_1E9 + const EVENT_1EA + const EVENT_1EB + const EVENT_1EC + const EVENT_1ED + const EVENT_1EE + const EVENT_1EF + const EVENT_1F0 + const EVENT_1F1 + const EVENT_1F2 + const EVENT_1F3 + const EVENT_1F4 + const EVENT_1F5 + const EVENT_1F6 + const EVENT_1F7 + const EVENT_1F8 + const EVENT_1F9 + const EVENT_1FA + const EVENT_1FB + const EVENT_1FC + const EVENT_1FD + const EVENT_1FE + const EVENT_1FF + const EVENT_200 + const EVENT_201 + const EVENT_202 + const EVENT_203 + const EVENT_204 + const EVENT_205 + const EVENT_206 + const EVENT_207 + const EVENT_208 + const EVENT_209 + const EVENT_20A + const EVENT_20B + const EVENT_20C + const EVENT_20D + const EVENT_20E + const EVENT_20F + const EVENT_210 + const EVENT_211 + const EVENT_212 + const EVENT_213 + const EVENT_214 + const EVENT_215 + const EVENT_216 + const EVENT_217 + const EVENT_218 + const EVENT_219 + const EVENT_21A + const EVENT_21B + const EVENT_21C + const EVENT_21D + const EVENT_21E + const EVENT_21F + const EVENT_220 + const EVENT_221 + const EVENT_222 + const EVENT_223 + const EVENT_224 + const EVENT_225 + const EVENT_226 + const EVENT_227 + const EVENT_228 + const EVENT_229 + const EVENT_22A + const EVENT_22B + const EVENT_22C + const EVENT_22D + const EVENT_22E + const EVENT_22F + const EVENT_230 + const EVENT_231 + const EVENT_232 + const EVENT_233 + const EVENT_234 + const EVENT_235 + const EVENT_236 + const EVENT_237 + const EVENT_GOT_HM04 + const EVENT_GAVE_GOLD_TEETH + const EVENT_23A + const EVENT_23B + const EVENT_23C + const EVENT_23D + const EVENT_23E + const EVENT_23F + const EVENT_240 + const EVENT_241 + const EVENT_242 + const EVENT_243 + const EVENT_244 + const EVENT_245 + const EVENT_246 + const EVENT_247 + const EVENT_248 + const EVENT_249 + const EVENT_24A + const EVENT_24B + const EVENT_24C + const EVENT_24D + const EVENT_SAFARI_GAME_OVER + const EVENT_IN_SAFARI_ZONE + const EVENT_250 + const EVENT_251 + const EVENT_252 + const EVENT_253 + const EVENT_254 + const EVENT_255 + const EVENT_256 + const EVENT_257 + const EVENT_GOT_TM06 + const EVENT_BEAT_KOGA + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_0 + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_1 + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_2 + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_3 + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_4 + const EVENT_BEAT_FUCHSIA_GYM_TRAINER_5 + const EVENT_260 + const EVENT_261 + const EVENT_262 + const EVENT_263 + const EVENT_264 + const EVENT_265 + const EVENT_266 + const EVENT_267 + const EVENT_268 + const EVENT_269 + const EVENT_26A + const EVENT_26B + const EVENT_26C + const EVENT_26D + const EVENT_26E + const EVENT_26F + const EVENT_270 + const EVENT_271 + const EVENT_272 + const EVENT_273 + const EVENT_274 + const EVENT_275 + const EVENT_276 + const EVENT_277 + const EVENT_MANSION_SWITCH_ON + const EVENT_279 + const EVENT_27A + const EVENT_27B + const EVENT_27C + const EVENT_27D + const EVENT_27E + const EVENT_27F + const EVENT_280 + const EVENT_281 + const EVENT_282 + const EVENT_283 + const EVENT_284 + const EVENT_285 + const EVENT_286 + const EVENT_287 + const EVENT_288 + const EVENT_BEAT_MANSION_1_TRAINER_0 + const EVENT_28A + const EVENT_28B + const EVENT_28C + const EVENT_28D + const EVENT_28E + const EVENT_28F + const EVENT_290 + const EVENT_291 + const EVENT_292 + const EVENT_293 + const EVENT_294 + const EVENT_295 + const EVENT_296 + const EVENT_297 + const EVENT_GOT_TM38 + const EVENT_BEAT_BLAINE + const EVENT_BEAT_CINNABAR_GYM_TRAINER_0 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_1 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_2 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_3 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_4 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_5 + const EVENT_BEAT_CINNABAR_GYM_TRAINER_6 + const EVENT_2A1 + const EVENT_2A2 + const EVENT_2A3 + const EVENT_2A4 + const EVENT_2A5 + const EVENT_2A6 + const EVENT_2A7 + const EVENT_CINNABAR_GYM_GATE0_UNLOCKED + const EVENT_CINNABAR_GYM_GATE1_UNLOCKED + const EVENT_CINNABAR_GYM_GATE2_UNLOCKED + const EVENT_CINNABAR_GYM_GATE3_UNLOCKED + const EVENT_CINNABAR_GYM_GATE4_UNLOCKED + const EVENT_CINNABAR_GYM_GATE5_UNLOCKED + const EVENT_CINNABAR_GYM_GATE6_UNLOCKED + const EVENT_2AF + const EVENT_2B0 + const EVENT_2B1 + const EVENT_2B2 + const EVENT_2B3 + const EVENT_2B4 + const EVENT_2B5 + const EVENT_2B6 + const EVENT_2B7 + const EVENT_2B8 + const EVENT_2B9 + const EVENT_2BA + const EVENT_2BB + const EVENT_2BC + const EVENT_2BD + const EVENT_2BE + const EVENT_2BF + const EVENT_2C0 + const EVENT_2C1 + const EVENT_2C2 + const EVENT_2C3 + const EVENT_2C4 + const EVENT_2C5 + const EVENT_2C6 + const EVENT_2C7 + const EVENT_2C8 + const EVENT_2C9 + const EVENT_2CA + const EVENT_2CB + const EVENT_2CC + const EVENT_2CD + const EVENT_2CE + const EVENT_2CF + const EVENT_2D0 + const EVENT_2D1 + const EVENT_2D2 + const EVENT_2D3 + const EVENT_2D4 + const EVENT_2D5 + const EVENT_2D6 + const EVENT_GOT_TM35 + const EVENT_2D8 + const EVENT_2D9 + const EVENT_2DA + const EVENT_2DB + const EVENT_2DC + const EVENT_2DD + const EVENT_2DE + const EVENT_2DF + const EVENT_GAVE_FOSSIL_TO_LAB + const EVENT_LAB_STILL_REVIVING_FOSSIL + const EVENT_LAB_HANDING_OVER_FOSSIL_MON + const EVENT_2E3 + const EVENT_2E4 + const EVENT_2E5 + const EVENT_2E6 + const EVENT_2E7 + const EVENT_2E8 + const EVENT_2E9 + const EVENT_2EA + const EVENT_2EB + const EVENT_2EC + const EVENT_2ED + const EVENT_2EE + const EVENT_2EF + const EVENT_2F0 + const EVENT_2F1 + const EVENT_2F2 + const EVENT_2F3 + const EVENT_2F4 + const EVENT_2F5 + const EVENT_2F6 + const EVENT_2F7 + const EVENT_2F8 + const EVENT_2F9 + const EVENT_2FA + const EVENT_2FB + const EVENT_2FC + const EVENT_2FD + const EVENT_2FE + const EVENT_2FF + const EVENT_300 + const EVENT_301 + const EVENT_302 + const EVENT_303 + const EVENT_304 + const EVENT_305 + const EVENT_306 + const EVENT_307 + const EVENT_308 + const EVENT_309 + const EVENT_30A + const EVENT_30B + const EVENT_30C + const EVENT_30D + const EVENT_30E + const EVENT_30F + const EVENT_310 + const EVENT_311 + const EVENT_312 + const EVENT_313 + const EVENT_314 + const EVENT_315 + const EVENT_316 + const EVENT_317 + const EVENT_318 + const EVENT_319 + const EVENT_31A + const EVENT_31B + const EVENT_31C + const EVENT_31D + const EVENT_31E + const EVENT_31F + const EVENT_320 + const EVENT_321 + const EVENT_322 + const EVENT_323 + const EVENT_324 + const EVENT_325 + const EVENT_326 + const EVENT_327 + const EVENT_328 + const EVENT_329 + const EVENT_32A + const EVENT_32B + const EVENT_32C + const EVENT_32D + const EVENT_32E + const EVENT_32F + const EVENT_330 + const EVENT_331 + const EVENT_332 + const EVENT_333 + const EVENT_334 + const EVENT_335 + const EVENT_336 + const EVENT_337 + const EVENT_338 + const EVENT_339 + const EVENT_33A + const EVENT_33B + const EVENT_33C + const EVENT_33D + const EVENT_33E + const EVENT_33F + const EVENT_GOT_TM31 + const EVENT_341 + const EVENT_342 + const EVENT_343 + const EVENT_344 + const EVENT_345 + const EVENT_346 + const EVENT_347 + const EVENT_348 + const EVENT_349 + const EVENT_34A + const EVENT_34B + const EVENT_34C + const EVENT_34D + const EVENT_34E + const EVENT_34F + const EVENT_DEFEATED_FIGHTING_DOJO + const EVENT_BEAT_KARATE_MASTER + const EVENT_BEAT_FIGHTING_DOJO_TRAINER_0 + const EVENT_BEAT_FIGHTING_DOJO_TRAINER_1 + const EVENT_BEAT_FIGHTING_DOJO_TRAINER_2 + const EVENT_BEAT_FIGHTING_DOJO_TRAINER_3 + const EVENT_GOT_HITMONLEE + const EVENT_GOT_HITMONCHAN + const EVENT_358 + const EVENT_359 + const EVENT_35A + const EVENT_35B + const EVENT_35C + const EVENT_35D + const EVENT_35E + const EVENT_35F + const EVENT_GOT_TM46 + const EVENT_BEAT_SABRINA + const EVENT_BEAT_SAFFRON_GYM_TRAINER_0 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_1 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_2 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_3 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_4 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_5 + const EVENT_BEAT_SAFFRON_GYM_TRAINER_6 + const EVENT_369 + const EVENT_36A + const EVENT_36B + const EVENT_36C + const EVENT_36D + const EVENT_36E + const EVENT_36F + const EVENT_370 + const EVENT_371 + const EVENT_372 + const EVENT_373 + const EVENT_374 + const EVENT_375 + const EVENT_376 + const EVENT_377 + const EVENT_378 + const EVENT_379 + const EVENT_37A + const EVENT_37B + const EVENT_37C + const EVENT_37D + const EVENT_37E + const EVENT_37F + const EVENT_380 + const EVENT_381 + const EVENT_382 + const EVENT_383 + const EVENT_384 + const EVENT_385 + const EVENT_386 + const EVENT_387 + const EVENT_388 + const EVENT_389 + const EVENT_38A + const EVENT_38B + const EVENT_38C + const EVENT_38D + const EVENT_38E + const EVENT_38F + const EVENT_390 + const EVENT_391 + const EVENT_392 + const EVENT_393 + const EVENT_394 + const EVENT_395 + const EVENT_396 + const EVENT_SILPH_CO_RECEPTIONIST_AT_DESK + const EVENT_398 + const EVENT_399 + const EVENT_39A + const EVENT_39B + const EVENT_39C + const EVENT_39D + const EVENT_39E + const EVENT_39F + const EVENT_3A0 + const EVENT_3A1 + const EVENT_3A2 + const EVENT_3A3 + const EVENT_3A4 + const EVENT_3A5 + const EVENT_3A6 + const EVENT_3A7 + const EVENT_3A8 + const EVENT_3A9 + const EVENT_3AA + const EVENT_3AB + const EVENT_3AC + const EVENT_3AD + const EVENT_3AE + const EVENT_3AF + const EVENT_GOT_TM29 + const EVENT_3B1 + const EVENT_3B2 + const EVENT_3B3 + const EVENT_3B4 + const EVENT_3B5 + const EVENT_3B6 + const EVENT_3B7 + const EVENT_3B8 + const EVENT_3B9 + const EVENT_3BA + const EVENT_3BB + const EVENT_3BC + const EVENT_3BD + const EVENT_3BE + const EVENT_3BF + const EVENT_GOT_POTION_SAMPLE + const EVENT_3C1 + const EVENT_3C2 + const EVENT_3C3 + const EVENT_3C4 + const EVENT_3C5 + const EVENT_3C6 + const EVENT_3C7 + const EVENT_3C8 + const EVENT_3C9 + const EVENT_3CA + const EVENT_3CB + const EVENT_3CC + const EVENT_3CD + const EVENT_3CE + const EVENT_3CF + const EVENT_3D0 + const EVENT_3D1 + const EVENT_3D2 + const EVENT_3D3 + const EVENT_3D4 + const EVENT_3D5 + const EVENT_3D6 + const EVENT_3D7 + const EVENT_GOT_HM05 + const EVENT_3D9 + const EVENT_3DA + const EVENT_3DB + const EVENT_3DC + const EVENT_3DD + const EVENT_3DE + const EVENT_3DF + const EVENT_3E0 + const EVENT_3E1 + const EVENT_BEAT_ROUTE_3_TRAINER_0 + const EVENT_BEAT_ROUTE_3_TRAINER_1 + const EVENT_BEAT_ROUTE_3_TRAINER_2 + const EVENT_BEAT_ROUTE_3_TRAINER_3 + const EVENT_BEAT_ROUTE_3_TRAINER_4 + const EVENT_BEAT_ROUTE_3_TRAINER_5 + const EVENT_BEAT_ROUTE_3_TRAINER_6 + const EVENT_BEAT_ROUTE_3_TRAINER_7 + const EVENT_3EA + const EVENT_3EB + const EVENT_3EC + const EVENT_3ED + const EVENT_3EE + const EVENT_3EF + const EVENT_3F0 + const EVENT_3F1 + const EVENT_BEAT_ROUTE_4_TRAINER_0 + const EVENT_3F3 + const EVENT_3F4 + const EVENT_3F5 + const EVENT_3F6 + const EVENT_3F7 + const EVENT_3F8 + const EVENT_3F9 + const EVENT_3FA + const EVENT_3FB + const EVENT_3FC + const EVENT_3FD + const EVENT_3FE + const EVENT_BOUGHT_MAGIKARP + const EVENT_400 + const EVENT_401 + const EVENT_402 + const EVENT_403 + const EVENT_404 + const EVENT_405 + const EVENT_406 + const EVENT_407 + const EVENT_408 + const EVENT_409 + const EVENT_40A + const EVENT_40B + const EVENT_40C + const EVENT_40D + const EVENT_40E + const EVENT_40F + const EVENT_410 + const EVENT_BEAT_ROUTE_6_TRAINER_0 + const EVENT_BEAT_ROUTE_6_TRAINER_1 + const EVENT_BEAT_ROUTE_6_TRAINER_2 + const EVENT_BEAT_ROUTE_6_TRAINER_3 + const EVENT_BEAT_ROUTE_6_TRAINER_4 + const EVENT_BEAT_ROUTE_6_TRAINER_5 + const EVENT_417 + const EVENT_418 + const EVENT_419 + const EVENT_41A + const EVENT_41B + const EVENT_41C + const EVENT_41D + const EVENT_41E + const EVENT_41F + const EVENT_420 + const EVENT_421 + const EVENT_422 + const EVENT_423 + const EVENT_424 + const EVENT_425 + const EVENT_426 + const EVENT_427 + const EVENT_428 + const EVENT_429 + const EVENT_42A + const EVENT_42B + const EVENT_42C + const EVENT_42D + const EVENT_42E + const EVENT_42F + const EVENT_430 + const EVENT_BEAT_ROUTE_8_TRAINER_0 + const EVENT_BEAT_ROUTE_8_TRAINER_1 + const EVENT_BEAT_ROUTE_8_TRAINER_2 + const EVENT_BEAT_ROUTE_8_TRAINER_3 + const EVENT_BEAT_ROUTE_8_TRAINER_4 + const EVENT_BEAT_ROUTE_8_TRAINER_5 + const EVENT_BEAT_ROUTE_8_TRAINER_6 + const EVENT_BEAT_ROUTE_8_TRAINER_7 + const EVENT_BEAT_ROUTE_8_TRAINER_8 + const EVENT_43A + const EVENT_43B + const EVENT_43C + const EVENT_43D + const EVENT_43E + const EVENT_43F + const EVENT_440 + const EVENT_BEAT_ROUTE_9_TRAINER_0 + const EVENT_BEAT_ROUTE_9_TRAINER_1 + const EVENT_BEAT_ROUTE_9_TRAINER_2 + const EVENT_BEAT_ROUTE_9_TRAINER_3 + const EVENT_BEAT_ROUTE_9_TRAINER_4 + const EVENT_BEAT_ROUTE_9_TRAINER_5 + const EVENT_BEAT_ROUTE_9_TRAINER_6 + const EVENT_BEAT_ROUTE_9_TRAINER_7 + const EVENT_BEAT_ROUTE_9_TRAINER_8 + const EVENT_44A + const EVENT_44B + const EVENT_44C + const EVENT_44D + const EVENT_44E + const EVENT_44F + const EVENT_450 + const EVENT_BEAT_ROUTE_10_TRAINER_0 + const EVENT_BEAT_ROUTE_10_TRAINER_1 + const EVENT_BEAT_ROUTE_10_TRAINER_2 + const EVENT_BEAT_ROUTE_10_TRAINER_3 + const EVENT_BEAT_ROUTE_10_TRAINER_4 + const EVENT_BEAT_ROUTE_10_TRAINER_5 + const EVENT_457 + const EVENT_458 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_0 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5 + const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6 + const EVENT_460 + const EVENT_BEAT_POWER_PLANT_VOLTORB_0 + const EVENT_BEAT_POWER_PLANT_VOLTORB_1 + const EVENT_BEAT_POWER_PLANT_VOLTORB_2 + const EVENT_BEAT_POWER_PLANT_VOLTORB_3 + const EVENT_BEAT_POWER_PLANT_VOLTORB_4 + const EVENT_BEAT_POWER_PLANT_VOLTORB_5 + const EVENT_BEAT_POWER_PLANT_VOLTORB_6 + const EVENT_BEAT_POWER_PLANT_VOLTORB_7 + const EVENT_BEAT_ZAPDOS + const EVENT_46A + const EVENT_46B + const EVENT_46C + const EVENT_46D + const EVENT_46E + const EVENT_46F + const EVENT_470 + const EVENT_BEAT_ROUTE_11_TRAINER_0 + const EVENT_BEAT_ROUTE_11_TRAINER_1 + const EVENT_BEAT_ROUTE_11_TRAINER_2 + const EVENT_BEAT_ROUTE_11_TRAINER_3 + const EVENT_BEAT_ROUTE_11_TRAINER_4 + const EVENT_BEAT_ROUTE_11_TRAINER_5 + const EVENT_BEAT_ROUTE_11_TRAINER_6 + const EVENT_BEAT_ROUTE_11_TRAINER_7 + const EVENT_BEAT_ROUTE_11_TRAINER_8 + const EVENT_BEAT_ROUTE_11_TRAINER_9 + const EVENT_47B + const EVENT_47C + const EVENT_47D + const EVENT_47E + const EVENT_GOT_ITEMFINDER + const EVENT_GOT_TM39 + const EVENT_481 + const EVENT_BEAT_ROUTE_12_TRAINER_0 + const EVENT_BEAT_ROUTE_12_TRAINER_1 + const EVENT_BEAT_ROUTE_12_TRAINER_2 + const EVENT_BEAT_ROUTE_12_TRAINER_3 + const EVENT_BEAT_ROUTE_12_TRAINER_4 + const EVENT_BEAT_ROUTE_12_TRAINER_5 + const EVENT_BEAT_ROUTE_12_TRAINER_6 + const EVENT_489 + const EVENT_48A + const EVENT_48B + const EVENT_48C + const EVENT_48D + const EVENT_FIGHT_ROUTE12_SNORLAX + const EVENT_BEAT_ROUTE12_SNORLAX + const EVENT_490 + const EVENT_BEAT_ROUTE_13_TRAINER_0 + const EVENT_BEAT_ROUTE_13_TRAINER_1 + const EVENT_BEAT_ROUTE_13_TRAINER_2 + const EVENT_BEAT_ROUTE_13_TRAINER_3 + const EVENT_BEAT_ROUTE_13_TRAINER_4 + const EVENT_BEAT_ROUTE_13_TRAINER_5 + const EVENT_BEAT_ROUTE_13_TRAINER_6 + const EVENT_BEAT_ROUTE_13_TRAINER_7 + const EVENT_BEAT_ROUTE_13_TRAINER_8 + const EVENT_BEAT_ROUTE_13_TRAINER_9 + const EVENT_49B + const EVENT_49C + const EVENT_49D + const EVENT_49E + const EVENT_49F + const EVENT_4A0 + const EVENT_BEAT_ROUTE_14_TRAINER_0 + const EVENT_BEAT_ROUTE_14_TRAINER_1 + const EVENT_BEAT_ROUTE_14_TRAINER_2 + const EVENT_BEAT_ROUTE_14_TRAINER_3 + const EVENT_BEAT_ROUTE_14_TRAINER_4 + const EVENT_BEAT_ROUTE_14_TRAINER_5 + const EVENT_BEAT_ROUTE_14_TRAINER_6 + const EVENT_BEAT_ROUTE_14_TRAINER_7 + const EVENT_BEAT_ROUTE_14_TRAINER_8 + const EVENT_BEAT_ROUTE_14_TRAINER_9 + const EVENT_4AB + const EVENT_4AC + const EVENT_4AD + const EVENT_4AE + const EVENT_4AF + const EVENT_GOT_EXP_ALL + const EVENT_BEAT_ROUTE_15_TRAINER_0 + const EVENT_BEAT_ROUTE_15_TRAINER_1 + const EVENT_BEAT_ROUTE_15_TRAINER_2 + const EVENT_BEAT_ROUTE_15_TRAINER_3 + const EVENT_BEAT_ROUTE_15_TRAINER_4 + const EVENT_BEAT_ROUTE_15_TRAINER_5 + const EVENT_BEAT_ROUTE_15_TRAINER_6 + const EVENT_BEAT_ROUTE_15_TRAINER_7 + const EVENT_BEAT_ROUTE_15_TRAINER_8 + const EVENT_BEAT_ROUTE_15_TRAINER_9 + const EVENT_4BB + const EVENT_4BC + const EVENT_4BD + const EVENT_4BE + const EVENT_4BF + const EVENT_4C0 + const EVENT_BEAT_ROUTE_16_TRAINER_0 + const EVENT_BEAT_ROUTE_16_TRAINER_1 + const EVENT_BEAT_ROUTE_16_TRAINER_2 + const EVENT_BEAT_ROUTE_16_TRAINER_3 + const EVENT_BEAT_ROUTE_16_TRAINER_4 + const EVENT_BEAT_ROUTE_16_TRAINER_5 + const EVENT_4C7 + const EVENT_FIGHT_ROUTE16_SNORLAX + const EVENT_BEAT_ROUTE16_SNORLAX + const EVENT_4CA + const EVENT_4CB + const EVENT_4CC + const EVENT_4CD + const EVENT_GOT_HM02 + const EVENT_RESCUED_MR_FUJI + const EVENT_4D0 + const EVENT_BEAT_ROUTE_17_TRAINER_0 + const EVENT_BEAT_ROUTE_17_TRAINER_1 + const EVENT_BEAT_ROUTE_17_TRAINER_2 + const EVENT_BEAT_ROUTE_17_TRAINER_3 + const EVENT_BEAT_ROUTE_17_TRAINER_4 + const EVENT_BEAT_ROUTE_17_TRAINER_5 + const EVENT_BEAT_ROUTE_17_TRAINER_6 + const EVENT_BEAT_ROUTE_17_TRAINER_7 + const EVENT_BEAT_ROUTE_17_TRAINER_8 + const EVENT_BEAT_ROUTE_17_TRAINER_9 + const EVENT_4DB + const EVENT_4DC + const EVENT_4DD + const EVENT_4DE + const EVENT_4DF + const EVENT_4E0 + const EVENT_BEAT_ROUTE_18_TRAINER_0 + const EVENT_BEAT_ROUTE_18_TRAINER_1 + const EVENT_BEAT_ROUTE_18_TRAINER_2 + const EVENT_4E4 + const EVENT_4E5 + const EVENT_4E6 + const EVENT_4E7 + const EVENT_4E8 + const EVENT_4E9 + const EVENT_4EA + const EVENT_4EB + const EVENT_4EC + const EVENT_4ED + const EVENT_4EE + const EVENT_4EF + const EVENT_4F0 + const EVENT_BEAT_ROUTE_19_TRAINER_0 + const EVENT_BEAT_ROUTE_19_TRAINER_1 + const EVENT_BEAT_ROUTE_19_TRAINER_2 + const EVENT_BEAT_ROUTE_19_TRAINER_3 + const EVENT_BEAT_ROUTE_19_TRAINER_4 + const EVENT_BEAT_ROUTE_19_TRAINER_5 + const EVENT_BEAT_ROUTE_19_TRAINER_6 + const EVENT_BEAT_ROUTE_19_TRAINER_7 + const EVENT_BEAT_ROUTE_19_TRAINER_8 + const EVENT_BEAT_ROUTE_19_TRAINER_9 + const EVENT_4FB + const EVENT_4FC + const EVENT_4FD + const EVENT_4FE + const EVENT_4FF + const EVENT_IN_SEAFOAM_ISLANDS + const EVENT_BEAT_ROUTE_20_TRAINER_0 + const EVENT_BEAT_ROUTE_20_TRAINER_1 + const EVENT_BEAT_ROUTE_20_TRAINER_2 + const EVENT_BEAT_ROUTE_20_TRAINER_3 + const EVENT_BEAT_ROUTE_20_TRAINER_4 + const EVENT_BEAT_ROUTE_20_TRAINER_5 + const EVENT_BEAT_ROUTE_20_TRAINER_6 + const EVENT_BEAT_ROUTE_20_TRAINER_7 + const EVENT_BEAT_ROUTE_20_TRAINER_8 + const EVENT_BEAT_ROUTE_20_TRAINER_9 + const EVENT_50B + const EVENT_50C + const EVENT_50D + const EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE + const EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE + const EVENT_510 + const EVENT_BEAT_ROUTE_21_TRAINER_0 + const EVENT_BEAT_ROUTE_21_TRAINER_1 + const EVENT_BEAT_ROUTE_21_TRAINER_2 + const EVENT_BEAT_ROUTE_21_TRAINER_3 + const EVENT_BEAT_ROUTE_21_TRAINER_4 + const EVENT_BEAT_ROUTE_21_TRAINER_5 + const EVENT_BEAT_ROUTE_21_TRAINER_6 + const EVENT_BEAT_ROUTE_21_TRAINER_7 + const EVENT_BEAT_ROUTE_21_TRAINER_8 + const EVENT_51A + const EVENT_51B + const EVENT_51C + const EVENT_51D + const EVENT_51E + const EVENT_51F + const EVENT_1ST_ROUTE22_RIVAL_BATTLE + const EVENT_2ND_ROUTE22_RIVAL_BATTLE + const EVENT_522 + const EVENT_523 + const EVENT_524 + const EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE + const EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE + const EVENT_ROUTE22_RIVAL_WANTS_BATTLE + const EVENT_528 + const EVENT_529 + const EVENT_52A + const EVENT_52B + const EVENT_52C + const EVENT_52D + const EVENT_52E + const EVENT_52F + const EVENT_PASSED_CASCADEBADGE_CHECK + const EVENT_PASSED_THUNDERBADGE_CHECK + const EVENT_PASSED_RAINBOWBADGE_CHECK + const EVENT_PASSED_SOULBADGE_CHECK + const EVENT_PASSED_MARSHBADGE_CHECK + const EVENT_PASSED_VOLCANOBADGE_CHECK + const EVENT_PASSED_EARTHBADGE_CHECK + const EVENT_537 + const EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1 + const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0 + const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_1 + const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2 + const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3 + const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4 + const EVENT_BEAT_MOLTRES + const EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2 + const EVENT_GOT_NUGGET + const EVENT_BEAT_ROUTE24_ROCKET + const EVENT_BEAT_ROUTE_24_TRAINER_0 + const EVENT_BEAT_ROUTE_24_TRAINER_1 + const EVENT_BEAT_ROUTE_24_TRAINER_2 + const EVENT_BEAT_ROUTE_24_TRAINER_3 + const EVENT_BEAT_ROUTE_24_TRAINER_4 + const EVENT_BEAT_ROUTE_24_TRAINER_5 + const EVENT_548 + const EVENT_NUGGET_REWARD_AVAILABLE + const EVENT_54A + const EVENT_54B + const EVENT_54C + const EVENT_54D + const EVENT_54E + const EVENT_54F + const EVENT_MET_BILL + const EVENT_BEAT_ROUTE_25_TRAINER_0 + const EVENT_BEAT_ROUTE_25_TRAINER_1 + const EVENT_BEAT_ROUTE_25_TRAINER_2 + const EVENT_BEAT_ROUTE_25_TRAINER_3 + const EVENT_BEAT_ROUTE_25_TRAINER_4 + const EVENT_BEAT_ROUTE_25_TRAINER_5 + const EVENT_BEAT_ROUTE_25_TRAINER_6 + const EVENT_BEAT_ROUTE_25_TRAINER_7 + const EVENT_BEAT_ROUTE_25_TRAINER_8 + const EVENT_55A + const EVENT_USED_CELL_SEPARATOR_ON_BILL + const EVENT_GOT_SS_TICKET + const EVENT_MET_BILL_2 + const EVENT_BILL_SAID_USE_CELL_SEPARATOR + const EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING + const EVENT_560 + const EVENT_561 + const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0 + const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1 + const EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2 + const EVENT_565 + const EVENT_566 + const EVENT_567 + const EVENT_568 + const EVENT_569 + const EVENT_56A + const EVENT_56B + const EVENT_56C + const EVENT_56D + const EVENT_56E + const EVENT_56F + const EVENT_570 + const EVENT_BEAT_MT_MOON_1_TRAINER_0 + const EVENT_BEAT_MT_MOON_1_TRAINER_1 + const EVENT_BEAT_MT_MOON_1_TRAINER_2 + const EVENT_BEAT_MT_MOON_1_TRAINER_3 + const EVENT_BEAT_MT_MOON_1_TRAINER_4 + const EVENT_BEAT_MT_MOON_1_TRAINER_5 + const EVENT_BEAT_MT_MOON_1_TRAINER_6 + const EVENT_578 + const EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD + const EVENT_BEAT_MT_MOON_3_TRAINER_0 + const EVENT_BEAT_MT_MOON_3_TRAINER_1 + const EVENT_BEAT_MT_MOON_3_TRAINER_2 + const EVENT_BEAT_MT_MOON_3_TRAINER_3 + const EVENT_GOT_DOME_FOSSIL + const EVENT_GOT_HELIX_FOSSIL + const EVENT_580 + const EVENT_581 + const EVENT_582 + const EVENT_583 + const EVENT_584 + const EVENT_585 + const EVENT_586 + const EVENT_587 + const EVENT_588 + const EVENT_589 + const EVENT_58A + const EVENT_58B + const EVENT_58C + const EVENT_58D + const EVENT_58E + const EVENT_58F + const EVENT_590 + const EVENT_591 + const EVENT_592 + const EVENT_593 + const EVENT_594 + const EVENT_595 + const EVENT_596 + const EVENT_597 + const EVENT_598 + const EVENT_599 + const EVENT_59A + const EVENT_59B + const EVENT_59C + const EVENT_59D + const EVENT_59E + const EVENT_59F + const EVENT_5A0 + const EVENT_5A1 + const EVENT_5A2 + const EVENT_5A3 + const EVENT_5A4 + const EVENT_5A5 + const EVENT_5A6 + const EVENT_5A7 + const EVENT_5A8 + const EVENT_5A9 + const EVENT_5AA + const EVENT_5AB + const EVENT_5AC + const EVENT_5AD + const EVENT_5AE + const EVENT_5AF + const EVENT_5B0 + const EVENT_5B1 + const EVENT_5B2 + const EVENT_5B3 + const EVENT_5B4 + const EVENT_5B5 + const EVENT_5B6 + const EVENT_5B7 + const EVENT_5B8 + const EVENT_5B9 + const EVENT_5BA + const EVENT_5BB + const EVENT_5BC + const EVENT_5BD + const EVENT_5BE + const EVENT_5BF + const EVENT_5C0 + const EVENT_5C1 + const EVENT_5C2 + const EVENT_5C3 + const EVENT_BEAT_SS_ANNE_5_TRAINER_0 + const EVENT_BEAT_SS_ANNE_5_TRAINER_1 + const EVENT_5C6 + const EVENT_5C7 + const EVENT_5C8 + const EVENT_5C9 + const EVENT_5CA + const EVENT_5CB + const EVENT_5CC + const EVENT_5CD + const EVENT_5CE + const EVENT_5CF + const EVENT_5D0 + const EVENT_5D1 + const EVENT_5D2 + const EVENT_5D3 + const EVENT_5D4 + const EVENT_5D5 + const EVENT_5D6 + const EVENT_5D7 + const EVENT_5D8 + const EVENT_5D9 + const EVENT_5DA + const EVENT_5DB + const EVENT_5DC + const EVENT_5DD + const EVENT_5DE + const EVENT_5DF + const EVENT_GOT_HM01 + const EVENT_RUBBED_CAPTAINS_BACK + const EVENT_SS_ANNE_LEFT + const EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT + const EVENT_STARTED_WALKING_OUT_OF_DOCK + const EVENT_WALKED_OUT_OF_DOCK + const EVENT_5E6 + const EVENT_5E7 + const EVENT_5E8 + const EVENT_5E9 + const EVENT_5EA + const EVENT_5EB + const EVENT_5EC + const EVENT_5ED + const EVENT_5EE + const EVENT_5EF + const EVENT_5F0 + const EVENT_BEAT_SS_ANNE_8_TRAINER_0 + const EVENT_BEAT_SS_ANNE_8_TRAINER_1 + const EVENT_BEAT_SS_ANNE_8_TRAINER_2 + const EVENT_BEAT_SS_ANNE_8_TRAINER_3 + const EVENT_5F5 + const EVENT_5F6 + const EVENT_5F7 + const EVENT_5F8 + const EVENT_5F9 + const EVENT_5FA + const EVENT_5FB + const EVENT_5FC + const EVENT_5FD + const EVENT_5FE + const EVENT_5FF + const EVENT_600 + const EVENT_BEAT_SS_ANNE_9_TRAINER_0 + const EVENT_BEAT_SS_ANNE_9_TRAINER_1 + const EVENT_BEAT_SS_ANNE_9_TRAINER_2 + const EVENT_BEAT_SS_ANNE_9_TRAINER_3 + const EVENT_605 + const EVENT_606 + const EVENT_607 + const EVENT_608 + const EVENT_609 + const EVENT_60A + const EVENT_60B + const EVENT_60C + const EVENT_60D + const EVENT_60E + const EVENT_60F + const EVENT_610 + const EVENT_BEAT_SS_ANNE_10_TRAINER_0 + const EVENT_BEAT_SS_ANNE_10_TRAINER_1 + const EVENT_BEAT_SS_ANNE_10_TRAINER_2 + const EVENT_BEAT_SS_ANNE_10_TRAINER_3 + const EVENT_BEAT_SS_ANNE_10_TRAINER_4 + const EVENT_BEAT_SS_ANNE_10_TRAINER_5 + const EVENT_617 + const EVENT_618 + const EVENT_619 + const EVENT_61A + const EVENT_61B + const EVENT_61C + const EVENT_61D + const EVENT_61E + const EVENT_61F + const EVENT_620 + const EVENT_621 + const EVENT_622 + const EVENT_623 + const EVENT_624 + const EVENT_625 + const EVENT_626 + const EVENT_627 + const EVENT_628 + const EVENT_629 + const EVENT_62A + const EVENT_62B + const EVENT_62C + const EVENT_62D + const EVENT_62E + const EVENT_62F + const EVENT_630 + const EVENT_631 + const EVENT_632 + const EVENT_633 + const EVENT_634 + const EVENT_635 + const EVENT_636 + const EVENT_637 + const EVENT_638 + const EVENT_639 + const EVENT_63A + const EVENT_63B + const EVENT_63C + const EVENT_63D + const EVENT_63E + const EVENT_63F + const EVENT_640 + const EVENT_641 + const EVENT_642 + const EVENT_643 + const EVENT_644 + const EVENT_645 + const EVENT_646 + const EVENT_647 + const EVENT_648 + const EVENT_649 + const EVENT_64A + const EVENT_64B + const EVENT_64C + const EVENT_64D + const EVENT_64E + const EVENT_64F + const EVENT_650 + const EVENT_651 + const EVENT_652 + const EVENT_653 + const EVENT_654 + const EVENT_655 + const EVENT_656 + const EVENT_657 + const EVENT_658 + const EVENT_659 + const EVENT_65A + const EVENT_65B + const EVENT_65C + const EVENT_65D + const EVENT_65E + const EVENT_65F + const EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1 + const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0 + const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_1 + const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2 + const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3 + const EVENT_665 + const EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2 + const EVENT_667 + const EVENT_668 + const EVENT_669 + const EVENT_66A + const EVENT_66B + const EVENT_66C + const EVENT_66D + const EVENT_66E + const EVENT_66F + const EVENT_670 + const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0 + const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1 + const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2 + const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3 + const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4 + const EVENT_676 + const EVENT_677 + const EVENT_678 + const EVENT_679 + const EVENT_67A + const EVENT_67B + const EVENT_67C + const EVENT_67D + const EVENT_67E + const EVENT_67F + const EVENT_680 + const EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0 + const EVENT_682 + const EVENT_683 + const EVENT_684 + const EVENT_685 + const EVENT_686 + const EVENT_687 + const EVENT_688 + const EVENT_689 + const EVENT_68A + const EVENT_68B + const EVENT_68C + const EVENT_68D + const EVENT_68E + const EVENT_68F + const EVENT_690 + const EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0 + const EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_1 + const EVENT_693 + const EVENT_694 + const EVENT_695 + const EVENT_696 + const EVENT_697 + const EVENT_698 + const EVENT_699 + const EVENT_69A + const EVENT_69B + const EVENT_69C + const EVENT_69D + const EVENT_69E + const EVENT_69F + const EVENT_6A0 + const EVENT_6A1 + const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 + const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1 + const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + const EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED + const EVENT_ROCKET_DROPPED_LIFT_KEY + const EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI + const EVENT_6A8 + const EVENT_6A9 + const EVENT_6AA + const EVENT_6AB + const EVENT_6AC + const EVENT_6AD + const EVENT_6AE + const EVENT_6AF + const EVENT_6B0 + const EVENT_6B1 + const EVENT_6B2 + const EVENT_6B3 + const EVENT_6B4 + const EVENT_6B5 + const EVENT_6B6 + const EVENT_6B7 + const EVENT_6B8 + const EVENT_6B9 + const EVENT_6BA + const EVENT_6BB + const EVENT_6BC + const EVENT_6BD + const EVENT_6BE + const EVENT_6BF + const EVENT_6C0 + const EVENT_6C1 + const EVENT_6C2 + const EVENT_6C3 + const EVENT_6C4 + const EVENT_6C5 + const EVENT_6C6 + const EVENT_6C7 + const EVENT_6C8 + const EVENT_6C9 + const EVENT_6CA + const EVENT_6CB + const EVENT_6CC + const EVENT_6CD + const EVENT_6CE + const EVENT_6CF + const EVENT_6D0 + const EVENT_6D1 + const EVENT_6D2 + const EVENT_6D3 + const EVENT_6D4 + const EVENT_6D5 + const EVENT_6D6 + const EVENT_6D7 + const EVENT_6D8 + const EVENT_6D9 + const EVENT_6DA + const EVENT_6DB + const EVENT_6DC + const EVENT_6DD + const EVENT_6DE + const EVENT_6DF + const EVENT_6E0 + const EVENT_6E1 + const EVENT_6E2 + const EVENT_6E3 + const EVENT_6E4 + const EVENT_6E5 + const EVENT_6E6 + const EVENT_6E7 + const EVENT_6E8 + const EVENT_6E9 + const EVENT_6EA + const EVENT_6EB + const EVENT_6EC + const EVENT_6ED + const EVENT_6EE + const EVENT_6EF + const EVENT_6F0 + const EVENT_6F1 + const EVENT_BEAT_SILPH_CO_2F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_2F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_2F_TRAINER_2 + const EVENT_BEAT_SILPH_CO_2F_TRAINER_3 + const EVENT_6F6 + const EVENT_6F7 + const EVENT_6F8 + const EVENT_6F9 + const EVENT_6FA + const EVENT_6FB + const EVENT_6FC + const EVENT_SILPH_CO_2_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_2_UNLOCKED_DOOR2 + const EVENT_GOT_TM36 + const EVENT_700 + const EVENT_701 + const EVENT_BEAT_SILPH_CO_3F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_3F_TRAINER_1 + const EVENT_704 + const EVENT_705 + const EVENT_706 + const EVENT_707 + const EVENT_SILPH_CO_3_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_3_UNLOCKED_DOOR2 + const EVENT_70A + const EVENT_70B + const EVENT_70C + const EVENT_70D + const EVENT_70E + const EVENT_70F + const EVENT_710 + const EVENT_711 + const EVENT_BEAT_SILPH_CO_4F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_4F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_4F_TRAINER_2 + const EVENT_715 + const EVENT_716 + const EVENT_717 + const EVENT_SILPH_CO_4_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_4_UNLOCKED_DOOR2 + const EVENT_71A + const EVENT_71B + const EVENT_71C + const EVENT_71D + const EVENT_71E + const EVENT_71F + const EVENT_720 + const EVENT_721 + const EVENT_BEAT_SILPH_CO_5F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_5F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_5F_TRAINER_2 + const EVENT_BEAT_SILPH_CO_5F_TRAINER_3 + const EVENT_726 + const EVENT_727 + const EVENT_SILPH_CO_5_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_5_UNLOCKED_DOOR2 + const EVENT_SILPH_CO_5_UNLOCKED_DOOR3 + const EVENT_72B + const EVENT_72C + const EVENT_72D + const EVENT_72E + const EVENT_72F + const EVENT_730 + const EVENT_731 + const EVENT_732 + const EVENT_733 + const EVENT_734 + const EVENT_735 + const EVENT_BEAT_SILPH_CO_6F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_6F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_6F_TRAINER_2 + const EVENT_739 + const EVENT_73A + const EVENT_73B + const EVENT_73C + const EVENT_73D + const EVENT_73E + const EVENT_SILPH_CO_6_UNLOCKED_DOOR + const EVENT_BEAT_SILPH_CO_RIVAL + const EVENT_741 + const EVENT_742 + const EVENT_743 + const EVENT_744 + const EVENT_BEAT_SILPH_CO_7F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_7F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_7F_TRAINER_2 + const EVENT_BEAT_SILPH_CO_7F_TRAINER_3 + const EVENT_749 + const EVENT_74A + const EVENT_74B + const EVENT_SILPH_CO_7_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_7_UNLOCKED_DOOR2 + const EVENT_SILPH_CO_7_UNLOCKED_DOOR3 + const EVENT_74F + const EVENT_750 + const EVENT_751 + const EVENT_BEAT_SILPH_CO_8F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_8F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_8F_TRAINER_2 + const EVENT_755 + const EVENT_756 + const EVENT_757 + const EVENT_SILPH_CO_8_UNLOCKED_DOOR + const EVENT_759 + const EVENT_75A + const EVENT_75B + const EVENT_75C + const EVENT_75D + const EVENT_75E + const EVENT_75F + const EVENT_760 + const EVENT_761 + const EVENT_BEAT_SILPH_CO_9F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_9F_TRAINER_1 + const EVENT_BEAT_SILPH_CO_9F_TRAINER_2 + const EVENT_765 + const EVENT_766 + const EVENT_767 + const EVENT_SILPH_CO_9_UNLOCKED_DOOR1 + const EVENT_SILPH_CO_9_UNLOCKED_DOOR2 + const EVENT_SILPH_CO_9_UNLOCKED_DOOR3 + const EVENT_SILPH_CO_9_UNLOCKED_DOOR4 + const EVENT_76C + const EVENT_76D + const EVENT_76E + const EVENT_76F + const EVENT_770 + const EVENT_BEAT_SILPH_CO_10F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_10F_TRAINER_1 + const EVENT_773 + const EVENT_774 + const EVENT_775 + const EVENT_776 + const EVENT_777 + const EVENT_SILPH_CO_10_UNLOCKED_DOOR + const EVENT_779 + const EVENT_77A + const EVENT_77B + const EVENT_77C + const EVENT_77D + const EVENT_77E + const EVENT_77F + const EVENT_780 + const EVENT_781 + const EVENT_782 + const EVENT_783 + const EVENT_BEAT_SILPH_CO_11F_TRAINER_0 + const EVENT_BEAT_SILPH_CO_11F_TRAINER_1 + const EVENT_786 + const EVENT_787 + const EVENT_SILPH_CO_11_UNLOCKED_DOOR + const EVENT_789 + const EVENT_78A + const EVENT_78B + const EVENT_78C + const EVENT_GOT_MASTER_BALL + const EVENT_78E + const EVENT_BEAT_SILPH_CO_GIOVANNI + const EVENT_790 + const EVENT_791 + const EVENT_792 + const EVENT_793 + const EVENT_794 + const EVENT_795 + const EVENT_796 + const EVENT_797 + const EVENT_798 + const EVENT_799 + const EVENT_79A + const EVENT_79B + const EVENT_79C + const EVENT_79D + const EVENT_79E + const EVENT_79F + const EVENT_7A0 + const EVENT_7A1 + const EVENT_7A2 + const EVENT_7A3 + const EVENT_7A4 + const EVENT_7A5 + const EVENT_7A6 + const EVENT_7A7 + const EVENT_7A8 + const EVENT_7A9 + const EVENT_7AA + const EVENT_7AB + const EVENT_7AC + const EVENT_7AD + const EVENT_7AE + const EVENT_7AF + const EVENT_7B0 + const EVENT_7B1 + const EVENT_7B2 + const EVENT_7B3 + const EVENT_7B4 + const EVENT_7B5 + const EVENT_7B6 + const EVENT_7B7 + const EVENT_7B8 + const EVENT_7B9 + const EVENT_7BA + const EVENT_7BB + const EVENT_7BC + const EVENT_7BD + const EVENT_7BE + const EVENT_7BF + const EVENT_7C0 + const EVENT_7C1 + const EVENT_7C2 + const EVENT_7C3 + const EVENT_7C4 + const EVENT_7C5 + const EVENT_7C6 + const EVENT_7C7 + const EVENT_7C8 + const EVENT_7C9 + const EVENT_7CA + const EVENT_7CB + const EVENT_7CC + const EVENT_7CD + const EVENT_7CE + const EVENT_7CF + const EVENT_7D0 + const EVENT_7D1 + const EVENT_7D2 + const EVENT_7D3 + const EVENT_7D4 + const EVENT_7D5 + const EVENT_7D6 + const EVENT_7D7 + const EVENT_7D8 + const EVENT_7D9 + const EVENT_7DA + const EVENT_7DB + const EVENT_7DC + const EVENT_7DD + const EVENT_7DE + const EVENT_7DF + const EVENT_7E0 + const EVENT_7E1 + const EVENT_7E2 + const EVENT_7E3 + const EVENT_7E4 + const EVENT_7E5 + const EVENT_7E6 + const EVENT_7E7 + const EVENT_7E8 + const EVENT_7E9 + const EVENT_7EA + const EVENT_7EB + const EVENT_7EC + const EVENT_7ED + const EVENT_7EE + const EVENT_7EF + const EVENT_7F0 + const EVENT_7F1 + const EVENT_7F2 + const EVENT_7F3 + const EVENT_7F4 + const EVENT_7F5 + const EVENT_7F6 + const EVENT_7F7 + const EVENT_7F8 + const EVENT_7F9 + const EVENT_7FA + const EVENT_7FB + const EVENT_7FC + const EVENT_7FD + const EVENT_7FE + const EVENT_7FF + const EVENT_800 + const EVENT_BEAT_MANSION_2_TRAINER_0 + const EVENT_802 + const EVENT_803 + const EVENT_804 + const EVENT_805 + const EVENT_806 + const EVENT_807 + const EVENT_808 + const EVENT_809 + const EVENT_80A + const EVENT_80B + const EVENT_80C + const EVENT_80D + const EVENT_80E + const EVENT_80F + const EVENT_810 + const EVENT_BEAT_MANSION_3_TRAINER_0 + const EVENT_BEAT_MANSION_3_TRAINER_1 + const EVENT_813 + const EVENT_814 + const EVENT_815 + const EVENT_816 + const EVENT_817 + const EVENT_818 + const EVENT_819 + const EVENT_81A + const EVENT_81B + const EVENT_81C + const EVENT_81D + const EVENT_81E + const EVENT_81F + const EVENT_820 + const EVENT_BEAT_MANSION_4_TRAINER_0 + const EVENT_BEAT_MANSION_4_TRAINER_1 + const EVENT_823 + const EVENT_824 + const EVENT_825 + const EVENT_826 + const EVENT_827 + const EVENT_828 + const EVENT_829 + const EVENT_82A + const EVENT_82B + const EVENT_82C + const EVENT_82D + const EVENT_82E + const EVENT_82F + const EVENT_830 + const EVENT_831 + const EVENT_832 + const EVENT_833 + const EVENT_834 + const EVENT_835 + const EVENT_836 + const EVENT_837 + const EVENT_838 + const EVENT_839 + const EVENT_83A + const EVENT_83B + const EVENT_83C + const EVENT_83D + const EVENT_83E + const EVENT_83F + const EVENT_840 + const EVENT_841 + const EVENT_842 + const EVENT_843 + const EVENT_844 + const EVENT_845 + const EVENT_846 + const EVENT_847 + const EVENT_848 + const EVENT_849 + const EVENT_84A + const EVENT_84B + const EVENT_84C + const EVENT_84D + const EVENT_84E + const EVENT_84F + const EVENT_850 + const EVENT_851 + const EVENT_852 + const EVENT_853 + const EVENT_854 + const EVENT_855 + const EVENT_856 + const EVENT_857 + const EVENT_858 + const EVENT_859 + const EVENT_85A + const EVENT_85B + const EVENT_85C + const EVENT_85D + const EVENT_85E + const EVENT_85F + const EVENT_860 + const EVENT_861 + const EVENT_862 + const EVENT_863 + const EVENT_864 + const EVENT_865 + const EVENT_866 + const EVENT_867 + const EVENT_868 + const EVENT_869 + const EVENT_86A + const EVENT_86B + const EVENT_86C + const EVENT_86D + const EVENT_86E + const EVENT_86F + const EVENT_870 + const EVENT_871 + const EVENT_872 + const EVENT_873 + const EVENT_874 + const EVENT_875 + const EVENT_876 + const EVENT_877 + const EVENT_878 + const EVENT_879 + const EVENT_87A + const EVENT_87B + const EVENT_87C + const EVENT_87D + const EVENT_87E + const EVENT_87F + const EVENT_GOT_HM03 + const EVENT_881 + const EVENT_882 + const EVENT_883 + const EVENT_884 + const EVENT_885 + const EVENT_886 + const EVENT_887 + const EVENT_888 + const EVENT_889 + const EVENT_88A + const EVENT_88B + const EVENT_88C + const EVENT_88D + const EVENT_88E + const EVENT_88F + const EVENT_890 + const EVENT_891 + const EVENT_892 + const EVENT_893 + const EVENT_894 + const EVENT_895 + const EVENT_896 + const EVENT_897 + const EVENT_898 + const EVENT_899 + const EVENT_89A + const EVENT_89B + const EVENT_89C + const EVENT_89D + const EVENT_89E + const EVENT_89F + const EVENT_8A0 + const EVENT_8A1 + const EVENT_8A2 + const EVENT_8A3 + const EVENT_8A4 + const EVENT_8A5 + const EVENT_8A6 + const EVENT_8A7 + const EVENT_8A8 + const EVENT_8A9 + const EVENT_8AA + const EVENT_8AB + const EVENT_8AC + const EVENT_8AD + const EVENT_8AE + const EVENT_8AF + const EVENT_8B0 + const EVENT_8B1 + const EVENT_8B2 + const EVENT_8B3 + const EVENT_8B4 + const EVENT_8B5 + const EVENT_8B6 + const EVENT_8B7 + const EVENT_8B8 + const EVENT_8B9 + const EVENT_8BA + const EVENT_8BB + const EVENT_8BC + const EVENT_8BD + const EVENT_8BE + const EVENT_8BF + const EVENT_8C0 + const EVENT_BEAT_MEWTWO + const EVENT_8C2 + const EVENT_8C3 + const EVENT_8C4 + const EVENT_8C5 + const EVENT_8C6 + const EVENT_8C7 + const EVENT_8C8 + const EVENT_8C9 + const EVENT_8CA + const EVENT_8CB + const EVENT_8CC + const EVENT_8CD + const EVENT_8CE + const EVENT_8CF + const EVENT_8D0 + const EVENT_8D1 + const EVENT_8D2 + const EVENT_8D3 + const EVENT_8D4 + const EVENT_8D5 + const EVENT_8D6 + const EVENT_8D7 + const EVENT_8D8 + const EVENT_8D9 + const EVENT_8DA + const EVENT_8DB + const EVENT_8DC + const EVENT_8DD + const EVENT_8DE + const EVENT_8DF + const ELITE4_EVENTS_START + const EVENT_BEAT_LORELEIS_ROOM_TRAINER_0 + const EVENT_8E2 + const EVENT_8E3 + const EVENT_8E4 + const EVENT_8E5 + const EVENT_AUTOWALKED_INTO_LORELEIS_ROOM + const EVENT_8E7 + const EVENT_8E8 + const EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 + const EVENT_8EA + const EVENT_8EB + const EVENT_8EC + const EVENT_8ED + const EVENT_AUTOWALKED_INTO_BRUNOS_ROOM + const EVENT_8EF + const EVENT_8F0 + const EVENT_BEAT_AGATHAS_ROOM_TRAINER_0 + const EVENT_8F2 + const EVENT_8F3 + const EVENT_8F4 + const EVENT_8F5 + const EVENT_AUTOWALKED_INTO_AGATHAS_ROOM + const EVENT_8F7 + const EVENT_8F8 + const EVENT_BEAT_LANCES_ROOM_TRAINER_0 + const EVENT_8FA + const EVENT_8FB + const EVENT_8FC + const EVENT_8FD + const EVENT_BEAT_LANCE + const EVENT_LANCES_ROOM_LOCK_DOOR + const EVENT_900 + const EVENT_BEAT_CHAMPION_RIVAL + const EVENT_902 + const EVENT_903 + const EVENT_904 + const EVENT_905 + const EVENT_906 + const ELITE4_CHAMPION_EVENTS_END + const EVENT_908 + const EVENT_909 + const EVENT_90A + const EVENT_90B + const EVENT_90C + const EVENT_90D + const EVENT_90E + const EVENT_90F + const EVENT_910 + const EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0 + const EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1 + const EVENT_913 + const EVENT_914 + const EVENT_915 + const EVENT_916 + const EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH + const EVENT_918 + const EVENT_919 + const EVENT_91A + const EVENT_91B + const EVENT_91C + const EVENT_91D + const EVENT_91E + const EVENT_91F + const EVENT_920 + const EVENT_921 + const EVENT_922 + const EVENT_923 + const EVENT_924 + const EVENT_925 + const EVENT_926 + const EVENT_927 + const EVENT_928 + const EVENT_929 + const EVENT_92A + const EVENT_92B + const EVENT_92C + const EVENT_92D + const EVENT_92E + const EVENT_92F + const EVENT_930 + const EVENT_931 + const EVENT_932 + const EVENT_933 + const EVENT_934 + const EVENT_935 + const EVENT_936 + const EVENT_937 + const EVENT_938 + const EVENT_939 + const EVENT_93A + const EVENT_93B + const EVENT_93C + const EVENT_93D + const EVENT_93E + const EVENT_93F + const EVENT_940 + const EVENT_941 + const EVENT_942 + const EVENT_943 + const EVENT_944 + const EVENT_945 + const EVENT_946 + const EVENT_947 + const EVENT_948 + const EVENT_949 + const EVENT_94A + const EVENT_94B + const EVENT_94C + const EVENT_94D + const EVENT_94E + const EVENT_94F + const EVENT_950 + const EVENT_951 + const EVENT_952 + const EVENT_953 + const EVENT_954 + const EVENT_955 + const EVENT_956 + const EVENT_957 + const EVENT_958 + const EVENT_959 + const EVENT_95A + const EVENT_95B + const EVENT_95C + const EVENT_95D + const EVENT_95E + const EVENT_95F + const EVENT_960 + const EVENT_961 + const EVENT_962 + const EVENT_963 + const EVENT_964 + const EVENT_965 + const EVENT_966 + const EVENT_967 + const EVENT_968 + const EVENT_969 + const EVENT_96A + const EVENT_96B + const EVENT_96C + const EVENT_96D + const EVENT_96E + const EVENT_96F + const EVENT_970 + const EVENT_971 + const EVENT_972 + const EVENT_973 + const EVENT_974 + const EVENT_975 + const EVENT_976 + const EVENT_977 + const EVENT_978 + const EVENT_979 + const EVENT_97A + const EVENT_97B + const EVENT_97C + const EVENT_97D + const EVENT_97E + const EVENT_97F + const EVENT_980 + const EVENT_981 + const EVENT_982 + const EVENT_983 + const EVENT_984 + const EVENT_985 + const EVENT_986 + const EVENT_987 + const EVENT_988 + const EVENT_989 + const EVENT_98A + const EVENT_98B + const EVENT_98C + const EVENT_98D + const EVENT_98E + const EVENT_98F + const EVENT_990 + const EVENT_991 + const EVENT_992 + const EVENT_993 + const EVENT_994 + const EVENT_995 + const EVENT_996 + const EVENT_997 + const EVENT_998 + const EVENT_999 + const EVENT_99A + const EVENT_99B + const EVENT_99C + const EVENT_99D + const EVENT_99E + const EVENT_99F + const EVENT_9A0 + const EVENT_9A1 + const EVENT_9A2 + const EVENT_9A3 + const EVENT_9A4 + const EVENT_9A5 + const EVENT_9A6 + const EVENT_9A7 + const EVENT_9A8 + const EVENT_9A9 + const EVENT_9AA + const EVENT_9AB + const EVENT_9AC + const EVENT_9AD + const EVENT_9AE + const EVENT_9AF + const EVENT_9B0 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_1 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6 + const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7 + const EVENT_9B9 + const EVENT_9BA + const EVENT_9BB + const EVENT_9BC + const EVENT_9BD + const EVENT_9BE + const EVENT_9BF + const EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE + const EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE + const EVENT_9C2 + const EVENT_9C3 + const EVENT_9C4 + const EVENT_9C5 + const EVENT_9C6 + const EVENT_9C7 + const EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE + const EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE + const EVENT_9CA + const EVENT_9CB + const EVENT_9CC + const EVENT_9CD + const EVENT_9CE + const EVENT_9CF + const EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE + const EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE + const EVENT_9D2 + const EVENT_9D3 + const EVENT_9D4 + const EVENT_9D5 + const EVENT_9D6 + const EVENT_9D7 + const EVENT_9D8 + const EVENT_9D9 + const EVENT_BEAT_ARTICUNO + const EVENT_9DB + const EVENT_9DC + const EVENT_9DD + const EVENT_9DE + const EVENT_9DF + const EVENT_9E0 + const EVENT_9E1 + const EVENT_9E2 + const EVENT_9E3 + const EVENT_9E4 + const EVENT_9E5 + const EVENT_9E6 + const EVENT_9E7 + const EVENT_9E8 + const EVENT_9E9 + const EVENT_9EA + const EVENT_9EB + const EVENT_9EC + const EVENT_9ED + const EVENT_9EE + const EVENT_9EF + const EVENT_9F0 + const EVENT_9F1 + const EVENT_9F2 + const EVENT_9F3 + const EVENT_9F4 + const EVENT_9F5 + const EVENT_9F6 + const EVENT_9F7 + const EVENT_9F8 + const EVENT_9F9 + const EVENT_9FA + const EVENT_9FB + const EVENT_9FC + const EVENT_9FD + const EVENT_9FE + const EVENT_9FF diff --git a/constants/evolution_constants.asm b/constants/evolution_constants.asm deleted file mode 100755 index 01c4c078..00000000 --- a/constants/evolution_constants.asm +++ /dev/null @@ -1,9 +0,0 @@ -; See data/pokemon/evos_moves.asm - -; Evolution types -EV_LEVEL EQU 1 -EV_ITEM EQU 2 -EV_TRADE EQU 3 - -MAX_EVOLUTIONS EQU 3 -EVOLUTION_SIZE EQU 4 diff --git a/constants/gfx_constants.asm b/constants/gfx_constants.asm new file mode 100644 index 00000000..04671ecb --- /dev/null +++ b/constants/gfx_constants.asm @@ -0,0 +1,17 @@ +SCREEN_WIDTH EQU 20 +SCREEN_HEIGHT EQU 18 + +SCREEN_WIDTH_PIXELS EQU SCREEN_WIDTH * 8 +SCREEN_HEIGHT_PIXELS EQU SCREEN_HEIGHT * 8 + +BYTES_PER_TILE EQU 16 + +BG_MAP_WIDTH EQU 32 +BG_MAP_HEIGHT EQU 32 + +SPRITEBUFFERSIZE EQU 7*7 * 8 ; 7 * 7 (tiles) * 8 (bytes per tile) + +; HP bar +HP_BAR_GREEN EQU 0 +HP_BAR_YELLOW EQU 1 +HP_BAR_RED EQU 2 diff --git a/constants/hide_show_constants.asm b/constants/hide_show_constants.asm index 805d16ec..1aeb9149 100755 --- a/constants/hide_show_constants.asm +++ b/constants/hide_show_constants.asm @@ -4,8 +4,7 @@ ; (they are either items or sprites that deactivate after battle ; and are detected in wMissableObjectList) -const_value = 0 - + const_def const HS_PALLET_TOWN_OAK ; 00 const HS_LYING_OLD_MAN ; 01 const HS_OLD_MAN ; 02 diff --git a/constants/icon_constants.asm b/constants/icon_constants.asm new file mode 100644 index 00000000..b96c516d --- /dev/null +++ b/constants/icon_constants.asm @@ -0,0 +1,12 @@ +; party menu icons + const_def + const ICON_MON ; $0 + const ICON_BALL ; $1 + const ICON_HELIX ; $2 + const ICON_FAIRY ; $3 + const ICON_BIRD ; $4 + const ICON_WATER ; $5 + const ICON_BUG ; $6 + const ICON_GRASS ; $7 + const ICON_SNAKE ; $8 + const ICON_QUADRUPED ; $9 diff --git a/constants/input_constants.asm b/constants/input_constants.asm new file mode 100644 index 00000000..d7aae05b --- /dev/null +++ b/constants/input_constants.asm @@ -0,0 +1,18 @@ +A_BUTTON EQU %00000001 +B_BUTTON EQU %00000010 +SELECT EQU %00000100 +START EQU %00001000 +D_RIGHT EQU %00010000 +D_LEFT EQU %00100000 +D_UP EQU %01000000 +D_DOWN EQU %10000000 + + const_def + const BIT_A_BUTTON + const BIT_B_BUTTON + const BIT_SELECT + const BIT_START + const BIT_D_RIGHT + const BIT_D_LEFT + const BIT_D_UP + const BIT_D_DOWN diff --git a/constants/item_constants.asm b/constants/item_constants.asm index fe6fcb15..a0c32d14 100755 --- a/constants/item_constants.asm +++ b/constants/item_constants.asm @@ -1,5 +1,5 @@ -const_value = 1 - + const_def + const NO_ITEM ; $00 const MASTER_BALL ; $01 const ULTRA_BALL ; $02 const GREAT_BALL ; $03 diff --git a/constants/list_constants.asm b/constants/list_constants.asm index 7e26a6b6..380df21c 100755 --- a/constants/list_constants.asm +++ b/constants/list_constants.asm @@ -1,20 +1,23 @@ -; list menu ID's -PCPOKEMONLISTMENU EQU $00 ; PC pokemon withdraw/deposit lists -MOVESLISTMENU EQU $01 ; XXX where is this used? -PRICEDITEMLISTMENU EQU $02 ; Pokemart buy menu / Pokemart buy/sell choose quantity menu -ITEMLISTMENU EQU $03 ; Start menu Item menu / Pokemart sell menu -SPECIALLISTMENU EQU $04 ; list of special "items" e.g. floor list in elevators / list of badges +; list menu IDs + const_def + const PCPOKEMONLISTMENU ; $00 ; PC pokemon withdraw/deposit lists + const MOVESLISTMENU ; $01 ; XXX where is this used? + const PRICEDITEMLISTMENU ; $02 ; Pokemart buy menu / Pokemart buy/sell choose quantity menu + const ITEMLISTMENU ; $03 ; Start menu Item menu / Pokemart sell menu + const SPECIALLISTMENU ; $04 ; list of special "items" e.g. floor list in elevators / list of badges -MONSTER_NAME EQU 1 -MOVE_NAME EQU 2 -; ???_NAME EQU 3 -ITEM_NAME EQU 4 -PLAYEROT_NAME EQU 5 -ENEMYOT_NAME EQU 6 -TRAINER_NAME EQU 7 + const_def 1 + const MONSTER_NAME ; 1 + const MOVE_NAME ; 2 + const UNUSED_NAME ; 3 + const ITEM_NAME ; 4 + const PLAYEROT_NAME ; 5 + const ENEMYOT_NAME ; 6 + const TRAINER_NAME ; 7 -INIT_ENEMYOT_LIST EQU 1 -INIT_BAG_ITEM_LIST EQU 2 -INIT_OTHER_ITEM_LIST EQU 3 -INIT_PLAYEROT_LIST EQU 4 -INIT_MON_LIST EQU 5 + const_def 1 + const INIT_ENEMYOT_LIST ; 1 + const INIT_BAG_ITEM_LIST ; 2 + const INIT_OTHER_ITEM_LIST ; 3 + const INIT_PLAYEROT_LIST ; 4 + const INIT_MON_LIST ; 5 diff --git a/constants/map_data_constants.asm b/constants/map_data_constants.asm new file mode 100755 index 00000000..154c4163 --- /dev/null +++ b/constants/map_data_constants.asm @@ -0,0 +1,9 @@ +; width of east/west connections +; height of north/south connections +MAP_BORDER EQU 3 + +; connection directions +EAST EQU 1 +WEST EQU 2 +SOUTH EQU 4 +NORTH EQU 8 diff --git a/constants/menu_constants.asm b/constants/menu_constants.asm new file mode 100644 index 00000000..75cbe54c --- /dev/null +++ b/constants/menu_constants.asm @@ -0,0 +1,70 @@ +BAG_ITEM_CAPACITY EQU 20 +PC_ITEM_CAPACITY EQU 50 + +; text box IDs +MESSAGE_BOX EQU $01 +FIELD_MOVE_MON_MENU EQU $04 +JP_MOCHIMONO_MENU_TEMPLATE EQU $05 +USE_TOSS_MENU_TEMPLATE EQU $06 +JP_SAVE_MESSAGE_MENU_TEMPLATE EQU $08 +JP_SPEED_OPTIONS_MENU_TEMPLATE EQU $09 +BATTLE_MENU_TEMPLATE EQU $0b +SWITCH_STATS_CANCEL_MENU_TEMPLATE EQU $0c +LIST_MENU_BOX EQU $0d +BUY_SELL_QUIT_MENU_TEMPLATE EQU $0e +MONEY_BOX_TEMPLATE EQU $0f +MON_SPRITE_POPUP EQU $11 +JP_AH_MENU_TEMPLATE EQU $12 +MONEY_BOX EQU $13 +TWO_OPTION_MENU EQU $14 +BUY_SELL_QUIT_MENU EQU $15 +JP_POKEDEX_MENU_TEMPLATE EQU $1a +SAFARI_BATTLE_MENU_TEMPLATE EQU $1b + +; two option menu constants +YES_NO_MENU EQU 0 +NORTH_WEST_MENU EQU 1 +SOUTH_EAST_MENU EQU 2 +WIDE_YES_NO_MENU EQU 3 +NORTH_EAST_MENU EQU 4 +TRADE_CANCEL_MENU EQU 5 +HEAL_CANCEL_MENU EQU 6 +NO_YES_MENU EQU 7 + +; menu exit method constants for list menus and the buy/sell/quit menu +CHOSE_MENU_ITEM EQU 1 ; pressed A +CANCELLED_MENU EQU 2 ; pressed B + +; menu exit method constants for two-option menus +CHOSE_FIRST_ITEM EQU 1 +CHOSE_SECOND_ITEM EQU 2 + +; move mon constants +BOX_TO_PARTY EQU 0 +PARTY_TO_BOX EQU 1 +DAYCARE_TO_PARTY EQU 2 +PARTY_TO_DAYCARE EQU 3 + +; party menu types +NORMAL_PARTY_MENU EQU 0 +USE_ITEM_PARTY_MENU EQU 1 +BATTLE_PARTY_MENU EQU 2 +TMHM_PARTY_MENU EQU 3 +SWAP_MONS_PARTY_MENU EQU 4 +EVO_STONE_PARTY_MENU EQU 5 + +; party menu message IDs +ANTIDOTE_MSG EQU $F0 +BURN_HEAL_MSG EQU $F1 +ICE_HEAL_MSG EQU $F2 +AWAKENING_MSG EQU $F3 +PARALYZ_HEAL_MSG EQU $F4 +POTION_MSG EQU $F5 +FULL_HEAL_MSG EQU $F6 +REVIVE_MSG EQU $F7 +RARE_CANDY_MSG EQU $F8 + +; naming screen types +NAME_PLAYER_SCREEN EQU 0 +NAME_RIVAL_SCREEN EQU 1 +NAME_MON_SCREEN EQU 2 diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index d6a935f8..6e4c5f93 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -1,208 +1,8 @@ -MAX_LEVEL EQU 100 - -NUM_MOVES EQU 4 -NUM_STATS EQU 5 -NUM_STAT_MODS EQU 8 -NUM_DVS EQU 2 - -PARTY_LENGTH EQU 6 - -MONS_PER_BOX EQU 20 -NUM_BOXES EQU 12 - -BAG_ITEM_CAPACITY EQU 20 -PC_ITEM_CAPACITY EQU 50 - -HOF_MON EQU $10 -HOF_TEAM EQU PARTY_LENGTH * HOF_MON -HOF_TEAM_CAPACITY EQU 50 - -NAME_LENGTH EQU 11 -ITEM_NAME_LENGTH EQU 13 - -A_BUTTON EQU %00000001 -B_BUTTON EQU %00000010 -SELECT EQU %00000100 -START EQU %00001000 -D_RIGHT EQU %00010000 -D_LEFT EQU %00100000 -D_UP EQU %01000000 -D_DOWN EQU %10000000 - -const_value set 0 - const BIT_A_BUTTON - const BIT_B_BUTTON - const BIT_SELECT - const BIT_START - const BIT_D_RIGHT - const BIT_D_LEFT - const BIT_D_UP - const BIT_D_DOWN - -SCREEN_WIDTH EQU 20 -SCREEN_HEIGHT EQU 18 - -SCREEN_WIDTH_PIXELS EQU SCREEN_WIDTH * 8 -SCREEN_HEIGHT_PIXELS EQU SCREEN_HEIGHT * 8 - -BYTES_PER_TILE EQU 16 - -BG_MAP_WIDTH EQU 32 -BG_MAP_HEIGHT EQU 32 - -SPRITEBUFFERSIZE EQU 7*7 * 8 ; 7 * 7 (tiles) * 8 (bytes per tile) - -NPC_MOVEMENT_DOWN EQU $00 -NPC_MOVEMENT_UP EQU $40 -NPC_MOVEMENT_LEFT EQU $80 -NPC_MOVEMENT_RIGHT EQU $C0 - -; text box IDs -MESSAGE_BOX EQU $01 -FIELD_MOVE_MON_MENU EQU $04 -JP_MOCHIMONO_MENU_TEMPLATE EQU $05 -USE_TOSS_MENU_TEMPLATE EQU $06 -JP_SAVE_MESSAGE_MENU_TEMPLATE EQU $08 -JP_SPEED_OPTIONS_MENU_TEMPLATE EQU $09 -BATTLE_MENU_TEMPLATE EQU $0b -SWITCH_STATS_CANCEL_MENU_TEMPLATE EQU $0c -LIST_MENU_BOX EQU $0d -BUY_SELL_QUIT_MENU_TEMPLATE EQU $0e -MONEY_BOX_TEMPLATE EQU $0f -MON_SPRITE_POPUP EQU $11 -JP_AH_MENU_TEMPLATE EQU $12 -MONEY_BOX EQU $13 -TWO_OPTION_MENU EQU $14 -BUY_SELL_QUIT_MENU EQU $15 -JP_POKEDEX_MENU_TEMPLATE EQU $1a -SAFARI_BATTLE_MENU_TEMPLATE EQU $1b - -; two option menu constants -YES_NO_MENU EQU 0 -NORTH_WEST_MENU EQU 1 -SOUTH_EAST_MENU EQU 2 -WIDE_YES_NO_MENU EQU 3 -NORTH_EAST_MENU EQU 4 -TRADE_CANCEL_MENU EQU 5 -HEAL_CANCEL_MENU EQU 6 -NO_YES_MENU EQU 7 - -; menu exit method constants for list menus and the buy/sell/quit menu -CHOSE_MENU_ITEM EQU 1 ; pressed A -CANCELLED_MENU EQU 2 ; pressed B - -; menu exit method constants for two-option menus -CHOSE_FIRST_ITEM EQU 1 -CHOSE_SECOND_ITEM EQU 2 - -; move mon constants -BOX_TO_PARTY EQU 0 -PARTY_TO_BOX EQU 1 -DAYCARE_TO_PARTY EQU 2 -PARTY_TO_DAYCARE EQU 3 - -; emotion bubbles -EXCLAMATION_BUBBLE EQU 0 -QUESTION_BUBBLE EQU 1 -SMILE_BUBBLE EQU 2 - -; slot symbols -SLOTS7 EQU $0200 -SLOTSBAR EQU $0604 -SLOTSCHERRY EQU $0A08 -SLOTSFISH EQU $0E0C -SLOTSBIRD EQU $1210 -SLOTSMOUSE EQU $1614 - -; party menu types -NORMAL_PARTY_MENU EQU 0 -USE_ITEM_PARTY_MENU EQU 1 -BATTLE_PARTY_MENU EQU 2 -TMHM_PARTY_MENU EQU 3 -SWAP_MONS_PARTY_MENU EQU 4 -EVO_STONE_PARTY_MENU EQU 5 - -; party menu message IDs -ANTIDOTE_MSG EQU $F0 -BURN_HEAL_MSG EQU $F1 -ICE_HEAL_MSG EQU $F2 -AWAKENING_MSG EQU $F3 -PARALYZ_HEAL_MSG EQU $F4 -POTION_MSG EQU $F5 -FULL_HEAL_MSG EQU $F6 -REVIVE_MSG EQU $F7 -RARE_CANDY_MSG EQU $F8 - -; naming screen types -NAME_PLAYER_SCREEN EQU 0 -NAME_RIVAL_SCREEN EQU 1 -NAME_MON_SCREEN EQU 2 - -; mon data locations -; Note that some values are not supported by all functions that use these values. -PLAYER_PARTY_DATA EQU 0 -ENEMY_PARTY_DATA EQU 1 -BOX_DATA EQU 2 -DAYCARE_DATA EQU 3 -BATTLE_MON_DATA EQU 4 - -; player direction constants - -PLAYER_DIR_BIT_RIGHT EQU 0 -PLAYER_DIR_BIT_LEFT EQU 1 -PLAYER_DIR_BIT_DOWN EQU 2 -PLAYER_DIR_BIT_UP EQU 3 - -PLAYER_DIR_RIGHT EQU (1 << PLAYER_DIR_BIT_RIGHT) -PLAYER_DIR_LEFT EQU (1 << PLAYER_DIR_BIT_LEFT) -PLAYER_DIR_DOWN EQU (1 << PLAYER_DIR_BIT_DOWN) -PLAYER_DIR_UP EQU (1 << PLAYER_DIR_BIT_UP) +; Boolean checks +FALSE EQU 0 +TRUE EQU 1 ; flag operations - FLAG_RESET EQU 0 FLAG_SET EQU 1 FLAG_TEST EQU 2 - -; HP bar -HP_BAR_GREEN EQU 0 -HP_BAR_YELLOW EQU 1 -HP_BAR_RED EQU 2 - -; D733 flags -BIT_TEST_BATTLE EQU 0 - -; battle type constants -BATTLE_TYPE_NORMAL EQU 0 -BATTLE_TYPE_OLD_MAN EQU 1 -BATTLE_TYPE_SAFARI EQU 2 - -; serial - -ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 -ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02 - -USING_EXTERNAL_CLOCK EQU $01 -USING_INTERNAL_CLOCK EQU $02 -CONNECTION_NOT_ESTABLISHED EQU $ff - -; signals the start of an array of bytes transferred over the link cable -SERIAL_PREAMBLE_BYTE EQU $FD - -; this byte is used when there is no data to send -SERIAL_NO_DATA_BYTE EQU $FE - -; signals the end of one part of a patch list (there are two parts) for player/enemy party data -SERIAL_PATCH_LIST_PART_TERMINATOR EQU $FF - -LINK_STATE_NONE EQU $00 ; not using link -LINK_STATE_IN_CABLE_CLUB EQU $01 ; in a cable club room (Colosseum or Trade Centre) -LINK_STATE_START_TRADE EQU $02 ; pre-trade selection screen initialisation -LINK_STATE_START_BATTLE EQU $03 ; pre-battle initialisation -LINK_STATE_BATTLING EQU $04 ; in a link battle -LINK_STATE_RESET EQU $05 ; reset game (unused) -LINK_STATE_TRADING EQU $32 ; in a link trade - -LINKBATTLE_RUN EQU $F -LINKBATTLE_STRUGGLE EQU $E -LINKBATTLE_NO_ACTION EQU $D diff --git a/constants/move_animation_constants.asm b/constants/move_animation_constants.asm index 27658c83..d2025f4e 100644 --- a/constants/move_animation_constants.asm +++ b/constants/move_animation_constants.asm @@ -1,8 +1,6 @@ -; subanimations +; special effects that are part of move animations -const_value = $D8 - -; special effects, prefaced with "SE" for "Special Effect" + const_def $D8 const SE_WAVY_SCREEN ; $D8 used in Psywave/Night Shade/Psychic etc. const SE_SUBSTITUTE_MON ; $D9 used in Substitute (turns the pokemon into a mini sprite) const SE_SHAKE_BACK_AND_FORTH ; $DA used in Double Team diff --git a/constants/move_constants.asm b/constants/move_constants.asm index dfbb500e..850662de 100644 --- a/constants/move_constants.asm +++ b/constants/move_constants.asm @@ -1,5 +1,5 @@ -const_value = 1 - + const_def + const NO_MOVE ; 00 const POUND ; 01 const KARATE_CHOP ; 02 const DOUBLESLAP ; 03 @@ -167,7 +167,7 @@ const_value = 1 NUM_ATTACKS EQU const_value + -1 - const STRUGGLE + const STRUGGLE ; a5 ; Moves do double duty as animation identifiers. diff --git a/constants/move_effect_constants.asm b/constants/move_effect_constants.asm index b66772d1..36a60a41 100644 --- a/constants/move_effect_constants.asm +++ b/constants/move_effect_constants.asm @@ -2,8 +2,8 @@ ; {stat}_(UP|DOWN)(1|2) means that the move raises the user's (or lowers the target's) corresponding stat modifier by 1 (or 2) stages ; {status condition}_side_effect means that the move has a side chance of causing that condition ; {status condition}_effect means that the move causes the status condition every time it hits the target -const_value = 0 + const_def const NO_ADDITIONAL_EFFECT ; $00 const UNUSED_EFFECT_01 ; $01 const POISON_SIDE_EFFECT1 ; $02 @@ -91,7 +91,3 @@ const_value = 0 const LEECH_SEED_EFFECT ; $54 const SPLASH_EFFECT ; $55 const DISABLE_EFFECT ; $56 - -; fixed damage constants -SONICBOOM_DAMAGE EQU 20 -DRAGON_RAGE_DAMAGE EQU 40 diff --git a/constants/music_constants.asm b/constants/music_constants.asm index de91352e..9459c0a4 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -1,50 +1,3 @@ -; HW sound channel register base addresses -HW_CH1_BASE EQU (rNR10 % $100) -HW_CH2_BASE EQU ((rNR21 % $100) - 1) -HW_CH3_BASE EQU (rNR30 % $100) -HW_CH4_BASE EQU ((rNR41 % $100) - 1) - -; HW sound channel enable bit masks -HW_CH1_ENABLE_MASK EQU %00010001 -HW_CH2_ENABLE_MASK EQU %00100010 -HW_CH3_ENABLE_MASK EQU %01000100 -HW_CH4_ENABLE_MASK EQU %10001000 - -; HW sound channel disable bit masks -HW_CH1_DISABLE_MASK EQU (~HW_CH1_ENABLE_MASK & $ff) -HW_CH2_DISABLE_MASK EQU (~HW_CH2_ENABLE_MASK & $ff) -HW_CH3_DISABLE_MASK EQU (~HW_CH3_ENABLE_MASK & $ff) -HW_CH4_DISABLE_MASK EQU (~HW_CH4_ENABLE_MASK & $ff) - -REG_DUTY_SOUND_LEN EQU 1 -REG_VOLUME_ENVELOPE EQU 2 -REG_FREQUENCY_LO EQU 3 - -MAX_SFX_ID_1 EQUS "SFX_SAFARI_ZONE_PA" -MAX_SFX_ID_2 EQUS "SFX_SILPH_SCOPE" -MAX_SFX_ID_3 EQUS "SFX_SHOOTING_STAR" - -NOISE_INSTRUMENTS_START EQUS "SFX_NOISE_INSTRUMENT01" -NOISE_INSTRUMENTS_END EQUS "SFX_NOISE_INSTRUMENT19 + 1" - -CRY_SFX_START EQUS "SFX_CRY_00" -CRY_SFX_END EQUS "SFX_CRY_25 + 3" - -BATTLE_SFX_START EQUS "SFX_PECK" -BATTLE_SFX_END EQUS "SFX_SILPH_SCOPE + 1" - -; wChannelFlags1 constants -BIT_PERFECT_PITCH EQU 0 ; controlled by toggle_perfect_pitch command -BIT_SOUND_CALL EQU 1 ; if in sound call -BIT_NOISE_OR_SFX EQU 2 ; if channel is the music noise channel or an SFX channel -BIT_VIBRATO_DIRECTION EQU 3 ; if the pitch is above or below normal (cycles) -BIT_PITCH_SLIDE_ON EQU 4 ; if pitch slide is active -BIT_PITCH_SLIDE_DECREASING EQU 5 ; if the pitch slide frequency is decreasing (instead of increasing) -BIT_ROTATE_DUTY_CYCLE EQU 6 ; if rotating duty cycle - -; wChannelFlags2 constant (only has one flag) -BIT_EXECUTE_MUSIC EQU 0 ; if in execute music - ; Song ids are calculated by address to save space. music_const: MACRO diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm index 1413ad98..da63651a 100755 --- a/constants/palette_constants.asm +++ b/constants/palette_constants.asm @@ -5,25 +5,27 @@ const DARK_GRAY const BLACK -SET_PAL_BATTLE_BLACK EQU $00 -SET_PAL_BATTLE EQU $01 -SET_PAL_TOWN_MAP EQU $02 -SET_PAL_STATUS_SCREEN EQU $03 -SET_PAL_POKEDEX EQU $04 -SET_PAL_SLOTS EQU $05 -SET_PAL_TITLE_SCREEN EQU $06 -SET_PAL_NIDORINO_INTRO EQU $07 -SET_PAL_GENERIC EQU $08 -SET_PAL_OVERWORLD EQU $09 -SET_PAL_PARTY_MENU EQU $0A -SET_PAL_POKEMON_WHOLE_SCREEN EQU $0B -SET_PAL_GAME_FREAK_INTRO EQU $0C -SET_PAL_TRAINER_CARD EQU $0D -UPDATE_PARTY_MENU_BLK_PACKET EQU $FC - -; super game boy palettes -const_value = 0 +; pal/blk packets + const_def + const SET_PAL_BATTLE_BLACK ; $00 + const SET_PAL_BATTLE ; $01 + const SET_PAL_TOWN_MAP ; $02 + const SET_PAL_STATUS_SCREEN ; $03 + const SET_PAL_POKEDEX ; $04 + const SET_PAL_SLOTS ; $05 + const SET_PAL_TITLE_SCREEN ; $06 + const SET_PAL_NIDORINO_INTRO ; $07 + const SET_PAL_GENERIC ; $08 + const SET_PAL_OVERWORLD ; $09 + const SET_PAL_PARTY_MENU ; $0A + const SET_PAL_POKEMON_WHOLE_SCREEN ; $0B + const SET_PAL_GAME_FREAK_INTRO ; $0C + const SET_PAL_TRAINER_CARD ; $0D +const_value = -4 + const UPDATE_PARTY_MENU_BLK_PACKET ; $FC +; sgb palettes + const_def const PAL_ROUTE ; $00 const PAL_PALLET ; $01 const PAL_VIRIDIAN ; $02 diff --git a/constants/pokedex_constants.asm b/constants/pokedex_constants.asm index b80547f7..c8605852 100644 --- a/constants/pokedex_constants.asm +++ b/constants/pokedex_constants.asm @@ -1,5 +1,4 @@ -const_value = 1 - + const_def 1 const DEX_BULBASAUR ; 1 const DEX_IVYSAUR ; 2 const DEX_VENUSAUR ; 3 diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm index f8a38731..5484a65d 100644 --- a/constants/pokemon_constants.asm +++ b/constants/pokemon_constants.asm @@ -1,5 +1,5 @@ -const_value = 1 - + const_def + const NO_MON ; $00 const RHYDON ; $01 const KANGASKHAN ; $02 const NIDORAN_M ; $03 diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm new file mode 100755 index 00000000..c5245026 --- /dev/null +++ b/constants/pokemon_data_constants.asm @@ -0,0 +1,28 @@ +PARTY_LENGTH EQU 6 + +MONS_PER_BOX EQU 20 +NUM_BOXES EQU 12 + +HOF_MON EQU $10 +HOF_TEAM EQU PARTY_LENGTH * HOF_MON +HOF_TEAM_CAPACITY EQU 50 + + +; mon data locations +; Note that some values are not supported by all functions that use these values. +PLAYER_PARTY_DATA EQU 0 +ENEMY_PARTY_DATA EQU 1 +BOX_DATA EQU 2 +DAYCARE_DATA EQU 3 +BATTLE_MON_DATA EQU 4 + + +; See data/pokemon/evos_moves.asm + +; Evolution types +EV_LEVEL EQU 1 +EV_ITEM EQU 2 +EV_TRADE EQU 3 + +MAX_EVOLUTIONS EQU 3 +EVOLUTION_SIZE EQU 4 diff --git a/constants/script_constants.asm b/constants/script_constants.asm new file mode 100644 index 00000000..c04e9ca0 --- /dev/null +++ b/constants/script_constants.asm @@ -0,0 +1,12 @@ +; emotion bubbles +EXCLAMATION_BUBBLE EQU 0 +QUESTION_BUBBLE EQU 1 +SMILE_BUBBLE EQU 2 + +; slot symbols +SLOTS7 EQU $0200 +SLOTSBAR EQU $0604 +SLOTSCHERRY EQU $0A08 +SLOTSFISH EQU $0E0C +SLOTSBIRD EQU $1210 +SLOTSMOUSE EQU $1614 diff --git a/constants/serial_constants.asm b/constants/serial_constants.asm new file mode 100644 index 00000000..a6aae315 --- /dev/null +++ b/constants/serial_constants.asm @@ -0,0 +1,27 @@ +ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 +ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02 + +USING_EXTERNAL_CLOCK EQU $01 +USING_INTERNAL_CLOCK EQU $02 +CONNECTION_NOT_ESTABLISHED EQU $ff + +; signals the start of an array of bytes transferred over the link cable +SERIAL_PREAMBLE_BYTE EQU $FD + +; this byte is used when there is no data to send +SERIAL_NO_DATA_BYTE EQU $FE + +; signals the end of one part of a patch list (there are two parts) for player/enemy party data +SERIAL_PATCH_LIST_PART_TERMINATOR EQU $FF + +LINK_STATE_NONE EQU $00 ; not using link +LINK_STATE_IN_CABLE_CLUB EQU $01 ; in a cable club room (Colosseum or Trade Centre) +LINK_STATE_START_TRADE EQU $02 ; pre-trade selection screen initialisation +LINK_STATE_START_BATTLE EQU $03 ; pre-battle initialisation +LINK_STATE_BATTLING EQU $04 ; in a link battle +LINK_STATE_RESET EQU $05 ; reset game (unused) +LINK_STATE_TRADING EQU $32 ; in a link trade + +LINKBATTLE_RUN EQU $F +LINKBATTLE_STRUGGLE EQU $E +LINKBATTLE_NO_ACTION EQU $D diff --git a/constants/sprite_constants.asm b/constants/sprite_constants.asm index 54d2f191..939ab2df 100755 --- a/constants/sprite_constants.asm +++ b/constants/sprite_constants.asm @@ -1,20 +1,6 @@ -; pokemon's overworld sprites -const_value = 0 - - const ICON_MON ; $0 - const ICON_BALL ; $1 - const ICON_HELIX ; $2 - const ICON_FAIRY ; $3 - const ICON_BIRD ; $4 - const ICON_WATER ; $5 - const ICON_BUG ; $6 - const ICON_GRASS ; $7 - const ICON_SNAKE ; $8 - const ICON_QUADRUPED ; $9 - ; overworld sprites -const_value = 1 - + const_def + const SPRITE_NONE ; $00 const SPRITE_RED ; $01 const SPRITE_BLUE ; $02 const SPRITE_OAK ; $03 @@ -87,15 +73,3 @@ const_value = 1 const SPRITE_LYING_OLD_MAN_UNUSED_1 ; $46 const SPRITE_LYING_OLD_MAN_UNUSED_2 ; $47 const SPRITE_LYING_OLD_MAN ; $48 - -; different kinds of people events -ITEM EQU $80 -TRAINER EQU $40 - -BOULDER_MOVEMENT_BYTE_2 EQU $10 - -; sprite facing directions -SPRITE_FACING_DOWN EQU $00 -SPRITE_FACING_UP EQU $04 -SPRITE_FACING_LEFT EQU $08 -SPRITE_FACING_RIGHT EQU $0C diff --git a/constants/sprite_data_constants.asm b/constants/sprite_data_constants.asm new file mode 100644 index 00000000..d5788cb1 --- /dev/null +++ b/constants/sprite_data_constants.asm @@ -0,0 +1,28 @@ +; different kinds of people events +ITEM EQU $80 +TRAINER EQU $40 + +BOULDER_MOVEMENT_BYTE_2 EQU $10 + +; sprite facing directions +SPRITE_FACING_DOWN EQU $00 +SPRITE_FACING_UP EQU $04 +SPRITE_FACING_LEFT EQU $08 +SPRITE_FACING_RIGHT EQU $0C + +NPC_MOVEMENT_DOWN EQU $00 +NPC_MOVEMENT_UP EQU $40 +NPC_MOVEMENT_LEFT EQU $80 +NPC_MOVEMENT_RIGHT EQU $C0 + +; player direction constants + +PLAYER_DIR_BIT_RIGHT EQU 0 +PLAYER_DIR_BIT_LEFT EQU 1 +PLAYER_DIR_BIT_DOWN EQU 2 +PLAYER_DIR_BIT_UP EQU 3 + +PLAYER_DIR_RIGHT EQU (1 << PLAYER_DIR_BIT_RIGHT) +PLAYER_DIR_LEFT EQU (1 << PLAYER_DIR_BIT_LEFT) +PLAYER_DIR_DOWN EQU (1 << PLAYER_DIR_BIT_DOWN) +PLAYER_DIR_UP EQU (1 << PLAYER_DIR_BIT_UP) diff --git a/constants/status_constants.asm b/constants/status_constants.asm deleted file mode 100755 index 25babb82..00000000 --- a/constants/status_constants.asm +++ /dev/null @@ -1,32 +0,0 @@ -; non-volatile statuses -SLP EQU %111 ; sleep counter -PSN EQU 3 -BRN EQU 4 -FRZ EQU 5 -PAR EQU 6 - -; volatile statuses 1 -STORING_ENERGY EQU 0 ; Bide -THRASHING_ABOUT EQU 1 ; e.g. Thrash -ATTACKING_MULTIPLE_TIMES EQU 2 ; e.g. Double Kick, Fury Attack -FLINCHED EQU 3 -CHARGING_UP EQU 4 ; e.g. Solar Beam, Fly -USING_TRAPPING_MOVE EQU 5 ; e.g. Wrap -INVULNERABLE EQU 6 ; charging up Fly/Dig -CONFUSED EQU 7 - -; volatile statuses 2 -USING_X_ACCURACY EQU 0 -PROTECTED_BY_MIST EQU 1 -GETTING_PUMPED EQU 2 ; Focus Energy -; EQU 3 ; unused -HAS_SUBSTITUTE_UP EQU 4 -NEEDS_TO_RECHARGE EQU 5 ; Hyper Beam -USING_RAGE EQU 6 -SEEDED EQU 7 - -; volatile statuses 3 -BADLY_POISONED EQU 0 -HAS_LIGHT_SCREEN_UP EQU 1 -HAS_REFLECT_UP EQU 2 -TRANSFORMED EQU 3 diff --git a/constants/text_constants.asm b/constants/text_constants.asm index 3cddce26..a3ef2012 100644 --- a/constants/text_constants.asm +++ b/constants/text_constants.asm @@ -1,3 +1,6 @@ +NAME_LENGTH EQU 11 +ITEM_NAME_LENGTH EQU 13 + ; special text IDs TEXT_MON_FAINTED EQU $d0 TEXT_BLACKED_OUT EQU $d1 diff --git a/constants/tilesets.asm b/constants/tilesets.asm index f10e4d92..33d59fcb 100644 --- a/constants/tilesets.asm +++ b/constants/tilesets.asm @@ -1,5 +1,4 @@ -const_value = 0 - + const_def const OVERWORLD ; 0 const REDS_HOUSE_1 ; 1 const MART ; 2 diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm index d936aa06..6e4c2f18 100755 --- a/constants/trainer_constants.asm +++ b/constants/trainer_constants.asm @@ -6,8 +6,8 @@ OPP_\1 EQU const_value + OPP_ID_OFFSET const_value = const_value + 1 ENDM -const_value = 1 - + const_def + trainer_const NOBODY ; $00 trainer_const YOUNGSTER ; $01 trainer_const BUG_CATCHER ; $02 trainer_const LASS ; $03 diff --git a/constants/type_constants.asm b/constants/type_constants.asm index b36dc179..c94d5c39 100755 --- a/constants/type_constants.asm +++ b/constants/type_constants.asm @@ -1,16 +1,23 @@ -; Elemental types -NORMAL EQU $00 -FIGHTING EQU $01 -FLYING EQU $02 -POISON EQU $03 -GROUND EQU $04 -ROCK EQU $05 -BUG EQU $07 -GHOST EQU $08 -FIRE EQU $14 -WATER EQU $15 -GRASS EQU $16 -ELECTRIC EQU $17 -PSYCHIC EQU $18 -ICE EQU $19 -DRAGON EQU $1A + const_def + +PHYSICAL EQU const_value + const NORMAL ; $00 + const FIGHTING ; $01 + const FLYING ; $02 + const POISON ; $03 + const GROUND ; $04 + const ROCK ; $05 + const BIRD ; $06 + const BUG ; $07 + const GHOST ; $08 + +const_value = $14 + +SPECIAL EQU const_value + const FIRE ; $14 + const WATER ; $15 + const GRASS ; $16 + const ELECTRIC ; $17 + const PSYCHIC ; $18 + const ICE ; $19 + const DRAGON ; $1A diff --git a/data/pokemon/evos_moves.asm b/data/pokemon/evos_moves.asm index 26f09b87..51f6b244 100755 --- a/data/pokemon/evos_moves.asm +++ b/data/pokemon/evos_moves.asm @@ -1,4 +1,4 @@ -; See constants/evolution_constants.asm +; See constants/pokemon_data_constants.asm ; The max number of evolutions per monster is MAX_EVOLUTIONS EvosMovesPointerTable: diff --git a/engine/battle/core.asm b/engine/battle/core.asm index fec10215..86c3f5e5 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -4139,7 +4139,7 @@ GetDamageVarsForPlayerAttack: ld d, a ; d = move power ret z ; return if move power is zero ld a, [hl] ; a = [wPlayerMoveType] - cp FIRE ; types >= FIRE are all special + cp SPECIAL ; types >= SPECIAL are all special jr nc, .specialAttack .physicalAttack ld hl, wEnemyMonDefense @@ -4252,7 +4252,7 @@ GetDamageVarsForEnemyAttack: and a ret z ; return if move power is zero ld a, [hl] ; a = [wEnemyMoveType] - cp FIRE ; types >= FIRE are all special + cp SPECIAL ; types >= SPECIAL are all special jr nc, .specialAttack .physicalAttack ld hl, wBattleMonDefense diff --git a/macros/data_macros.asm b/macros/data_macros.asm index ee5cb8f0..371247d3 100755 --- a/macros/data_macros.asm +++ b/macros/data_macros.asm @@ -1,7 +1,11 @@ ; Constant enumeration is useful for monsters, items, moves, etc. const_def: MACRO +if _NARG >= 1 +const_value = \1 +else const_value = 0 +endc ENDM const: MACRO diff --git a/text.asm b/text.asm index 49e22ef0..d15f258a 100644 --- a/text.asm +++ b/text.asm @@ -1,9 +1,4 @@ -INCLUDE "macros.asm" -INCLUDE "charmap.asm" - -INCLUDE "hram.asm" - -INCLUDE "constants/text_constants.asm" +INCLUDE "constants.asm" SECTION "Text 1", ROMX -- cgit v1.3.1-sl0p From ccb01731fe8cd44ae4c8840ee8ddc02e6bdea97e Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 15:57:35 -0400 Subject: Make suggested edits: - data/mapWilds -> data/wild/maps - diglett_sculpture.asm -> book_or_sculpture.asm - relocate some audio/music constants --- constants/audio_constants.asm | 13 --- constants/music_constants.asm | 12 ++- data/mapWilds/CeruleanCave1F.asm | 18 ---- data/mapWilds/CeruleanCave2F.asm | 13 --- data/mapWilds/CeruleanCaveB1F.asm | 18 ---- data/mapWilds/DiglettsCave.asm | 13 --- data/mapWilds/MtMoon1F.asm | 13 --- data/mapWilds/MtMoonB1F.asm | 13 --- data/mapWilds/MtMoonB2F.asm | 13 --- data/mapWilds/PokemonMansion1F.asm | 27 ----- data/mapWilds/PokemonMansion2F.asm | 27 ----- data/mapWilds/PokemonMansion3F.asm | 27 ----- data/mapWilds/PokemonMansionB1F.asm | 27 ----- data/mapWilds/PokemonTower1F.asm | 3 - data/mapWilds/PokemonTower2F.asm | 3 - data/mapWilds/PokemonTower3F.asm | 13 --- data/mapWilds/PokemonTower4F.asm | 13 --- data/mapWilds/PokemonTower5F.asm | 13 --- data/mapWilds/PokemonTower6F.asm | 13 --- data/mapWilds/PokemonTower7F.asm | 13 --- data/mapWilds/PowerPlant.asm | 19 ---- data/mapWilds/RockTunnel1F.asm | 13 --- data/mapWilds/RockTunnelB1F.asm | 13 --- data/mapWilds/Route1.asm | 13 --- data/mapWilds/Route10.asm | 27 ----- data/mapWilds/Route11.asm | 27 ----- data/mapWilds/Route12.asm | 27 ----- data/mapWilds/Route13.asm | 28 ----- data/mapWilds/Route14.asm | 27 ----- data/mapWilds/Route15.asm | 27 ----- data/mapWilds/Route16.asm | 13 --- data/mapWilds/Route17.asm | 13 --- data/mapWilds/Route18.asm | 13 --- data/mapWilds/Route2.asm | 24 ----- data/mapWilds/Route21.asm | 23 ---- data/mapWilds/Route22.asm | 27 ----- data/mapWilds/Route23.asm | 23 ---- data/mapWilds/Route24.asm | 27 ----- data/mapWilds/Route25.asm | 27 ----- data/mapWilds/Route3.asm | 13 --- data/mapWilds/Route4.asm | 27 ----- data/mapWilds/Route5.asm | 27 ----- data/mapWilds/Route6.asm | 27 ----- data/mapWilds/Route7.asm | 27 ----- data/mapWilds/Route8.asm | 27 ----- data/mapWilds/Route9.asm | 27 ----- data/mapWilds/SafariZoneCenter.asm | 27 ----- data/mapWilds/SafariZoneEast.asm | 27 ----- data/mapWilds/SafariZoneNorth.asm | 28 ----- data/mapWilds/SafariZoneWest.asm | 27 ----- data/mapWilds/SeaRoutes.asm | 13 --- data/mapWilds/SeafoamIslands1F.asm | 27 ----- data/mapWilds/SeafoamIslandsB1F.asm | 27 ----- data/mapWilds/SeafoamIslandsB2F.asm | 27 ----- data/mapWilds/SeafoamIslandsB3F.asm | 27 ----- data/mapWilds/SeafoamIslandsB4F.asm | 27 ----- data/mapWilds/VictoryRoad1F.asm | 13 --- data/mapWilds/VictoryRoad2F.asm | 13 --- data/mapWilds/VictoryRoad3F.asm | 13 --- data/mapWilds/ViridianForest.asm | 25 ----- data/mapWilds/nothing.asm | 3 - data/wild/grass_water.asm | 118 ++++++++++----------- data/wild/maps/CeruleanCave1F.asm | 18 ++++ data/wild/maps/CeruleanCave2F.asm | 13 +++ data/wild/maps/CeruleanCaveB1F.asm | 18 ++++ data/wild/maps/DiglettsCave.asm | 13 +++ data/wild/maps/MtMoon1F.asm | 13 +++ data/wild/maps/MtMoonB1F.asm | 13 +++ data/wild/maps/MtMoonB2F.asm | 13 +++ data/wild/maps/PokemonMansion1F.asm | 27 +++++ data/wild/maps/PokemonMansion2F.asm | 27 +++++ data/wild/maps/PokemonMansion3F.asm | 27 +++++ data/wild/maps/PokemonMansionB1F.asm | 27 +++++ data/wild/maps/PokemonTower1F.asm | 3 + data/wild/maps/PokemonTower2F.asm | 3 + data/wild/maps/PokemonTower3F.asm | 13 +++ data/wild/maps/PokemonTower4F.asm | 13 +++ data/wild/maps/PokemonTower5F.asm | 13 +++ data/wild/maps/PokemonTower6F.asm | 13 +++ data/wild/maps/PokemonTower7F.asm | 13 +++ data/wild/maps/PowerPlant.asm | 19 ++++ data/wild/maps/RockTunnel1F.asm | 13 +++ data/wild/maps/RockTunnelB1F.asm | 13 +++ data/wild/maps/Route1.asm | 13 +++ data/wild/maps/Route10.asm | 27 +++++ data/wild/maps/Route11.asm | 27 +++++ data/wild/maps/Route12.asm | 27 +++++ data/wild/maps/Route13.asm | 28 +++++ data/wild/maps/Route14.asm | 27 +++++ data/wild/maps/Route15.asm | 27 +++++ data/wild/maps/Route16.asm | 13 +++ data/wild/maps/Route17.asm | 13 +++ data/wild/maps/Route18.asm | 13 +++ data/wild/maps/Route2.asm | 24 +++++ data/wild/maps/Route21.asm | 23 ++++ data/wild/maps/Route22.asm | 27 +++++ data/wild/maps/Route23.asm | 23 ++++ data/wild/maps/Route24.asm | 27 +++++ data/wild/maps/Route25.asm | 27 +++++ data/wild/maps/Route3.asm | 13 +++ data/wild/maps/Route4.asm | 27 +++++ data/wild/maps/Route5.asm | 27 +++++ data/wild/maps/Route6.asm | 27 +++++ data/wild/maps/Route7.asm | 27 +++++ data/wild/maps/Route8.asm | 27 +++++ data/wild/maps/Route9.asm | 27 +++++ data/wild/maps/SafariZoneCenter.asm | 27 +++++ data/wild/maps/SafariZoneEast.asm | 27 +++++ data/wild/maps/SafariZoneNorth.asm | 28 +++++ data/wild/maps/SafariZoneWest.asm | 27 +++++ data/wild/maps/SeaRoutes.asm | 13 +++ data/wild/maps/SeafoamIslands1F.asm | 27 +++++ data/wild/maps/SeafoamIslandsB1F.asm | 27 +++++ data/wild/maps/SeafoamIslandsB2F.asm | 27 +++++ data/wild/maps/SeafoamIslandsB3F.asm | 27 +++++ data/wild/maps/SeafoamIslandsB4F.asm | 27 +++++ data/wild/maps/VictoryRoad1F.asm | 13 +++ data/wild/maps/VictoryRoad2F.asm | 13 +++ data/wild/maps/VictoryRoad3F.asm | 13 +++ data/wild/maps/ViridianForest.asm | 25 +++++ data/wild/maps/nothing.asm | 3 + engine/events/hidden_objects/book_or_sculpture.asm | 21 ++++ engine/events/hidden_objects/diglett_sculpture.asm | 21 ---- main.asm | 2 +- 124 files changed, 1282 insertions(+), 1285 deletions(-) delete mode 100644 data/mapWilds/CeruleanCave1F.asm delete mode 100644 data/mapWilds/CeruleanCave2F.asm delete mode 100644 data/mapWilds/CeruleanCaveB1F.asm delete mode 100755 data/mapWilds/DiglettsCave.asm delete mode 100755 data/mapWilds/MtMoon1F.asm delete mode 100755 data/mapWilds/MtMoonB1F.asm delete mode 100755 data/mapWilds/MtMoonB2F.asm delete mode 100755 data/mapWilds/PokemonMansion1F.asm delete mode 100755 data/mapWilds/PokemonMansion2F.asm delete mode 100755 data/mapWilds/PokemonMansion3F.asm delete mode 100755 data/mapWilds/PokemonMansionB1F.asm delete mode 100755 data/mapWilds/PokemonTower1F.asm delete mode 100755 data/mapWilds/PokemonTower2F.asm delete mode 100755 data/mapWilds/PokemonTower3F.asm delete mode 100755 data/mapWilds/PokemonTower4F.asm delete mode 100755 data/mapWilds/PokemonTower5F.asm delete mode 100755 data/mapWilds/PokemonTower6F.asm delete mode 100755 data/mapWilds/PokemonTower7F.asm delete mode 100755 data/mapWilds/PowerPlant.asm delete mode 100755 data/mapWilds/RockTunnel1F.asm delete mode 100755 data/mapWilds/RockTunnelB1F.asm delete mode 100755 data/mapWilds/Route1.asm delete mode 100755 data/mapWilds/Route10.asm delete mode 100755 data/mapWilds/Route11.asm delete mode 100755 data/mapWilds/Route12.asm delete mode 100755 data/mapWilds/Route13.asm delete mode 100755 data/mapWilds/Route14.asm delete mode 100755 data/mapWilds/Route15.asm delete mode 100755 data/mapWilds/Route16.asm delete mode 100755 data/mapWilds/Route17.asm delete mode 100755 data/mapWilds/Route18.asm delete mode 100755 data/mapWilds/Route2.asm delete mode 100755 data/mapWilds/Route21.asm delete mode 100755 data/mapWilds/Route22.asm delete mode 100755 data/mapWilds/Route23.asm delete mode 100755 data/mapWilds/Route24.asm delete mode 100755 data/mapWilds/Route25.asm delete mode 100755 data/mapWilds/Route3.asm delete mode 100755 data/mapWilds/Route4.asm delete mode 100755 data/mapWilds/Route5.asm delete mode 100755 data/mapWilds/Route6.asm delete mode 100755 data/mapWilds/Route7.asm delete mode 100755 data/mapWilds/Route8.asm delete mode 100755 data/mapWilds/Route9.asm delete mode 100755 data/mapWilds/SafariZoneCenter.asm delete mode 100755 data/mapWilds/SafariZoneEast.asm delete mode 100755 data/mapWilds/SafariZoneNorth.asm delete mode 100755 data/mapWilds/SafariZoneWest.asm delete mode 100755 data/mapWilds/SeaRoutes.asm delete mode 100755 data/mapWilds/SeafoamIslands1F.asm delete mode 100755 data/mapWilds/SeafoamIslandsB1F.asm delete mode 100755 data/mapWilds/SeafoamIslandsB2F.asm delete mode 100755 data/mapWilds/SeafoamIslandsB3F.asm delete mode 100755 data/mapWilds/SeafoamIslandsB4F.asm delete mode 100755 data/mapWilds/VictoryRoad1F.asm delete mode 100755 data/mapWilds/VictoryRoad2F.asm delete mode 100755 data/mapWilds/VictoryRoad3F.asm delete mode 100755 data/mapWilds/ViridianForest.asm delete mode 100755 data/mapWilds/nothing.asm create mode 100644 data/wild/maps/CeruleanCave1F.asm create mode 100644 data/wild/maps/CeruleanCave2F.asm create mode 100644 data/wild/maps/CeruleanCaveB1F.asm create mode 100755 data/wild/maps/DiglettsCave.asm create mode 100755 data/wild/maps/MtMoon1F.asm create mode 100755 data/wild/maps/MtMoonB1F.asm create mode 100755 data/wild/maps/MtMoonB2F.asm create mode 100755 data/wild/maps/PokemonMansion1F.asm create mode 100755 data/wild/maps/PokemonMansion2F.asm create mode 100755 data/wild/maps/PokemonMansion3F.asm create mode 100755 data/wild/maps/PokemonMansionB1F.asm create mode 100755 data/wild/maps/PokemonTower1F.asm create mode 100755 data/wild/maps/PokemonTower2F.asm create mode 100755 data/wild/maps/PokemonTower3F.asm create mode 100755 data/wild/maps/PokemonTower4F.asm create mode 100755 data/wild/maps/PokemonTower5F.asm create mode 100755 data/wild/maps/PokemonTower6F.asm create mode 100755 data/wild/maps/PokemonTower7F.asm create mode 100755 data/wild/maps/PowerPlant.asm create mode 100755 data/wild/maps/RockTunnel1F.asm create mode 100755 data/wild/maps/RockTunnelB1F.asm create mode 100755 data/wild/maps/Route1.asm create mode 100755 data/wild/maps/Route10.asm create mode 100755 data/wild/maps/Route11.asm create mode 100755 data/wild/maps/Route12.asm create mode 100755 data/wild/maps/Route13.asm create mode 100755 data/wild/maps/Route14.asm create mode 100755 data/wild/maps/Route15.asm create mode 100755 data/wild/maps/Route16.asm create mode 100755 data/wild/maps/Route17.asm create mode 100755 data/wild/maps/Route18.asm create mode 100755 data/wild/maps/Route2.asm create mode 100755 data/wild/maps/Route21.asm create mode 100755 data/wild/maps/Route22.asm create mode 100755 data/wild/maps/Route23.asm create mode 100755 data/wild/maps/Route24.asm create mode 100755 data/wild/maps/Route25.asm create mode 100755 data/wild/maps/Route3.asm create mode 100755 data/wild/maps/Route4.asm create mode 100755 data/wild/maps/Route5.asm create mode 100755 data/wild/maps/Route6.asm create mode 100755 data/wild/maps/Route7.asm create mode 100755 data/wild/maps/Route8.asm create mode 100755 data/wild/maps/Route9.asm create mode 100755 data/wild/maps/SafariZoneCenter.asm create mode 100755 data/wild/maps/SafariZoneEast.asm create mode 100755 data/wild/maps/SafariZoneNorth.asm create mode 100755 data/wild/maps/SafariZoneWest.asm create mode 100755 data/wild/maps/SeaRoutes.asm create mode 100755 data/wild/maps/SeafoamIslands1F.asm create mode 100755 data/wild/maps/SeafoamIslandsB1F.asm create mode 100755 data/wild/maps/SeafoamIslandsB2F.asm create mode 100755 data/wild/maps/SeafoamIslandsB3F.asm create mode 100755 data/wild/maps/SeafoamIslandsB4F.asm create mode 100755 data/wild/maps/VictoryRoad1F.asm create mode 100755 data/wild/maps/VictoryRoad2F.asm create mode 100755 data/wild/maps/VictoryRoad3F.asm create mode 100755 data/wild/maps/ViridianForest.asm create mode 100755 data/wild/maps/nothing.asm create mode 100644 engine/events/hidden_objects/book_or_sculpture.asm delete mode 100644 engine/events/hidden_objects/diglett_sculpture.asm (limited to 'constants') diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm index 434bb4a3..bb2bb7f2 100644 --- a/constants/audio_constants.asm +++ b/constants/audio_constants.asm @@ -20,19 +20,6 @@ REG_DUTY_SOUND_LEN EQU 1 REG_VOLUME_ENVELOPE EQU 2 REG_FREQUENCY_LO EQU 3 -MAX_SFX_ID_1 EQUS "SFX_SAFARI_ZONE_PA" -MAX_SFX_ID_2 EQUS "SFX_SILPH_SCOPE" -MAX_SFX_ID_3 EQUS "SFX_SHOOTING_STAR" - -NOISE_INSTRUMENTS_START EQUS "SFX_NOISE_INSTRUMENT01" -NOISE_INSTRUMENTS_END EQUS "SFX_NOISE_INSTRUMENT19 + 1" - -CRY_SFX_START EQUS "SFX_CRY_00" -CRY_SFX_END EQUS "SFX_CRY_25 + 3" - -BATTLE_SFX_START EQUS "SFX_PECK" -BATTLE_SFX_END EQUS "SFX_SILPH_SCOPE + 1" - ; wChannelFlags1 constants BIT_PERFECT_PITCH EQU 0 ; controlled by toggle_perfect_pitch command BIT_SOUND_CALL EQU 1 ; if in sound call diff --git a/constants/music_constants.asm b/constants/music_constants.asm index 9459c0a4..9f726fb7 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -56,6 +56,7 @@ ENDM music_const MUSIC_MEET_MALE_TRAINER, Music_MeetMaleTrainer ; AUDIO_1 AUDIO_2 AUDIO_3 +NOISE_INSTRUMENTS_START EQUS "SFX_NOISE_INSTRUMENT01" music_const SFX_NOISE_INSTRUMENT01, SFX_Noise_Instrument01_1 music_const SFX_NOISE_INSTRUMENT02, SFX_Noise_Instrument02_1 music_const SFX_NOISE_INSTRUMENT03, SFX_Noise_Instrument03_1 @@ -75,6 +76,9 @@ ENDM music_const SFX_NOISE_INSTRUMENT17, SFX_Noise_Instrument17_1 music_const SFX_NOISE_INSTRUMENT18, SFX_Noise_Instrument18_1 music_const SFX_NOISE_INSTRUMENT19, SFX_Noise_Instrument19_1 +NOISE_INSTRUMENTS_END EQUS "SFX_NOISE_INSTRUMENT19 + 1" + +CRY_SFX_START EQUS "SFX_CRY_00" music_const SFX_CRY_00, SFX_Cry00_1 music_const SFX_CRY_01, SFX_Cry01_1 music_const SFX_CRY_02, SFX_Cry02_1 @@ -113,6 +117,7 @@ ENDM music_const SFX_CRY_23, SFX_Cry23_1 music_const SFX_CRY_24, SFX_Cry24_1 music_const SFX_CRY_25, SFX_Cry25_1 +CRY_SFX_END EQUS "SFX_CRY_25 + 3" music_const SFX_GET_ITEM_2, SFX_Get_Item2_1 music_const SFX_TINK, SFX_Tink_1 @@ -157,16 +162,18 @@ ENDM ; AUDIO_1 music_const SFX_POKEFLUTE, SFX_Pokeflute music_const SFX_SAFARI_ZONE_PA, SFX_Safari_Zone_PA +MAX_SFX_ID_1 EQUS "SFX_SAFARI_ZONE_PA" ; AUDIO_2 music_const SFX_LEVEL_UP, SFX_Level_Up - music_const SFX_BALL_TOSS, SFX_Ball_Toss music_const SFX_BALL_POOF, SFX_Ball_Poof music_const SFX_FAINT_THUD, SFX_Faint_Thud music_const SFX_RUN, SFX_Run music_const SFX_DEX_PAGE_ADDED, SFX_Dex_Page_Added music_const SFX_CAUGHT_MON, SFX_Caught_Mon + +BATTLE_SFX_START EQUS "SFX_PECK" music_const SFX_PECK, SFX_Peck music_const SFX_FAINT_FALL, SFX_Faint_Fall music_const SFX_BATTLE_09, SFX_Battle_09 @@ -216,6 +223,8 @@ ENDM music_const SFX_BATTLE_35, SFX_Battle_35 music_const SFX_BATTLE_36, SFX_Battle_36 music_const SFX_SILPH_SCOPE, SFX_Silph_Scope +BATTLE_SFX_END EQUS "SFX_SILPH_SCOPE + 1" +MAX_SFX_ID_2 EQUS "SFX_SILPH_SCOPE" ; AUDIO_3 music_const SFX_INTRO_LUNGE, SFX_Intro_Lunge @@ -228,3 +237,4 @@ ENDM music_const SFX_SLOTS_REWARD, SFX_Slots_Reward music_const SFX_SLOTS_NEW_SPIN, SFX_Slots_New_Spin music_const SFX_SHOOTING_STAR, SFX_Shooting_Star +MAX_SFX_ID_3 EQUS "SFX_SHOOTING_STAR" diff --git a/data/mapWilds/CeruleanCave1F.asm b/data/mapWilds/CeruleanCave1F.asm deleted file mode 100644 index 20e8643a..00000000 --- a/data/mapWilds/CeruleanCave1F.asm +++ /dev/null @@ -1,18 +0,0 @@ -DungeonMons1: - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,DODRIO - db 49,VENOMOTH - IF DEF(_RED) - db 52,ARBOK - ENDC - IF DEF(_BLUE) - db 52,SANDSLASH - ENDC - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - db $00 diff --git a/data/mapWilds/CeruleanCave2F.asm b/data/mapWilds/CeruleanCave2F.asm deleted file mode 100644 index 5afe55ac..00000000 --- a/data/mapWilds/CeruleanCave2F.asm +++ /dev/null @@ -1,13 +0,0 @@ -DungeonMons2: - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,MAROWAK - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - db $00 diff --git a/data/mapWilds/CeruleanCaveB1F.asm b/data/mapWilds/CeruleanCaveB1F.asm deleted file mode 100644 index 245d5912..00000000 --- a/data/mapWilds/CeruleanCaveB1F.asm +++ /dev/null @@ -1,18 +0,0 @@ -DungeonMonsB1: - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - IF DEF(_RED) - db 57,ARBOK - ENDC - IF DEF(_BLUE) - db 57,SANDSLASH - ENDC - db 65,DITTO - db 63,DITTO - db 67,DITTO - db $00 diff --git a/data/mapWilds/DiglettsCave.asm b/data/mapWilds/DiglettsCave.asm deleted file mode 100755 index 37512687..00000000 --- a/data/mapWilds/DiglettsCave.asm +++ /dev/null @@ -1,13 +0,0 @@ -CaveMons: - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - db $00 diff --git a/data/mapWilds/MtMoon1F.asm b/data/mapWilds/MtMoon1F.asm deleted file mode 100755 index 44b34c45..00000000 --- a/data/mapWilds/MtMoon1F.asm +++ /dev/null @@ -1,13 +0,0 @@ -MoonMons1: - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 9,ZUBAT - db 8,GEODUDE - db 6,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 8,PARAS - db 11,ZUBAT - db 8,CLEFAIRY - db $00 diff --git a/data/mapWilds/MtMoonB1F.asm b/data/mapWilds/MtMoonB1F.asm deleted file mode 100755 index 5c0d8a53..00000000 --- a/data/mapWilds/MtMoonB1F.asm +++ /dev/null @@ -1,13 +0,0 @@ -MoonMonsB1: - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 7,GEODUDE - db 8,GEODUDE - db 9,ZUBAT - db 10,PARAS - db 10,ZUBAT - db 11,ZUBAT - db 9,CLEFAIRY - db 9,GEODUDE - db $00 diff --git a/data/mapWilds/MtMoonB2F.asm b/data/mapWilds/MtMoonB2F.asm deleted file mode 100755 index cbf97e7e..00000000 --- a/data/mapWilds/MtMoonB2F.asm +++ /dev/null @@ -1,13 +0,0 @@ -MoonMonsB2: - db $0A - db 9,ZUBAT - db 9,GEODUDE - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 10,PARAS - db 12,PARAS - db 10,CLEFAIRY - db 12,ZUBAT - db 12,CLEFAIRY - db $00 diff --git a/data/mapWilds/PokemonMansion1F.asm b/data/mapWilds/PokemonMansion1F.asm deleted file mode 100755 index 22ad032b..00000000 --- a/data/mapWilds/PokemonMansion1F.asm +++ /dev/null @@ -1,27 +0,0 @@ -MansionMons1: - db $0A - IF DEF(_RED) - db 32,KOFFING - db 30,KOFFING - db 34,PONYTA - db 30,PONYTA - db 34,GROWLITHE - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 37,WEEZING - db 39,MUK - ENDC - IF DEF(_BLUE) - db 32,GRIMER - db 30,GRIMER - db 34,PONYTA - db 30,PONYTA - db 34,VULPIX - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 37,MUK - db 39,WEEZING - ENDC - db $00 diff --git a/data/mapWilds/PokemonMansion2F.asm b/data/mapWilds/PokemonMansion2F.asm deleted file mode 100755 index 985474fc..00000000 --- a/data/mapWilds/PokemonMansion2F.asm +++ /dev/null @@ -1,27 +0,0 @@ -MansionMons2: - db $0A - IF DEF(_RED) - db 32,GROWLITHE - db 34,KOFFING - db 34,KOFFING - db 30,PONYTA - db 30,KOFFING - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 39,WEEZING - db 37,MUK - ENDC - IF DEF(_BLUE) - db 32,VULPIX - db 34,GRIMER - db 34,GRIMER - db 30,PONYTA - db 30,GRIMER - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 39,MUK - db 37,WEEZING - ENDC - db $00 diff --git a/data/mapWilds/PokemonMansion3F.asm b/data/mapWilds/PokemonMansion3F.asm deleted file mode 100755 index 9c5521ae..00000000 --- a/data/mapWilds/PokemonMansion3F.asm +++ /dev/null @@ -1,27 +0,0 @@ -MansionMons3: - db $0A - IF DEF(_RED) - db 31,KOFFING - db 33,GROWLITHE - db 35,KOFFING - db 32,PONYTA - db 34,PONYTA - db 40,WEEZING - db 34,GRIMER - db 38,WEEZING - db 36,PONYTA - db 42,MUK - ENDC - IF DEF(_BLUE) - db 31,GRIMER - db 33,VULPIX - db 35,GRIMER - db 32,PONYTA - db 34,MAGMAR - db 40,MUK - db 34,KOFFING - db 38,MUK - db 36,PONYTA - db 42,WEEZING - ENDC - db $00 diff --git a/data/mapWilds/PokemonMansionB1F.asm b/data/mapWilds/PokemonMansionB1F.asm deleted file mode 100755 index 83266ddd..00000000 --- a/data/mapWilds/PokemonMansionB1F.asm +++ /dev/null @@ -1,27 +0,0 @@ -MansionMonsB1: - db $0A - IF DEF(_RED) - db 33,KOFFING - db 31,KOFFING - db 35,GROWLITHE - db 32,PONYTA - db 31,KOFFING - db 40,WEEZING - db 34,PONYTA - db 35,GRIMER - db 42,WEEZING - db 42,MUK - ENDC - IF DEF(_BLUE) - db 33,GRIMER - db 31,GRIMER - db 35,VULPIX - db 32,PONYTA - db 31,GRIMER - db 40,MUK - db 34,PONYTA - db 35,KOFFING - db 38,MAGMAR - db 42,WEEZING - ENDC - db $00 diff --git a/data/mapWilds/PokemonTower1F.asm b/data/mapWilds/PokemonTower1F.asm deleted file mode 100755 index df951e70..00000000 --- a/data/mapWilds/PokemonTower1F.asm +++ /dev/null @@ -1,3 +0,0 @@ -TowerMons1: - db $00 - db $00 diff --git a/data/mapWilds/PokemonTower2F.asm b/data/mapWilds/PokemonTower2F.asm deleted file mode 100755 index dcbe0da0..00000000 --- a/data/mapWilds/PokemonTower2F.asm +++ /dev/null @@ -1,3 +0,0 @@ -TowerMons2: - db $00 - db $00 diff --git a/data/mapWilds/PokemonTower3F.asm b/data/mapWilds/PokemonTower3F.asm deleted file mode 100755 index 135ed84f..00000000 --- a/data/mapWilds/PokemonTower3F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TowerMons3: - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 24,GASTLY - db 20,CUBONE - db 22,CUBONE - db 25,HAUNTER - db $00 diff --git a/data/mapWilds/PokemonTower4F.asm b/data/mapWilds/PokemonTower4F.asm deleted file mode 100755 index 0c84b0cf..00000000 --- a/data/mapWilds/PokemonTower4F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TowerMons4: - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - db $00 diff --git a/data/mapWilds/PokemonTower5F.asm b/data/mapWilds/PokemonTower5F.asm deleted file mode 100755 index 440dbf8d..00000000 --- a/data/mapWilds/PokemonTower5F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TowerMons5: - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - db $00 diff --git a/data/mapWilds/PokemonTower6F.asm b/data/mapWilds/PokemonTower6F.asm deleted file mode 100755 index 553fdb5d..00000000 --- a/data/mapWilds/PokemonTower6F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TowerMons6: - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 19,GASTLY - db 26,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db $00 diff --git a/data/mapWilds/PokemonTower7F.asm b/data/mapWilds/PokemonTower7F.asm deleted file mode 100755 index 0f7e66e9..00000000 --- a/data/mapWilds/PokemonTower7F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TowerMons7: - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 28,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db 30,HAUNTER - db $00 diff --git a/data/mapWilds/PowerPlant.asm b/data/mapWilds/PowerPlant.asm deleted file mode 100755 index 35eece95..00000000 --- a/data/mapWilds/PowerPlant.asm +++ /dev/null @@ -1,19 +0,0 @@ -PowerPlantMons: - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - IF DEF(_RED) - db 33,ELECTABUZZ - db 36,ELECTABUZZ - ENDC - IF DEF(_BLUE) - db 33,RAICHU - db 36,RAICHU - ENDC - db $00 diff --git a/data/mapWilds/RockTunnel1F.asm b/data/mapWilds/RockTunnel1F.asm deleted file mode 100755 index a36f2092..00000000 --- a/data/mapWilds/RockTunnel1F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TunnelMonsB1: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - db $00 diff --git a/data/mapWilds/RockTunnelB1F.asm b/data/mapWilds/RockTunnelB1F.asm deleted file mode 100755 index 2fc7ef94..00000000 --- a/data/mapWilds/RockTunnelB1F.asm +++ /dev/null @@ -1,13 +0,0 @@ -TunnelMonsB2: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - db $00 diff --git a/data/mapWilds/Route1.asm b/data/mapWilds/Route1.asm deleted file mode 100755 index f618c34f..00000000 --- a/data/mapWilds/Route1.asm +++ /dev/null @@ -1,13 +0,0 @@ -Route1Mons: - db $19 - db 3,PIDGEY - db 3,RATTATA - db 3,RATTATA - db 2,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 3,PIDGEY - db 4,RATTATA - db 4,PIDGEY - db 5,PIDGEY - db $00 diff --git a/data/mapWilds/Route10.asm b/data/mapWilds/Route10.asm deleted file mode 100755 index 34e0b5ee..00000000 --- a/data/mapWilds/Route10.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route10Mons: - db $0F - IF DEF(_RED) - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,VOLTORB - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - ENDC - IF DEF(_BLUE) - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,VOLTORB - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - ENDC - db $00 diff --git a/data/mapWilds/Route11.asm b/data/mapWilds/Route11.asm deleted file mode 100755 index 9e4e3644..00000000 --- a/data/mapWilds/Route11.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route11Mons: - db $0F - IF DEF(_RED) - db 14,EKANS - db 15,SPEAROW - db 12,EKANS - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,EKANS - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - ENDC - IF DEF(_BLUE) - db 14,SANDSHREW - db 15,SPEAROW - db 12,SANDSHREW - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,SANDSHREW - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - ENDC - db $00 diff --git a/data/mapWilds/Route12.asm b/data/mapWilds/Route12.asm deleted file mode 100755 index 45dfbc9d..00000000 --- a/data/mapWilds/Route12.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route12Mons: - db $0F - IF DEF(_RED) - db 24,ODDISH - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 27,PIDGEY - db 28,GLOOM - db 30,GLOOM - ENDC - IF DEF(_BLUE) - db 24,BELLSPROUT - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 27,PIDGEY - db 28,WEEPINBELL - db 30,WEEPINBELL - ENDC - db $00 diff --git a/data/mapWilds/Route13.asm b/data/mapWilds/Route13.asm deleted file mode 100755 index 2a1a6cb5..00000000 --- a/data/mapWilds/Route13.asm +++ /dev/null @@ -1,28 +0,0 @@ -Route13Mons: - IF DEF(_RED) - db $14 - db 24,ODDISH - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 25,DITTO - db 28,GLOOM - db 30,GLOOM - ENDC - IF DEF(_BLUE) - db $14 - db 24,BELLSPROUT - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 25,DITTO - db 28,WEEPINBELL - db 30,WEEPINBELL - ENDC - db $00 diff --git a/data/mapWilds/Route14.asm b/data/mapWilds/Route14.asm deleted file mode 100755 index aad5aa48..00000000 --- a/data/mapWilds/Route14.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route14Mons: - db $0F - IF DEF(_RED) - db 24,ODDISH - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - IF DEF(_BLUE) - db 24,BELLSPROUT - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - db $00 diff --git a/data/mapWilds/Route15.asm b/data/mapWilds/Route15.asm deleted file mode 100755 index b4762230..00000000 --- a/data/mapWilds/Route15.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route15Mons: - db $0F - IF DEF(_RED) - db 24,ODDISH - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,ODDISH - db 28,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - IF DEF(_BLUE) - db 24,BELLSPROUT - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,BELLSPROUT - db 28,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - db $00 diff --git a/data/mapWilds/Route16.asm b/data/mapWilds/Route16.asm deleted file mode 100755 index c2421c50..00000000 --- a/data/mapWilds/Route16.asm +++ /dev/null @@ -1,13 +0,0 @@ -Route16Mons: - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 18,RATTATA - db 20,DODUO - db 20,RATTATA - db 18,DODUO - db 22,DODUO - db 22,RATTATA - db 23,RATICATE - db 25,RATICATE - db $00 diff --git a/data/mapWilds/Route17.asm b/data/mapWilds/Route17.asm deleted file mode 100755 index 8dffd9a3..00000000 --- a/data/mapWilds/Route17.asm +++ /dev/null @@ -1,13 +0,0 @@ -Route17Mons: - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 27,RATICATE - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 25,FEAROW - db 27,FEAROW - db $00 diff --git a/data/mapWilds/Route18.asm b/data/mapWilds/Route18.asm deleted file mode 100755 index 47bd247d..00000000 --- a/data/mapWilds/Route18.asm +++ /dev/null @@ -1,13 +0,0 @@ -Route18Mons: - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 25,FEAROW - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 27,FEAROW - db 29,FEAROW - db $00 diff --git a/data/mapWilds/Route2.asm b/data/mapWilds/Route2.asm deleted file mode 100755 index ad958ea5..00000000 --- a/data/mapWilds/Route2.asm +++ /dev/null @@ -1,24 +0,0 @@ -Route2Mons: - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - IF DEF(_RED) - db 3,WEEDLE - ENDC - IF DEF(_BLUE) - db 3,CATERPIE - ENDC - db 2,RATTATA - db 5,RATTATA - IF DEF(_RED) - db 4,WEEDLE - db 5,WEEDLE - ENDC - IF DEF(_BLUE) - db 4,CATERPIE - db 5,CATERPIE - ENDC - db $00 diff --git a/data/mapWilds/Route21.asm b/data/mapWilds/Route21.asm deleted file mode 100755 index 3cc73ba0..00000000 --- a/data/mapWilds/Route21.asm +++ /dev/null @@ -1,23 +0,0 @@ -Route21Mons: - db $19 - db 21,RATTATA - db 23,PIDGEY - db 30,RATICATE - db 23,RATTATA - db 21,PIDGEY - db 30,PIDGEOTTO - db 32,PIDGEOTTO - db 28,TANGELA - db 30,TANGELA - db 32,TANGELA - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL diff --git a/data/mapWilds/Route22.asm b/data/mapWilds/Route22.asm deleted file mode 100755 index 750a2f4e..00000000 --- a/data/mapWilds/Route22.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route22Mons: - db $19 - IF DEF(_RED) - db 3,RATTATA - db 3,NIDORAN_M - db 4,RATTATA - db 4,NIDORAN_M - db 2,RATTATA - db 2,NIDORAN_M - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_F - db 4,NIDORAN_F - ENDC - IF DEF(_BLUE) - db 3,RATTATA - db 3,NIDORAN_F - db 4,RATTATA - db 4,NIDORAN_F - db 2,RATTATA - db 2,NIDORAN_F - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_M - db 4,NIDORAN_M - ENDC - db $00 diff --git a/data/mapWilds/Route23.asm b/data/mapWilds/Route23.asm deleted file mode 100755 index a057d24d..00000000 --- a/data/mapWilds/Route23.asm +++ /dev/null @@ -1,23 +0,0 @@ -Route23Mons: - db $0A - IF DEF(_RED) - db 26,EKANS - ENDC - IF DEF(_BLUE) - db 26,SANDSHREW - ENDC - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - IF DEF(_RED) - db 41,ARBOK - ENDC - IF DEF(_BLUE) - db 41,SANDSLASH - ENDC - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - db $00 diff --git a/data/mapWilds/Route24.asm b/data/mapWilds/Route24.asm deleted file mode 100755 index 3a745f36..00000000 --- a/data/mapWilds/Route24.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route24Mons: - db $19 - IF DEF(_RED) - db 7,WEEDLE - db 8,KAKUNA - db 12,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 10,ABRA - db 14,ODDISH - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - ENDC - IF DEF(_BLUE) - db 7,CATERPIE - db 8,METAPOD - db 12,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 10,ABRA - db 14,BELLSPROUT - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - ENDC - db $00 diff --git a/data/mapWilds/Route25.asm b/data/mapWilds/Route25.asm deleted file mode 100755 index 4884fa64..00000000 --- a/data/mapWilds/Route25.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route25Mons: - db $0F - IF DEF(_RED) - db 8,WEEDLE - db 9,KAKUNA - db 13,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 12,ABRA - db 14,ODDISH - db 10,ABRA - db 7,METAPOD - db 8,CATERPIE - ENDC - IF DEF(_BLUE) - db 8,CATERPIE - db 9,METAPOD - db 13,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 12,ABRA - db 14,BELLSPROUT - db 10,ABRA - db 7,KAKUNA - db 8,WEEDLE - ENDC - db $00 diff --git a/data/mapWilds/Route3.asm b/data/mapWilds/Route3.asm deleted file mode 100755 index dea820a4..00000000 --- a/data/mapWilds/Route3.asm +++ /dev/null @@ -1,13 +0,0 @@ -Route3Mons: - db $14 - db 6,PIDGEY - db 5,SPEAROW - db 7,PIDGEY - db 6,SPEAROW - db 7,SPEAROW - db 8,PIDGEY - db 8,SPEAROW - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - db $00 diff --git a/data/mapWilds/Route4.asm b/data/mapWilds/Route4.asm deleted file mode 100755 index 624d58de..00000000 --- a/data/mapWilds/Route4.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route4Mons: - db $14 - IF DEF(_RED) - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,EKANS - db 8,SPEAROW - db 10,EKANS - db 12,RATTATA - db 12,SPEAROW - db 8,EKANS - db 12,EKANS - ENDC - IF DEF(_BLUE) - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,SANDSHREW - db 8,SPEAROW - db 10,SANDSHREW - db 12,RATTATA - db 12,SPEAROW - db 8,SANDSHREW - db 12,SANDSHREW - ENDC - db $00 diff --git a/data/mapWilds/Route5.asm b/data/mapWilds/Route5.asm deleted file mode 100755 index cb8c583b..00000000 --- a/data/mapWilds/Route5.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route5Mons: - db $0F - IF DEF(_RED) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - ENDC - IF DEF(_BLUE) - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - ENDC - db $00 diff --git a/data/mapWilds/Route6.asm b/data/mapWilds/Route6.asm deleted file mode 100755 index 92512ffb..00000000 --- a/data/mapWilds/Route6.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route6Mons: - db $0F - IF DEF(_RED) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - ENDC - IF DEF(_BLUE) - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - ENDC - db $00 diff --git a/data/mapWilds/Route7.asm b/data/mapWilds/Route7.asm deleted file mode 100755 index 559c98ee..00000000 --- a/data/mapWilds/Route7.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route7Mons: - db $0F - IF DEF(_RED) - db 19,PIDGEY - db 19,ODDISH - db 17,MANKEY - db 22,ODDISH - db 22,PIDGEY - db 18,MANKEY - db 18,GROWLITHE - db 20,GROWLITHE - db 19,MANKEY - db 20,MANKEY - ENDC - IF DEF(_BLUE) - db 19,PIDGEY - db 19,BELLSPROUT - db 17,MEOWTH - db 22,BELLSPROUT - db 22,PIDGEY - db 18,MEOWTH - db 18,VULPIX - db 20,VULPIX - db 19,MEOWTH - db 20,MEOWTH - ENDC - db $00 diff --git a/data/mapWilds/Route8.asm b/data/mapWilds/Route8.asm deleted file mode 100755 index 8a0bfa31..00000000 --- a/data/mapWilds/Route8.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route8Mons: - db $0F - IF DEF(_RED) - db 18,PIDGEY - db 18,MANKEY - db 17,EKANS - db 16,GROWLITHE - db 20,PIDGEY - db 20,MANKEY - db 19,EKANS - db 17,GROWLITHE - db 15,GROWLITHE - db 18,GROWLITHE - ENDC - IF DEF(_BLUE) - db 18,PIDGEY - db 18,MEOWTH - db 17,SANDSHREW - db 16,VULPIX - db 20,PIDGEY - db 20,MEOWTH - db 19,SANDSHREW - db 17,VULPIX - db 15,VULPIX - db 18,VULPIX - ENDC - db $00 diff --git a/data/mapWilds/Route9.asm b/data/mapWilds/Route9.asm deleted file mode 100755 index 716589b0..00000000 --- a/data/mapWilds/Route9.asm +++ /dev/null @@ -1,27 +0,0 @@ -Route9Mons: - db $0F - IF DEF(_RED) - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,RATTATA - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - ENDC - IF DEF(_BLUE) - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,RATTATA - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - ENDC - db $00 diff --git a/data/mapWilds/SafariZoneCenter.asm b/data/mapWilds/SafariZoneCenter.asm deleted file mode 100755 index 0cd5323a..00000000 --- a/data/mapWilds/SafariZoneCenter.asm +++ /dev/null @@ -1,27 +0,0 @@ -ZoneMonsCenter: - db $1E - IF DEF(_RED) - db 22,NIDORAN_M - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINO - db 25,EXEGGCUTE - db 31,NIDORINA - db 30,PARASECT - db 23,SCYTHER - db 23,CHANSEY - ENDC - IF DEF(_BLUE) - db 22,NIDORAN_F - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINA - db 25,EXEGGCUTE - db 31,NIDORINO - db 30,PARASECT - db 23,PINSIR - db 23,CHANSEY - ENDC - db $00 diff --git a/data/mapWilds/SafariZoneEast.asm b/data/mapWilds/SafariZoneEast.asm deleted file mode 100755 index 3d77b6fe..00000000 --- a/data/mapWilds/SafariZoneEast.asm +++ /dev/null @@ -1,27 +0,0 @@ -ZoneMons1: - db $1E - IF DEF(_RED) - db 24,NIDORAN_M - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINO - db 23,EXEGGCUTE - db 24,NIDORAN_F - db 25,PARASECT - db 25,KANGASKHAN - db 28,SCYTHER - ENDC - IF DEF(_BLUE) - db 24,NIDORAN_F - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINA - db 23,EXEGGCUTE - db 24,NIDORAN_M - db 25,PARASECT - db 25,KANGASKHAN - db 28,PINSIR - ENDC - db $00 diff --git a/data/mapWilds/SafariZoneNorth.asm b/data/mapWilds/SafariZoneNorth.asm deleted file mode 100755 index c1b6a547..00000000 --- a/data/mapWilds/SafariZoneNorth.asm +++ /dev/null @@ -1,28 +0,0 @@ -ZoneMons2: - db $1E - IF DEF(_RED) - db 22,NIDORAN_M - ENDC - IF DEF(_BLUE) - db 22,NIDORAN_F - ENDC - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - IF DEF(_RED) - db 30,NIDORINO - ENDC - IF DEF(_BLUE) - db 30,NIDORINA - ENDC - db 27,EXEGGCUTE - IF DEF(_RED) - db 30,NIDORINA - ENDC - IF DEF(_BLUE) - db 30,NIDORINO - ENDC - db 32,VENOMOTH - db 26,CHANSEY - db 28,TAUROS - db $00 diff --git a/data/mapWilds/SafariZoneWest.asm b/data/mapWilds/SafariZoneWest.asm deleted file mode 100755 index 47b6a102..00000000 --- a/data/mapWilds/SafariZoneWest.asm +++ /dev/null @@ -1,27 +0,0 @@ -ZoneMons3: - db $1E - IF DEF(_RED) - db 25,NIDORAN_M - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINO - db 26,EXEGGCUTE - db 25,NIDORAN_F - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - ENDC - IF DEF(_BLUE) - db 25,NIDORAN_F - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINA - db 26,EXEGGCUTE - db 25,NIDORAN_M - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - ENDC - db $00 diff --git a/data/mapWilds/SeaRoutes.asm b/data/mapWilds/SeaRoutes.asm deleted file mode 100755 index 07c6a187..00000000 --- a/data/mapWilds/SeaRoutes.asm +++ /dev/null @@ -1,13 +0,0 @@ -WaterMons: - db $00 - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL diff --git a/data/mapWilds/SeafoamIslands1F.asm b/data/mapWilds/SeafoamIslands1F.asm deleted file mode 100755 index 3c431f9a..00000000 --- a/data/mapWilds/SeafoamIslands1F.asm +++ /dev/null @@ -1,27 +0,0 @@ -IslandMons1: - db $0F - IF DEF(_RED) - db 30,SEEL - db 30,SLOWPOKE - db 30,SHELLDER - db 30,HORSEA - db 28,HORSEA - db 21,ZUBAT - db 29,GOLBAT - db 28,PSYDUCK - db 28,SHELLDER - db 38,GOLDUCK - ENDC - IF DEF(_BLUE) - db 30,SEEL - db 30,PSYDUCK - db 30,STARYU - db 30,KRABBY - db 28,KRABBY - db 21,ZUBAT - db 29,GOLBAT - db 28,SLOWPOKE - db 28,STARYU - db 38,SLOWBRO - ENDC - db $00 diff --git a/data/mapWilds/SeafoamIslandsB1F.asm b/data/mapWilds/SeafoamIslandsB1F.asm deleted file mode 100755 index 6f96f240..00000000 --- a/data/mapWilds/SeafoamIslandsB1F.asm +++ /dev/null @@ -1,27 +0,0 @@ -IslandMonsB1: - db $0A - IF DEF(_RED) - db 30,STARYU - db 30,HORSEA - db 32,SHELLDER - db 32,HORSEA - db 28,SLOWPOKE - db 30,SEEL - db 30,SLOWPOKE - db 28,SEEL - db 38,DEWGONG - db 37,SEADRA - ENDC - IF DEF(_BLUE) - db 30,SHELLDER - db 30,KRABBY - db 32,STARYU - db 32,KRABBY - db 28,PSYDUCK - db 30,SEEL - db 30,PSYDUCK - db 28,SEEL - db 38,DEWGONG - db 37,KINGLER - ENDC - db $00 diff --git a/data/mapWilds/SeafoamIslandsB2F.asm b/data/mapWilds/SeafoamIslandsB2F.asm deleted file mode 100755 index 7191fea9..00000000 --- a/data/mapWilds/SeafoamIslandsB2F.asm +++ /dev/null @@ -1,27 +0,0 @@ -IslandMonsB2: - db $0A - IF DEF(_RED) - db 30,SEEL - db 30,SLOWPOKE - db 32,SEEL - db 32,SLOWPOKE - db 28,HORSEA - db 30,STARYU - db 30,HORSEA - db 28,SHELLDER - db 30,GOLBAT - db 37,SLOWBRO - ENDC - IF DEF(_BLUE) - db 30,SEEL - db 30,PSYDUCK - db 32,SEEL - db 32,PSYDUCK - db 28,KRABBY - db 30,SHELLDER - db 30,KRABBY - db 28,STARYU - db 30,GOLBAT - db 37,GOLDUCK - ENDC - db $00 diff --git a/data/mapWilds/SeafoamIslandsB3F.asm b/data/mapWilds/SeafoamIslandsB3F.asm deleted file mode 100755 index 9778c0e9..00000000 --- a/data/mapWilds/SeafoamIslandsB3F.asm +++ /dev/null @@ -1,27 +0,0 @@ -IslandMonsB3: - db $0A - IF DEF(_RED) - db 31,SLOWPOKE - db 31,SEEL - db 33,SLOWPOKE - db 33,SEEL - db 29,HORSEA - db 31,SHELLDER - db 31,HORSEA - db 29,SHELLDER - db 39,SEADRA - db 37,DEWGONG - ENDC - IF DEF(_BLUE) - db 31,PSYDUCK - db 31,SEEL - db 33,PSYDUCK - db 33,SEEL - db 29,KRABBY - db 31,STARYU - db 31,KRABBY - db 29,STARYU - db 39,KINGLER - db 37,DEWGONG - ENDC - db $00 diff --git a/data/mapWilds/SeafoamIslandsB4F.asm b/data/mapWilds/SeafoamIslandsB4F.asm deleted file mode 100755 index 3948470b..00000000 --- a/data/mapWilds/SeafoamIslandsB4F.asm +++ /dev/null @@ -1,27 +0,0 @@ -IslandMonsB4: - db $0A - IF DEF(_RED) - db 31,HORSEA - db 31,SHELLDER - db 33,HORSEA - db 33,SHELLDER - db 29,SLOWPOKE - db 31,SEEL - db 31,SLOWPOKE - db 29,SEEL - db 39,SLOWBRO - db 32,GOLBAT - ENDC - IF DEF(_BLUE) - db 31,KRABBY - db 31,STARYU - db 33,KRABBY - db 33,STARYU - db 29,PSYDUCK - db 31,SEEL - db 31,PSYDUCK - db 29,SEEL - db 39,GOLDUCK - db 32,GOLBAT - ENDC - db $00 diff --git a/data/mapWilds/VictoryRoad1F.asm b/data/mapWilds/VictoryRoad1F.asm deleted file mode 100755 index 60aae31a..00000000 --- a/data/mapWilds/VictoryRoad1F.asm +++ /dev/null @@ -1,13 +0,0 @@ -PlateauMons1: - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 43,MAROWAK - db $00 diff --git a/data/mapWilds/VictoryRoad2F.asm b/data/mapWilds/VictoryRoad2F.asm deleted file mode 100755 index 580d644d..00000000 --- a/data/mapWilds/VictoryRoad2F.asm +++ /dev/null @@ -1,13 +0,0 @@ -PlateauMons2: - db $0A - db 22,MACHOP - db 24,GEODUDE - db 26,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,MACHOKE - db 40,GOLBAT - db 40,MAROWAK - db 43,GRAVELER - db $00 diff --git a/data/mapWilds/VictoryRoad3F.asm b/data/mapWilds/VictoryRoad3F.asm deleted file mode 100755 index 80d7ef3e..00000000 --- a/data/mapWilds/VictoryRoad3F.asm +++ /dev/null @@ -1,13 +0,0 @@ -PlateauMons3: - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 42,ONIX - db 40,VENOMOTH - db 45,ONIX - db 43,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 45,MACHOKE - db $00 diff --git a/data/mapWilds/ViridianForest.asm b/data/mapWilds/ViridianForest.asm deleted file mode 100755 index ae9a5a70..00000000 --- a/data/mapWilds/ViridianForest.asm +++ /dev/null @@ -1,25 +0,0 @@ -ForestMons: - db $08 - IF DEF(_RED) - db 4,WEEDLE - db 5,KAKUNA - db 3,WEEDLE - db 5,WEEDLE - db 4,KAKUNA - db 6,KAKUNA - db 4,METAPOD - db 3,CATERPIE - ENDC - IF DEF(_BLUE) - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - ENDC - db 3,PIKACHU - db 5,PIKACHU - db $00 diff --git a/data/mapWilds/nothing.asm b/data/mapWilds/nothing.asm deleted file mode 100755 index ce7f7ede..00000000 --- a/data/mapWilds/nothing.asm +++ /dev/null @@ -1,3 +0,0 @@ -NoMons: - db $00 - db $00 diff --git a/data/wild/grass_water.asm b/data/wild/grass_water.asm index 5697300e..f1dd461e 100755 --- a/data/wild/grass_water.asm +++ b/data/wild/grass_water.asm @@ -260,62 +260,62 @@ WildDataPointers: ; followed by 20 bytes: ; level, species (ten times) -INCLUDE "data/mapWilds/nothing.asm" -INCLUDE "data/mapWilds/Route1.asm" -INCLUDE "data/mapWilds/Route2.asm" -INCLUDE "data/mapWilds/Route22.asm" -INCLUDE "data/mapWilds/ViridianForest.asm" -INCLUDE "data/mapWilds/Route3.asm" -INCLUDE "data/mapWilds/MtMoon1F.asm" -INCLUDE "data/mapWilds/MtMoonB1F.asm" -INCLUDE "data/mapWilds/MtMoonB2F.asm" -INCLUDE "data/mapWilds/Route4.asm" -INCLUDE "data/mapWilds/Route24.asm" -INCLUDE "data/mapWilds/Route25.asm" -INCLUDE "data/mapWilds/Route9.asm" -INCLUDE "data/mapWilds/Route5.asm" -INCLUDE "data/mapWilds/Route6.asm" -INCLUDE "data/mapWilds/Route11.asm" -INCLUDE "data/mapWilds/RockTunnel1F.asm" -INCLUDE "data/mapWilds/RockTunnelB1F.asm" -INCLUDE "data/mapWilds/Route10.asm" -INCLUDE "data/mapWilds/Route12.asm" -INCLUDE "data/mapWilds/Route8.asm" -INCLUDE "data/mapWilds/Route7.asm" -INCLUDE "data/mapWilds/PokemonTower1F.asm" -INCLUDE "data/mapWilds/PokemonTower2F.asm" -INCLUDE "data/mapWilds/PokemonTower3F.asm" -INCLUDE "data/mapWilds/PokemonTower4F.asm" -INCLUDE "data/mapWilds/PokemonTower5F.asm" -INCLUDE "data/mapWilds/PokemonTower6F.asm" -INCLUDE "data/mapWilds/PokemonTower7F.asm" -INCLUDE "data/mapWilds/Route13.asm" -INCLUDE "data/mapWilds/Route14.asm" -INCLUDE "data/mapWilds/Route15.asm" -INCLUDE "data/mapWilds/Route16.asm" -INCLUDE "data/mapWilds/Route17.asm" -INCLUDE "data/mapWilds/Route18.asm" -INCLUDE "data/mapWilds/SafariZoneCenter.asm" -INCLUDE "data/mapWilds/SafariZoneEast.asm" -INCLUDE "data/mapWilds/SafariZoneNorth.asm" -INCLUDE "data/mapWilds/SafariZoneWest.asm" -INCLUDE "data/mapWilds/SeaRoutes.asm" -INCLUDE "data/mapWilds/SeafoamIslands1F.asm" -INCLUDE "data/mapWilds/SeafoamIslandsB1F.asm" -INCLUDE "data/mapWilds/SeafoamIslandsB2F.asm" -INCLUDE "data/mapWilds/SeafoamIslandsB3F.asm" -INCLUDE "data/mapWilds/SeafoamIslandsB4F.asm" -INCLUDE "data/mapWilds/PokemonMansion1F.asm" -INCLUDE "data/mapWilds/PokemonMansion2F.asm" -INCLUDE "data/mapWilds/PokemonMansion3F.asm" -INCLUDE "data/mapWilds/PokemonMansionB1F.asm" -INCLUDE "data/mapWilds/Route21.asm" -INCLUDE "data/mapWilds/CeruleanCave1F.asm" -INCLUDE "data/mapWilds/CeruleanCave2F.asm" -INCLUDE "data/mapWilds/CeruleanCaveB1F.asm" -INCLUDE "data/mapWilds/PowerPlant.asm" -INCLUDE "data/mapWilds/Route23.asm" -INCLUDE "data/mapWilds/VictoryRoad2F.asm" -INCLUDE "data/mapWilds/VictoryRoad3F.asm" -INCLUDE "data/mapWilds/VictoryRoad1F.asm" -INCLUDE "data/mapWilds/DiglettsCave.asm" +INCLUDE "data/wild/maps/nothing.asm" +INCLUDE "data/wild/maps/Route1.asm" +INCLUDE "data/wild/maps/Route2.asm" +INCLUDE "data/wild/maps/Route22.asm" +INCLUDE "data/wild/maps/ViridianForest.asm" +INCLUDE "data/wild/maps/Route3.asm" +INCLUDE "data/wild/maps/MtMoon1F.asm" +INCLUDE "data/wild/maps/MtMoonB1F.asm" +INCLUDE "data/wild/maps/MtMoonB2F.asm" +INCLUDE "data/wild/maps/Route4.asm" +INCLUDE "data/wild/maps/Route24.asm" +INCLUDE "data/wild/maps/Route25.asm" +INCLUDE "data/wild/maps/Route9.asm" +INCLUDE "data/wild/maps/Route5.asm" +INCLUDE "data/wild/maps/Route6.asm" +INCLUDE "data/wild/maps/Route11.asm" +INCLUDE "data/wild/maps/RockTunnel1F.asm" +INCLUDE "data/wild/maps/RockTunnelB1F.asm" +INCLUDE "data/wild/maps/Route10.asm" +INCLUDE "data/wild/maps/Route12.asm" +INCLUDE "data/wild/maps/Route8.asm" +INCLUDE "data/wild/maps/Route7.asm" +INCLUDE "data/wild/maps/PokemonTower1F.asm" +INCLUDE "data/wild/maps/PokemonTower2F.asm" +INCLUDE "data/wild/maps/PokemonTower3F.asm" +INCLUDE "data/wild/maps/PokemonTower4F.asm" +INCLUDE "data/wild/maps/PokemonTower5F.asm" +INCLUDE "data/wild/maps/PokemonTower6F.asm" +INCLUDE "data/wild/maps/PokemonTower7F.asm" +INCLUDE "data/wild/maps/Route13.asm" +INCLUDE "data/wild/maps/Route14.asm" +INCLUDE "data/wild/maps/Route15.asm" +INCLUDE "data/wild/maps/Route16.asm" +INCLUDE "data/wild/maps/Route17.asm" +INCLUDE "data/wild/maps/Route18.asm" +INCLUDE "data/wild/maps/SafariZoneCenter.asm" +INCLUDE "data/wild/maps/SafariZoneEast.asm" +INCLUDE "data/wild/maps/SafariZoneNorth.asm" +INCLUDE "data/wild/maps/SafariZoneWest.asm" +INCLUDE "data/wild/maps/SeaRoutes.asm" +INCLUDE "data/wild/maps/SeafoamIslands1F.asm" +INCLUDE "data/wild/maps/SeafoamIslandsB1F.asm" +INCLUDE "data/wild/maps/SeafoamIslandsB2F.asm" +INCLUDE "data/wild/maps/SeafoamIslandsB3F.asm" +INCLUDE "data/wild/maps/SeafoamIslandsB4F.asm" +INCLUDE "data/wild/maps/PokemonMansion1F.asm" +INCLUDE "data/wild/maps/PokemonMansion2F.asm" +INCLUDE "data/wild/maps/PokemonMansion3F.asm" +INCLUDE "data/wild/maps/PokemonMansionB1F.asm" +INCLUDE "data/wild/maps/Route21.asm" +INCLUDE "data/wild/maps/CeruleanCave1F.asm" +INCLUDE "data/wild/maps/CeruleanCave2F.asm" +INCLUDE "data/wild/maps/CeruleanCaveB1F.asm" +INCLUDE "data/wild/maps/PowerPlant.asm" +INCLUDE "data/wild/maps/Route23.asm" +INCLUDE "data/wild/maps/VictoryRoad2F.asm" +INCLUDE "data/wild/maps/VictoryRoad3F.asm" +INCLUDE "data/wild/maps/VictoryRoad1F.asm" +INCLUDE "data/wild/maps/DiglettsCave.asm" diff --git a/data/wild/maps/CeruleanCave1F.asm b/data/wild/maps/CeruleanCave1F.asm new file mode 100644 index 00000000..20e8643a --- /dev/null +++ b/data/wild/maps/CeruleanCave1F.asm @@ -0,0 +1,18 @@ +DungeonMons1: + db $0A + db 46,GOLBAT + db 46,HYPNO + db 46,MAGNETON + db 49,DODRIO + db 49,VENOMOTH + IF DEF(_RED) + db 52,ARBOK + ENDC + IF DEF(_BLUE) + db 52,SANDSLASH + ENDC + db 49,KADABRA + db 52,PARASECT + db 53,RAICHU + db 53,DITTO + db $00 diff --git a/data/wild/maps/CeruleanCave2F.asm b/data/wild/maps/CeruleanCave2F.asm new file mode 100644 index 00000000..5afe55ac --- /dev/null +++ b/data/wild/maps/CeruleanCave2F.asm @@ -0,0 +1,13 @@ +DungeonMons2: + db $0F + db 51,DODRIO + db 51,VENOMOTH + db 51,KADABRA + db 52,RHYDON + db 52,MAROWAK + db 52,ELECTRODE + db 56,CHANSEY + db 54,WIGGLYTUFF + db 55,DITTO + db 60,DITTO + db $00 diff --git a/data/wild/maps/CeruleanCaveB1F.asm b/data/wild/maps/CeruleanCaveB1F.asm new file mode 100644 index 00000000..245d5912 --- /dev/null +++ b/data/wild/maps/CeruleanCaveB1F.asm @@ -0,0 +1,18 @@ +DungeonMonsB1: + db $19 + db 55,RHYDON + db 55,MAROWAK + db 55,ELECTRODE + db 64,CHANSEY + db 64,PARASECT + db 64,RAICHU + IF DEF(_RED) + db 57,ARBOK + ENDC + IF DEF(_BLUE) + db 57,SANDSLASH + ENDC + db 65,DITTO + db 63,DITTO + db 67,DITTO + db $00 diff --git a/data/wild/maps/DiglettsCave.asm b/data/wild/maps/DiglettsCave.asm new file mode 100755 index 00000000..37512687 --- /dev/null +++ b/data/wild/maps/DiglettsCave.asm @@ -0,0 +1,13 @@ +CaveMons: + db $14 + db 18,DIGLETT + db 19,DIGLETT + db 17,DIGLETT + db 20,DIGLETT + db 16,DIGLETT + db 15,DIGLETT + db 21,DIGLETT + db 22,DIGLETT + db 29,DUGTRIO + db 31,DUGTRIO + db $00 diff --git a/data/wild/maps/MtMoon1F.asm b/data/wild/maps/MtMoon1F.asm new file mode 100755 index 00000000..44b34c45 --- /dev/null +++ b/data/wild/maps/MtMoon1F.asm @@ -0,0 +1,13 @@ +MoonMons1: + db $0A + db 8,ZUBAT + db 7,ZUBAT + db 9,ZUBAT + db 8,GEODUDE + db 6,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 8,PARAS + db 11,ZUBAT + db 8,CLEFAIRY + db $00 diff --git a/data/wild/maps/MtMoonB1F.asm b/data/wild/maps/MtMoonB1F.asm new file mode 100755 index 00000000..5c0d8a53 --- /dev/null +++ b/data/wild/maps/MtMoonB1F.asm @@ -0,0 +1,13 @@ +MoonMonsB1: + db $0A + db 8,ZUBAT + db 7,ZUBAT + db 7,GEODUDE + db 8,GEODUDE + db 9,ZUBAT + db 10,PARAS + db 10,ZUBAT + db 11,ZUBAT + db 9,CLEFAIRY + db 9,GEODUDE + db $00 diff --git a/data/wild/maps/MtMoonB2F.asm b/data/wild/maps/MtMoonB2F.asm new file mode 100755 index 00000000..cbf97e7e --- /dev/null +++ b/data/wild/maps/MtMoonB2F.asm @@ -0,0 +1,13 @@ +MoonMonsB2: + db $0A + db 9,ZUBAT + db 9,GEODUDE + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 10,PARAS + db 12,PARAS + db 10,CLEFAIRY + db 12,ZUBAT + db 12,CLEFAIRY + db $00 diff --git a/data/wild/maps/PokemonMansion1F.asm b/data/wild/maps/PokemonMansion1F.asm new file mode 100755 index 00000000..22ad032b --- /dev/null +++ b/data/wild/maps/PokemonMansion1F.asm @@ -0,0 +1,27 @@ +MansionMons1: + db $0A + IF DEF(_RED) + db 32,KOFFING + db 30,KOFFING + db 34,PONYTA + db 30,PONYTA + db 34,GROWLITHE + db 32,PONYTA + db 30,GRIMER + db 28,PONYTA + db 37,WEEZING + db 39,MUK + ENDC + IF DEF(_BLUE) + db 32,GRIMER + db 30,GRIMER + db 34,PONYTA + db 30,PONYTA + db 34,VULPIX + db 32,PONYTA + db 30,KOFFING + db 28,PONYTA + db 37,MUK + db 39,WEEZING + ENDC + db $00 diff --git a/data/wild/maps/PokemonMansion2F.asm b/data/wild/maps/PokemonMansion2F.asm new file mode 100755 index 00000000..985474fc --- /dev/null +++ b/data/wild/maps/PokemonMansion2F.asm @@ -0,0 +1,27 @@ +MansionMons2: + db $0A + IF DEF(_RED) + db 32,GROWLITHE + db 34,KOFFING + db 34,KOFFING + db 30,PONYTA + db 30,KOFFING + db 32,PONYTA + db 30,GRIMER + db 28,PONYTA + db 39,WEEZING + db 37,MUK + ENDC + IF DEF(_BLUE) + db 32,VULPIX + db 34,GRIMER + db 34,GRIMER + db 30,PONYTA + db 30,GRIMER + db 32,PONYTA + db 30,KOFFING + db 28,PONYTA + db 39,MUK + db 37,WEEZING + ENDC + db $00 diff --git a/data/wild/maps/PokemonMansion3F.asm b/data/wild/maps/PokemonMansion3F.asm new file mode 100755 index 00000000..9c5521ae --- /dev/null +++ b/data/wild/maps/PokemonMansion3F.asm @@ -0,0 +1,27 @@ +MansionMons3: + db $0A + IF DEF(_RED) + db 31,KOFFING + db 33,GROWLITHE + db 35,KOFFING + db 32,PONYTA + db 34,PONYTA + db 40,WEEZING + db 34,GRIMER + db 38,WEEZING + db 36,PONYTA + db 42,MUK + ENDC + IF DEF(_BLUE) + db 31,GRIMER + db 33,VULPIX + db 35,GRIMER + db 32,PONYTA + db 34,MAGMAR + db 40,MUK + db 34,KOFFING + db 38,MUK + db 36,PONYTA + db 42,WEEZING + ENDC + db $00 diff --git a/data/wild/maps/PokemonMansionB1F.asm b/data/wild/maps/PokemonMansionB1F.asm new file mode 100755 index 00000000..83266ddd --- /dev/null +++ b/data/wild/maps/PokemonMansionB1F.asm @@ -0,0 +1,27 @@ +MansionMonsB1: + db $0A + IF DEF(_RED) + db 33,KOFFING + db 31,KOFFING + db 35,GROWLITHE + db 32,PONYTA + db 31,KOFFING + db 40,WEEZING + db 34,PONYTA + db 35,GRIMER + db 42,WEEZING + db 42,MUK + ENDC + IF DEF(_BLUE) + db 33,GRIMER + db 31,GRIMER + db 35,VULPIX + db 32,PONYTA + db 31,GRIMER + db 40,MUK + db 34,PONYTA + db 35,KOFFING + db 38,MAGMAR + db 42,WEEZING + ENDC + db $00 diff --git a/data/wild/maps/PokemonTower1F.asm b/data/wild/maps/PokemonTower1F.asm new file mode 100755 index 00000000..df951e70 --- /dev/null +++ b/data/wild/maps/PokemonTower1F.asm @@ -0,0 +1,3 @@ +TowerMons1: + db $00 + db $00 diff --git a/data/wild/maps/PokemonTower2F.asm b/data/wild/maps/PokemonTower2F.asm new file mode 100755 index 00000000..dcbe0da0 --- /dev/null +++ b/data/wild/maps/PokemonTower2F.asm @@ -0,0 +1,3 @@ +TowerMons2: + db $00 + db $00 diff --git a/data/wild/maps/PokemonTower3F.asm b/data/wild/maps/PokemonTower3F.asm new file mode 100755 index 00000000..135ed84f --- /dev/null +++ b/data/wild/maps/PokemonTower3F.asm @@ -0,0 +1,13 @@ +TowerMons3: + db $0A + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 24,GASTLY + db 20,CUBONE + db 22,CUBONE + db 25,HAUNTER + db $00 diff --git a/data/wild/maps/PokemonTower4F.asm b/data/wild/maps/PokemonTower4F.asm new file mode 100755 index 00000000..0c84b0cf --- /dev/null +++ b/data/wild/maps/PokemonTower4F.asm @@ -0,0 +1,13 @@ +TowerMons4: + db $0A + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,HAUNTER + db 20,CUBONE + db 22,CUBONE + db 24,GASTLY + db $00 diff --git a/data/wild/maps/PokemonTower5F.asm b/data/wild/maps/PokemonTower5F.asm new file mode 100755 index 00000000..440dbf8d --- /dev/null +++ b/data/wild/maps/PokemonTower5F.asm @@ -0,0 +1,13 @@ +TowerMons5: + db $0A + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,HAUNTER + db 20,CUBONE + db 22,CUBONE + db 24,GASTLY + db $00 diff --git a/data/wild/maps/PokemonTower6F.asm b/data/wild/maps/PokemonTower6F.asm new file mode 100755 index 00000000..553fdb5d --- /dev/null +++ b/data/wild/maps/PokemonTower6F.asm @@ -0,0 +1,13 @@ +TowerMons6: + db $0F + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 20,GASTLY + db 19,GASTLY + db 26,HAUNTER + db 22,CUBONE + db 24,CUBONE + db 28,HAUNTER + db $00 diff --git a/data/wild/maps/PokemonTower7F.asm b/data/wild/maps/PokemonTower7F.asm new file mode 100755 index 00000000..0f7e66e9 --- /dev/null +++ b/data/wild/maps/PokemonTower7F.asm @@ -0,0 +1,13 @@ +TowerMons7: + db $0F + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 20,GASTLY + db 28,HAUNTER + db 22,CUBONE + db 24,CUBONE + db 28,HAUNTER + db 30,HAUNTER + db $00 diff --git a/data/wild/maps/PowerPlant.asm b/data/wild/maps/PowerPlant.asm new file mode 100755 index 00000000..35eece95 --- /dev/null +++ b/data/wild/maps/PowerPlant.asm @@ -0,0 +1,19 @@ +PowerPlantMons: + db $0A + db 21,VOLTORB + db 21,MAGNEMITE + db 20,PIKACHU + db 24,PIKACHU + db 23,MAGNEMITE + db 23,VOLTORB + db 32,MAGNETON + db 35,MAGNETON + IF DEF(_RED) + db 33,ELECTABUZZ + db 36,ELECTABUZZ + ENDC + IF DEF(_BLUE) + db 33,RAICHU + db 36,RAICHU + ENDC + db $00 diff --git a/data/wild/maps/RockTunnel1F.asm b/data/wild/maps/RockTunnel1F.asm new file mode 100755 index 00000000..a36f2092 --- /dev/null +++ b/data/wild/maps/RockTunnel1F.asm @@ -0,0 +1,13 @@ +TunnelMonsB1: + db $0F + db 16,ZUBAT + db 17,ZUBAT + db 17,GEODUDE + db 15,MACHOP + db 16,GEODUDE + db 18,ZUBAT + db 15,ZUBAT + db 17,MACHOP + db 13,ONIX + db 15,ONIX + db $00 diff --git a/data/wild/maps/RockTunnelB1F.asm b/data/wild/maps/RockTunnelB1F.asm new file mode 100755 index 00000000..2fc7ef94 --- /dev/null +++ b/data/wild/maps/RockTunnelB1F.asm @@ -0,0 +1,13 @@ +TunnelMonsB2: + db $0F + db 16,ZUBAT + db 17,ZUBAT + db 17,GEODUDE + db 15,MACHOP + db 16,GEODUDE + db 18,ZUBAT + db 17,MACHOP + db 17,ONIX + db 13,ONIX + db 18,GEODUDE + db $00 diff --git a/data/wild/maps/Route1.asm b/data/wild/maps/Route1.asm new file mode 100755 index 00000000..f618c34f --- /dev/null +++ b/data/wild/maps/Route1.asm @@ -0,0 +1,13 @@ +Route1Mons: + db $19 + db 3,PIDGEY + db 3,RATTATA + db 3,RATTATA + db 2,RATTATA + db 2,PIDGEY + db 3,PIDGEY + db 3,PIDGEY + db 4,RATTATA + db 4,PIDGEY + db 5,PIDGEY + db $00 diff --git a/data/wild/maps/Route10.asm b/data/wild/maps/Route10.asm new file mode 100755 index 00000000..34e0b5ee --- /dev/null +++ b/data/wild/maps/Route10.asm @@ -0,0 +1,27 @@ +Route10Mons: + db $0F + IF DEF(_RED) + db 16,VOLTORB + db 16,SPEAROW + db 14,VOLTORB + db 11,EKANS + db 13,SPEAROW + db 15,EKANS + db 17,VOLTORB + db 17,SPEAROW + db 13,EKANS + db 17,EKANS + ENDC + IF DEF(_BLUE) + db 16,VOLTORB + db 16,SPEAROW + db 14,VOLTORB + db 11,SANDSHREW + db 13,SPEAROW + db 15,SANDSHREW + db 17,VOLTORB + db 17,SPEAROW + db 13,SANDSHREW + db 17,SANDSHREW + ENDC + db $00 diff --git a/data/wild/maps/Route11.asm b/data/wild/maps/Route11.asm new file mode 100755 index 00000000..9e4e3644 --- /dev/null +++ b/data/wild/maps/Route11.asm @@ -0,0 +1,27 @@ +Route11Mons: + db $0F + IF DEF(_RED) + db 14,EKANS + db 15,SPEAROW + db 12,EKANS + db 9,DROWZEE + db 13,SPEAROW + db 13,DROWZEE + db 15,EKANS + db 17,SPEAROW + db 11,DROWZEE + db 15,DROWZEE + ENDC + IF DEF(_BLUE) + db 14,SANDSHREW + db 15,SPEAROW + db 12,SANDSHREW + db 9,DROWZEE + db 13,SPEAROW + db 13,DROWZEE + db 15,SANDSHREW + db 17,SPEAROW + db 11,DROWZEE + db 15,DROWZEE + ENDC + db $00 diff --git a/data/wild/maps/Route12.asm b/data/wild/maps/Route12.asm new file mode 100755 index 00000000..45dfbc9d --- /dev/null +++ b/data/wild/maps/Route12.asm @@ -0,0 +1,27 @@ +Route12Mons: + db $0F + IF DEF(_RED) + db 24,ODDISH + db 25,PIDGEY + db 23,PIDGEY + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 27,PIDGEY + db 28,GLOOM + db 30,GLOOM + ENDC + IF DEF(_BLUE) + db 24,BELLSPROUT + db 25,PIDGEY + db 23,PIDGEY + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 27,PIDGEY + db 28,WEEPINBELL + db 30,WEEPINBELL + ENDC + db $00 diff --git a/data/wild/maps/Route13.asm b/data/wild/maps/Route13.asm new file mode 100755 index 00000000..2a1a6cb5 --- /dev/null +++ b/data/wild/maps/Route13.asm @@ -0,0 +1,28 @@ +Route13Mons: + IF DEF(_RED) + db $14 + db 24,ODDISH + db 25,PIDGEY + db 27,PIDGEY + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 25,DITTO + db 28,GLOOM + db 30,GLOOM + ENDC + IF DEF(_BLUE) + db $14 + db 24,BELLSPROUT + db 25,PIDGEY + db 27,PIDGEY + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 25,DITTO + db 28,WEEPINBELL + db 30,WEEPINBELL + ENDC + db $00 diff --git a/data/wild/maps/Route14.asm b/data/wild/maps/Route14.asm new file mode 100755 index 00000000..aad5aa48 --- /dev/null +++ b/data/wild/maps/Route14.asm @@ -0,0 +1,27 @@ +Route14Mons: + db $0F + IF DEF(_RED) + db 24,ODDISH + db 26,PIDGEY + db 23,DITTO + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 30,GLOOM + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + IF DEF(_BLUE) + db 24,BELLSPROUT + db 26,PIDGEY + db 23,DITTO + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 30,WEEPINBELL + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + db $00 diff --git a/data/wild/maps/Route15.asm b/data/wild/maps/Route15.asm new file mode 100755 index 00000000..b4762230 --- /dev/null +++ b/data/wild/maps/Route15.asm @@ -0,0 +1,27 @@ +Route15Mons: + db $0F + IF DEF(_RED) + db 24,ODDISH + db 26,DITTO + db 23,PIDGEY + db 26,VENONAT + db 22,ODDISH + db 28,VENONAT + db 26,ODDISH + db 30,GLOOM + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + IF DEF(_BLUE) + db 24,BELLSPROUT + db 26,DITTO + db 23,PIDGEY + db 26,VENONAT + db 22,BELLSPROUT + db 28,VENONAT + db 26,BELLSPROUT + db 30,WEEPINBELL + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + db $00 diff --git a/data/wild/maps/Route16.asm b/data/wild/maps/Route16.asm new file mode 100755 index 00000000..c2421c50 --- /dev/null +++ b/data/wild/maps/Route16.asm @@ -0,0 +1,13 @@ +Route16Mons: + db $19 + db 20,SPEAROW + db 22,SPEAROW + db 18,RATTATA + db 20,DODUO + db 20,RATTATA + db 18,DODUO + db 22,DODUO + db 22,RATTATA + db 23,RATICATE + db 25,RATICATE + db $00 diff --git a/data/wild/maps/Route17.asm b/data/wild/maps/Route17.asm new file mode 100755 index 00000000..8dffd9a3 --- /dev/null +++ b/data/wild/maps/Route17.asm @@ -0,0 +1,13 @@ +Route17Mons: + db $19 + db 20,SPEAROW + db 22,SPEAROW + db 25,RATICATE + db 24,DODUO + db 27,RATICATE + db 26,DODUO + db 28,DODUO + db 29,RATICATE + db 25,FEAROW + db 27,FEAROW + db $00 diff --git a/data/wild/maps/Route18.asm b/data/wild/maps/Route18.asm new file mode 100755 index 00000000..47bd247d --- /dev/null +++ b/data/wild/maps/Route18.asm @@ -0,0 +1,13 @@ +Route18Mons: + db $19 + db 20,SPEAROW + db 22,SPEAROW + db 25,RATICATE + db 24,DODUO + db 25,FEAROW + db 26,DODUO + db 28,DODUO + db 29,RATICATE + db 27,FEAROW + db 29,FEAROW + db $00 diff --git a/data/wild/maps/Route2.asm b/data/wild/maps/Route2.asm new file mode 100755 index 00000000..ad958ea5 --- /dev/null +++ b/data/wild/maps/Route2.asm @@ -0,0 +1,24 @@ +Route2Mons: + db $19 + db 3,RATTATA + db 3,PIDGEY + db 4,PIDGEY + db 4,RATTATA + db 5,PIDGEY + IF DEF(_RED) + db 3,WEEDLE + ENDC + IF DEF(_BLUE) + db 3,CATERPIE + ENDC + db 2,RATTATA + db 5,RATTATA + IF DEF(_RED) + db 4,WEEDLE + db 5,WEEDLE + ENDC + IF DEF(_BLUE) + db 4,CATERPIE + db 5,CATERPIE + ENDC + db $00 diff --git a/data/wild/maps/Route21.asm b/data/wild/maps/Route21.asm new file mode 100755 index 00000000..3cc73ba0 --- /dev/null +++ b/data/wild/maps/Route21.asm @@ -0,0 +1,23 @@ +Route21Mons: + db $19 + db 21,RATTATA + db 23,PIDGEY + db 30,RATICATE + db 23,RATTATA + db 21,PIDGEY + db 30,PIDGEOTTO + db 32,PIDGEOTTO + db 28,TANGELA + db 30,TANGELA + db 32,TANGELA + db $05 + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 20,TENTACOOL + db 30,TENTACOOL + db 35,TENTACOOL + db 40,TENTACOOL diff --git a/data/wild/maps/Route22.asm b/data/wild/maps/Route22.asm new file mode 100755 index 00000000..750a2f4e --- /dev/null +++ b/data/wild/maps/Route22.asm @@ -0,0 +1,27 @@ +Route22Mons: + db $19 + IF DEF(_RED) + db 3,RATTATA + db 3,NIDORAN_M + db 4,RATTATA + db 4,NIDORAN_M + db 2,RATTATA + db 2,NIDORAN_M + db 3,SPEAROW + db 5,SPEAROW + db 3,NIDORAN_F + db 4,NIDORAN_F + ENDC + IF DEF(_BLUE) + db 3,RATTATA + db 3,NIDORAN_F + db 4,RATTATA + db 4,NIDORAN_F + db 2,RATTATA + db 2,NIDORAN_F + db 3,SPEAROW + db 5,SPEAROW + db 3,NIDORAN_M + db 4,NIDORAN_M + ENDC + db $00 diff --git a/data/wild/maps/Route23.asm b/data/wild/maps/Route23.asm new file mode 100755 index 00000000..a057d24d --- /dev/null +++ b/data/wild/maps/Route23.asm @@ -0,0 +1,23 @@ +Route23Mons: + db $0A + IF DEF(_RED) + db 26,EKANS + ENDC + IF DEF(_BLUE) + db 26,SANDSHREW + ENDC + db 33,DITTO + db 26,SPEAROW + db 38,FEAROW + db 38,DITTO + db 38,FEAROW + IF DEF(_RED) + db 41,ARBOK + ENDC + IF DEF(_BLUE) + db 41,SANDSLASH + ENDC + db 43,DITTO + db 41,FEAROW + db 43,FEAROW + db $00 diff --git a/data/wild/maps/Route24.asm b/data/wild/maps/Route24.asm new file mode 100755 index 00000000..3a745f36 --- /dev/null +++ b/data/wild/maps/Route24.asm @@ -0,0 +1,27 @@ +Route24Mons: + db $19 + IF DEF(_RED) + db 7,WEEDLE + db 8,KAKUNA + db 12,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 10,ABRA + db 14,ODDISH + db 13,PIDGEY + db 8,ABRA + db 12,ABRA + ENDC + IF DEF(_BLUE) + db 7,CATERPIE + db 8,METAPOD + db 12,PIDGEY + db 12,BELLSPROUT + db 13,BELLSPROUT + db 10,ABRA + db 14,BELLSPROUT + db 13,PIDGEY + db 8,ABRA + db 12,ABRA + ENDC + db $00 diff --git a/data/wild/maps/Route25.asm b/data/wild/maps/Route25.asm new file mode 100755 index 00000000..4884fa64 --- /dev/null +++ b/data/wild/maps/Route25.asm @@ -0,0 +1,27 @@ +Route25Mons: + db $0F + IF DEF(_RED) + db 8,WEEDLE + db 9,KAKUNA + db 13,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 12,ABRA + db 14,ODDISH + db 10,ABRA + db 7,METAPOD + db 8,CATERPIE + ENDC + IF DEF(_BLUE) + db 8,CATERPIE + db 9,METAPOD + db 13,PIDGEY + db 12,BELLSPROUT + db 13,BELLSPROUT + db 12,ABRA + db 14,BELLSPROUT + db 10,ABRA + db 7,KAKUNA + db 8,WEEDLE + ENDC + db $00 diff --git a/data/wild/maps/Route3.asm b/data/wild/maps/Route3.asm new file mode 100755 index 00000000..dea820a4 --- /dev/null +++ b/data/wild/maps/Route3.asm @@ -0,0 +1,13 @@ +Route3Mons: + db $14 + db 6,PIDGEY + db 5,SPEAROW + db 7,PIDGEY + db 6,SPEAROW + db 7,SPEAROW + db 8,PIDGEY + db 8,SPEAROW + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF + db $00 diff --git a/data/wild/maps/Route4.asm b/data/wild/maps/Route4.asm new file mode 100755 index 00000000..624d58de --- /dev/null +++ b/data/wild/maps/Route4.asm @@ -0,0 +1,27 @@ +Route4Mons: + db $14 + IF DEF(_RED) + db 10,RATTATA + db 10,SPEAROW + db 8,RATTATA + db 6,EKANS + db 8,SPEAROW + db 10,EKANS + db 12,RATTATA + db 12,SPEAROW + db 8,EKANS + db 12,EKANS + ENDC + IF DEF(_BLUE) + db 10,RATTATA + db 10,SPEAROW + db 8,RATTATA + db 6,SANDSHREW + db 8,SPEAROW + db 10,SANDSHREW + db 12,RATTATA + db 12,SPEAROW + db 8,SANDSHREW + db 12,SANDSHREW + ENDC + db $00 diff --git a/data/wild/maps/Route5.asm b/data/wild/maps/Route5.asm new file mode 100755 index 00000000..cb8c583b --- /dev/null +++ b/data/wild/maps/Route5.asm @@ -0,0 +1,27 @@ +Route5Mons: + db $0F + IF DEF(_RED) + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MANKEY + db 12,MANKEY + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MANKEY + db 16,MANKEY + ENDC + IF DEF(_BLUE) + db 13,BELLSPROUT + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,BELLSPROUT + db 16,BELLSPROUT + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + ENDC + db $00 diff --git a/data/wild/maps/Route6.asm b/data/wild/maps/Route6.asm new file mode 100755 index 00000000..92512ffb --- /dev/null +++ b/data/wild/maps/Route6.asm @@ -0,0 +1,27 @@ +Route6Mons: + db $0F + IF DEF(_RED) + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MANKEY + db 12,MANKEY + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MANKEY + db 16,MANKEY + ENDC + IF DEF(_BLUE) + db 13,BELLSPROUT + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,BELLSPROUT + db 16,BELLSPROUT + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + ENDC + db $00 diff --git a/data/wild/maps/Route7.asm b/data/wild/maps/Route7.asm new file mode 100755 index 00000000..559c98ee --- /dev/null +++ b/data/wild/maps/Route7.asm @@ -0,0 +1,27 @@ +Route7Mons: + db $0F + IF DEF(_RED) + db 19,PIDGEY + db 19,ODDISH + db 17,MANKEY + db 22,ODDISH + db 22,PIDGEY + db 18,MANKEY + db 18,GROWLITHE + db 20,GROWLITHE + db 19,MANKEY + db 20,MANKEY + ENDC + IF DEF(_BLUE) + db 19,PIDGEY + db 19,BELLSPROUT + db 17,MEOWTH + db 22,BELLSPROUT + db 22,PIDGEY + db 18,MEOWTH + db 18,VULPIX + db 20,VULPIX + db 19,MEOWTH + db 20,MEOWTH + ENDC + db $00 diff --git a/data/wild/maps/Route8.asm b/data/wild/maps/Route8.asm new file mode 100755 index 00000000..8a0bfa31 --- /dev/null +++ b/data/wild/maps/Route8.asm @@ -0,0 +1,27 @@ +Route8Mons: + db $0F + IF DEF(_RED) + db 18,PIDGEY + db 18,MANKEY + db 17,EKANS + db 16,GROWLITHE + db 20,PIDGEY + db 20,MANKEY + db 19,EKANS + db 17,GROWLITHE + db 15,GROWLITHE + db 18,GROWLITHE + ENDC + IF DEF(_BLUE) + db 18,PIDGEY + db 18,MEOWTH + db 17,SANDSHREW + db 16,VULPIX + db 20,PIDGEY + db 20,MEOWTH + db 19,SANDSHREW + db 17,VULPIX + db 15,VULPIX + db 18,VULPIX + ENDC + db $00 diff --git a/data/wild/maps/Route9.asm b/data/wild/maps/Route9.asm new file mode 100755 index 00000000..716589b0 --- /dev/null +++ b/data/wild/maps/Route9.asm @@ -0,0 +1,27 @@ +Route9Mons: + db $0F + IF DEF(_RED) + db 16,RATTATA + db 16,SPEAROW + db 14,RATTATA + db 11,EKANS + db 13,SPEAROW + db 15,EKANS + db 17,RATTATA + db 17,SPEAROW + db 13,EKANS + db 17,EKANS + ENDC + IF DEF(_BLUE) + db 16,RATTATA + db 16,SPEAROW + db 14,RATTATA + db 11,SANDSHREW + db 13,SPEAROW + db 15,SANDSHREW + db 17,RATTATA + db 17,SPEAROW + db 13,SANDSHREW + db 17,SANDSHREW + ENDC + db $00 diff --git a/data/wild/maps/SafariZoneCenter.asm b/data/wild/maps/SafariZoneCenter.asm new file mode 100755 index 00000000..0cd5323a --- /dev/null +++ b/data/wild/maps/SafariZoneCenter.asm @@ -0,0 +1,27 @@ +ZoneMonsCenter: + db $1E + IF DEF(_RED) + db 22,NIDORAN_M + db 25,RHYHORN + db 22,VENONAT + db 24,EXEGGCUTE + db 31,NIDORINO + db 25,EXEGGCUTE + db 31,NIDORINA + db 30,PARASECT + db 23,SCYTHER + db 23,CHANSEY + ENDC + IF DEF(_BLUE) + db 22,NIDORAN_F + db 25,RHYHORN + db 22,VENONAT + db 24,EXEGGCUTE + db 31,NIDORINA + db 25,EXEGGCUTE + db 31,NIDORINO + db 30,PARASECT + db 23,PINSIR + db 23,CHANSEY + ENDC + db $00 diff --git a/data/wild/maps/SafariZoneEast.asm b/data/wild/maps/SafariZoneEast.asm new file mode 100755 index 00000000..3d77b6fe --- /dev/null +++ b/data/wild/maps/SafariZoneEast.asm @@ -0,0 +1,27 @@ +ZoneMons1: + db $1E + IF DEF(_RED) + db 24,NIDORAN_M + db 26,DODUO + db 22,PARAS + db 25,EXEGGCUTE + db 33,NIDORINO + db 23,EXEGGCUTE + db 24,NIDORAN_F + db 25,PARASECT + db 25,KANGASKHAN + db 28,SCYTHER + ENDC + IF DEF(_BLUE) + db 24,NIDORAN_F + db 26,DODUO + db 22,PARAS + db 25,EXEGGCUTE + db 33,NIDORINA + db 23,EXEGGCUTE + db 24,NIDORAN_M + db 25,PARASECT + db 25,KANGASKHAN + db 28,PINSIR + ENDC + db $00 diff --git a/data/wild/maps/SafariZoneNorth.asm b/data/wild/maps/SafariZoneNorth.asm new file mode 100755 index 00000000..c1b6a547 --- /dev/null +++ b/data/wild/maps/SafariZoneNorth.asm @@ -0,0 +1,28 @@ +ZoneMons2: + db $1E + IF DEF(_RED) + db 22,NIDORAN_M + ENDC + IF DEF(_BLUE) + db 22,NIDORAN_F + ENDC + db 26,RHYHORN + db 23,PARAS + db 25,EXEGGCUTE + IF DEF(_RED) + db 30,NIDORINO + ENDC + IF DEF(_BLUE) + db 30,NIDORINA + ENDC + db 27,EXEGGCUTE + IF DEF(_RED) + db 30,NIDORINA + ENDC + IF DEF(_BLUE) + db 30,NIDORINO + ENDC + db 32,VENOMOTH + db 26,CHANSEY + db 28,TAUROS + db $00 diff --git a/data/wild/maps/SafariZoneWest.asm b/data/wild/maps/SafariZoneWest.asm new file mode 100755 index 00000000..47b6a102 --- /dev/null +++ b/data/wild/maps/SafariZoneWest.asm @@ -0,0 +1,27 @@ +ZoneMons3: + db $1E + IF DEF(_RED) + db 25,NIDORAN_M + db 26,DODUO + db 23,VENONAT + db 24,EXEGGCUTE + db 33,NIDORINO + db 26,EXEGGCUTE + db 25,NIDORAN_F + db 31,VENOMOTH + db 26,TAUROS + db 28,KANGASKHAN + ENDC + IF DEF(_BLUE) + db 25,NIDORAN_F + db 26,DODUO + db 23,VENONAT + db 24,EXEGGCUTE + db 33,NIDORINA + db 26,EXEGGCUTE + db 25,NIDORAN_M + db 31,VENOMOTH + db 26,TAUROS + db 28,KANGASKHAN + ENDC + db $00 diff --git a/data/wild/maps/SeaRoutes.asm b/data/wild/maps/SeaRoutes.asm new file mode 100755 index 00000000..07c6a187 --- /dev/null +++ b/data/wild/maps/SeaRoutes.asm @@ -0,0 +1,13 @@ +WaterMons: + db $00 + db $05 + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 20,TENTACOOL + db 30,TENTACOOL + db 35,TENTACOOL + db 40,TENTACOOL diff --git a/data/wild/maps/SeafoamIslands1F.asm b/data/wild/maps/SeafoamIslands1F.asm new file mode 100755 index 00000000..3c431f9a --- /dev/null +++ b/data/wild/maps/SeafoamIslands1F.asm @@ -0,0 +1,27 @@ +IslandMons1: + db $0F + IF DEF(_RED) + db 30,SEEL + db 30,SLOWPOKE + db 30,SHELLDER + db 30,HORSEA + db 28,HORSEA + db 21,ZUBAT + db 29,GOLBAT + db 28,PSYDUCK + db 28,SHELLDER + db 38,GOLDUCK + ENDC + IF DEF(_BLUE) + db 30,SEEL + db 30,PSYDUCK + db 30,STARYU + db 30,KRABBY + db 28,KRABBY + db 21,ZUBAT + db 29,GOLBAT + db 28,SLOWPOKE + db 28,STARYU + db 38,SLOWBRO + ENDC + db $00 diff --git a/data/wild/maps/SeafoamIslandsB1F.asm b/data/wild/maps/SeafoamIslandsB1F.asm new file mode 100755 index 00000000..6f96f240 --- /dev/null +++ b/data/wild/maps/SeafoamIslandsB1F.asm @@ -0,0 +1,27 @@ +IslandMonsB1: + db $0A + IF DEF(_RED) + db 30,STARYU + db 30,HORSEA + db 32,SHELLDER + db 32,HORSEA + db 28,SLOWPOKE + db 30,SEEL + db 30,SLOWPOKE + db 28,SEEL + db 38,DEWGONG + db 37,SEADRA + ENDC + IF DEF(_BLUE) + db 30,SHELLDER + db 30,KRABBY + db 32,STARYU + db 32,KRABBY + db 28,PSYDUCK + db 30,SEEL + db 30,PSYDUCK + db 28,SEEL + db 38,DEWGONG + db 37,KINGLER + ENDC + db $00 diff --git a/data/wild/maps/SeafoamIslandsB2F.asm b/data/wild/maps/SeafoamIslandsB2F.asm new file mode 100755 index 00000000..7191fea9 --- /dev/null +++ b/data/wild/maps/SeafoamIslandsB2F.asm @@ -0,0 +1,27 @@ +IslandMonsB2: + db $0A + IF DEF(_RED) + db 30,SEEL + db 30,SLOWPOKE + db 32,SEEL + db 32,SLOWPOKE + db 28,HORSEA + db 30,STARYU + db 30,HORSEA + db 28,SHELLDER + db 30,GOLBAT + db 37,SLOWBRO + ENDC + IF DEF(_BLUE) + db 30,SEEL + db 30,PSYDUCK + db 32,SEEL + db 32,PSYDUCK + db 28,KRABBY + db 30,SHELLDER + db 30,KRABBY + db 28,STARYU + db 30,GOLBAT + db 37,GOLDUCK + ENDC + db $00 diff --git a/data/wild/maps/SeafoamIslandsB3F.asm b/data/wild/maps/SeafoamIslandsB3F.asm new file mode 100755 index 00000000..9778c0e9 --- /dev/null +++ b/data/wild/maps/SeafoamIslandsB3F.asm @@ -0,0 +1,27 @@ +IslandMonsB3: + db $0A + IF DEF(_RED) + db 31,SLOWPOKE + db 31,SEEL + db 33,SLOWPOKE + db 33,SEEL + db 29,HORSEA + db 31,SHELLDER + db 31,HORSEA + db 29,SHELLDER + db 39,SEADRA + db 37,DEWGONG + ENDC + IF DEF(_BLUE) + db 31,PSYDUCK + db 31,SEEL + db 33,PSYDUCK + db 33,SEEL + db 29,KRABBY + db 31,STARYU + db 31,KRABBY + db 29,STARYU + db 39,KINGLER + db 37,DEWGONG + ENDC + db $00 diff --git a/data/wild/maps/SeafoamIslandsB4F.asm b/data/wild/maps/SeafoamIslandsB4F.asm new file mode 100755 index 00000000..3948470b --- /dev/null +++ b/data/wild/maps/SeafoamIslandsB4F.asm @@ -0,0 +1,27 @@ +IslandMonsB4: + db $0A + IF DEF(_RED) + db 31,HORSEA + db 31,SHELLDER + db 33,HORSEA + db 33,SHELLDER + db 29,SLOWPOKE + db 31,SEEL + db 31,SLOWPOKE + db 29,SEEL + db 39,SLOWBRO + db 32,GOLBAT + ENDC + IF DEF(_BLUE) + db 31,KRABBY + db 31,STARYU + db 33,KRABBY + db 33,STARYU + db 29,PSYDUCK + db 31,SEEL + db 31,PSYDUCK + db 29,SEEL + db 39,GOLDUCK + db 32,GOLBAT + ENDC + db $00 diff --git a/data/wild/maps/VictoryRoad1F.asm b/data/wild/maps/VictoryRoad1F.asm new file mode 100755 index 00000000..60aae31a --- /dev/null +++ b/data/wild/maps/VictoryRoad1F.asm @@ -0,0 +1,13 @@ +PlateauMons1: + db $0F + db 24,MACHOP + db 26,GEODUDE + db 22,ZUBAT + db 36,ONIX + db 39,ONIX + db 42,ONIX + db 41,GRAVELER + db 41,GOLBAT + db 42,MACHOKE + db 43,MAROWAK + db $00 diff --git a/data/wild/maps/VictoryRoad2F.asm b/data/wild/maps/VictoryRoad2F.asm new file mode 100755 index 00000000..580d644d --- /dev/null +++ b/data/wild/maps/VictoryRoad2F.asm @@ -0,0 +1,13 @@ +PlateauMons2: + db $0A + db 22,MACHOP + db 24,GEODUDE + db 26,ZUBAT + db 36,ONIX + db 39,ONIX + db 42,ONIX + db 41,MACHOKE + db 40,GOLBAT + db 40,MAROWAK + db 43,GRAVELER + db $00 diff --git a/data/wild/maps/VictoryRoad3F.asm b/data/wild/maps/VictoryRoad3F.asm new file mode 100755 index 00000000..80d7ef3e --- /dev/null +++ b/data/wild/maps/VictoryRoad3F.asm @@ -0,0 +1,13 @@ +PlateauMons3: + db $0F + db 24,MACHOP + db 26,GEODUDE + db 22,ZUBAT + db 42,ONIX + db 40,VENOMOTH + db 45,ONIX + db 43,GRAVELER + db 41,GOLBAT + db 42,MACHOKE + db 45,MACHOKE + db $00 diff --git a/data/wild/maps/ViridianForest.asm b/data/wild/maps/ViridianForest.asm new file mode 100755 index 00000000..ae9a5a70 --- /dev/null +++ b/data/wild/maps/ViridianForest.asm @@ -0,0 +1,25 @@ +ForestMons: + db $08 + IF DEF(_RED) + db 4,WEEDLE + db 5,KAKUNA + db 3,WEEDLE + db 5,WEEDLE + db 4,KAKUNA + db 6,KAKUNA + db 4,METAPOD + db 3,CATERPIE + ENDC + IF DEF(_BLUE) + db 4,CATERPIE + db 5,METAPOD + db 3,CATERPIE + db 5,CATERPIE + db 4,METAPOD + db 6,METAPOD + db 4,KAKUNA + db 3,WEEDLE + ENDC + db 3,PIKACHU + db 5,PIKACHU + db $00 diff --git a/data/wild/maps/nothing.asm b/data/wild/maps/nothing.asm new file mode 100755 index 00000000..ce7f7ede --- /dev/null +++ b/data/wild/maps/nothing.asm @@ -0,0 +1,3 @@ +NoMons: + db $00 + db $00 diff --git a/engine/events/hidden_objects/book_or_sculpture.asm b/engine/events/hidden_objects/book_or_sculpture.asm new file mode 100644 index 00000000..2d6f278a --- /dev/null +++ b/engine/events/hidden_objects/book_or_sculpture.asm @@ -0,0 +1,21 @@ +BookOrSculptureText:: + TX_ASM + ld hl, PokemonBooksText + ld a, [wCurMapTileset] + cp MANSION ; Celadon Mansion tileset + jr nz, .ok + aCoord 8, 6 + cp $38 + jr nz, .ok + ld hl, DiglettSculptureText +.ok + call PrintText + jp TextScriptEnd + +PokemonBooksText: + TX_FAR _PokemonBooksText + db "@" + +DiglettSculptureText: + TX_FAR _DiglettSculptureText + db "@" diff --git a/engine/events/hidden_objects/diglett_sculpture.asm b/engine/events/hidden_objects/diglett_sculpture.asm deleted file mode 100644 index 2d6f278a..00000000 --- a/engine/events/hidden_objects/diglett_sculpture.asm +++ /dev/null @@ -1,21 +0,0 @@ -BookOrSculptureText:: - TX_ASM - ld hl, PokemonBooksText - ld a, [wCurMapTileset] - cp MANSION ; Celadon Mansion tileset - jr nz, .ok - aCoord 8, 6 - cp $38 - jr nz, .ok - ld hl, DiglettSculptureText -.ok - call PrintText - jp TextScriptEnd - -PokemonBooksText: - TX_FAR _PokemonBooksText - db "@" - -DiglettSculptureText: - TX_FAR _DiglettSculptureText - db "@" diff --git a/main.asm b/main.asm index 3adc2a63..39519774 100755 --- a/main.asm +++ b/main.asm @@ -76,7 +76,7 @@ INCLUDE "engine/overworld/pathfinding.asm" INCLUDE "engine/gfx/hp_bar.asm" INCLUDE "engine/events/hidden_objects/bookshelves.asm" INCLUDE "engine/events/hidden_objects/indigo_plateau_statues.asm" -INCLUDE "engine/events/hidden_objects/diglett_sculpture.asm" +INCLUDE "engine/events/hidden_objects/book_or_sculpture.asm" INCLUDE "engine/events/hidden_objects/elevator.asm" INCLUDE "engine/events/hidden_objects/town_map.asm" INCLUDE "engine/events/hidden_objects/pokemon_stuff.asm" -- cgit v1.3.1-sl0p From 9878f01e29b1443d6c894c1332cbf381fa12646e Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 16:37:47 -0400 Subject: Organize macros/ like pokecrystal While doing so I replaced the StopAllMusic macro with a SFX_STOP_ALL_MUSIC constant and applied it throughout the code. --- audio/play_battle_music.asm | 4 +- audio/pokedex_rating_sfx.asm | 2 +- constants.asm | 1 + constants/audio_constants.asm | 26 ++ constants/map_data_constants.asm | 5 + constants/map_object_constants.asm | 14 + constants/music_constants.asm | 2 + constants/sprite_data_constants.asm | 6 - data/tilesets/tileset_headers.asm | 8 + engine/battle/core.asm | 2 +- engine/events/hidden_objects/bills_house_pc.asm | 2 +- engine/events/hidden_objects/safari_game.asm | 2 +- engine/items/item_effects.asm | 4 +- engine/link/cable_club.asm | 4 +- engine/movie/credits.asm | 2 +- engine/movie/evolution.asm | 4 +- engine/movie/oak_speech/oak_speech.asm | 8 +- engine/overworld/elevator.asm | 4 +- engine/overworld/healing_machine.asm | 4 +- home.asm | 4 +- home/overworld.asm | 2 +- macros.asm | 16 +- macros/asm_macros.asm | 192 ---------- macros/audio_macros.asm | 214 ----------- macros/code.asm | 9 + macros/coords.asm | 65 ++++ macros/data.asm | 62 ++++ macros/data_macros.asm | 253 ------------- macros/enum.asm | 43 +++ macros/event_macros.asm | 441 ---------------------- macros/farcall.asm | 37 ++ macros/predef.asm | 49 +++ macros/scripts/audio.asm | 186 ++++++++++ macros/scripts/events.asm | 471 ++++++++++++++++++++++++ macros/scripts/maps.asm | 184 +++++++++ macros/scripts/text.asm | 78 ++++ macros/text_macros.asm | 80 ---- scripts/CeruleanCity.asm | 4 +- scripts/OaksLab.asm | 4 +- scripts/PalletTown.asm | 4 +- scripts/PewterPokecenter.asm | 3 +- scripts/PokemonTower2F.asm | 4 +- scripts/Route22.asm | 10 +- scripts/SSAnne2F.asm | 4 +- scripts/SSAnneCaptainsRoom.asm | 2 +- scripts/SilphCo7F.asm | 4 +- scripts/VermilionDock.asm | 2 +- 47 files changed, 1296 insertions(+), 1235 deletions(-) create mode 100644 constants/map_object_constants.asm delete mode 100755 macros/asm_macros.asm delete mode 100755 macros/audio_macros.asm create mode 100755 macros/code.asm create mode 100644 macros/coords.asm create mode 100755 macros/data.asm delete mode 100755 macros/data_macros.asm create mode 100644 macros/enum.asm delete mode 100755 macros/event_macros.asm create mode 100644 macros/farcall.asm create mode 100644 macros/predef.asm create mode 100755 macros/scripts/audio.asm create mode 100755 macros/scripts/events.asm create mode 100644 macros/scripts/maps.asm create mode 100755 macros/scripts/text.asm delete mode 100755 macros/text_macros.asm (limited to 'constants') diff --git a/audio/play_battle_music.asm b/audio/play_battle_music.asm index 35dd19ad..f8bfcd19 100644 --- a/audio/play_battle_music.asm +++ b/audio/play_battle_music.asm @@ -2,9 +2,9 @@ PlayBattleMusic:: xor a ld [wAudioFadeOutControl], a ld [wLowHealthAlarm], a - dec a + dec a ; SFX_STOP_ALL_MUSIC ld [wNewSoundID], a - call PlaySound ; stop music + call PlaySound call DelayFrame ld c, BANK(Music_GymLeaderBattle) ld a, [wGymLeaderNo] diff --git a/audio/pokedex_rating_sfx.asm b/audio/pokedex_rating_sfx.asm index a218d5e6..f3aace8a 100644 --- a/audio/pokedex_rating_sfx.asm +++ b/audio/pokedex_rating_sfx.asm @@ -10,7 +10,7 @@ PlayPokedexRatingSfx:: jr .getSfxPointer .gotSfxPointer push bc - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySoundWaitForCurrent pop bc diff --git a/constants.asm b/constants.asm index 996458a4..cd306680 100644 --- a/constants.asm +++ b/constants.asm @@ -29,6 +29,7 @@ INCLUDE "constants/palette_constants.asm" INCLUDE "constants/list_constants.asm" INCLUDE "constants/map_constants.asm" INCLUDE "constants/map_data_constants.asm" +INCLUDE "constants/map_object_constants.asm" INCLUDE "constants/hide_show_constants.asm" INCLUDE "constants/credits_constants.asm" INCLUDE "constants/audio_constants.asm" diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm index bb2bb7f2..38719f92 100644 --- a/constants/audio_constants.asm +++ b/constants/audio_constants.asm @@ -1,3 +1,29 @@ +; pitch + const_def + const C_ ; 0 + const C# ; 1 + const D_ ; 2 + const D# ; 3 + const E_ ; 4 + const F_ ; 5 + const F# ; 6 + const G_ ; 7 + const G# ; 8 + const A_ ; 9 + const A# ; A + const B_ ; B + +; channel + const_def + const Ch1 ; 0 + const Ch2 ; 1 + const Ch3 ; 2 + const Ch4 ; 3 + const Ch5 ; 4 + const Ch6 ; 5 + const Ch7 ; 6 + const Ch8 ; 7 + ; HW sound channel register base addresses HW_CH1_BASE EQU (rNR10 % $100) HW_CH2_BASE EQU ((rNR21 % $100) - 1) diff --git a/constants/map_data_constants.asm b/constants/map_data_constants.asm index 154c4163..4b98bdb3 100755 --- a/constants/map_data_constants.asm +++ b/constants/map_data_constants.asm @@ -7,3 +7,8 @@ EAST EQU 1 WEST EQU 2 SOUTH EQU 4 NORTH EQU 8 + +; tileset environments +INDOOR EQU 0 +CAVE EQU 1 +OUTDOOR EQU 2 diff --git a/constants/map_object_constants.asm b/constants/map_object_constants.asm new file mode 100644 index 00000000..f5fc952b --- /dev/null +++ b/constants/map_object_constants.asm @@ -0,0 +1,14 @@ +; different kinds of people events +ITEM EQU $80 +TRAINER EQU $40 + +WALK EQU $FE +STAY EQU $FF + +DOWN EQU $D0 +UP EQU $D1 +LEFT EQU $D2 +RIGHT EQU $D3 +NONE EQU $FF + +BOULDER_MOVEMENT_BYTE_2 EQU $10 diff --git a/constants/music_constants.asm b/constants/music_constants.asm index 9f726fb7..7bbe5c62 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -238,3 +238,5 @@ MAX_SFX_ID_2 EQUS "SFX_SILPH_SCOPE" music_const SFX_SLOTS_NEW_SPIN, SFX_Slots_New_Spin music_const SFX_SHOOTING_STAR, SFX_Shooting_Star MAX_SFX_ID_3 EQUS "SFX_SHOOTING_STAR" + +SFX_STOP_ALL_MUSIC EQU $ff diff --git a/constants/sprite_data_constants.asm b/constants/sprite_data_constants.asm index d5788cb1..48a34446 100644 --- a/constants/sprite_data_constants.asm +++ b/constants/sprite_data_constants.asm @@ -1,9 +1,3 @@ -; different kinds of people events -ITEM EQU $80 -TRAINER EQU $40 - -BOULDER_MOVEMENT_BYTE_2 EQU $10 - ; sprite facing directions SPRITE_FACING_DOWN EQU $00 SPRITE_FACING_UP EQU $04 diff --git a/data/tilesets/tileset_headers.asm b/data/tilesets/tileset_headers.asm index d8e0d9b4..8f825330 100755 --- a/data/tilesets/tileset_headers.asm +++ b/data/tilesets/tileset_headers.asm @@ -1,3 +1,11 @@ +tileset: MACRO + db BANK(\2) ; BANK(GFX) + dw \1, \2, \3 ; Block, GFX, Coll + db \4, \5, \6 ; counter tiles + db \7 ; grass tile + db \8 ; permission (indoor, cave, outdoor) +ENDM + Tilesets: tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 86c3f5e5..647436ff 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -958,7 +958,7 @@ TrainerDefeatedText: PlayBattleVictoryMusic: push af - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySoundWaitForCurrent ld c, BANK(Music_DefeatedTrainer) diff --git a/engine/events/hidden_objects/bills_house_pc.asm b/engine/events/hidden_objects/bills_house_pc.asm index 1ffb6954..836aace0 100644 --- a/engine/events/hidden_objects/bills_house_pc.asm +++ b/engine/events/hidden_objects/bills_house_pc.asm @@ -52,7 +52,7 @@ BillsHouseInitiatedText:: TX_FAR _BillsHouseInitiatedText TX_BLINK TX_ASM - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld c, 16 diff --git a/engine/events/hidden_objects/safari_game.asm b/engine/events/hidden_objects/safari_game.asm index 785bab7f..68fc943f 100644 --- a/engine/events/hidden_objects/safari_game.asm +++ b/engine/events/hidden_objects/safari_game.asm @@ -27,7 +27,7 @@ SafariZoneGameOver: call EnableAutoTextBoxDrawing xor a ld [wAudioFadeOutControl], a - dec a + dec a ; SFX_STOP_ALL_MUSIC call PlaySound ld c, BANK(SFX_Safari_Zone_PA) ld a, SFX_SAFARI_ZONE_PA diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index e1723118..1214a3f8 100755 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -1844,8 +1844,8 @@ PlayedFluteHadEffectText: and a jr nz, .done ; play out-of-battle pokeflute music - ld a, $ff - call PlaySound ; turn off music + ld a, SFX_STOP_ALL_MUSIC + call PlaySound ld a, SFX_POKEFLUTE ld c, BANK(SFX_Pokeflute) call PlayMusic diff --git a/engine/link/cable_club.asm b/engine/link/cable_club.asm index 141ed396..8aadf1e5 100755 --- a/engine/link/cable_club.asm +++ b/engine/link/cable_club.asm @@ -139,7 +139,7 @@ CableClub_DoBattleOrTradeAgain: call Serial_ExchangeBytes ld a, (1 << SERIAL) | (1 << TIMER) | (1 << VBLANK) ld [rIE], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySound ld a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK @@ -261,7 +261,7 @@ CableClub_DoBattleOrTradeAgain: ld [wUnusedCF8D + 1], a xor a ld [wTradeCenterPointerTableIndex], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySound ld a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK diff --git a/engine/movie/credits.asm b/engine/movie/credits.asm index f6900602..dd735df6 100755 --- a/engine/movie/credits.asm +++ b/engine/movie/credits.asm @@ -21,7 +21,7 @@ HallOfFamePC: ld a, %11000000 ld [rBGP], a call EnableLCD - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySoundWaitForCurrent ld c, BANK(Music_Credits) ld a, MUSIC_CREDITS diff --git a/engine/movie/evolution.asm b/engine/movie/evolution.asm index 731735c5..af2ed13b 100755 --- a/engine/movie/evolution.asm +++ b/engine/movie/evolution.asm @@ -9,7 +9,7 @@ EvolveMon: xor a ld [wLowHealthAlarm], a ld [wChannelSoundIDs + Ch5], a - dec a + dec a ; SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld a, $1 @@ -67,7 +67,7 @@ EvolveMon: ld a, [wEvoNewSpecies] .done ld [wWholeScreenPaletteMonSpecies], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld a, [wWholeScreenPaletteMonSpecies] diff --git a/engine/movie/oak_speech/oak_speech.asm b/engine/movie/oak_speech/oak_speech.asm index b1acfb65..fdcb4778 100755 --- a/engine/movie/oak_speech/oak_speech.asm +++ b/engine/movie/oak_speech/oak_speech.asm @@ -32,8 +32,8 @@ SetDefaultNames: jp CopyData OakSpeech: - ld a, $FF - call PlaySound ; stop music + ld a, SFX_STOP_ALL_MUSIC + call PlaySound ld a, BANK(Music_Routes2) ld c, a ld a, MUSIC_ROUTES2 @@ -133,9 +133,9 @@ OakSpeech: ld [wAudioSavedROMBank], a ld a, 10 ld [wAudioFadeOutControl], a - ld a, $FF + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a - call PlaySound ; stop music + call PlaySound pop af ld [H_LOADEDROMBANK], a ld [MBC1RomBank], a diff --git a/engine/overworld/elevator.asm b/engine/overworld/elevator.asm index d36e2f2c..05ca08c9 100755 --- a/engine/overworld/elevator.asm +++ b/engine/overworld/elevator.asm @@ -4,7 +4,7 @@ ShakeElevator:: ld de, SCREEN_HEIGHT * $20 call ShakeElevatorRedrawRow call Delay3 - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySound ld a, [hSCY] ld d, a @@ -27,7 +27,7 @@ ShakeElevator:: jr nz, .shakeLoop ld a, d ld [hSCY], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySound ld c, BANK(SFX_Safari_Zone_PA) ld a, SFX_SAFARI_ZONE_PA diff --git a/engine/overworld/healing_machine.asm b/engine/overworld/healing_machine.asm index 510f963b..836af44d 100755 --- a/engine/overworld/healing_machine.asm +++ b/engine/overworld/healing_machine.asm @@ -17,7 +17,7 @@ AnimateHealingMachine: call CopyHealingMachineOAM ld a, 4 ld [wAudioFadeOutControl], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound .waitLoop @@ -38,7 +38,7 @@ AnimateHealingMachine: cp BANK(Audio3_UpdateMusic) ld [wAudioSavedROMBank], a jr nz, .next - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld a, BANK(Music_PkmnHealed) diff --git a/home.asm b/home.asm index bb581454..07cb6c0e 100644 --- a/home.asm +++ b/home.asm @@ -939,7 +939,7 @@ FadeOutAudio:: ld b, a xor a ld [wAudioFadeOutControl], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld a, [wAudioSavedROMBank] @@ -2506,7 +2506,7 @@ PlayTrainerMusic:: ret nz xor a ld [wAudioFadeOutControl], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC call PlaySound ld a, BANK(Music_MeetEvilTrainer) ld [wAudioROMBank], a diff --git a/home/overworld.asm b/home/overworld.asm index 460ce11e..cc8c498c 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -772,7 +772,7 @@ HandleBlackOut:: StopMusic:: ld [wAudioFadeOutControl], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound .wait diff --git a/macros.asm b/macros.asm index b779ec5f..a092d25c 100644 --- a/macros.asm +++ b/macros.asm @@ -1,5 +1,11 @@ -INCLUDE "macros/asm_macros.asm" -INCLUDE "macros/data_macros.asm" -INCLUDE "macros/text_macros.asm" -INCLUDE "macros/audio_macros.asm" -INCLUDE "macros/event_macros.asm" +INCLUDE "macros/enum.asm" +INCLUDE "macros/predef.asm" +INCLUDE "macros/farcall.asm" +INCLUDE "macros/data.asm" +INCLUDE "macros/code.asm" +INCLUDE "macros/coords.asm" + +INCLUDE "macros/scripts/audio.asm" +INCLUDE "macros/scripts/maps.asm" +INCLUDE "macros/scripts/events.asm" +INCLUDE "macros/scripts/text.asm" diff --git a/macros/asm_macros.asm b/macros/asm_macros.asm deleted file mode 100755 index d3f00b0c..00000000 --- a/macros/asm_macros.asm +++ /dev/null @@ -1,192 +0,0 @@ - -lb: MACRO ; r, hi, lo - ld \1, ((\2) & $ff) << 8 + ((\3) & $ff) -ENDM - -homecall: MACRO - ld a, [H_LOADEDROMBANK] - push af - ld a, BANK(\1) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call \1 - pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a -ENDM - -farcall EQUS "callba" - -callba: MACRO - ld b, BANK(\1) - ld hl, \1 - call Bankswitch -ENDM - -callab: MACRO - ld hl, \1 - ld b, BANK(\1) - call Bankswitch -ENDM - -jpba: MACRO - ld b, BANK(\1) - ld hl, \1 - jp Bankswitch -ENDM - -jpab: MACRO - ld hl, \1 - ld b, BANK(\1) - jp Bankswitch -ENDM - -validateCoords: MACRO - IF \1 >= SCREEN_WIDTH - fail "x coord out of range" - ENDC - IF \2 >= SCREEN_HEIGHT - fail "y coord out of range" - ENDC -ENDM - -;\1 = r -;\2 = X -;\3 = Y -;\4 = which tilemap (optional) -coord: MACRO - validateCoords \2, \3 - IF _NARG >= 4 - ld \1, \4 + SCREEN_WIDTH * \3 + \2 - ELSE - ld \1, wTileMap + SCREEN_WIDTH * \3 + \2 - ENDC -ENDM - -;\1 = X -;\2 = Y -;\3 = which tilemap (optional) -aCoord: MACRO - validateCoords \1, \2 - IF _NARG >= 3 - ld a, [\3 + SCREEN_WIDTH * \2 + \1] - ELSE - ld a, [wTileMap + SCREEN_WIDTH * \2 + \1] - ENDC -ENDM - -;\1 = X -;\2 = Y -;\3 = which tilemap (optional) -Coorda: MACRO - validateCoords \1, \2 - IF _NARG >= 3 - ld [\3 + SCREEN_WIDTH * \2 + \1], a - ELSE - ld [wTileMap + SCREEN_WIDTH * \2 + \1], a - ENDC -ENDM - -;\1 = X -;\2 = Y -;\3 = which tilemap (optional) -dwCoord: MACRO - validateCoords \1, \2 - IF _NARG >= 3 - dw \3 + SCREEN_WIDTH * \2 + \1 - ELSE - dw wTileMap + SCREEN_WIDTH * \2 + \1 - ENDC -ENDM - -;\1 = r -;\2 = X -;\3 = Y -;\4 = map width -overworldMapCoord: MACRO - ld \1, wOverworldMap + ((\2) + 3) + (((\3) + 3) * ((\4) + (3 * 2))) -ENDM - -; macro for two nibbles -dn: MACRO - db (\1 << 4 | \2) -ENDM - -; macro for putting a byte then a word -dbw: MACRO - db \1 - dw \2 -ENDM - -dba: MACRO - dbw BANK(\1), \1 -ENDM - -dwb: MACRO - dw \1 - db \2 -ENDM - -dab: MACRO - dwb \1, BANK(\1) -ENDM - -dbbw: MACRO - db \1, \2 - dw \3 -ENDM - -; Predef macro. -predef_const: MACRO - const \1PredefID -ENDM - -add_predef: MACRO -\1Predef:: - db BANK(\1) - dw \1 -ENDM - -predef_id: MACRO - ld a, (\1Predef - PredefPointers) / 3 -ENDM - -predef: MACRO - predef_id \1 - call Predef -ENDM - -predef_jump: MACRO - predef_id \1 - jp Predef -ENDM - -tx_pre_const: MACRO - const \1_id -ENDM - -add_tx_pre: MACRO -\1_id:: dw \1 -ENDM - -db_tx_pre: MACRO - db (\1_id - TextPredefs) / 2 + 1 -ENDM - -tx_pre_id: MACRO - ld a, (\1_id - TextPredefs) / 2 + 1 -ENDM - -tx_pre: MACRO - tx_pre_id \1 - call PrintPredefTextID -ENDM - -tx_pre_jump: MACRO - tx_pre_id \1 - jp PrintPredefTextID -ENDM - -ldPal: MACRO - ld \1, \2 << 6 | \3 << 4 | \4 << 2 | \5 -ENDM diff --git a/macros/audio_macros.asm b/macros/audio_macros.asm deleted file mode 100755 index 95b9ecbc..00000000 --- a/macros/audio_macros.asm +++ /dev/null @@ -1,214 +0,0 @@ - -StopAllMusic: MACRO - ld a, $ff - call PlaySound -ENDM - -Ch1 EQU 0 -Ch2 EQU 1 -Ch3 EQU 2 -Ch4 EQU 3 -Ch5 EQU 4 -Ch6 EQU 5 -Ch7 EQU 6 -Ch8 EQU 7 - -audio_header: MACRO - 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 -ENDM - -; arguments: length [0, 7], pitch change [-7, 7] -; length: length of time between pitch shifts -; sometimes used with a value >7 in which case the MSB is ignored -; pitch change: positive value means increase in pitch, negative value means decrease in pitch -; small magnitude means quick change, large magnitude means slow change -; in signed magnitude representation, so a value of 8 is the same as (negative) 0 -pitch_sweep: MACRO - db $10 - IF \2 < 0 - db (\1 << 4) | (%1000 | (\2 * -1)) - ELSE - db (\1 << 4) | \2 - ENDC -ENDM - -; arguments: length [0, 15], volume [0, 15], fade [-7, 7], frequency -; fade: positive value means decrease in volume, negative value means increase in volume -; small magnitude means quick change, large magnitude means slow change -; in signed magnitude representation, so a value of 8 is the same as (negative) 0 -square_note: MACRO - db $20 | \1 - IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) - ELSE - db (\2 << 4) | \3 - ENDC - dw \4 -ENDM - -; arguments: length [0, 15], volume [0, 15], fade [-7, 7], frequency -; fade: positive value means decrease in volume, negative value means increase in volume -; small magnitude means quick change, large magnitude means slow change -; in signed magnitude representation, so a value of 8 is the same as (negative) 0 -noise_note: MACRO - db $20 | \1 - IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) - ELSE - db (\2 << 4) | \3 - ENDC - db \4 -ENDM - -C_ EQU $0 -C# EQU $1 -D_ EQU $2 -D# EQU $3 -E_ EQU $4 -F_ EQU $5 -F# EQU $6 -G_ EQU $7 -G# EQU $8 -A_ EQU $9 -A# EQU $A -B_ EQU $B - -; arguments: pitch, length [1, 16] -note: MACRO - db (\1 << 4) | (\2 - 1) -ENDM - -; arguments: instrument [1, 19], length [1, 16] -drum_note: MACRO - db $B0 | (\2 - 1) - db \1 -ENDM - -; arguments: instrument, length [1, 16] -; like drum_note but one 1 byte instead of 2 -; can only be used with instruments 1-10, excluding 2 -; unused -drum_note_short: MACRO - db (\1 << 4) | (\2 - 1) -ENDM - -; arguments: length [1, 16] -rest: MACRO - db $C0 | (\1 - 1) -ENDM - -; arguments: speed [0, 15], volume [0, 15], fade [-7, 7] -; fade: positive value means decrease in volume, negative value means increase in volume -; small magnitude means quick change, large magnitude means slow change -; in signed magnitude representation, so a value of 8 is the same as (negative) 0 -note_type: MACRO - db $D0 | \1 - IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) - ELSE - db (\2 << 4) | \3 - ENDC -ENDM - -; arguments: speed [0, 15] -drum_speed: MACRO - db $D0 | \1 -ENDM - -; arguments: octave [1, 8] -octave: MACRO - db $E8 - \1 -ENDM - -; when enabled, effective frequency used is incremented by 1 -toggle_perfect_pitch: MACRO - db $E8 -ENDM - -; arguments: delay [0, 255], depth [0, 15], rate [0, 15] -; delay: time delay until vibrato effect begins -; depth: amplitude of vibrato wave -; rate: frequency of vibrato wave -vibrato: MACRO - db $EA - db \1 - db (\2 << 4) | \3 -ENDM - -; arguments: length [1, 256], octave [1, 8], pitch -pitch_slide: MACRO - db $EB - db \1 - 1 - db ((8 - \2) << 4) | \3 -ENDM - -; arguments: duty cycle [0, 3] (12.5%, 25%, 50%, 75%) -duty_cycle: MACRO - db $EC - db \1 -ENDM - -; arguments: tempo [0, $ffff] -; used to calculate note delay counters -; so a smaller value means music plays faster -; ideally should be set to $100 or less to guarantee no overflow -; if larger than $100, large note speed or note length values might cause overflow -; stored in big endian -tempo: MACRO - db $ED - db \1 / $100 - db \1 % $100 -ENDM - -; arguments: left output enable mask, right output enable mask -stereo_panning: MACRO - db $EE - db (\1 << 4) | \2 -ENDM - -; arguments: left master volume [0, 7], right master volume [0, 7] -volume: MACRO - db $F0 - db (\1 << 4) | \2 -ENDM - -; when enabled, the sfx data is interpreted as music data -execute_music: MACRO - db $F8 -ENDM - -; arguments: duty cycle 1, duty cycle 2, duty cycle 3, duty cycle 4 -duty_cycle_pattern: MACRO - db $FC - db \1 << 6 | \2 << 4 | \3 << 2 | \4 -ENDM - -; arguments: address -sound_call: MACRO - db $FD - dw \1 -ENDM - -; arguments: count, address -sound_loop: MACRO - db $FE - db \1 - dw \2 -ENDM - -sound_ret: MACRO - db $FF -ENDM diff --git a/macros/code.asm b/macros/code.asm new file mode 100755 index 00000000..8b7d6184 --- /dev/null +++ b/macros/code.asm @@ -0,0 +1,9 @@ +; Syntactic sugar macros + +lb: MACRO ; r, hi, lo + ld \1, ((\2) & $ff) << 8 + ((\3) & $ff) +ENDM + +ldPal: MACRO + ld \1, \2 << 6 | \3 << 4 | \4 << 2 | \5 +ENDM diff --git a/macros/coords.asm b/macros/coords.asm new file mode 100644 index 00000000..302260d7 --- /dev/null +++ b/macros/coords.asm @@ -0,0 +1,65 @@ +validateCoords: MACRO + IF \1 >= SCREEN_WIDTH + fail "x coord out of range" + ENDC + IF \2 >= SCREEN_HEIGHT + fail "y coord out of range" + ENDC +ENDM + +;\1 = r +;\2 = X +;\3 = Y +;\4 = which tilemap (optional) +coord: MACRO + validateCoords \2, \3 + IF _NARG >= 4 + ld \1, \4 + SCREEN_WIDTH * \3 + \2 + ELSE + ld \1, wTileMap + SCREEN_WIDTH * \3 + \2 + ENDC +ENDM + +;\1 = X +;\2 = Y +;\3 = which tilemap (optional) +aCoord: MACRO + validateCoords \1, \2 + IF _NARG >= 3 + ld a, [\3 + SCREEN_WIDTH * \2 + \1] + ELSE + ld a, [wTileMap + SCREEN_WIDTH * \2 + \1] + ENDC +ENDM + +;\1 = X +;\2 = Y +;\3 = which tilemap (optional) +Coorda: MACRO + validateCoords \1, \2 + IF _NARG >= 3 + ld [\3 + SCREEN_WIDTH * \2 + \1], a + ELSE + ld [wTileMap + SCREEN_WIDTH * \2 + \1], a + ENDC +ENDM + +;\1 = X +;\2 = Y +;\3 = which tilemap (optional) +dwCoord: MACRO + validateCoords \1, \2 + IF _NARG >= 3 + dw \3 + SCREEN_WIDTH * \2 + \1 + ELSE + dw wTileMap + SCREEN_WIDTH * \2 + \1 + ENDC +ENDM + +;\1 = r +;\2 = X +;\3 = Y +;\4 = map width +overworldMapCoord: MACRO + ld \1, wOverworldMap + ((\2) + 3) + (((\3) + 3) * ((\4) + (3 * 2))) +ENDM diff --git a/macros/data.asm b/macros/data.asm new file mode 100755 index 00000000..54d1d561 --- /dev/null +++ b/macros/data.asm @@ -0,0 +1,62 @@ +; Value macros + +percent EQUS "* $ff / 100" + +bcd2: MACRO + dn ((\1) / 1000) % 10, ((\1) / 100) % 10 + dn ((\1) / 10) % 10, (\1) % 10 +ENDM + +bcd3: MACRO + dn ((\1) / 100000) % 10, ((\1) / 10000) % 10 + dn ((\1) / 1000) % 10, ((\1) / 100) % 10 + dn ((\1) / 10) % 10, (\1) % 10 +ENDM + +coins equs "bcd2" +money equs "bcd3" + +RGB: MACRO + dw (\3 << 10 | \2 << 5 | \1) +ENDM + +tmlearn: MACRO +x = 0 + REPT _NARG +IF \1 != 0 +x = x | (1 << ((\1 - 1) % 8)) +ENDC + SHIFT + ENDR + db x +ENDM + + +; Constant data (db, dw, dl) macros + +dn: MACRO ; nybbles + db (\1 << 4 | \2) +ENDM + +dbw: MACRO + db \1 + dw \2 +ENDM + +dba: MACRO + dbw BANK(\1), \1 +ENDM + +dwb: MACRO + dw \1 + db \2 +ENDM + +dab: MACRO + dwb \1, BANK(\1) +ENDM + +dbbw: MACRO + db \1, \2 + dw \3 +ENDM diff --git a/macros/data_macros.asm b/macros/data_macros.asm deleted file mode 100755 index 794b75f7..00000000 --- a/macros/data_macros.asm +++ /dev/null @@ -1,253 +0,0 @@ - -; Constant enumeration is useful for monsters, items, moves, etc. -const_def: MACRO -if _NARG >= 1 -const_value = \1 -else -const_value = 0 -endc -ENDM - -const: MACRO -\1 EQU const_value -const_value = const_value + 1 -ENDM - -; data format macros - -percent EQUS "* $ff / 100" - -bcd2: MACRO - dn ((\1) / 1000) % 10, ((\1) / 100) % 10 - dn ((\1) / 10) % 10, (\1) % 10 -ENDM - -bcd3: MACRO - dn ((\1) / 100000) % 10, ((\1) / 10000) % 10 - dn ((\1) / 1000) % 10, ((\1) / 100) % 10 - dn ((\1) / 10) % 10, (\1) % 10 -ENDM - -coins equs "bcd2" -money equs "bcd3" - -;\1 = Map Width -;\2 = Rows above (Y-blocks) -;\3 = X movement (X-blocks) -EVENT_DISP: MACRO - dw (wOverworldMap + 7 + (\1) + ((\1) + 6) * ((\2) >> 1) + ((\3) >> 1)) ; Ev.Disp - db \2,\3 ;Y,X -ENDM - -FLYWARP_DATA: MACRO - EVENT_DISP \1,\2,\3 - db ((\2) & $01) ;sub-block Y - db ((\3) & $01) ;sub-block X -ENDM - -; external map entry macro -EMAP: MACRO ; emap x-coordinate,y-coordinate,textpointer -; the appearance of towns and routes in the town map, indexed by map id - ; nybble: y-coordinate - ; nybble: x-coordinate - ; word : pointer to map name - dn \2, \1 - dw \3 -ENDM - -; internal map entry macro -IMAP: MACRO ; imap mapid_less_than,x-coordinate,y-coordinate,textpointer -; the appearance of buildings and dungeons in the town map - ; byte : maximum map id subject to this rule - ; nybble: y-coordinate - ; nybble: x-coordinate - ; word : pointer to map name - db \1 + 1 - dn \3, \2 - dw \4 -ENDM - -; tilesets' headers macro -tileset: MACRO - db BANK(\2) ; BANK(GFX) - dw \1, \2, \3 ; Block, GFX, Coll - db \4, \5, \6 ; counter tiles - db \7 ; grass tile - db \8 ; permission (indoor, cave, outdoor) -ENDM - -INDOOR EQU 0 -CAVE EQU 1 -OUTDOOR EQU 2 - -RGB: MACRO - dw (\3 << 10 | \2 << 5 | \1) -ENDM - -WALK EQU $FE -STAY EQU $FF - -DOWN EQU $D0 -UP EQU $D1 -LEFT EQU $D2 -RIGHT EQU $D3 -NONE EQU $FF - -;\1 sprite id -;\2 x position -;\3 y position -;\4 movement (WALK/STAY) -;\5 range or direction -;\6 text id -;\7 items only: item id -;\7 trainers only: trainer class/pokemon id -;\8 trainers only: trainer number/pokemon level -object: MACRO - db \1 - db \3 + 4 - db \2 + 4 - db \4 - db \5 - IF (_NARG > 7) - db TRAINER | \6 - db \7 - db \8 - ELSE - IF (_NARG > 6) - db ITEM | \6 - db \7 - ELSE - db \6 - ENDC - ENDC -ENDM - -;\1 x position -;\2 y position -;\3 destination warp id -;\4 destination map (-1 = wLastMap) -warp: MACRO - db \2, \1, \3, \4 -ENDM - -;\1 x position -;\2 y position -;\3 sign id -sign: MACRO - db \2, \1, \3 -ENDM - -;\1 x position -;\2 y position -;\3 map width -warp_to: MACRO - EVENT_DISP \3, \2, \1 -ENDM - -map_header: MACRO -;\1: map name -;\2: map id -;\3: tileset -;\4: connections: combo of NORTH, SOUTH, WEST, and/or EAST, or 0 for none -CURRENT_MAP_WIDTH = \2_WIDTH -CURRENT_MAP_HEIGHT = \2_HEIGHT -CURRENT_MAP_OBJECT EQUS "\1_Object" -\1_h:: - db \3 - db CURRENT_MAP_HEIGHT, CURRENT_MAP_WIDTH - dw \1_Blocks - dw \1_TextPointers - dw \1_Script - db \4 -ENDM - -end_map_header: MACRO - dw CURRENT_MAP_OBJECT -PURGE CURRENT_MAP_WIDTH -PURGE CURRENT_MAP_HEIGHT -PURGE CURRENT_MAP_OBJECT -ENDM - -; Connections go in order: north, south, west, east -connection: MACRO -;\1: direction -;\2: map name -;\3: map id -;\4: offset of the target map relative to the current map -; (x offset for east/west, y offset for north/south) - -; Calculate tile offsets for source (current) and target maps -_src = 0 -_tgt = (\4) + 3 -if _tgt < 2 -_src = -_tgt -_tgt = 0 -endc - -if "\1" == "north" -_blk = \3_WIDTH * (\3_HEIGHT - 3) + _src -_map = _tgt -_win = (\3_WIDTH + 6) * \3_HEIGHT + 1 -_y = \3_HEIGHT * 2 - 1 -_x = (\4) * -2 -_len = CURRENT_MAP_WIDTH + 3 - (\4) -if _len > \3_WIDTH -_len = \3_WIDTH -endc - -elif "\1" == "south" -_blk = _src -_map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt -_win = \3_WIDTH + 7 -_y = 0 -_x = (\4) * -2 -_len = CURRENT_MAP_WIDTH + 3 - (\4) -if _len > \3_WIDTH -_len = \3_WIDTH -endc - -elif "\1" == "west" -_blk = (\3_WIDTH * _src) + \3_WIDTH - 3 -_map = (CURRENT_MAP_WIDTH + 6) * _tgt -_win = (\3_WIDTH + 6) * 2 - 6 -_y = (\4) * -2 -_x = \3_WIDTH * 2 - 1 -_len = CURRENT_MAP_HEIGHT + 3 - (\4) -if _len > \3_HEIGHT -_len = \3_HEIGHT -endc - -elif "\1" == "east" -_blk = (\3_WIDTH * _src) -_map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3 -_win = \3_WIDTH + 7 -_y = (\4) * -2 -_x = 0 -_len = CURRENT_MAP_HEIGHT + 3 - (\4) -if _len > \3_HEIGHT -_len = \3_HEIGHT -endc - -else -fail "Invalid direction for 'connection'." -endc - - db \3 - dw \2_Blocks + _blk - dw wOverworldMap + _map - db _len - _src - db \3_WIDTH - db _y, _x - dw wOverworldMap + _win -ENDM - -tmlearn: MACRO -x = 0 - REPT _NARG -IF \1 != 0 -x = x | (1 << ((\1 - 1) % 8)) -ENDC - SHIFT - ENDR - db x -ENDM diff --git a/macros/enum.asm b/macros/enum.asm new file mode 100644 index 00000000..8fe5b534 --- /dev/null +++ b/macros/enum.asm @@ -0,0 +1,43 @@ +; Enumerate variables + +enum_start: MACRO +if _NARG >= 1 +__enum__ = \1 +else +__enum__ = 0 +endc +if _NARG >= 2 +__enumdir__ = \2 +else +__enumdir__ = 1 +endc +ENDM + +enum: MACRO +\1 EQU __enum__ +__enum__ = __enum__ + __enumdir__ +ENDM + +enum_set: MACRO +__enum__ = \1 +ENDM + +; Enumerate constants + +const_def: MACRO +if _NARG >= 1 +const_value = \1 +else +const_value = 0 +endc +ENDM + +const: MACRO +\1 EQU const_value +const_value = const_value + 1 +ENDM + +shift_const: MACRO +\1 EQU (1 << const_value) +const_value = const_value + 1 +ENDM diff --git a/macros/event_macros.asm b/macros/event_macros.asm deleted file mode 100755 index 20027209..00000000 --- a/macros/event_macros.asm +++ /dev/null @@ -1,441 +0,0 @@ -;\1 = event index -;\2 = return result in carry instead of zero flag -CheckEvent: MACRO -event_byte = ((\1) / 8) - ld a, [wEventFlags + event_byte] - - IF _NARG > 1 - IF ((\1) % 8) == 7 - add a - ELSE - REPT ((\1) % 8) + 1 - rrca - ENDR - ENDC - ELSE - bit (\1) % 8, a - ENDC - ENDM - -;\1 = event index -CheckEventReuseA: MACRO - IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld a, [wEventFlags + event_byte] - ENDC - - bit (\1) % 8, a - ENDM - -;\1 = event index -;\2 = event index of the last event used before the branch -CheckEventAfterBranchReuseA: MACRO -event_byte = ((\2) / 8) - IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld a, [wEventFlags + event_byte] - ENDC - - bit (\1) % 8, a - ENDM - -;\1 = reg -;\2 = event index -;\3 = event index this event is relative to (optional, this is needed when there is a fixed flag address) -EventFlagBit: MACRO - IF _NARG > 2 - ld \1, ((\3) % 8) + ((\2) - (\3)) - ELSE - ld \1, (\2) % 8 - ENDC - ENDM - -;\1 = reg -;\2 = event index -EventFlagAddress: MACRO -event_byte = ((\2) / 8) - ld \1, wEventFlags + event_byte - ENDM - -;\1 = event index -CheckEventHL: MACRO -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - bit (\1) % 8, [hl] - ENDM - -;\1 = event index -CheckEventReuseHL: MACRO -IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - bit (\1) % 8, [hl] - ENDM - -; dangerous, only use when HL is guaranteed to be the desired value -;\1 = event index -CheckEventForceReuseHL: MACRO -event_byte = ((\1) / 8) - bit (\1) % 8, [hl] - ENDM - -;\1 = event index -;\2 = event index of the last event used before the branch -CheckEventAfterBranchReuseHL: MACRO -event_byte = ((\2) / 8) -IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - bit (\1) % 8, [hl] - ENDM - -;\1 = event index -CheckAndSetEvent: MACRO -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - bit (\1) % 8, [hl] - set (\1) % 8, [hl] - ENDM - -;\1 = event index -CheckAndResetEvent: MACRO -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - bit (\1) % 8, [hl] - res (\1) % 8, [hl] - ENDM - -;\1 = event index -CheckAndSetEventA: MACRO - ld a, [wEventFlags + ((\1) / 8)] - bit (\1) % 8, a - set (\1) % 8, a - ld [wEventFlags + ((\1) / 8)], a - ENDM - -;\1 = event index -CheckAndResetEventA: MACRO - ld a, [wEventFlags + ((\1) / 8)] - bit (\1) % 8, a - res (\1) % 8, a - ld [wEventFlags + ((\1) / 8)], a - ENDM - -;\1 = event index -SetEvent: MACRO -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - set (\1) % 8, [hl] - ENDM - -;\1 = event index -SetEventReuseHL: MACRO - IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - set (\1) % 8, [hl] - ENDM - -;\1 = event index -;\2 = event index of the last event used before the branch -SetEventAfterBranchReuseHL: MACRO -event_byte = ((\2) / 8) -IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - set (\1) % 8, [hl] - ENDM - -; dangerous, only use when HL is guaranteed to be the desired value -;\1 = event index -SetEventForceReuseHL: MACRO -event_byte = ((\1) / 8) - set (\1) % 8, [hl] - ENDM - -;\1 = event index -;\2 = event index -;\3, \4, ... = additional (optional) event indices -SetEvents: MACRO - SetEvent \1 - rept (_NARG + -1) - SetEventReuseHL \2 - shift - endr - ENDM - -;\1 = event index -ResetEvent: MACRO -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - res (\1) % 8, [hl] - ENDM - -;\1 = event index -ResetEventReuseHL: MACRO - IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - res (\1) % 8, [hl] - ENDM - -;\1 = event index -;\2 = event index of the last event used before the branch -ResetEventAfterBranchReuseHL: MACRO -event_byte = ((\2) / 8) -IF event_byte != ((\1) / 8) -event_byte = ((\1) / 8) - ld hl, wEventFlags + event_byte - ENDC - - res (\1) % 8, [hl] - ENDM - -; dangerous, only use when HL is guaranteed to be the desired value -;\1 = event index -ResetEventForceReuseHL: MACRO -event_byte = ((\1) / 8) - res (\1) % 8, [hl] - ENDM - -;\1 = event index -;\2 = event index -;\3 = event index (optional) -ResetEvents: MACRO - ResetEvent \1 - rept (_NARG + -1) - ResetEventReuseHL \2 - shift - endr - ENDM - -;\1 = event index -;\2 = number of bytes away from the base address (optional, for matching the ROM) -dbEventFlagBit: MACRO - IF _NARG > 1 - db ((\1) % 8) + ((\2) * 8) - ELSE - db ((\1) % 8) - ENDC - ENDM - -;\1 = event index -;\2 = number of bytes away from the base address (optional, for matching the ROM) -dwEventFlagAddress: MACRO - IF _NARG > 1 - dw wEventFlags + ((\1) / 8) - (\2) - ELSE - dw wEventFlags + ((\1) / 8) - ENDC - ENDM - -;\1 = start -;\2 = end -SetEventRange: MACRO -event_start_byte = ((\1) / 8) -event_end_byte = ((\2) / 8) - - IF event_end_byte < event_start_byte - FAIL "Incorrect argument order in SetEventRange." - ENDC - - IF event_start_byte == event_end_byte - ld a, [wEventFlags + event_start_byte] - or (1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8)) - ld [wEventFlags + event_start_byte], a - ELSE -event_fill_start = event_start_byte + 1 -event_fill_count = event_end_byte - event_start_byte - 1 - - IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 -event_fill_count = event_fill_count + 1 - ELSE - ld a, [wEventFlags + event_start_byte] - or $ff - ((1 << ((\1) % 8)) - 1) - ld [wEventFlags + event_start_byte], a - ENDC - - IF ((\2) % 8) == 7 -event_fill_count = event_fill_count + 1 - ENDC - - IF event_fill_count == 1 - ld hl, wEventFlags + event_fill_start - ld [hl], $ff - ENDC - - IF event_fill_count > 1 - ld a, $ff - ld hl, wEventFlags + event_fill_start - - REPT event_fill_count + -1 - ld [hli], a - ENDR - - ld [hl], a - ENDC - - IF ((\2) % 8) == 0 - ld hl, wEventFlags + event_end_byte - set 0, [hl] - ELSE - IF ((\2) % 8) != 7 - ld a, [wEventFlags + event_end_byte] - or (1 << (((\2) % 8) + 1)) - 1 - ld [wEventFlags + event_end_byte], a - ENDC - ENDC - ENDC - ENDM - -;\1 = start -;\2 = end -;\3 = assume a is 0 if present -ResetEventRange: MACRO -event_start_byte = ((\1) / 8) -event_end_byte = ((\2) / 8) - - IF event_end_byte < event_start_byte - FAIL "Incorrect argument order in ResetEventRange." - ENDC - - IF event_start_byte == event_end_byte - ld a, [wEventFlags + event_start_byte] - and ~((1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))) & $ff - ld [wEventFlags + event_start_byte], a - ELSE -event_fill_start = event_start_byte + 1 -event_fill_count = event_end_byte - event_start_byte - 1 - - IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 -event_fill_count = event_fill_count + 1 - ELSE - ld a, [wEventFlags + event_start_byte] - and ~($ff - ((1 << ((\1) % 8)) - 1)) & $ff - ld [wEventFlags + event_start_byte], a - ENDC - - IF ((\2) % 8) == 7 -event_fill_count = event_fill_count + 1 - ENDC - - IF event_fill_count == 1 - ld hl, wEventFlags + event_fill_start - ld [hl], 0 - ENDC - - IF event_fill_count > 1 - ld hl, wEventFlags + event_fill_start - - ; force xor a if we just to wrote to it above - IF (_NARG < 3) || (((\1) % 8) != 0) - xor a - ENDC - - REPT event_fill_count + -1 - ld [hli], a - ENDR - - ld [hl], a - ENDC - - IF ((\2) % 8) == 0 - ld hl, wEventFlags + event_end_byte - res 0, [hl] - ELSE - IF ((\2) % 8) != 7 - ld a, [wEventFlags + event_end_byte] - and ~((1 << (((\2) % 8) + 1)) - 1) & $ff - ld [wEventFlags + event_end_byte], a - ENDC - ENDC - ENDC - ENDM - -; returns whether both events are set in Z flag -; This is counter-intuitive because the other event checks set the Z flag when -; the event is not set, but this sets the Z flag when the event is set. -;\1 = event index 1 -;\2 = event index 2 -;\3 = try to reuse a (optional) -CheckBothEventsSet: MACRO - IF ((\1) / 8) == ((\2) / 8) - IF (_NARG < 3) || (((\1) / 8) != event_byte) -event_byte = ((\1) / 8) - ld a, [wEventFlags + ((\1) / 8)] - ENDC - and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) - cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) - ELSE - ; This case doesn't happen in the original ROM. - IF ((\1) % 8) == ((\2) % 8) - push hl - ld a, [wEventFlags + ((\1) / 8)] - ld hl, wEventFlags + ((\2) / 8) - and [hl] - cpl - bit ((\1) % 8), a - pop hl - ELSE - push bc - ld a, [wEventFlags + ((\1) / 8)] - and (1 << ((\1) % 8)) - ld b, a - ld a, [wEventFlags + ((\2) / 8)] - and (1 << ((\2) % 8)) - or b - cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) - pop bc - ENDC - ENDC - ENDM - -; returns the complement of whether either event is set in Z flag -;\1 = event index 1 -;\2 = event index 2 -CheckEitherEventSet: MACRO - IF ((\1) / 8) == ((\2) / 8) - ld a, [wEventFlags + ((\1) / 8)] - and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) - ELSE - ; This case doesn't happen in the original ROM. - IF ((\1) % 8) == ((\2) % 8) - push hl - ld a, [wEventFlags + ((\1) / 8)] - ld hl, wEventFlags + ((\2) / 8) - or [hl] - bit ((\1) % 8), a - pop hl - ELSE - push bc - ld a, [wEventFlags + ((\1) / 8)] - and (1 << ((\1) % 8)) - ld b, a - ld a, [wEventFlags + ((\2) / 8)] - and (1 << ((\2) % 8)) - or b - pop bc - ENDC - ENDC - ENDM - -; for handling fixed event bits when events are inserted/removed -;\1 = event index -;\2 = fixed flag bit -AdjustEventBit: MACRO - IF ((\1) % 8) != (\2) - add ((\1) % 8) - (\2) - ENDC - ENDM diff --git a/macros/farcall.asm b/macros/farcall.asm new file mode 100644 index 00000000..fc208e3d --- /dev/null +++ b/macros/farcall.asm @@ -0,0 +1,37 @@ +farcall EQUS "callba" + +callba: MACRO + ld b, BANK(\1) + ld hl, \1 + call Bankswitch +ENDM + +callab: MACRO + ld hl, \1 + ld b, BANK(\1) + call Bankswitch +ENDM + +jpba: MACRO + ld b, BANK(\1) + ld hl, \1 + jp Bankswitch +ENDM + +jpab: MACRO + ld hl, \1 + ld b, BANK(\1) + jp Bankswitch +ENDM + +homecall: MACRO + ld a, [H_LOADEDROMBANK] + push af + ld a, BANK(\1) + ld [H_LOADEDROMBANK], a + ld [MBC1RomBank], a + call \1 + pop af + ld [H_LOADEDROMBANK], a + ld [MBC1RomBank], a +ENDM diff --git a/macros/predef.asm b/macros/predef.asm new file mode 100644 index 00000000..fda42004 --- /dev/null +++ b/macros/predef.asm @@ -0,0 +1,49 @@ +predef_const: MACRO + const \1PredefID +ENDM + +add_predef: MACRO +\1Predef:: + db BANK(\1) + dw \1 +ENDM + +predef_id: MACRO + ld a, (\1Predef - PredefPointers) / 3 +ENDM + +predef: MACRO + predef_id \1 + call Predef +ENDM + +predef_jump: MACRO + predef_id \1 + jp Predef +ENDM + +tx_pre_const: MACRO + const \1_id +ENDM + +add_tx_pre: MACRO +\1_id:: dw \1 +ENDM + +db_tx_pre: MACRO + db (\1_id - TextPredefs) / 2 + 1 +ENDM + +tx_pre_id: MACRO + ld a, (\1_id - TextPredefs) / 2 + 1 +ENDM + +tx_pre: MACRO + tx_pre_id \1 + call PrintPredefTextID +ENDM + +tx_pre_jump: MACRO + tx_pre_id \1 + jp PrintPredefTextID +ENDM diff --git a/macros/scripts/audio.asm b/macros/scripts/audio.asm new file mode 100755 index 00000000..8a250c63 --- /dev/null +++ b/macros/scripts/audio.asm @@ -0,0 +1,186 @@ +audio_header: MACRO + 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 +ENDM + +; arguments: length [0, 7], pitch change [-7, 7] +; length: length of time between pitch shifts +; sometimes used with a value >7 in which case the MSB is ignored +; pitch change: positive value means increase in pitch, negative value means decrease in pitch +; small magnitude means quick change, large magnitude means slow change +; in signed magnitude representation, so a value of 8 is the same as (negative) 0 +pitch_sweep: MACRO + db $10 + IF \2 < 0 + db (\1 << 4) | (%1000 | (\2 * -1)) + ELSE + db (\1 << 4) | \2 + ENDC +ENDM + +; arguments: length [0, 15], volume [0, 15], fade [-7, 7], frequency +; fade: positive value means decrease in volume, negative value means increase in volume +; small magnitude means quick change, large magnitude means slow change +; in signed magnitude representation, so a value of 8 is the same as (negative) 0 +square_note: MACRO + db $20 | \1 + IF \3 < 0 + db (\2 << 4) | (%1000 | (\3 * -1)) + ELSE + db (\2 << 4) | \3 + ENDC + dw \4 +ENDM + +; arguments: length [0, 15], volume [0, 15], fade [-7, 7], frequency +; fade: positive value means decrease in volume, negative value means increase in volume +; small magnitude means quick change, large magnitude means slow change +; in signed magnitude representation, so a value of 8 is the same as (negative) 0 +noise_note: MACRO + db $20 | \1 + IF \3 < 0 + db (\2 << 4) | (%1000 | (\3 * -1)) + ELSE + db (\2 << 4) | \3 + ENDC + db \4 +ENDM + +; arguments: pitch, length [1, 16] +note: MACRO + db (\1 << 4) | (\2 - 1) +ENDM + +; arguments: instrument [1, 19], length [1, 16] +drum_note: MACRO + db $B0 | (\2 - 1) + db \1 +ENDM + +; arguments: instrument, length [1, 16] +; like drum_note but one 1 byte instead of 2 +; can only be used with instruments 1-10, excluding 2 +; unused +drum_note_short: MACRO + db (\1 << 4) | (\2 - 1) +ENDM + +; arguments: length [1, 16] +rest: MACRO + db $C0 | (\1 - 1) +ENDM + +; arguments: speed [0, 15], volume [0, 15], fade [-7, 7] +; fade: positive value means decrease in volume, negative value means increase in volume +; small magnitude means quick change, large magnitude means slow change +; in signed magnitude representation, so a value of 8 is the same as (negative) 0 +note_type: MACRO + db $D0 | \1 + IF \3 < 0 + db (\2 << 4) | (%1000 | (\3 * -1)) + ELSE + db (\2 << 4) | \3 + ENDC +ENDM + +; arguments: speed [0, 15] +drum_speed: MACRO + db $D0 | \1 +ENDM + +; arguments: octave [1, 8] +octave: MACRO + db $E8 - \1 +ENDM + +; when enabled, effective frequency used is incremented by 1 +toggle_perfect_pitch: MACRO + db $E8 +ENDM + +; arguments: delay [0, 255], depth [0, 15], rate [0, 15] +; delay: time delay until vibrato effect begins +; depth: amplitude of vibrato wave +; rate: frequency of vibrato wave +vibrato: MACRO + db $EA + db \1 + db (\2 << 4) | \3 +ENDM + +; arguments: length [1, 256], octave [1, 8], pitch +pitch_slide: MACRO + db $EB + db \1 - 1 + db ((8 - \2) << 4) | \3 +ENDM + +; arguments: duty cycle [0, 3] (12.5%, 25%, 50%, 75%) +duty_cycle: MACRO + db $EC + db \1 +ENDM + +; arguments: tempo [0, $ffff] +; used to calculate note delay counters +; so a smaller value means music plays faster +; ideally should be set to $100 or less to guarantee no overflow +; if larger than $100, large note speed or note length values might cause overflow +; stored in big endian +tempo: MACRO + db $ED + db \1 / $100 + db \1 % $100 +ENDM + +; arguments: left output enable mask, right output enable mask +stereo_panning: MACRO + db $EE + db (\1 << 4) | \2 +ENDM + +; arguments: left master volume [0, 7], right master volume [0, 7] +volume: MACRO + db $F0 + db (\1 << 4) | \2 +ENDM + +; when enabled, the sfx data is interpreted as music data +execute_music: MACRO + db $F8 +ENDM + +; arguments: duty cycle 1, duty cycle 2, duty cycle 3, duty cycle 4 +duty_cycle_pattern: MACRO + db $FC + db \1 << 6 | \2 << 4 | \3 << 2 | \4 +ENDM + +; arguments: address +sound_call: MACRO + db $FD + dw \1 +ENDM + +; arguments: count, address +sound_loop: MACRO + db $FE + db \1 + dw \2 +ENDM + +sound_ret: MACRO + db $FF +ENDM diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm new file mode 100755 index 00000000..9be354e3 --- /dev/null +++ b/macros/scripts/events.asm @@ -0,0 +1,471 @@ +;\1 = event index +;\2 = return result in carry instead of zero flag +CheckEvent: MACRO +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + + IF _NARG > 1 + IF ((\1) % 8) == 7 + add a + ELSE + REPT ((\1) % 8) + 1 + rrca + ENDR + ENDC + ELSE + bit (\1) % 8, a + ENDC +ENDM + + +;\1 = event index +CheckEventReuseA: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a +ENDM + + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseA: MACRO +event_byte = ((\2) / 8) + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a +ENDM + + +;\1 = reg +;\2 = event index +;\3 = event index this event is relative to (optional, this is needed when there is a fixed flag address) +EventFlagBit: MACRO + IF _NARG > 2 + ld \1, ((\3) % 8) + ((\2) - (\3)) + ELSE + ld \1, (\2) % 8 + ENDC +ENDM + + +;\1 = reg +;\2 = event index +EventFlagAddress: MACRO +event_byte = ((\2) / 8) + ld \1, wEventFlags + event_byte +ENDM + + +;\1 = event index +CheckEventHL: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] +ENDM + + +;\1 = event index +CheckEventReuseHL: MACRO +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] +ENDM + + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +CheckEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + bit (\1) % 8, [hl] +ENDM + + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] +ENDM + + +;\1 = event index +CheckAndSetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + set (\1) % 8, [hl] +ENDM + + +;\1 = event index +CheckAndResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + res (\1) % 8, [hl] +ENDM + + +;\1 = event index +CheckAndSetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + set (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a +ENDM + + +;\1 = event index +CheckAndResetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + res (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a +ENDM + + +;\1 = event index +SetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + set (\1) % 8, [hl] +ENDM + + +;\1 = event index +SetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] +ENDM + + +;\1 = event index +;\2 = event index of the last event used before the branch +SetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] +ENDM + + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +SetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + set (\1) % 8, [hl] +ENDM + + +;\1 = event index +;\2 = event index +;\3, \4, ... = additional (optional) event indices +SetEvents: MACRO + SetEvent \1 + rept (_NARG + -1) + SetEventReuseHL \2 + shift + endr +ENDM + + +;\1 = event index +ResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + res (\1) % 8, [hl] +ENDM + + +;\1 = event index +ResetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] +ENDM + + +;\1 = event index +;\2 = event index of the last event used before the branch +ResetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] +ENDM + + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +ResetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + res (\1) % 8, [hl] +ENDM + + +;\1 = event index +;\2 = event index +;\3 = event index (optional) +ResetEvents: MACRO + ResetEvent \1 + rept (_NARG + -1) + ResetEventReuseHL \2 + shift + endr +ENDM + + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dbEventFlagBit: MACRO + IF _NARG > 1 + db ((\1) % 8) + ((\2) * 8) + ELSE + db ((\1) % 8) + ENDC +ENDM + + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dwEventFlagAddress: MACRO + IF _NARG > 1 + dw wEventFlags + ((\1) / 8) - (\2) + ELSE + dw wEventFlags + ((\1) / 8) + ENDC +ENDM + + +;\1 = start +;\2 = end +SetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in SetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + or (1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8)) + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + or $ff - ((1 << ((\1) % 8)) - 1) + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], $ff + ENDC + + IF event_fill_count > 1 + ld a, $ff + ld hl, wEventFlags + event_fill_start + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + set 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + or (1 << (((\2) % 8) + 1)) - 1 + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC +ENDM + + +;\1 = start +;\2 = end +;\3 = assume a is 0 if present +ResetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in ResetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + and ~((1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))) & $ff + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + and ~($ff - ((1 << ((\1) % 8)) - 1)) & $ff + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], 0 + ENDC + + IF event_fill_count > 1 + ld hl, wEventFlags + event_fill_start + + ; force xor a if we just to wrote to it above + IF (_NARG < 3) || (((\1) % 8) != 0) + xor a + ENDC + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + res 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + and ~((1 << (((\2) % 8) + 1)) - 1) & $ff + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC +ENDM + + +; returns whether both events are set in Z flag +; This is counter-intuitive because the other event checks set the Z flag when +; the event is not set, but this sets the Z flag when the event is set. +;\1 = event index 1 +;\2 = event index 2 +;\3 = try to reuse a (optional) +CheckBothEventsSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + IF (_NARG < 3) || (((\1) / 8) != event_byte) +event_byte = ((\1) / 8) + ld a, [wEventFlags + ((\1) / 8)] + ENDC + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + and [hl] + cpl + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + pop bc + ENDC + ENDC +ENDM + + +; returns the complement of whether either event is set in Z flag +;\1 = event index 1 +;\2 = event index 2 +CheckEitherEventSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + or [hl] + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + pop bc + ENDC + ENDC +ENDM + + +; for handling fixed event bits when events are inserted/removed +;\1 = event index +;\2 = fixed flag bit +AdjustEventBit: MACRO + IF ((\1) % 8) != (\2) + add ((\1) % 8) - (\2) + ENDC +ENDM + diff --git a/macros/scripts/maps.asm b/macros/scripts/maps.asm new file mode 100644 index 00000000..a30561b9 --- /dev/null +++ b/macros/scripts/maps.asm @@ -0,0 +1,184 @@ +;\1 map width +;\2 Rows above (Y-blocks) +;\3 X movement (X-blocks) +EVENT_DISP: MACRO + dw (wOverworldMap + 7 + (\1) + ((\1) + 6) * ((\2) >> 1) + ((\3) >> 1)) ; Ev.Disp + db \2,\3 ;Y,X +ENDM + +FLYWARP_DATA: MACRO + EVENT_DISP \1,\2,\3 + db ((\2) & $01) ;sub-block Y + db ((\3) & $01) ;sub-block X +ENDM + +; external map entry macro +EMAP: MACRO ; emap x-coordinate,y-coordinate,textpointer +; the appearance of towns and routes in the town map, indexed by map id + ; nybble: y-coordinate + ; nybble: x-coordinate + ; word : pointer to map name + dn \2, \1 + dw \3 +ENDM + +; internal map entry macro +IMAP: MACRO ; imap mapid_less_than,x-coordinate,y-coordinate,textpointer +; the appearance of buildings and dungeons in the town map + ; byte : maximum map id subject to this rule + ; nybble: y-coordinate + ; nybble: x-coordinate + ; word : pointer to map name + db \1 + 1 + dn \3, \2 + dw \4 +ENDM + +;\1 sprite id +;\2 x position +;\3 y position +;\4 movement (WALK/STAY) +;\5 range or direction +;\6 text id +;\7 items only: item id +;\7 trainers only: trainer class/pokemon id +;\8 trainers only: trainer number/pokemon level +object: MACRO + db \1 + db \3 + 4 + db \2 + 4 + db \4 + db \5 + IF (_NARG > 7) + db TRAINER | \6 + db \7 + db \8 + ELSE + IF (_NARG > 6) + db ITEM | \6 + db \7 + ELSE + db \6 + ENDC + ENDC +ENDM + +;\1 x position +;\2 y position +;\3 destination warp id +;\4 destination map (-1 = wLastMap) +warp: MACRO + db \2, \1, \3, \4 +ENDM + +;\1 x position +;\2 y position +;\3 sign id +sign: MACRO + db \2, \1, \3 +ENDM + +;\1 x position +;\2 y position +;\3 map width +warp_to: MACRO + EVENT_DISP \3, \2, \1 +ENDM + +;\1 map name +;\2 map id +;\3 tileset +;\4 connections: combo of NORTH, SOUTH, WEST, and/or EAST, or 0 for none +map_header: MACRO +CURRENT_MAP_WIDTH = \2_WIDTH +CURRENT_MAP_HEIGHT = \2_HEIGHT +CURRENT_MAP_OBJECT EQUS "\1_Object" +\1_h:: + db \3 + db CURRENT_MAP_HEIGHT, CURRENT_MAP_WIDTH + dw \1_Blocks + dw \1_TextPointers + dw \1_Script + db \4 +ENDM + +; Comes after map_header and connection macros +end_map_header: MACRO + dw CURRENT_MAP_OBJECT +PURGE CURRENT_MAP_WIDTH +PURGE CURRENT_MAP_HEIGHT +PURGE CURRENT_MAP_OBJECT +ENDM + +; Connections go in order: north, south, west, east +;\1 direction +;\2 map name +;\3 map id +;\4 offset of the target map relative to the current map +; (x offset for east/west, y offset for north/south) +connection: MACRO + +; Calculate tile offsets for source (current) and target maps +_src = 0 +_tgt = (\4) + 3 +if _tgt < 2 +_src = -_tgt +_tgt = 0 +endc + +if "\1" == "north" +_blk = \3_WIDTH * (\3_HEIGHT - 3) + _src +_map = _tgt +_win = (\3_WIDTH + 6) * \3_HEIGHT + 1 +_y = \3_HEIGHT * 2 - 1 +_x = (\4) * -2 +_len = CURRENT_MAP_WIDTH + 3 - (\4) +if _len > \3_WIDTH +_len = \3_WIDTH +endc + +elif "\1" == "south" +_blk = _src +_map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt +_win = \3_WIDTH + 7 +_y = 0 +_x = (\4) * -2 +_len = CURRENT_MAP_WIDTH + 3 - (\4) +if _len > \3_WIDTH +_len = \3_WIDTH +endc + +elif "\1" == "west" +_blk = (\3_WIDTH * _src) + \3_WIDTH - 3 +_map = (CURRENT_MAP_WIDTH + 6) * _tgt +_win = (\3_WIDTH + 6) * 2 - 6 +_y = (\4) * -2 +_x = \3_WIDTH * 2 - 1 +_len = CURRENT_MAP_HEIGHT + 3 - (\4) +if _len > \3_HEIGHT +_len = \3_HEIGHT +endc + +elif "\1" == "east" +_blk = (\3_WIDTH * _src) +_map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3 +_win = \3_WIDTH + 7 +_y = (\4) * -2 +_x = 0 +_len = CURRENT_MAP_HEIGHT + 3 - (\4) +if _len > \3_HEIGHT +_len = \3_HEIGHT +endc + +else +fail "Invalid direction for 'connection'." +endc + + db \3 + dw \2_Blocks + _blk + dw wOverworldMap + _map + db _len - _src + db \3_WIDTH + db _y, _x + dw wOverworldMap + _win +ENDM diff --git a/macros/scripts/text.asm b/macros/scripts/text.asm new file mode 100755 index 00000000..732a22d4 --- /dev/null +++ b/macros/scripts/text.asm @@ -0,0 +1,78 @@ +text EQUS "db $00," ; Start writing text. +next EQUS "db $4e," ; Move a line down. +line EQUS "db $4f," ; Start writing at the bottom line. +para EQUS "db $51," ; Start a new paragraph. +cont EQUS "db $55," ; Scroll to the next line. +done EQUS "db $57" ; End a text box. +prompt EQUS "db $58" ; Prompt the player to end a text box (initiating some other event). + +page EQUS "db $49," ; Start a new Pokedex page. +dex EQUS "db $5f, $50" ; End a Pokedex entry. + +TX_RAM: MACRO +; prints text to screen +; \1: RAM address to read from + db $1 + dw \1 +ENDM + +TX_BCD: MACRO +; \1: RAM address to read from +; \2: number of bytes + print flags + db $2 + dw \1 + db \2 +ENDM + +TX_LINE EQUS "db $05" +TX_BLINK EQUS "db $06" +;TX_SCROLL EQUS "db $07" +TX_ASM EQUS "db $08" + +TX_NUM: MACRO +; print a big-endian decimal number. +; \1: address to read from +; \2: number of bytes to read +; \3: number of digits to display + db $09 + dw \1 + db \2 << 4 | \3 +ENDM + +TX_DELAY EQUS "db $0a" +TX_SFX_ITEM_1 EQUS "db $0b" +TX_SFX_LEVEL_UP EQUS "db $0b" +;TX_ELLIPSES EQUS "db $0c" +TX_WAIT EQUS "db $0d" +;TX_SFX_DEX_RATING EQUS "db $0e" +TX_SFX_ITEM_2 EQUS "db $10" +TX_SFX_KEY_ITEM EQUS "db $11" +TX_SFX_CAUGHT_MON EQUS "db $12" +TX_SFX_DEX_PAGE_ADDED EQUS "db $13" +TX_CRY_NIDORINA EQUS "db $14" +TX_CRY_PIDGEOT EQUS "db $15" +;TX_CRY_DEWGONG EQUS "db $16" + +TX_FAR: MACRO + db $17 + dw \1 + db BANK(\1) +ENDM + +TX_VENDING_MACHINE EQUS "db $f5" +TX_CABLE_CLUB_RECEPTIONIST EQUS "db $f6" +TX_PRIZE_VENDOR EQUS "db $f7" +TX_POKECENTER_PC EQUS "db $f9" +TX_PLAYERS_PC EQUS "db $fc" +TX_BILLS_PC EQUS "db $fd" + +TX_MART: MACRO + db $FE, _NARG + REPT _NARG + db \1 + SHIFT + ENDR + db $FF +ENDM + +TX_POKECENTER_NURSE EQUS "db $ff" diff --git a/macros/text_macros.asm b/macros/text_macros.asm deleted file mode 100755 index 21e02634..00000000 --- a/macros/text_macros.asm +++ /dev/null @@ -1,80 +0,0 @@ - -; text macros -text EQUS "db $00," ; Start writing text. -next EQUS "db $4e," ; Move a line down. -line EQUS "db $4f," ; Start writing at the bottom line. -para EQUS "db $51," ; Start a new paragraph. -cont EQUS "db $55," ; Scroll to the next line. -done EQUS "db $57" ; End a text box. -prompt EQUS "db $58" ; Prompt the player to end a text box (initiating some other event). - -page EQUS "db $49," ; Start a new Pokedex page. -dex EQUS "db $5f, $50" ; End a Pokedex entry. - -TX_RAM: MACRO -; prints text to screen -; \1: RAM address to read from - db $1 - dw \1 -ENDM - -TX_BCD: MACRO -; \1: RAM address to read from -; \2: number of bytes + print flags - db $2 - dw \1 - db \2 -ENDM - -TX_LINE EQUS "db $05" -TX_BLINK EQUS "db $06" -;TX_SCROLL EQUS "db $07" -TX_ASM EQUS "db $08" - -TX_NUM: MACRO -; print a big-endian decimal number. -; \1: address to read from -; \2: number of bytes to read -; \3: number of digits to display - db $09 - dw \1 - db \2 << 4 | \3 -ENDM - -TX_DELAY EQUS "db $0a" -TX_SFX_ITEM_1 EQUS "db $0b" -TX_SFX_LEVEL_UP EQUS "db $0b" -;TX_ELLIPSES EQUS "db $0c" -TX_WAIT EQUS "db $0d" -;TX_SFX_DEX_RATING EQUS "db $0e" -TX_SFX_ITEM_2 EQUS "db $10" -TX_SFX_KEY_ITEM EQUS "db $11" -TX_SFX_CAUGHT_MON EQUS "db $12" -TX_SFX_DEX_PAGE_ADDED EQUS "db $13" -TX_CRY_NIDORINA EQUS "db $14" -TX_CRY_PIDGEOT EQUS "db $15" -;TX_CRY_DEWGONG EQUS "db $16" - -TX_FAR: MACRO - db $17 - dw \1 - db BANK(\1) -ENDM - -TX_VENDING_MACHINE EQUS "db $f5" -TX_CABLE_CLUB_RECEPTIONIST EQUS "db $f6" -TX_PRIZE_VENDOR EQUS "db $f7" -TX_POKECENTER_PC EQUS "db $f9" -TX_PLAYERS_PC EQUS "db $fc" -TX_BILLS_PC EQUS "db $fd" - -TX_MART: MACRO - db $FE, _NARG - REPT _NARG - db \1 - SHIFT - ENDR - db $FF -ENDM - -TX_POKECENTER_NURSE EQUS "db $ff" diff --git a/scripts/CeruleanCity.asm b/scripts/CeruleanCity.asm index 117ec4da..94ec2496 100755 --- a/scripts/CeruleanCity.asm +++ b/scripts/CeruleanCity.asm @@ -64,7 +64,7 @@ CeruleanCityScript0: ld a, [wWalkBikeSurfState] and a jr z, .asm_19512 - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound .asm_19512 @@ -171,7 +171,7 @@ CeruleanCityScript2: ld a, $1 ld [hSpriteIndexOrTextID], a call DisplayTextID - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm index 11abdf65..79de99ff 100755 --- a/scripts/OaksLab.asm +++ b/scripts/OaksLab.asm @@ -510,7 +510,7 @@ OaksLabScript15: xor a ld [hJoyHeld], a call EnableAutoTextBoxDrawing - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart @@ -611,7 +611,7 @@ OaksLabScript16: xor a ; NPC_MOVEMENT_DOWN call FillMemory ld [hl], $ff - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart diff --git a/scripts/PalletTown.asm b/scripts/PalletTown.asm index 5ad7d40f..4c6ab015 100755 --- a/scripts/PalletTown.asm +++ b/scripts/PalletTown.asm @@ -27,8 +27,8 @@ PalletTownScript0: ld [hJoyHeld], a ld a, PLAYER_DIR_DOWN ld [wPlayerMovingDirection], a - ld a, $FF - call PlaySound ; stop music + ld a, SFX_STOP_ALL_MUSIC + call PlaySound ld a, BANK(Music_MeetProfOak) ld c, a ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music diff --git a/scripts/PewterPokecenter.asm b/scripts/PewterPokecenter.asm index 22d2fb6b..be933fee 100755 --- a/scripts/PewterPokecenter.asm +++ b/scripts/PewterPokecenter.asm @@ -21,7 +21,8 @@ PewterJigglypuffText: ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, .Text call PrintText - StopAllMusic + ld a, SFX_STOP_ALL_MUSIC + call PlaySound ld c, 32 call DelayFrames ld hl, JigglypuffFacingDirections diff --git a/scripts/PokemonTower2F.asm b/scripts/PokemonTower2F.asm index 81f4c0b3..94916e37 100755 --- a/scripts/PokemonTower2F.asm +++ b/scripts/PokemonTower2F.asm @@ -22,7 +22,7 @@ PokemonTower2Script0: ld hl, CoordsData_6055e call ArePlayerCoordsInArray ret nc - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld c, BANK(Music_MeetRival) @@ -76,7 +76,7 @@ PokemonTower2Script1: ld a, $1 ld [H_SPRITEINDEX], a call MoveSprite - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart diff --git a/scripts/Route22.asm b/scripts/Route22.asm index 7226e509..1fd7e09a 100755 --- a/scripts/Route22.asm +++ b/scripts/Route22.asm @@ -88,7 +88,7 @@ Route22Script0: ld a, [wWalkBikeSurfState] and a jr z, .asm_50f4e - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound .asm_50f4e @@ -167,7 +167,7 @@ Route22Script2: ld a, $1 ld [hSpriteIndexOrTextID], a call DisplayTextID - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart @@ -241,11 +241,11 @@ Route22Script_5104e: ld a, [wWalkBikeSurfState] and a jr z, .skipYVisibilityTesta - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound .skipYVisibilityTesta - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateTempo @@ -326,7 +326,7 @@ Route22Script5: ld a, $2 ld [hSpriteIndexOrTextID], a call DisplayTextID - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStartAndTempo diff --git a/scripts/SSAnne2F.asm b/scripts/SSAnne2F.asm index ba900748..2795d1d1 100755 --- a/scripts/SSAnne2F.asm +++ b/scripts/SSAnne2F.asm @@ -24,7 +24,7 @@ SSAnne2Script0: ld hl, CoordsData_61411 call ArePlayerCoordsInArray ret nc - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld c, BANK(Music_MeetRival) @@ -145,7 +145,7 @@ SSAnne2Script2: ld a, $2 ld [H_SPRITEINDEX], a call MoveSprite - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart diff --git a/scripts/SSAnneCaptainsRoom.asm b/scripts/SSAnneCaptainsRoom.asm index de0272e4..5723c32d 100755 --- a/scripts/SSAnneCaptainsRoom.asm +++ b/scripts/SSAnneCaptainsRoom.asm @@ -48,7 +48,7 @@ SSAnne7RubText: cp BANK(Audio3_UpdateMusic) ld [wAudioSavedROMBank], a jr nz, .asm_61908 - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld a, Bank(Music_PkmnHealed) diff --git a/scripts/SilphCo7F.asm b/scripts/SilphCo7F.asm index e7594663..84a94c92 100755 --- a/scripts/SilphCo7F.asm +++ b/scripts/SilphCo7F.asm @@ -130,7 +130,7 @@ SilphCo7Script0: ld [wJoyIgnore], a ld a, PLAYER_DIR_DOWN ld [wPlayerMovingDirection], a - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound ld c, BANK(Music_MeetRival) @@ -219,7 +219,7 @@ SilphCo7Script4: ld a, $f ld [hSpriteIndexOrTextID], a call DisplayTextID - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound callba Music_RivalAlternateStart diff --git a/scripts/VermilionDock.asm b/scripts/VermilionDock.asm index 65b66c52..cc237f8e 100755 --- a/scripts/VermilionDock.asm +++ b/scripts/VermilionDock.asm @@ -38,7 +38,7 @@ VermilionDock_Script: VermilionDock_1db9b: SetEventForceReuseHL EVENT_SS_ANNE_LEFT - ld a, $ff + ld a, SFX_STOP_ALL_MUSIC ld [wJoyIgnore], a ld [wNewSoundID], a call PlaySound -- cgit v1.3.1-sl0p From 962722746ece1952f7f2dcd55bbe3b45d7b86812 Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 16:45:00 -0400 Subject: tilesets.asm -> tileset_constants.asm --- constants.asm | 2 +- constants/tileset_constants.asm | 25 +++++++++++++++++++++++++ constants/tilesets.asm | 25 ------------------------- 3 files changed, 26 insertions(+), 26 deletions(-) create mode 100644 constants/tileset_constants.asm delete mode 100644 constants/tilesets.asm (limited to 'constants') diff --git a/constants.asm b/constants.asm index cd306680..b1395ea8 100644 --- a/constants.asm +++ b/constants.asm @@ -34,7 +34,7 @@ INCLUDE "constants/hide_show_constants.asm" INCLUDE "constants/credits_constants.asm" INCLUDE "constants/audio_constants.asm" INCLUDE "constants/music_constants.asm" -INCLUDE "constants/tilesets.asm" +INCLUDE "constants/tileset_constants.asm" INCLUDE "constants/starter_mons.asm" INCLUDE "constants/event_constants.asm" INCLUDE "constants/text_constants.asm" diff --git a/constants/tileset_constants.asm b/constants/tileset_constants.asm new file mode 100644 index 00000000..33d59fcb --- /dev/null +++ b/constants/tileset_constants.asm @@ -0,0 +1,25 @@ + const_def + const OVERWORLD ; 0 + const REDS_HOUSE_1 ; 1 + const MART ; 2 + const FOREST ; 3 + const REDS_HOUSE_2 ; 4 + const DOJO ; 5 + const POKECENTER ; 6 + const GYM ; 7 + const HOUSE ; 8 + const FOREST_GATE ; 9 + const MUSEUM ; 10 + const UNDERGROUND ; 11 + const GATE ; 12 + const SHIP ; 13 + const SHIP_PORT ; 14 + const CEMETERY ; 15 + const INTERIOR ; 16 + const CAVERN ; 17 + const LOBBY ; 18 + const MANSION ; 19 + const LAB ; 20 + const CLUB ; 21 + const FACILITY ; 22 + const PLATEAU ; 23 diff --git a/constants/tilesets.asm b/constants/tilesets.asm deleted file mode 100644 index 33d59fcb..00000000 --- a/constants/tilesets.asm +++ /dev/null @@ -1,25 +0,0 @@ - const_def - const OVERWORLD ; 0 - const REDS_HOUSE_1 ; 1 - const MART ; 2 - const FOREST ; 3 - const REDS_HOUSE_2 ; 4 - const DOJO ; 5 - const POKECENTER ; 6 - const GYM ; 7 - const HOUSE ; 8 - const FOREST_GATE ; 9 - const MUSEUM ; 10 - const UNDERGROUND ; 11 - const GATE ; 12 - const SHIP ; 13 - const SHIP_PORT ; 14 - const CEMETERY ; 15 - const INTERIOR ; 16 - const CAVERN ; 17 - const LOBBY ; 18 - const MANSION ; 19 - const LAB ; 20 - const CLUB ; 21 - const FACILITY ; 22 - const PLATEAU ; 23 -- cgit v1.3.1-sl0p From 6ef36800b0dcb86100a7c716172015667e60dc99 Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 22:11:35 -0400 Subject: Replace raw hex values with HRAM constants To do: turn constants into labels and use ldh --- audio/engine_1.asm | 2 +- audio/engine_2.asm | 2 +- audio/engine_3.asm | 2 +- audio/pokedex_rating_sfx.asm | 2 +- audio/wave_instruments.asm | 2 +- constants/hardware_constants.asm | 16 +++++++ data/events/hidden_objects.asm | 46 +++++++++---------- data/maps/hide_show_data.asm | 4 +- data/wild/grass_water.asm | 2 +- engine/battle/animations.asm | 2 +- engine/battle/core.asm | 4 +- engine/battle/scale_sprites.asm | 4 +- engine/events/cinnabar_lab.asm | 2 +- engine/events/diploma.asm | 2 +- engine/events/hidden_objects/bookshelves.asm | 4 +- engine/events/hidden_objects/cinnabar_gym_quiz.asm | 12 ++--- engine/events/pick_up_item.asm | 4 +- engine/events/saffron_guards.asm | 2 +- engine/gfx/oam_dma.asm | 4 +- engine/gfx/screen_effects.asm | 12 ++--- engine/items/item_effects.asm | 2 +- engine/link/cable_club.asm | 4 +- engine/menus/pokedex.asm | 6 +-- engine/menus/save.asm | 8 ++-- engine/menus/swap_items.asm | 8 ++-- engine/movie/oak_speech/oak_speech.asm | 8 ++-- engine/overworld/hidden_objects.asm | 14 +++--- engine/overworld/missable_objects.asm | 2 +- engine/overworld/movement.asm | 4 +- engine/overworld/player_state.asm | 32 +++++++------- engine/overworld/sprite_collisions.asm | 40 ++++++++--------- engine/overworld/tilesets.asm | 2 +- engine/overworld/trainer_sight.asm | 16 +++---- engine/overworld/update_map.asm | 14 +++--- home.asm | 48 ++++++++++---------- home/init.asm | 6 +-- home/overworld.asm | 12 ++--- home/text.asm | 2 +- home/vblank.asm | 2 +- hram.asm | 51 +++++++++++++++++++++- scripts/BikeShop.asm | 2 +- scripts/BillsHouse.asm | 8 ++-- scripts/CinnabarGym.asm | 4 +- scripts/CopycatsHouse2F.asm | 2 +- scripts/OaksLab.asm | 8 ++-- scripts/PewterCity.asm | 16 +++---- scripts/Route5Gate.asm | 4 +- scripts/Route6Gate.asm | 2 +- scripts/Route7Gate.asm | 2 +- scripts/Route8Gate.asm | 2 +- scripts/SSAnne2F.asm | 4 +- scripts/SSAnneCaptainsRoom.asm | 2 +- scripts/SilphCo10F.asm | 2 +- scripts/SilphCo11F.asm | 8 ++-- scripts/SilphCo2F.asm | 8 ++-- scripts/SilphCo3F.asm | 2 +- scripts/SilphCo4F.asm | 8 ++-- scripts/SilphCo5F.asm | 2 +- scripts/SilphCo6F.asm | 2 +- scripts/SilphCo7F.asm | 8 ++-- scripts/SilphCo8F.asm | 8 ++-- scripts/SilphCo9F.asm | 8 ++-- scripts/ViridianCity.asm | 32 +++++++------- scripts/WardensHouse.asm | 2 +- wram.asm | 2 +- 65 files changed, 311 insertions(+), 248 deletions(-) (limited to 'constants') diff --git a/audio/engine_1.asm b/audio/engine_1.asm index 0f76f576..20b992aa 100644 --- a/audio/engine_1.asm +++ b/audio/engine_1.asm @@ -925,7 +925,7 @@ Audio1_ApplyWavePatternAndFrequency: ld e, [hl] inc hl ld d, [hl] - ld hl, $ff30 ; wave pattern RAM + ld hl, rWave_0 ld b, $f ld a, $0 ; stop hardware channel 3 ld [rNR30], a diff --git a/audio/engine_2.asm b/audio/engine_2.asm index 2e0aad0d..864a8c21 100644 --- a/audio/engine_2.asm +++ b/audio/engine_2.asm @@ -936,7 +936,7 @@ Audio2_ApplyWavePatternAndFrequency: ld e, [hl] inc hl ld d, [hl] - ld hl, $ff30 ; wave pattern RAM + ld hl, rWave_0 ld b, $f ld a, $0 ; stop hardware channel 3 ld [rNR30], a diff --git a/audio/engine_3.asm b/audio/engine_3.asm index 771b44df..c0aaeaf8 100644 --- a/audio/engine_3.asm +++ b/audio/engine_3.asm @@ -925,7 +925,7 @@ Audio3_ApplyWavePatternAndFrequency: ld e, [hl] inc hl ld d, [hl] - ld hl, $ff30 ; wave pattern RAM + ld hl, rWave_0 ld b, $f ld a, $0 ; stop hardware channel 3 ld [rNR30], a diff --git a/audio/pokedex_rating_sfx.asm b/audio/pokedex_rating_sfx.asm index f3aace8a..1b5dc4f0 100644 --- a/audio/pokedex_rating_sfx.asm +++ b/audio/pokedex_rating_sfx.asm @@ -1,5 +1,5 @@ PlayPokedexRatingSfx:: - ld a, [$ffdc] + ld a, [hDexRatingNumMonsOwned] ld c, $0 ld hl, OwnedMonValues .getSfxPointer diff --git a/audio/wave_instruments.asm b/audio/wave_instruments.asm index c915f18a..4a830f4b 100644 --- a/audio/wave_instruments.asm +++ b/audio/wave_instruments.asm @@ -13,7 +13,7 @@ ; these are the definitions for the channel 3 instruments ; each instrument definition is made up of 32 points (nibbles) that form ; the graph of the wave -; the current instrument is copied to $FF30 +; the current instrument is copied to rWave_0--rWave_f .wave0 db $02,$46,$8A,$CE,$FF,$FE,$ED,$DC,$CB,$A9,$87,$65,$44,$33,$22,$11 diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm index 9f2aa1b7..59ec6170 100644 --- a/constants/hardware_constants.asm +++ b/constants/hardware_constants.asm @@ -64,6 +64,22 @@ rNR44 EQU $ff23 ; Channel 4 Counter/consecutive; Initial (R/W) rNR50 EQU $ff24 ; Channel control / ON-OFF / Volume (R/W) rNR51 EQU $ff25 ; Selection of Sound output terminal (R/W) rNR52 EQU $ff26 ; Sound on/off +rWave_0 EQU $ff30 +rWave_1 EQU $ff31 +rWave_2 EQU $ff32 +rWave_3 EQU $ff33 +rWave_4 EQU $ff34 +rWave_5 EQU $ff35 +rWave_6 EQU $ff36 +rWave_7 EQU $ff37 +rWave_8 EQU $ff38 +rWave_9 EQU $ff39 +rWave_a EQU $ff3a +rWave_b EQU $ff3b +rWave_c EQU $ff3c +rWave_d EQU $ff3d +rWave_e EQU $ff3e +rWave_f EQU $ff3f rLCDC EQU $ff40 ; LCD Control (R/W) rLCDC_ENABLE EQU 7 rLCDC_ENABLE_MASK EQU 1 << rLCDC_ENABLE diff --git a/data/events/hidden_objects.asm b/data/events/hidden_objects.asm index 737947a7..8fc539ef 100755 --- a/data/events/hidden_objects.asm +++ b/data/events/hidden_objects.asm @@ -224,7 +224,7 @@ OaksLabHiddenObjects: db $FF ViridianPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -234,7 +234,7 @@ ViridianMartHiddenObjects: db $FF ViridianSchoolHiddenObjects: db $04,$03,(ViridianSchoolNotebook_id - TextPredefs) / 2 + 1 - db Bank(PrintNotebookText) + db BANK(PrintNotebookText) dw PrintNotebookText db $00,$03,(ViridianSchoolBlackboard_id - TextPredefs) / 2 + 1 db BANK(PrintBlackboardLinkCableText) @@ -262,7 +262,7 @@ PewterMartHiddenObjects: db $FF PewterPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -270,7 +270,7 @@ PewterPokecenterHiddenObjects: db $FF CeruleanPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -286,7 +286,7 @@ CeruleanMartHiddenObjects: db $FF LavenderPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -297,7 +297,7 @@ VermilionPokecenterHiddenObjects: db BANK(OpenPokemonCenterPC) dw OpenPokemonCenterPC db $04,$00,$04 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $FF VermilionGymHiddenObjects: @@ -345,7 +345,7 @@ CeladonMansion2HiddenObjects: db $FF CeladonPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -460,7 +460,7 @@ CeladonHotelHiddenObjects: db BANK(OpenPokemonCenterPC) dw OpenPokemonCenterPC db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $FF FuchsiaPokecenterHiddenObjects: @@ -468,7 +468,7 @@ FuchsiaPokecenterHiddenObjects: db BANK(OpenPokemonCenterPC) dw OpenPokemonCenterPC db $04,$00,$04 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $FF FuchsiaGymHiddenObjects: @@ -481,27 +481,27 @@ CinnabarGymHiddenObjects: db $0d,$11,$04 dbw BANK(GymStatues),GymStatues db $07,$0f,$01 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $01,$0a,$12 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $07,$09,$13 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $0d,$09,$14 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $0d,$01,$05 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $07,$01,$16 - db Bank(PrintCinnabarQuiz) + db BANK(PrintCinnabarQuiz) dw PrintCinnabarQuiz db $FF CinnabarPokecenterHiddenObjects: db $04,$00,$04 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -513,7 +513,7 @@ SaffronGymHiddenObjects: db $FF MtMoonPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -521,7 +521,7 @@ MtMoonPokecenterHiddenObjects: db $FF RockTunnelPokecenterHiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -589,7 +589,7 @@ RocketHideout4HiddenObjects: db $FF SaffronPokecenterHiddenObjects: db $04,$00,$04 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -704,7 +704,7 @@ ViridianCityHiddenObjects: db $FF SafariZoneRestHouse2HiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -712,7 +712,7 @@ SafariZoneRestHouse2HiddenObjects: db $FF SafariZoneRestHouse3HiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -720,7 +720,7 @@ SafariZoneRestHouse3HiddenObjects: db $FF SafariZoneRestHouse4HiddenObjects: db $04,$00,$08 - db Bank(PrintBenchGuyText) + db BANK(PrintBenchGuyText) dw PrintBenchGuyText db $03,$0d,$04 db BANK(OpenPokemonCenterPC) @@ -750,7 +750,7 @@ CeladonMansion5HiddenObjects: db BANK(PrintBlackboardLinkCableText) dw PrintBlackboardLinkCableText db $04,$03,(TMNotebook_id - TextPredefs) / 2 + 1 - db Bank(PrintNotebookText) + db BANK(PrintNotebookText) dw PrintNotebookText db $FF FightingDojoHiddenObjects: diff --git a/data/maps/hide_show_data.asm b/data/maps/hide_show_data.asm index 7f4593ca..bc89d600 100755 --- a/data/maps/hide_show_data.asm +++ b/data/maps/hide_show_data.asm @@ -2,7 +2,7 @@ ; objects for each map ($00-$F8) ; Table of 2-Byte pointers, one pointer per map, -; goes up to Map_F7, ends with $FFFF. +; goes up to Map_F7, ends with -1. ; points to table listing all missable object in the area MapHSPointers: dw MapHS00 @@ -253,7 +253,7 @@ MapHSPointers: dw MapHSXX dw MapHSXX dw MapHSXX - dw $FFFF + dw -1 ; end ; Structure: ; 3 bytes per object diff --git a/data/wild/grass_water.asm b/data/wild/grass_water.asm index f1dd461e..9dc41f82 100755 --- a/data/wild/grass_water.asm +++ b/data/wild/grass_water.asm @@ -247,7 +247,7 @@ WildDataPointers: dw NoMons dw NoMons dw NoMons - dw $FFFF + dw -1 ; end ; wild pokemon data is divided into two parts. ; first part: pokemon found in grass diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index c16fa3ec..d858e066 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -163,7 +163,7 @@ DrawFrameBlock: PlayAnimation: xor a - ld [$FF8B], a ; it looks like nothing reads this + ld [hROMBankTemp], a ; it looks like nothing reads this ld [wSubAnimTransform], a ld a, [wAnimationID] ; get animation number dec a diff --git a/engine/battle/core.asm b/engine/battle/core.asm index e503243d..00852b2b 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -6870,9 +6870,9 @@ _LoadTrainerPic: ld d, a ; de contains pointer to trainer pic ld a, [wLinkState] and a - ld a, Bank(TrainerPics) ; this is where all the trainer pics are (not counting Red's) + ld a, BANK(TrainerPics) ; this is where all the trainer pics are (not counting Red's) jr z, .loadSprite - ld a, Bank(RedPicFront) + ld a, BANK(RedPicFront) .loadSprite call UncompressSpriteFromDE ld de, vFrontPic diff --git a/engine/battle/scale_sprites.asm b/engine/battle/scale_sprites.asm index 1774f7c5..11967ba1 100644 --- a/engine/battle/scale_sprites.asm +++ b/engine/battle/scale_sprites.asm @@ -17,7 +17,7 @@ ScaleFirstThreeSpriteColumnsByTwo: .columnInnerLoop push bc ld a, [de] - ld bc, -(7*8)+1 ; $ffc9, scale lower nybble and seek to previous output column + ld bc, -(7*8)+1 ; -$37, scale lower nybble and seek to previous output column call ScalePixelsByTwo ld a, [de] dec de @@ -32,7 +32,7 @@ ScaleFirstThreeSpriteColumnsByTwo: dec de dec de ld a, b - ld bc, -7*8 ; $ffc8, skip one output column (which has already been written along with the current one) + ld bc, -7*8 ; -$38, skip one output column (which has already been written along with the current one) add hl, bc ld b, a dec b diff --git a/engine/events/cinnabar_lab.asm b/engine/events/cinnabar_lab.asm index e642840d..e1598f98 100755 --- a/engine/events/cinnabar_lab.asm +++ b/engine/events/cinnabar_lab.asm @@ -35,7 +35,7 @@ GiveFossilToCinnabarLab:: ld e, a add hl, de ld a, [hl] - ld [$ffdb], a + ld [hItemToRemoveID], a cp DOME_FOSSIL jr z, .choseDomeFossil cp HELIX_FOSSIL diff --git a/engine/events/diploma.asm b/engine/events/diploma.asm index e53ef58f..24bd2f22 100755 --- a/engine/events/diploma.asm +++ b/engine/events/diploma.asm @@ -73,7 +73,7 @@ UnusedPlayerNameLengthFunc: ; Unused function that does a calculation involving the length of the player's ; name. ld hl, wPlayerName - ld bc, $ff00 + lb bc, $ff, $00 .loop ld a, [hli] cp "@" diff --git a/engine/events/hidden_objects/bookshelves.asm b/engine/events/hidden_objects/bookshelves.asm index 82cd8843..eaf744ff 100644 --- a/engine/events/hidden_objects/bookshelves.asm +++ b/engine/events/hidden_objects/bookshelves.asm @@ -24,7 +24,7 @@ PrintBookshelfText:: pop af call PrintPredefTextID xor a - ld [$ffdb], a + ld [hFFDB], a ret .nextBookshelfEntry1 inc hl @@ -33,7 +33,7 @@ PrintBookshelfText:: jr .loop .noMatch ld a, $ff - ld [$ffdb], a + ld [hFFDB], a jpba PrintCardKeyText INCLUDE "data/tilesets/bookshelf_tile_ids.asm" diff --git a/engine/events/hidden_objects/cinnabar_gym_quiz.asm b/engine/events/hidden_objects/cinnabar_gym_quiz.asm index 9f549eea..6404717e 100644 --- a/engine/events/hidden_objects/cinnabar_gym_quiz.asm +++ b/engine/events/hidden_objects/cinnabar_gym_quiz.asm @@ -16,7 +16,7 @@ CinnabarGymQuiz:: pop af and $f0 swap a - ld [$ffdc], a + ld [hGymGateAnswer], a ld hl, CinnabarGymQuizIntroText call PrintText ld a, [hGymGateIndex] @@ -77,7 +77,7 @@ CinnabarGymGateFlagAction: CinnabarGymQuiz_1ea92: call YesNoChoice - ld a, [$ffdc] + ld a, [hGymGateAnswer] ld c, a ld a, [wCurrentMenuItem] cp c @@ -85,10 +85,10 @@ CinnabarGymQuiz_1ea92: ld hl, wCurrentMapScriptFlags set 5, [hl] ld a, [hGymGateIndex] - ld [$ffe0], a + ld [hBackupGymGateIndex], a ld hl, CinnabarGymQuizCorrectText call PrintText - ld a, [$ffe0] + ld a, [hBackupGymGateIndex] AdjustEventBit EVENT_CINNABAR_GYM_GATE0_UNLOCKED, 0 ld c, a ld b, FLAG_SET @@ -122,7 +122,7 @@ CinnabarGymQuizCorrectText: TX_BLINK TX_ASM - ld a, [$ffe0] + ld a, [hBackupGymGateIndex] AdjustEventBit EVENT_CINNABAR_GYM_GATE0_UNLOCKED, 0 ld c, a ld b, FLAG_TEST @@ -162,7 +162,7 @@ UpdateCinnabarGymGateTileBlocks_:: ld [wGymGateTileBlock], a push bc ld a, [hGymGateIndex] - ld [$ffe0], a + ld [hBackupGymGateIndex], a AdjustEventBit EVENT_CINNABAR_GYM_GATE0_UNLOCKED, 0 ld c, a ld b, FLAG_TEST diff --git a/engine/events/pick_up_item.asm b/engine/events/pick_up_item.asm index 9f19100a..5a658f22 100644 --- a/engine/events/pick_up_item.asm +++ b/engine/events/pick_up_item.asm @@ -15,7 +15,7 @@ PickUpItem: .isMissable ld a, [hl] - ld [$ffdb], a + ld [hMissableObjectIndex], a ld hl, wMapSpriteExtraData ld a, [hSpriteIndexOrTextID] @@ -30,7 +30,7 @@ PickUpItem: call GiveItem jr nc, .BagFull - ld a, [$ffdb] + ld a, [hMissableObjectIndex] ld [wMissableObjectIndex], a predef HideObject ld a, 1 diff --git a/engine/events/saffron_guards.asm b/engine/events/saffron_guards.asm index 02ab92ea..59c2725c 100755 --- a/engine/events/saffron_guards.asm +++ b/engine/events/saffron_guards.asm @@ -2,7 +2,7 @@ RemoveGuardDrink:: ld hl, GuardDrinksList .drinkLoop ld a, [hli] - ld [$ffdb], a + ld [hItemToRemoveID], a and a ret z push hl diff --git a/engine/gfx/oam_dma.asm b/engine/gfx/oam_dma.asm index b0d64675..aeea4c01 100644 --- a/engine/gfx/oam_dma.asm +++ b/engine/gfx/oam_dma.asm @@ -1,12 +1,12 @@ WriteDMACodeToHRAM:: ; Since no other memory is available during OAM DMA, ; DMARoutine is copied to HRAM and executed there. - ld c, $ff80 % $100 + ld c, hDMARoutine % $100 ld b, DMARoutineEnd - DMARoutine ld hl, DMARoutine .copy ld a, [hli] - ld [$ff00+c], a + ldh [c], a inc c dec b jr nz, .copy diff --git a/engine/gfx/screen_effects.asm b/engine/gfx/screen_effects.asm index 95f0ea25..0d3806c1 100755 --- a/engine/gfx/screen_effects.asm +++ b/engine/gfx/screen_effects.asm @@ -19,7 +19,7 @@ PredefShakeScreenVertically: ld [wDisableVBlankWYUpdate], a xor a .loop - ld [$ff96], a + ld [hMutateWY], a call .MutateWY call .MutateWY dec b @@ -30,9 +30,9 @@ PredefShakeScreenVertically: ret .MutateWY - ld a, [$ff96] + ld a, [hMutateWY] xor b - ld [$ff96], a + ld [hMutateWY], a ld [rWY], a ld c, 3 jp DelayFrames @@ -43,7 +43,7 @@ PredefShakeScreenHorizontally: call GetPredefRegisters xor a .loop - ld [$ff97], a + ld [hMutateWX], a call .MutateWX ld c, 1 call DelayFrames @@ -58,9 +58,9 @@ PredefShakeScreenHorizontally: ret .MutateWX - ld a, [$ff97] + ld a, [hMutateWX] xor b - ld [$ff97], a + ld [hMutateWX], a bit 7, a jr z, .skipZeroing xor a ; zero a if it's negative diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index a793ae00..7e2aa227 100755 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -1341,7 +1341,7 @@ ItemUseMedicine: push hl push de ld d, a - callab CalcExperience ; calculate experience for next level and store it at $ff96 + callab CalcExperience ; calculate experience for next level and store it at hExperience pop de pop hl ld bc, wPartyMon1Exp - wPartyMon1Level diff --git a/engine/link/cable_club.asm b/engine/link/cable_club.asm index 13b92e71..58008a94 100755 --- a/engine/link/cable_club.asm +++ b/engine/link/cable_club.asm @@ -663,7 +663,7 @@ TradeCenter_PrintPartyListNames: push de push hl ld a, c - ld [$ff95], a + ld [hPastLeadingZeros], a call GetMonName pop hl call PlaceString @@ -903,7 +903,7 @@ CableClub_Run: ld [wTilesetGfxPtr + 1], a ld a, l ld [wTilesetGfxPtr], a - ld a, Bank(Club_GFX) + ld a, BANK(Club_GFX) ld [wTilesetBank], a ld hl, Club_Coll ld a, h diff --git a/engine/menus/pokedex.asm b/engine/menus/pokedex.asm index 0b7fb83c..baf656b6 100755 --- a/engine/menus/pokedex.asm +++ b/engine/menus/pokedex.asm @@ -566,11 +566,11 @@ ShowPokedexDataInternal: pop hl inc hl ; hl = address of pokedex description text coord bc, 1, 11 - ld a, 2 - ld [$fff4], a + ld a, %10 + ld [hClearLetterPrintingDelayFlags], a call TextCommandProcessor ; print pokedex description text xor a - ld [$fff4], a + ld [hClearLetterPrintingDelayFlags], a .waitForButtonPress call JoypadLowSensitivity ld a, [hJoy5] diff --git a/engine/menus/save.asm b/engine/menus/save.asm index 5aec7bd0..f2ecc3aa 100755 --- a/engine/menus/save.asm +++ b/engine/menus/save.asm @@ -601,9 +601,9 @@ GetMonCountsForBoxesInBank: ret SAVCheckRandomID: -;checks if Sav file is the same by checking player's name 1st letter ($a598) +; checks if Sav file is the same by checking player's name 1st letter ; and the two random numbers generated at game beginning -;(which are stored at wPlayerID)s +; (which are stored at wPlayerID)s ld a, $0a ld [MBC1SRamEnable], a ld a, $01 @@ -702,7 +702,7 @@ ClearSAV: PadSRAM_FF: ld [MBC1SRamBank], a - ld hl, $a000 - ld bc, $2000 + ld hl, $a000 ; start of SRAM + ld bc, $2000 ; size of SRAM ld a, $ff jp FillMemory diff --git a/engine/menus/swap_items.asm b/engine/menus/swap_items.asm index 826fe60b..8b793ea1 100644 --- a/engine/menus/swap_items.asm +++ b/engine/menus/swap_items.asm @@ -77,18 +77,18 @@ HandleItemListSwapping:: cp b jr z, .swapSameItemType .swapDifferentItems - ld [$ff95], a ; [$ff95] = second item ID + ld [hSwapItemID], a ; save second item ID ld a, [hld] - ld [$ff96], a ; [$ff96] = second item quantity + ld [hSwapItemQuantity], a ; save second item quantity ld a, [de] ld [hli], a ; put first item ID in second item slot inc de ld a, [de] ld [hl], a ; put first item quantity in second item slot - ld a, [$ff96] + ld a, [hSwapItemQuantity] ld [de], a ; put second item quantity in first item slot dec de - ld a, [$ff95] + ld a, [hSwapItemID] ld [de], a ; put second item ID in first item slot xor a ld [wMenuItemToSwap], a ; 0 means no item is currently being swapped diff --git a/engine/movie/oak_speech/oak_speech.asm b/engine/movie/oak_speech/oak_speech.asm index ea7b84d8..578cf3b2 100755 --- a/engine/movie/oak_speech/oak_speech.asm +++ b/engine/movie/oak_speech/oak_speech.asm @@ -57,7 +57,7 @@ OakSpeech: bit 1, a ; possibly a debug mode bit jp nz, .skipChoosingNames ld de, ProfOakPic - lb bc, Bank(ProfOakPic), $00 + lb bc, BANK(ProfOakPic), $00 call IntroDisplayPicCenteredOrUpperRight call FadeInIntroPic ld hl, OakSpeechText1 @@ -76,7 +76,7 @@ OakSpeech: call GBFadeOutToWhite call ClearScreen ld de, RedPicFront - lb bc, Bank(RedPicFront), $00 + lb bc, BANK(RedPicFront), $00 call IntroDisplayPicCenteredOrUpperRight call MovePicLeft ld hl, IntroducePlayerText @@ -85,7 +85,7 @@ OakSpeech: call GBFadeOutToWhite call ClearScreen ld de, Rival1Pic - lb bc, Bank(Rival1Pic), $00 + lb bc, BANK(Rival1Pic), $00 call IntroDisplayPicCenteredOrUpperRight call FadeInIntroPic ld hl, IntroduceRivalText @@ -95,7 +95,7 @@ OakSpeech: call GBFadeOutToWhite call ClearScreen ld de, RedPicFront - lb bc, Bank(RedPicFront), $00 + lb bc, BANK(RedPicFront), $00 call IntroDisplayPicCenteredOrUpperRight call GBFadeInFromWhite ld a, [wd72d] diff --git a/engine/overworld/hidden_objects.asm b/engine/overworld/hidden_objects.asm index 5887660e..a19694e0 100755 --- a/engine/overworld/hidden_objects.asm +++ b/engine/overworld/hidden_objects.asm @@ -14,14 +14,14 @@ IsPlayerOnDungeonWarp:: set 4, [hl] ret -; if a hidden object was found, stores $00 in [$ffee], else stores $ff +; if a hidden object was found, stores $00 in [hFoundHiddenObject], else stores $ff CheckForHiddenObject:: - ld hl, $ffeb + ld hl, hFoundHiddenObjectOrBookshelf xor a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a + ld [hli], a ; [hFoundHiddenObjectOrBookshelf] + ld [hli], a ; [hSavedMapTextPtr] + ld [hli], a ; [hSavedMapTextPtr + 1] + ld [hl], a ; [hFoundHiddenObject] ld de, $0 ld hl, HiddenObjectMaps .hiddenMapLoop @@ -81,7 +81,7 @@ CheckForHiddenObject:: ret .noMatch ld a, $ff - ld [$ffee], a + ld [hFoundHiddenObject], a ret ; checks if the coordinates in front of the player's sprite match Y in b and X in c diff --git a/engine/overworld/missable_objects.asm b/engine/overworld/missable_objects.asm index 6d365715..a89fcb54 100644 --- a/engine/overworld/missable_objects.asm +++ b/engine/overworld/missable_objects.asm @@ -120,7 +120,7 @@ IsObjectHidden: .notHidden xor a .hidden - ld [$ffe5], a + ld [hIsHiddenMissableObject], a ret ; adds missable object (items, leg. pokemon, etc.) to the map diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm index 432ae5ca..6c354779 100644 --- a/engine/overworld/movement.asm +++ b/engine/overworld/movement.asm @@ -475,7 +475,7 @@ InitializeSpriteScreenPosition: ; tests if sprite is off screen or otherwise unable to do anything CheckSpriteAvailability: predef IsObjectHidden - ld a, [$ffe5] + ld a, [hIsHiddenMissableObject] and a jp nz, .spriteInvisible ld h, wSpriteStateData2 / $100 @@ -564,7 +564,7 @@ UpdateSpriteImage: ld a, [hl] ; c1x9: facing direction add b ld b, a - ld a, [$ff93] ; current sprite offset + ld a, [hTilePlayerStandingOn] add b ld b, a ld a, [hCurrentSpriteOffset] diff --git a/engine/overworld/player_state.asm b/engine/overworld/player_state.asm index 69b9201f..ea24fdc1 100644 --- a/engine/overworld/player_state.asm +++ b/engine/overworld/player_state.asm @@ -297,7 +297,7 @@ _GetTileAndCoordsInFrontOfPlayer: GetTileTwoStepsInFrontOfPlayer: xor a - ld [$ffdb], a + ld [hPlayerFacing], a ld hl, wYCoord ld a, [hli] ld d, a @@ -306,7 +306,7 @@ GetTileTwoStepsInFrontOfPlayer: and a ; cp SPRITE_FACING_DOWN jr nz, .notFacingDown ; facing down - ld hl, $ffdb + ld hl, hPlayerFacing set 0, [hl] aCoord 8, 13 inc d @@ -315,7 +315,7 @@ GetTileTwoStepsInFrontOfPlayer: cp SPRITE_FACING_UP jr nz, .notFacingUp ; facing up - ld hl, $ffdb + ld hl, hPlayerFacing set 1, [hl] aCoord 8, 5 dec d @@ -324,7 +324,7 @@ GetTileTwoStepsInFrontOfPlayer: cp SPRITE_FACING_LEFT jr nz, .notFacingLeft ; facing left - ld hl, $ffdb + ld hl, hPlayerFacing set 2, [hl] aCoord 4, 9 dec e @@ -333,7 +333,7 @@ GetTileTwoStepsInFrontOfPlayer: cp SPRITE_FACING_RIGHT jr nz, .storeTile ; facing right - ld hl, $ffdb + ld hl, hPlayerFacing set 3, [hl] aCoord 12, 9 inc e @@ -378,33 +378,33 @@ CheckForBoulderCollisionWithSprites: ld hl, wSpriteStateData2 + $14 add hl, de ld a, [hli] ; map Y position - ld [$ffdc], a + ld [hPlayerYCoord], a ld a, [hl] ; map X position - ld [$ffdd], a + ld [hPlayerXCoord], a ld a, [wNumSprites] ld c, a ld de, $f ld hl, wSpriteStateData2 + $14 - ld a, [$ffdb] + ld a, [hPlayerFacing] and $3 ; facing up or down? jr z, .pushingHorizontallyLoop .pushingVerticallyLoop inc hl - ld a, [$ffdd] + ld a, [hPlayerXCoord] cp [hl] jr nz, .nextSprite1 ; if X coordinates don't match dec hl ld a, [hli] ld b, a - ld a, [$ffdb] + ld a, [hPlayerFacing] rrca jr c, .pushingDown ; pushing up - ld a, [$ffdc] + ld a, [hPlayerYCoord] dec a jr .compareYCoords .pushingDown - ld a, [$ffdc] + ld a, [hPlayerYCoord] inc a .compareYCoords cp b @@ -417,19 +417,19 @@ CheckForBoulderCollisionWithSprites: .pushingHorizontallyLoop ld a, [hli] ld b, a - ld a, [$ffdc] + ld a, [hPlayerYCoord] cp b jr nz, .nextSprite2 ld b, [hl] - ld a, [$ffdb] + ld a, [hPlayerFacing] bit 2, a jr nz, .pushingLeft ; pushing right - ld a, [$ffdd] + ld a, [hPlayerXCoord] inc a jr .compareXCoords .pushingLeft - ld a, [$ffdd] + ld a, [hPlayerXCoord] dec a .compareXCoords cp b diff --git a/engine/overworld/sprite_collisions.asm b/engine/overworld/sprite_collisions.asm index 43d1759c..c5ff8ebb 100644 --- a/engine/overworld/sprite_collisions.asm +++ b/engine/overworld/sprite_collisions.asm @@ -31,7 +31,7 @@ _UpdateSprites:: UpdateNonPlayerSprite: dec a swap a - ld [$ff93], a ; $10 * sprite# + ld [hTilePlayerStandingOn], a ; $10 * sprite# ld a, [wNPCMovementScriptSpriteOffset] ; some sprite offset? ld b, a ld a, [hCurrentSpriteOffset] @@ -79,7 +79,7 @@ DetectCollisionBetweenSprites: and $f0 or c - ld [$ff90], a ; store Y coordinate adjusted for direction of movement + ld [hFF90], a ; store Y coordinate adjusted for direction of movement ld a, [hli] ; a = [$c1i5] (delta X) (-1, 0, or 1) call SetSpriteCollisionValues @@ -92,7 +92,7 @@ DetectCollisionBetweenSprites: and $f0 or c - ld [$ff91], a ; store X coordinate adjusted for direction of movement + ld [hFF91], a ; store X coordinate adjusted for direction of movement ld a, l add 7 @@ -102,15 +102,15 @@ DetectCollisionBetweenSprites: ld [hld], a ; zero [$c1id] XXX what's [$c1id] for? ld [hld], a ; zero [$c1ic] (directions in which collisions occurred) - ld a, [$ff91] + ld a, [hFF91] ld [hld], a ; [$c1ib] = adjusted X coordinate - ld a, [$ff90] + ld a, [hFF90] ld [hl], a ; [$c1ia] = adjusted Y coordinate xor a ; zero the loop counter .loop - ld [$ff8f], a ; store loop counter + ld [hFF8F], a ; store loop counter swap a ld e, a ld a, [hCurrentSpriteOffset] @@ -154,7 +154,7 @@ DetectCollisionBetweenSprites: cpl inc a .noCarry1 - ld [$ff90], a ; store the distance between the two sprites' adjusted Y values + ld [hFF90], a ; store the distance between the two sprites' adjusted Y values ; Use the carry flag set by the above subtraction to determine which sprite's ; Y coordinate is larger. This information is used later to set [$c1ic], @@ -176,11 +176,11 @@ DetectCollisionBetweenSprites: ld b, 9 .next1 - ld a, [$ff90] ; a = distance between adjusted Y coordinates + ld a, [hFF90] ; a = distance between adjusted Y coordinates sub b - ld [$ff92], a ; store distance adjusted using sprite i's direction + ld [hFF92], a ; store distance adjusted using sprite i's direction ld a, b - ld [$ff90], a ; store 7 or 9 depending on sprite i's delta Y + ld [hFF90], a ; store 7 or 9 depending on sprite i's delta Y jr c, .checkXDistance ; If sprite j's delta Y is 0, then b = 7, else b = 9. @@ -193,7 +193,7 @@ DetectCollisionBetweenSprites: ld b, 9 .next2 - ld a, [$ff92] ; a = distance adjusted using sprite i's direction + ld a, [hFF92] ; a = distance adjusted using sprite i's direction sub b ; adjust distance using sprite j's direction jr z, .checkXDistance jr nc, .next ; go to next sprite if distance is still positive after both adjustments @@ -225,7 +225,7 @@ DetectCollisionBetweenSprites: cpl inc a .noCarry2 - ld [$ff91], a ; store the distance between the two sprites' adjusted X values + ld [hFF91], a ; store the distance between the two sprites' adjusted X values ; Use the carry flag set by the above subtraction to determine which sprite's ; X coordinate is larger. This information is used later to set [$c1ic], @@ -247,11 +247,11 @@ DetectCollisionBetweenSprites: ld b, 9 .next3 - ld a, [$ff91] ; a = distance between adjusted X coordinates + ld a, [hFF91] ; a = distance between adjusted X coordinates sub b - ld [$ff92], a ; store distance adjusted using sprite i's direction + ld [hFF92], a ; store distance adjusted using sprite i's direction ld a, b - ld [$ff91], a ; store 7 or 9 depending on sprite i's delta X + ld [hFF91], a ; store 7 or 9 depending on sprite i's delta X jr c, .collision ; If sprite j's delta X is 0, then b = 7, else b = 9. @@ -264,15 +264,15 @@ DetectCollisionBetweenSprites: ld b, 9 .next4 - ld a, [$ff92] ; a = distance adjusted using sprite i's direction + ld a, [hFF92] ; a = distance adjusted using sprite i's direction sub b ; adjust distance using sprite j's direction jr z, .collision jr nc, .next ; go to next sprite if distance is still positive after both adjustments .collision - ld a, [$ff91] ; a = 7 or 9 depending on sprite i's delta X + ld a, [hFF91] ; a = 7 or 9 depending on sprite i's delta X ld b, a - ld a, [$ff90] ; a = 7 or 9 depending on sprite i's delta Y + ld a, [hFF90] ; a = 7 or 9 depending on sprite i's delta Y inc l ; If delta X isn't 0 and delta Y is 0, then b = %0011, else b = %1100. @@ -294,7 +294,7 @@ DetectCollisionBetweenSprites: ; set bit in [$c1ie] or [$c1if] to indicate which sprite the collision occurred with inc l inc l - ld a, [$ff8f] ; a = loop counter + ld a, [hFF8F] ; a = loop counter ld de, SpriteCollisionBitTable add a add e @@ -311,7 +311,7 @@ DetectCollisionBetweenSprites: ld [hl], a .next - ld a, [$ff8f] ; a = loop counter + ld a, [hFF8F] ; a = loop counter inc a cp $10 jp nz, .loop diff --git a/engine/overworld/tilesets.asm b/engine/overworld/tilesets.asm index d6b8221c..88147233 100644 --- a/engine/overworld/tilesets.asm +++ b/engine/overworld/tilesets.asm @@ -25,7 +25,7 @@ LoadTilesetHeader: ld a, [hl] ld [hTilesetType], a xor a - ld [$ffd8], a + ld [hMovingBGTilesCounter1], a pop hl ld a, [wCurMapTileset] push hl diff --git a/engine/overworld/trainer_sight.asm b/engine/overworld/trainer_sight.asm index f0ea7266..81978c35 100755 --- a/engine/overworld/trainer_sight.asm +++ b/engine/overworld/trainer_sight.asm @@ -5,16 +5,16 @@ _GetSpritePosition1:: ld [hSpriteIndex], a call GetSpriteDataPointer ld a, [hli] ; c1x4 (screen Y pos) - ld [$ffeb], a + ld [hSpriteScreenYCoord], a inc hl ld a, [hl] ; c1x6 (screen X pos) - ld [$ffec], a + ld [hSpriteScreenXCoord], a ld de, (wSpriteStateData2 + $4) - (wSpriteStateData1 + $6) add hl, de ld a, [hli] ; c2x4 (map Y pos) - ld [$ffed], a + ld [hSpriteMapYCoord], a ld a, [hl] ; c2x5 (map X pos) - ld [$ffee], a + ld [hSpriteMapXCoord], a ret _GetSpritePosition2:: @@ -42,16 +42,16 @@ _SetSpritePosition1:: ld a, [wSpriteIndex] ld [hSpriteIndex], a call GetSpriteDataPointer - ld a, [$ffeb] ; c1x4 (screen Y pos) + ld a, [hSpriteScreenYCoord] ; c1x4 (screen Y pos) ld [hli], a inc hl - ld a, [$ffec] ; c1x6 (screen X pos) + ld a, [hSpriteScreenXCoord] ; c1x6 (screen X pos) ld [hl], a ld de, (wSpriteStateData2 + $4) - (wSpriteStateData1 + $6) add hl, de - ld a, [$ffed] ; c2x4 (map Y pos) + ld a, [hSpriteMapYCoord] ; c2x4 (map Y pos) ld [hli], a - ld a, [$ffee] ; c2x5 (map X pos) + ld a, [hSpriteMapXCoord] ; c2x5 (map X pos) ld [hl], a ret diff --git a/engine/overworld/update_map.asm b/engine/overworld/update_map.asm index c494065c..92ae2b10 100644 --- a/engine/overworld/update_map.asm +++ b/engine/overworld/update_map.asm @@ -63,7 +63,7 @@ RedrawMapView: ld a, [hli] ld h, [hl] ld l, a - ld de, -2 * 32 + ld de, -2 * BG_MAP_WIDTH add hl, de ld a, h and $3 @@ -73,23 +73,23 @@ RedrawMapView: ld a, h ld [wBuffer + 1], a ; this copy of the address is not used ld a, 2 - ld [$ffbe], a - ld c, 9 ; number of rows of 2x2 tiles (this covers the whole screen) + ld [hRedrawMapViewRowOffset], a + ld c, SCREEN_HEIGHT / 2 ; number of rows of 2x2 tiles (this covers the whole screen) .redrawRowLoop push bc push hl push hl ld hl, wTileMap - 2 * SCREEN_WIDTH ld de, SCREEN_WIDTH - ld a, [$ffbe] + ld a, [hRedrawMapViewRowOffset] .calcWRAMAddrLoop add hl, de dec a jr nz, .calcWRAMAddrLoop call CopyToRedrawRowOrColumnSrcTiles pop hl - ld de, $20 - ld a, [$ffbe] + ld de, BG_MAP_WIDTH + ld a, [hRedrawMapViewRowOffset] ld c, a .calcVRAMAddrLoop add hl, de @@ -104,7 +104,7 @@ RedrawMapView: ld a, REDRAW_ROW ld [hRedrawRowOrColumnMode], a call DelayFrame - ld hl, $ffbe + ld hl, hRedrawMapViewRowOffset inc [hl] inc [hl] pop hl diff --git a/home.asm b/home.asm index e9cd3ecf..2c58d0e6 100644 --- a/home.asm +++ b/home.asm @@ -199,7 +199,7 @@ LoadFrontSpriteByMonIndex:: pop hl ld a, [hLoadedROMBank] push af - ld a, Bank(CopyUncompressedPicToHL) + ld a, BANK(CopyUncompressedPicToHL) ld [hLoadedROMBank], a ld [MBC1RomBank], a xor a @@ -832,7 +832,7 @@ UpdateSprites:: ret nz ld a, [hLoadedROMBank] push af - ld a, Bank(_UpdateSprites) + ld a, BANK(_UpdateSprites) ld [hLoadedROMBank], a ld [MBC1RomBank], a call _UpdateSprites @@ -1104,7 +1104,7 @@ DisplayPokemartDialogue:: ld [wListMenuID], a ld a, [hLoadedROMBank] push af - ld a, Bank(DisplayPokemartDialogue_) + ld a, BANK(DisplayPokemartDialogue_) ld [hLoadedROMBank], a ld [MBC1RomBank], a call DisplayPokemartDialogue_ @@ -1136,14 +1136,14 @@ LoadItemList:: DisplayPokemonCenterDialogue:: ; zeroing these doesn't appear to serve any purpose xor a - ld [$ff8b], a - ld [$ff8c], a - ld [$ff8d], a + ld [hItemPrice], a + ld [hItemPrice + 1], a + ld [hItemPrice + 2], a inc hl ld a, [hLoadedROMBank] push af - ld a, Bank(DisplayPokemonCenterDialogue_) + ld a, BANK(DisplayPokemonCenterDialogue_) ld [hLoadedROMBank], a ld [MBC1RomBank], a call DisplayPokemonCenterDialogue_ @@ -2794,7 +2794,7 @@ GetTrainerInformation:: ld a, [wLinkState] and a jr nz, .linkBattle - ld a, Bank(TrainerPicAndMoneyPointers) + ld a, BANK(TrainerPicAndMoneyPointers) call BankswitchHome ld a, [wTrainerClass] dec a @@ -3185,12 +3185,12 @@ GetName:: ld hl, NamePointers add hl, de ld a, [hli] - ld [$ff96], a + ld [hSwapTemp + 1], a ld a, [hl] - ld [$ff95], a - ld a, [$ff95] + ld [hSwapTemp], a + ld a, [hSwapTemp] ld h, a - ld a, [$ff96] + ld a, [hSwapTemp + 1] ld l, a ld a, [wd0b5] ld b, a @@ -3258,7 +3258,7 @@ GetItemPrice:: ld [hItemPrice], a jr .done .getTMPrice - ld a, Bank(GetMachinePrice) + ld a, BANK(GetMachinePrice) ld [hLoadedROMBank], a ld [MBC1RomBank], a call GetMachinePrice @@ -3409,7 +3409,7 @@ Divide:: push bc ld a, [hLoadedROMBank] push af - ld a, Bank(_Divide) + ld a, BANK(_Divide) ld [hLoadedROMBank], a ld [MBC1RomBank], a call _Divide @@ -3552,11 +3552,11 @@ CalcStat:: call Multiply ld a, [hld] ld d, a - ld a, [$ff98] + ld a, [hProduct + 3] sub d ld a, [hli] ld d, a - ld a, [$ff97] + ld a, [hProduct + 2] sbc d ; test if (current stat exp bonus)^2 < stat exp jr c, .statExpLoop .statExpDone @@ -4497,11 +4497,11 @@ CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: bit 0, a ; A button jr z, .nothingFound ; A button is pressed - ld a, Bank(CheckForHiddenObject) + ld a, BANK(CheckForHiddenObject) ld [MBC1RomBank], a ld [hLoadedROMBank], a call CheckForHiddenObject - ld a, [$ffee] + ld a, [hFoundHiddenObject] and a jr nz, .hiddenObjectNotFound ld a, [wHiddenObjectFunctionRomBank] @@ -4515,13 +4515,13 @@ CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: jr .done .hiddenObjectNotFound callba PrintBookshelfText - ld a, [$ffdb] + ld a, [hFFDB] and a jr z, .done .nothingFound ld a, $ff .done - ld [$ffeb], a + ld [hFoundHiddenObjectOrBookshelf], a pop af ld [MBC1RomBank], a ld [hLoadedROMBank], a @@ -4537,17 +4537,17 @@ PrintPredefTextID:: RestoreMapTextPointer:: ld hl, wMapTextPtr - ld a, [$ffec] + ld a, [hSavedMapTextPtr] ld [hli], a - ld a, [$ffec + 1] + ld a, [hSavedMapTextPtr + 1] ld [hl], a ret SetMapTextPointer:: ld a, [wMapTextPtr] - ld [$ffec], a + ld [hSavedMapTextPtr], a ld a, [wMapTextPtr + 1] - ld [$ffec + 1], a + ld [hSavedMapTextPtr + 1], a ld a, l ld [wMapTextPtr], a ld a, h diff --git a/home/init.asm b/home/init.asm index efc886e0..48294fa6 100644 --- a/home/init.asm +++ b/home/init.asm @@ -53,13 +53,13 @@ rLCDC_DEFAULT EQU %11100011 call ClearVram - ld hl, $ff80 - ld bc, $ffff - $ff80 + ld hl, $ff80 ; start of HRAM + ld bc, $ffff - $ff80 ; size of HRAM call FillMemory call ClearSprites - ld a, Bank(WriteDMACodeToHRAM) + ld a, BANK(WriteDMACodeToHRAM) ld [hLoadedROMBank], a ld [MBC1RomBank], a call WriteDMACodeToHRAM diff --git a/home/overworld.asm b/home/overworld.asm index 9fb269dc..c959beb6 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -88,7 +88,7 @@ OverworldLoopLessDelay:: call IsPlayerCharacterBeingControlledByGame jr nz, .checkForOpponent call CheckForHiddenObjectOrBookshelfOrCardKeyDoor - ld a, [$ffeb] + ld a, [hFoundHiddenObjectOrBookshelf] and a jp z, OverworldLoop ; jump if a hidden object or bookshelf was found, but not if a card key door was found call IsSpriteOrSignInFrontOfPlayer @@ -762,7 +762,7 @@ HandleBlackOut:: call StopMusic ld hl, wd72e res 5, [hl] - ld a, Bank(ResetStatusAndHalveMoneyOnBlackout) ; also Bank(SpecialWarpIn) and Bank(SpecialEnterMap) + ld a, BANK(ResetStatusAndHalveMoneyOnBlackout) ; also BANK(SpecialWarpIn) and BANK(SpecialEnterMap) ld [hLoadedROMBank], a ld [MBC1RomBank], a call ResetStatusAndHalveMoneyOnBlackout @@ -793,7 +793,7 @@ HandleFlyWarpOrDungeonWarp:: set 2, [hl] ; fly warp or dungeon warp res 5, [hl] ; forced to ride bike call LeaveMapAnim - ld a, Bank(SpecialWarpIn) + ld a, BANK(SpecialWarpIn) ld [hLoadedROMBank], a ld [MBC1RomBank], a call SpecialWarpIn @@ -2388,14 +2388,14 @@ SwitchToMapRomBank:: push bc ld c, a ld b, $00 - ld a, Bank(MapHeaderBanks) + ld a, BANK(MapHeaderBanks) call BankswitchHome ; switch to ROM bank 3 ld hl, MapHeaderBanks add hl, bc ld a, [hl] - ld [$ffe8], a ; save map ROM bank + ld [hMapROMBank], a ; save map ROM bank call BankswitchBack - ld a, [$ffe8] + ld a, [hMapROMBank] ld [hLoadedROMBank], a ld [MBC1RomBank], a ; switch to map ROM bank pop bc diff --git a/home/text.asm b/home/text.asm index 89c93dd0..0d2ed0a2 100644 --- a/home/text.asm +++ b/home/text.asm @@ -365,7 +365,7 @@ TextCommandProcessor:: push af set 1, a ld e, a - ld a, [$fff4] + ld a, [hClearLetterPrintingDelayFlags] xor e ld [wLetterPrintingDelayFlags], a ld a, c diff --git a/home/vblank.asm b/home/vblank.asm index e8232ea3..78f5f69d 100644 --- a/home/vblank.asm +++ b/home/vblank.asm @@ -26,7 +26,7 @@ VBlank:: call VBlankCopy call VBlankCopyDouble call UpdateMovingBgTiles - call $ff80 ; hOAMDMA + call hDMARoutine ld a, BANK(PrepareOAMData) ld [hLoadedROMBank], a ld [MBC1RomBank], a diff --git a/hram.asm b/hram.asm index 69abb717..ab18b8c9 100644 --- a/hram.asm +++ b/hram.asm @@ -1,3 +1,5 @@ +hDMARoutine EQU $FF80 + hSoftReset EQU $FF8A ; Initialized to 16. ; Decremented each input iteration if the player @@ -81,6 +83,11 @@ hOAMBufferOffset EQU $FF90 hSpriteScreenX EQU $FF91 hSpriteScreenY EQU $FF92 +hFF8F EQU $FF8F +hFF90 EQU $FF90 +hFF91 EQU $FF91 +hFF92 EQU $FF92 + hTilePlayerStandingOn EQU $FF93 hSpritePriority EQU $FF94 @@ -90,14 +97,20 @@ hSignCoordPointer EQU $FF95 hNPCMovementDirections2Index EQU $FF95 +hSwapItemID EQU $FF95 +hSwapItemQuantity EQU $FF96 + ; CalcPositionOfPlayerRelativeToNPC hNPCSpriteOffset EQU $FF95 -; temp value used when swapping bytes +; temp value used when swapping bytes or words hSwapTemp EQU $FF95 hExperience EQU $FF96 ; 3 bytes, big endian +hMutateWY EQU $FF96 +hMutateWX EQU $FF97 + ; Multiplication and division variables are meant ; to overlap for back-to-back usage. Big endian. @@ -204,6 +217,8 @@ hAutoBGTransferPortion EQU $FFBB ; the destination address of the automatic background transfer hAutoBGTransferDest EQU $FFBC ; 2 bytes +hRedrawMapViewRowOffset EQU $FFBE + ; temporary storage for stack pointer during memory transfers that use pop ; to increase speed hSPTemp EQU $FFBF ; 2 bytes @@ -272,7 +287,8 @@ hCurrentSpriteOffset EQU $FFDA ; multiple of $10 hItemCounter EQU $FFDB -hGymGateIndex EQU $FFDB +hGymGateIndex EQU $FFDB +hGymGateAnswer EQU $FFDC hGymTrashCanRandNumMask EQU $FFDB @@ -285,33 +301,64 @@ hDexRatingNumMonsOwned EQU $FFDC ; $FF = player cancelled hOaksAideResult EQU $FFDB +hSavedCoordIndex EQU $FFDB + hOaksAideRequirement EQU $FFDB ; required number of owned mons hOaksAideRewardItem EQU $FFDC hOaksAideNumMonsOwned EQU $FFDD +hPlayerFacing EQU $FFDB +hPlayerYCoord EQU $FFDC +hPlayerXCoord EQU $FFDD + +hMissableObjectIndex EQU $FFDB + hItemToRemoveID EQU $FFDB hItemToRemoveIndex EQU $FFDC hVendingMachineItem EQU $FFDB hVendingMachinePrice EQU $FFDC ; 3-byte BCD number +hFFDB EQU $FFDB +hFFDC EQU $FFDC + +hBackupGymGateIndex EQU $FFE0 + +hUnlockedSilphCoDoors EQU $FFE0 + ; the first tile ID in a sequence of tile IDs that increase by 1 each step hStartTileID EQU $FFE1 hNewPartyLength EQU $FFE4 +hIsHiddenMissableObject EQU $FFE5 + hDividend2 EQU $FFE5 hDivisor2 EQU $FFE6 hQuotient2 EQU $FFE7 +hMapROMBank EQU $FFE8 + hSpriteVRAMSlotAndFacing EQU $FFE9 hCoordsInFrontOfPlayerMatch EQU $FFEA hSpriteAnimFrameCounter EQU $FFEA +hSpriteScreenYCoord EQU $FFEB +hSpriteScreenXCoord EQU $FFEC +hSpriteMapYCoord EQU $FFED +hSpriteMapXCoord EQU $FFEE + +hFoundHiddenObjectOrBookshelf EQU $FFEB +hFoundHiddenObject EQU $FFEE + +hSavedMapTextPtr EQU $FFEC + hWhoseTurn EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn +hClearLetterPrintingDelayFlags EQU $FFF4 + ; bit 0: draw HP fraction to the right of bar instead of below (for party menu) ; bit 1: menu is double spaced hFlagsFFF6 EQU $FFF6 diff --git a/scripts/BikeShop.asm b/scripts/BikeShop.asm index 71149759..2661ca70 100755 --- a/scripts/BikeShop.asm +++ b/scripts/BikeShop.asm @@ -23,7 +23,7 @@ BikeShopText1: call GiveItem jr nc, .BagFull ld a, BIKE_VOUCHER - ld [$ffdb], a + ld [hItemToRemoveID], a callba RemoveItemByID SetEvent EVENT_GOT_BICYCLE ld hl, BikeShopText_1d824 diff --git a/scripts/BillsHouse.asm b/scripts/BillsHouse.asm index 0c8ca4de..395694a3 100755 --- a/scripts/BillsHouse.asm +++ b/scripts/BillsHouse.asm @@ -66,13 +66,13 @@ BillsHouseScript3: ld a, $2 ld [wSpriteIndex], a ld a, $c - ld [$ffeb], a + ld [hSpriteScreenYCoord], a ld a, $40 - ld [$ffec], a + ld [hSpriteScreenXCoord], a ld a, $6 - ld [$ffed], a + ld [hSpriteMapYCoord], a ld a, $5 - ld [$ffee], a + ld [hSpriteMapXCoord], a call SetSpritePosition1 ld a, HS_BILL_1 ld [wMissableObjectIndex], a diff --git a/scripts/CinnabarGym.asm b/scripts/CinnabarGym.asm index 1e92505a..08bbbe8b 100755 --- a/scripts/CinnabarGym.asm +++ b/scripts/CinnabarGym.asm @@ -96,7 +96,7 @@ CinnabarGymScript2: cp $ff jp z, CinnabarGymScript_75792 ld a, [wTrainerHeaderFlagBit] - ld [$ffdb], a + ld [hGymGateIndex], a AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2 ld c, a ld b, FLAG_TEST @@ -111,7 +111,7 @@ CinnabarGymScript2: call WaitForSoundToFinish .asm_7581b ld a, [wTrainerHeaderFlagBit] - ld [$ffdb], a + ld [hGymGateIndex], a AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2 ld c, a ld b, FLAG_SET diff --git a/scripts/CopycatsHouse2F.asm b/scripts/CopycatsHouse2F.asm index b43234c3..64612535 100755 --- a/scripts/CopycatsHouse2F.asm +++ b/scripts/CopycatsHouse2F.asm @@ -29,7 +29,7 @@ CopycatsHouse2FText1: ld hl, ReceivedTM31Text call PrintText ld a, POKE_DOLL - ld [$ffdb], a + ld [hItemToRemoveID], a callba RemoveItemByID SetEvent EVENT_GOT_TM31 jr .asm_62ecd diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm index a0383246..9bb84923 100755 --- a/scripts/OaksLab.asm +++ b/scripts/OaksLab.asm @@ -672,9 +672,9 @@ OaksLabScript_RemoveParcel: OaksLabScript_1d02b: ld a, $7c - ld [$ffeb], a + ld [hSpriteScreenYCoord], a ld a, $8 - ld [$ffee], a + ld [hSpriteMapXCoord], a ld a, [wYCoord] cp $3 jr nz, .asm_1d045 @@ -703,9 +703,9 @@ OaksLabScript_1d02b: .asm_1d066 ld a, $20 .asm_1d068 - ld [$ffec], a + ld [hSpriteScreenXCoord], a ld a, b - ld [$ffed], a + ld [hSpriteMapYCoord], a ld a, $1 ld [wSpriteIndex], a call SetSpritePosition1 diff --git a/scripts/PewterCity.asm b/scripts/PewterCity.asm index 1b658242..86037c13 100755 --- a/scripts/PewterCity.asm +++ b/scripts/PewterCity.asm @@ -58,13 +58,13 @@ PewterCityScript1: ld [hSpriteIndexOrTextID], a call DisplayTextID ld a, $3c - ld [$ffeb], a + ld [hSpriteScreenYCoord], a ld a, $30 - ld [$ffec], a + ld [hSpriteScreenXCoord], a ld a, $c - ld [$ffed], a + ld [hSpriteMapYCoord], a ld a, $11 - ld [$ffee], a + ld [hSpriteMapXCoord], a ld a, $3 ld [wSpriteIndex], a call SetSpritePosition1 @@ -126,13 +126,13 @@ PewterCityScript4: ld [hSpriteIndexOrTextID], a call DisplayTextID ld a, $3c - ld [$ffeb], a + ld [hSpriteScreenYCoord], a ld a, $40 - ld [$ffec], a + ld [hSpriteScreenXCoord], a ld a, $16 - ld [$ffed], a + ld [hSpriteMapYCoord], a ld a, $10 - ld [$ffee], a + ld [hSpriteMapXCoord], a ld a, $5 ld [wSpriteIndex], a call SetSpritePosition1 diff --git a/scripts/Route5Gate.asm b/scripts/Route5Gate.asm index bc763dfd..e5d86b97 100755 --- a/scripts/Route5Gate.asm +++ b/scripts/Route5Gate.asm @@ -27,7 +27,7 @@ Route5GateScript0: xor a ld [hJoyHeld], a callba RemoveGuardDrink - ld a, [$ffdb] + ld a, [hItemToRemoveID] and a jr nz, .asm_1df82 ld a, $2 @@ -74,7 +74,7 @@ Route5GateText1: bit 6, a jr nz, .asm_88856 callba RemoveGuardDrink - ld a, [$ffdb] + ld a, [hItemToRemoveID] and a jr nz, .asm_768a2 ld hl, Route5GateText2 diff --git a/scripts/Route6Gate.asm b/scripts/Route6Gate.asm index 348f61ac..6b00eddb 100755 --- a/scripts/Route6Gate.asm +++ b/scripts/Route6Gate.asm @@ -21,7 +21,7 @@ Route6GateScript0: xor a ld [hJoyHeld], a callba RemoveGuardDrink - ld a, [$ffdb] + ld a, [hItemToRemoveID] and a jr nz, .asm_1e080 ld a, $2 diff --git a/scripts/Route7Gate.asm b/scripts/Route7Gate.asm index 724172c5..06c5c91b 100755 --- a/scripts/Route7Gate.asm +++ b/scripts/Route7Gate.asm @@ -33,7 +33,7 @@ Route7GateScript0: xor a ld [hJoyHeld], a callba RemoveGuardDrink - ld a, [$ffdb] + ld a, [hItemToRemoveID] and a jr nz, .asm_1e15a ld a, $2 diff --git a/scripts/Route8Gate.asm b/scripts/Route8Gate.asm index 8ecea68e..80b8b9a4 100755 --- a/scripts/Route8Gate.asm +++ b/scripts/Route8Gate.asm @@ -32,7 +32,7 @@ Route8GateScript0: xor a ld [hJoyHeld], a callba RemoveGuardDrink - ld a, [$ffdb] + ld a, [hItemToRemoveID] and a jr nz, .asm_1e220 ld a, $2 diff --git a/scripts/SSAnne2F.asm b/scripts/SSAnne2F.asm index 203e9711..face08d8 100755 --- a/scripts/SSAnne2F.asm +++ b/scripts/SSAnne2F.asm @@ -31,7 +31,7 @@ SSAnne2Script0: ld a, MUSIC_MEET_RIVAL call PlayMusic ld a, [wCoordIndex] - ld [$ffdb], a + ld [hSavedCoordIndex], a ld a, HS_SS_ANNE_2F_RIVAL ld [wMissableObjectIndex], a predef ShowObject @@ -43,7 +43,7 @@ SSAnne2Script0: ld [hJoyHeld], a ld a, $f0 ld [wJoyIgnore], a - ld a, [$ffdb] + ld a, [hSavedCoordIndex] cp $2 jr nz, .asm_61400 ld de, MovementData_6140c diff --git a/scripts/SSAnneCaptainsRoom.asm b/scripts/SSAnneCaptainsRoom.asm index 5723c32d..6078ccf0 100755 --- a/scripts/SSAnneCaptainsRoom.asm +++ b/scripts/SSAnneCaptainsRoom.asm @@ -51,7 +51,7 @@ SSAnne7RubText: ld a, SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound - ld a, Bank(Music_PkmnHealed) + ld a, BANK(Music_PkmnHealed) ld [wAudioROMBank], a .asm_61908 ld a, MUSIC_PKMN_HEALED diff --git a/scripts/SilphCo10F.asm b/scripts/SilphCo10F.asm index 40506682..92d95de1 100755 --- a/scripts/SilphCo10F.asm +++ b/scripts/SilphCo10F.asm @@ -28,7 +28,7 @@ SilphCo10GateCoords: db $FF SilphCo10Text_5a176: - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z SetEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR diff --git a/scripts/SilphCo11F.asm b/scripts/SilphCo11F.asm index 2f9d7924..116b528f 100755 --- a/scripts/SilphCo11F.asm +++ b/scripts/SilphCo11F.asm @@ -35,14 +35,14 @@ SilphCo11Script_62137: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_62143 ld a, [hli] cp $ff jr z, .asm_6215f push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -60,11 +60,11 @@ SilphCo11Script_62137: ret .asm_6215f xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo11Script_62163: - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z SetEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR diff --git a/scripts/SilphCo2F.asm b/scripts/SilphCo2F.asm index 5fd542cb..0ff7cee3 100755 --- a/scripts/SilphCo2F.asm +++ b/scripts/SilphCo2F.asm @@ -45,14 +45,14 @@ SilphCo2Script_59d43: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_59d4f ld a, [hli] cp $ff jr z, .asm_59d6b push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -70,12 +70,12 @@ SilphCo2Script_59d43: ret .asm_59d6b xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo2Script_59d6f: EventFlagAddress hl, EVENT_SILPH_CO_2_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/SilphCo3F.asm b/scripts/SilphCo3F.asm index 42b5d611..3b6b1da8 100755 --- a/scripts/SilphCo3F.asm +++ b/scripts/SilphCo3F.asm @@ -39,7 +39,7 @@ SilphCo3GateCoords: SilphCo3Script_59fad: EventFlagAddress hl, EVENT_SILPH_CO_3_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/SilphCo4F.asm b/scripts/SilphCo4F.asm index 7d5072f6..61288277 100755 --- a/scripts/SilphCo4F.asm +++ b/scripts/SilphCo4F.asm @@ -45,14 +45,14 @@ SilphCo4Script_19d5d: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_19d69 ld a, [hli] cp $ff jr z, .asm_19d85 push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -70,12 +70,12 @@ SilphCo4Script_19d5d: ret .asm_19d85 xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo4Script_19d89: EventFlagAddress hl, EVENT_SILPH_CO_4_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/SilphCo5F.asm b/scripts/SilphCo5F.asm index d9deda5b..39d7235b 100755 --- a/scripts/SilphCo5F.asm +++ b/scripts/SilphCo5F.asm @@ -49,7 +49,7 @@ SilphCo5GateCoords: SilphCo5Script_19f9e: EventFlagAddress hl, EVENT_SILPH_CO_5_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/SilphCo6F.asm b/scripts/SilphCo6F.asm index ddbcba79..9e6ffaf1 100755 --- a/scripts/SilphCo6F.asm +++ b/scripts/SilphCo6F.asm @@ -28,7 +28,7 @@ SilphCo6GateCoords: db $FF SilphCo6Script_1a1e6: - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z SetEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR diff --git a/scripts/SilphCo7F.asm b/scripts/SilphCo7F.asm index 97dd09ea..4966bba6 100755 --- a/scripts/SilphCo7F.asm +++ b/scripts/SilphCo7F.asm @@ -55,14 +55,14 @@ SilphCo7Text_51bc8: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_51bd4 ld a, [hli] cp $ff jr z, .asm_51bf0 push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -80,12 +80,12 @@ SilphCo7Text_51bc8: ret .asm_51bf0 xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo7Text_51bf4: EventFlagAddress hl, EVENT_SILPH_CO_7_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/SilphCo8F.asm b/scripts/SilphCo8F.asm index ce6579f7..b1c32a34 100755 --- a/scripts/SilphCo8F.asm +++ b/scripts/SilphCo8F.asm @@ -35,14 +35,14 @@ SilphCo8Script_56541: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_5654d ld a, [hli] cp $ff jr z, .asm_56569 push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -60,11 +60,11 @@ SilphCo8Script_56541: ret .asm_56569 xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo8Script_5656d: - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z SetEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR diff --git a/scripts/SilphCo9F.asm b/scripts/SilphCo9F.asm index 66291e98..d9fdc625 100755 --- a/scripts/SilphCo9F.asm +++ b/scripts/SilphCo9F.asm @@ -65,14 +65,14 @@ SilphCo9Script_5d837: ld a, [hl] ld c, a xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a pop hl .asm_5d843 ld a, [hli] cp $ff jr z, .asm_5d85f push hl - ld hl, $ffe0 + ld hl, hUnlockedSilphCoDoors inc [hl] pop hl cp b @@ -90,12 +90,12 @@ SilphCo9Script_5d837: ret .asm_5d85f xor a - ld [$ffe0], a + ld [hUnlockedSilphCoDoors], a ret SilphCo9Script_5d863: EventFlagAddress hl, EVENT_SILPH_CO_9_UNLOCKED_DOOR1 - ld a, [$ffe0] + ld a, [hUnlockedSilphCoDoors] and a ret z cp $1 diff --git a/scripts/ViridianCity.asm b/scripts/ViridianCity.asm index 643431a4..c3eb9a79 100755 --- a/scripts/ViridianCity.asm +++ b/scripts/ViridianCity.asm @@ -59,14 +59,14 @@ ViridianCityScript_1903d: ret ViridianCityScript1: - ld a, [wSpriteStateData1 + $34] - ld [$ffeb], a - ld a, [wSpriteStateData1 + $36] - ld [$ffec], a - ld a, [wSpriteStateData2 + $34] - ld [$ffed], a - ld a, [wSpriteStateData2 + $35] - ld [$ffee], a + ld a, [wSprite03StateData1YPixels] + ld [hSpriteScreenYCoord], a + ld a, [wSprite03StateData1XPixels] + ld [hSpriteScreenXCoord], a + ld a, [wSprite03StateData2MapY] + ld [hSpriteMapYCoord], a + ld a, [wSprite03StateData2MapX] + ld [hSpriteMapXCoord], a xor a ld [wListScrollOffset], a @@ -82,14 +82,14 @@ ViridianCityScript1: ret ViridianCityScript2: - ld a, [$ffeb] - ld [wSpriteStateData1 + $34], a - ld a, [$ffec] - ld [wSpriteStateData1 + $36], a - ld a, [$ffed] - ld [wSpriteStateData2 + $34], a - ld a, [$ffee] - ld [wSpriteStateData2 + $35], a + ld a, [hSpriteScreenYCoord] + ld [wSprite03StateData1YPixels], a + ld a, [hSpriteScreenXCoord] + ld [wSprite03StateData1XPixels], a + ld a, [hSpriteMapYCoord] + ld [wSprite03StateData2MapY], a + ld a, [hSpriteMapXCoord] + ld [wSprite03StateData2MapX], a call UpdateSprites call Delay3 xor a diff --git a/scripts/WardensHouse.asm b/scripts/WardensHouse.asm index e6ca47b2..015d137f 100755 --- a/scripts/WardensHouse.asm +++ b/scripts/WardensHouse.asm @@ -32,7 +32,7 @@ FuchsiaHouse2Text1: ld hl, WardenTeethText1 call PrintText ld a, GOLD_TEETH - ld [$ffdb], a + ld [hItemToRemoveID], a callba RemoveItemByID SetEvent EVENT_GAVE_GOLD_TEETH .asm_60cba diff --git a/wram.asm b/wram.asm index 40e1604a..9c37b3db 100755 --- a/wram.asm +++ b/wram.asm @@ -1985,7 +1985,7 @@ wSpriteOutputBitOffset:: ; determines where in the output byte the two bits are ds 1 wSpriteLoadFlags:: -; bit 0 determines used buffer (0 -> $a188, 1 -> $a310) +; bit 0 determines used buffer (0 -> sSpriteBuffer1, 1 -> sSpriteBuffer2) ; bit 1 loading last sprite chunk? (there are at most 2 chunks per load operation) ds 1 wSpriteUnpackMode:: -- cgit v1.3.1-sl0p From 7e92d5ba8c7d7c255a49bce76239ec12d6398cef Mon Sep 17 00:00:00 2001 From: Rangi Date: Sat, 4 Jul 2020 00:37:10 -0400 Subject: Make suggested changes from review --- constants/music_constants.asm | 1 + constants/palette_constants.asm | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'constants') diff --git a/constants/music_constants.asm b/constants/music_constants.asm index 7bbe5c62..3f3f111e 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -166,6 +166,7 @@ MAX_SFX_ID_1 EQUS "SFX_SAFARI_ZONE_PA" ; AUDIO_2 music_const SFX_LEVEL_UP, SFX_Level_Up + music_const SFX_BALL_TOSS, SFX_Ball_Toss music_const SFX_BALL_POOF, SFX_Ball_Poof music_const SFX_FAINT_THUD, SFX_Faint_Thud diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm index da63651a..567c3cfc 100755 --- a/constants/palette_constants.asm +++ b/constants/palette_constants.asm @@ -21,8 +21,8 @@ const SET_PAL_POKEMON_WHOLE_SCREEN ; $0B const SET_PAL_GAME_FREAK_INTRO ; $0C const SET_PAL_TRAINER_CARD ; $0D -const_value = -4 - const UPDATE_PARTY_MENU_BLK_PACKET ; $FC + +UPDATE_PARTY_MENU_BLK_PACKET EQU $fc ; sgb palettes const_def -- cgit v1.3.1-sl0p From e4e0af4d6713161d46cc0a1d580645ca40d6fa81 Mon Sep 17 00:00:00 2001 From: Rangi Date: Sat, 4 Jul 2020 01:00:45 -0400 Subject: Remove remaining raw $xxxx values, and replace "+ -1" with "- 1" (supported by rgbds 0.4.0) --- constants/hardware_constants.asm | 13 +++++ constants/move_constants.asm | 2 +- constants/pokedex_constants.asm | 2 +- constants/pokemon_constants.asm | 2 +- data/moves/effects_pointers.asm | 14 +++--- engine/battle/animations.asm | 6 +-- engine/battle/core.asm | 12 ++--- engine/battle/trainer_ai.asm | 2 +- engine/events/diploma.asm | 2 +- engine/events/prize_menu.asm | 4 +- engine/menus/display_text_id_init.asm | 4 +- engine/menus/save.asm | 4 +- engine/menus/start_sub_menus.asm | 10 ++-- engine/movie/title.asm | 2 +- engine/overworld/map_sprites.asm | 3 +- engine/overworld/wild_mons.asm | 6 +-- engine/pokemon/status_screen.asm | 4 +- engine/slots/slot_machine.asm | 2 +- home/init.asm | 12 ++--- home/list_menu.asm | 2 +- home/names2.asm | 2 +- home/overworld.asm | 12 ++--- home/pics.asm | 4 +- home/predef_text.asm | 2 +- macros/scripts/events.asm | 12 ++--- macros/wram.asm | 92 ++++++++++++++++++++++++++++++++++ scripts/OaksLab.asm | 2 +- scripts/VermilionDock.asm | 2 +- wram.asm | 94 ++--------------------------------- 29 files changed, 172 insertions(+), 158 deletions(-) create mode 100644 macros/wram.asm (limited to 'constants') diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm index 59ec6170..993a02f5 100644 --- a/constants/hardware_constants.asm +++ b/constants/hardware_constants.asm @@ -2,6 +2,19 @@ GBC EQU $11 +; memory map +VRAM_Begin EQU $8000 +VRAM_End EQU $a000 +SRAM_Begin EQU $a000 +SRAM_End EQU $c000 +WRAM0_Begin EQU $c000 +WRAM0_End EQU $d000 +WRAM1_Begin EQU $d000 +WRAM1_End EQU $e000 +; hardware registers $ff00-$ff80 (see below) +HRAM_Begin EQU $ff80 +HRAM_End EQU $ffff + ; MBC1 MBC1SRamEnable EQU $0000 MBC1RomBank EQU $2000 diff --git a/constants/move_constants.asm b/constants/move_constants.asm index 850662de..5dd06a41 100644 --- a/constants/move_constants.asm +++ b/constants/move_constants.asm @@ -165,7 +165,7 @@ const SLASH ; a3 const SUBSTITUTE ; a4 -NUM_ATTACKS EQU const_value + -1 +NUM_ATTACKS EQU const_value - 1 const STRUGGLE ; a5 diff --git a/constants/pokedex_constants.asm b/constants/pokedex_constants.asm index c8605852..e462586e 100644 --- a/constants/pokedex_constants.asm +++ b/constants/pokedex_constants.asm @@ -151,4 +151,4 @@ const DEX_MEWTWO ; 150 const DEX_MEW ; 151 -NUM_POKEMON EQU const_value + -1 +NUM_POKEMON EQU const_value - 1 diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm index 5484a65d..7abdd4d3 100644 --- a/constants/pokemon_constants.asm +++ b/constants/pokemon_constants.asm @@ -191,4 +191,4 @@ const WEEPINBELL ; $BD const VICTREEBEL ; $BE -NUM_POKEMON_INDEXES EQU const_value + -1 +NUM_POKEMON_INDEXES EQU const_value - 1 diff --git a/data/moves/effects_pointers.asm b/data/moves/effects_pointers.asm index 0d36e887..02f6e5c6 100644 --- a/data/moves/effects_pointers.asm +++ b/data/moves/effects_pointers.asm @@ -7,7 +7,7 @@ MoveEffectPointerTable: dw FreezeBurnParalyzeEffect ; PARALYZE_SIDE_EFFECT1 dw ExplodeEffect ; EXPLODE_EFFECT dw DrainHPEffect ; DREAM_EATER_EFFECT - dw $0000 ; MIRROR_MOVE_EFFECT + dw NULL ; MIRROR_MOVE_EFFECT dw StatModifierUpEffect ; ATTACK_UP1_EFFECT dw StatModifierUpEffect ; DEFENSE_UP1_EFFECT dw StatModifierUpEffect ; SPEED_UP1_EFFECT @@ -15,7 +15,7 @@ MoveEffectPointerTable: dw StatModifierUpEffect ; ACCURACY_UP1_EFFECT dw StatModifierUpEffect ; EVASION_UP1_EFFECT dw PayDayEffect ; PAY_DAY_EFFECT - dw $0000 ; SWIFT_EFFECT + dw NULL ; SWIFT_EFFECT dw StatModifierDownEffect ; ATTACK_DOWN1_EFFECT dw StatModifierDownEffect ; DEFENSE_DOWN1_EFFECT dw StatModifierDownEffect ; SPEED_DOWN1_EFFECT @@ -38,12 +38,12 @@ MoveEffectPointerTable: dw FlinchSideEffect ; FLINCH_SIDE_EFFECT2 dw OneHitKOEffect ; OHKO_EFFECT dw ChargeEffect ; CHARGE_EFFECT - dw $0000 ; SUPER_FANG_EFFECT - dw $0000 ; SPECIAL_DAMAGE_EFFECT + dw NULL ; SUPER_FANG_EFFECT + dw NULL ; SPECIAL_DAMAGE_EFFECT dw TrappingEffect ; TRAPPING_EFFECT dw ChargeEffect ; FLY_EFFECT dw TwoToFiveAttacksEffect ; ATTACK_TWICE_EFFECT - dw $0000 ; JUMP_KICK_EFFECT + dw NULL ; JUMP_KICK_EFFECT dw MistEffect ; MIST_EFFECT dw FocusEnergyEffect ; FOCUS_ENERGY_EFFECT dw RecoilEffect ; RECOIL_EFFECT @@ -76,12 +76,12 @@ MoveEffectPointerTable: dw StatModifierDownEffect ; unused effect dw ConfusionSideEffect ; CONFUSION_SIDE_EFFECT dw TwoToFiveAttacksEffect ; TWINEEDLE_EFFECT - dw $0000 ; unused effect + dw NULL ; unused effect dw SubstituteEffect ; SUBSTITUTE_EFFECT dw HyperBeamEffect ; HYPER_BEAM_EFFECT dw RageEffect ; RAGE_EFFECT dw MimicEffect ; MIMIC_EFFECT - dw $0000 ; METRONOME_EFFECT + dw NULL ; METRONOME_EFFECT dw LeechSeedEffect ; LEECH_SEED_EFFECT dw SplashEffect ; SPLASH_EFFECT dw DisableEffect ; DISABLE_EFFECT diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index d858e066..ee476ce9 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -1735,7 +1735,7 @@ AnimationSlideMonDownAndHide: jr nz, .loop call AnimationHideMonPic ld hl, wTempPic - ld bc, $0310 + ld bc, $310 xor a call FillMemory jp CopyTempPicToMonPic @@ -1896,7 +1896,7 @@ AnimationSubstitute: ; Changes the pokemon's sprite to the mini sprite ld hl, wTempPic xor a - ld bc, $0310 + ld bc, $310 call FillMemory ld a, [hWhoseTurn] and a @@ -1932,7 +1932,7 @@ AnimationSubstitute: jp AnimationShowMonPic CopySlowbroSpriteData: - ld bc, $0010 + ld bc, $10 ld a, BANK(SlowbroSprite) jp FarCopyData2 diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 00852b2b..6881aef5 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -582,7 +582,7 @@ HandlePoisonBurnLeechSeed_DecreaseOwnHP: ld a, [de] ; increment toxic counter inc a ld [de], a - ld hl, $0000 + ld hl, 0 .toxicTicksLoop add hl, bc dec a @@ -5345,8 +5345,8 @@ MoveHitTest: ret z ; Swift never misses (interestingly, Azure Heights lists this is a myth, but it appears to be true) 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. -; since $7b79 overwrites a with either $00 or $01, it never works. +; This code is buggy. 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 cp DREAM_EATER_EFFECT @@ -6335,9 +6335,9 @@ LoadPlayerBackPic: ld de, vBackPic call InterlaceMergeSpriteBuffers ld a, $a - ld [$0], a + ld [MBC1SRamEnable], a xor a - ld [$4000], a + ld [MBC1SRamBank], a ld hl, vSprites ld de, sSpriteBuffer1 ld a, [hLoadedROMBank] @@ -6345,7 +6345,7 @@ LoadPlayerBackPic: ld c, 7 * 7 call CopyVideoData xor a - ld [$0], a + ld [MBC1SRamEnable], a ld a, $31 ld [hStartTileID], a coord hl, 1, 5 diff --git a/engine/battle/trainer_ai.asm b/engine/battle/trainer_ai.asm index 2178be38..d61b44f8 100644 --- a/engine/battle/trainer_ai.asm +++ b/engine/battle/trainer_ai.asm @@ -134,7 +134,7 @@ AIMoveChoiceModification1: push de push bc ld hl, StatusAilmentMoveEffects - ld de, $0001 + ld de, 1 call IsInArray pop bc pop de diff --git a/engine/events/diploma.asm b/engine/events/diploma.asm index 24bd2f22..53d78e57 100755 --- a/engine/events/diploma.asm +++ b/engine/events/diploma.asm @@ -9,7 +9,7 @@ DisplayDiploma:: call DisableLCD ld hl, CircleTile ld de, vChars2 + $700 - ld bc, $0010 + ld bc, $10 ld a, BANK(CircleTile) call FarCopyData2 coord hl, 0, 0 diff --git a/engine/events/prize_menu.asm b/engine/events/prize_menu.asm index aa86f828..5a00a89e 100755 --- a/engine/events/prize_menu.asm +++ b/engine/events/prize_menu.asm @@ -131,10 +131,8 @@ GetPrizeMenuId: coord hl, 13, 5 ; reg. c: ; [low nybble] number of bytes -; [bit 765 = %100] space-padding (not zero-padding) +; [bits 765 = %100] space-padding (not zero-padding) ld c, (1 << 7 | 2) -; Function $15CD displays BCD value (same routine -; used by text-command $02) call PrintBCDNumber ld de, wPrize2Price coord hl, 13, 7 diff --git a/engine/menus/display_text_id_init.asm b/engine/menus/display_text_id_init.asm index e1f6c678..45c76f9c 100644 --- a/engine/menus/display_text_id_init.asm +++ b/engine/menus/display_text_id_init.asm @@ -43,7 +43,7 @@ DisplayTextIDInit:: ; the original direction they were facing must be restored after the dialogue is over ld hl, wSpriteStateData1 + $19 ld c, $0f - ld de, $0010 + ld de, $10 .spriteFacingDirectionCopyLoop ld a, [hl] inc h @@ -55,7 +55,7 @@ DisplayTextIDInit:: ; loop to force all the sprites in the middle of animation to stand still ; (so that they don't like they're frozen mid-step during the dialogue) ld hl, wSpriteStateData1 + 2 - ld de, $0010 + ld de, $10 ld c, e .spriteStandStillLoop ld a, [hl] diff --git a/engine/menus/save.asm b/engine/menus/save.asm index f2ecc3aa..ee73c850 100755 --- a/engine/menus/save.asm +++ b/engine/menus/save.asm @@ -702,7 +702,7 @@ ClearSAV: PadSRAM_FF: ld [MBC1SRamBank], a - ld hl, $a000 ; start of SRAM - ld bc, $2000 ; size of SRAM + ld hl, SRAM_Begin + ld bc, SRAM_End - SRAM_Begin ld a, $ff jp FillMemory diff --git a/engine/menus/start_sub_menus.asm b/engine/menus/start_sub_menus.asm index 43c767e2..526540df 100755 --- a/engine/menus/start_sub_menus.asm +++ b/engine/menus/start_sub_menus.asm @@ -491,12 +491,12 @@ DrawTrainerInfo: call CopyData ld hl, TrainerInfoTextBoxTileGraphics ; trainer info text box tile patterns ld de, vChars2 + $770 - ld bc, $0080 + ld bc, $80 push bc call TrainerInfo_FarCopyData ld hl, BlankLeaderNames ld de, vChars2 + $600 - ld bc, $0170 + ld bc, $170 call TrainerInfo_FarCopyData pop bc ld hl, BadgeNumbersTileGraphics ; badge number tile patterns @@ -504,14 +504,14 @@ DrawTrainerInfo: call TrainerInfo_FarCopyData ld hl, GymLeaderFaceAndBadgeTileGraphics ; gym leader face and badge tile patterns ld de, vChars2 + $200 - ld bc, $0400 + ld bc, $400 ld a, $03 call FarCopyData2 ld hl, TextBoxGraphics - ld de, $00d0 + ld de, $d0 add hl, de ; hl = colon tile pattern ld de, vChars1 + $560 - ld bc, $0010 + ld bc, $10 ld a, $04 push bc call FarCopyData2 diff --git a/engine/movie/title.asm b/engine/movie/title.asm index 1a2d16a0..9cbe5494 100755 --- a/engine/movie/title.asm +++ b/engine/movie/title.asm @@ -317,7 +317,7 @@ DrawPlayerCharacter: xor a ld [wPlayerCharacterOAMTile], a ld hl, wOAMBuffer - ld de, $605a + lb de, $60, $5a ld b, 7 .loop push de diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm index eb8edb10..904e9b04 100755 --- a/engine/overworld/map_sprites.asm +++ b/engine/overworld/map_sprites.asm @@ -133,8 +133,7 @@ LoadMapSpriteTilePatterns: jr nc, .fourTileSpriteVRAMAddr ld d, a dec d -; Equivalent to multiplying $C0 (number of bytes in 12 tiles) times the VRAM -; slot and adding the result to $8000 (the VRAM base address). +; vSprites += [hVRAMSlot] * $C0 (the number of bytes in 12 tiles) .calculateVRAMAddrLoop add hl, bc dec d diff --git a/engine/overworld/wild_mons.asm b/engine/overworld/wild_mons.asm index 24dc7681..2593e0ec 100644 --- a/engine/overworld/wild_mons.asm +++ b/engine/overworld/wild_mons.asm @@ -16,10 +16,10 @@ LoadWildData:: jr z, .NoGrassData ; if no grass data, skip to surfing data push hl ld de, wGrassMons ; otherwise, load grass data - ld bc, $0014 + ld bc, $14 call CopyData pop hl - ld bc, $0014 + ld bc, $14 add hl, bc .NoGrassData ld a, [hli] @@ -27,7 +27,7 @@ LoadWildData:: and a ret z ; if no water data, we're done ld de, wWaterMons ; otherwise, load surfing data - ld bc, $0014 + ld bc, $14 jp CopyData INCLUDE "data/wild/grass_water.asm" diff --git a/engine/pokemon/status_screen.asm b/engine/pokemon/status_screen.asm index f66cdf5a..b262a8b7 100755 --- a/engine/pokemon/status_screen.asm +++ b/engine/pokemon/status_screen.asm @@ -254,7 +254,7 @@ PrintStatsBox: ld c, 8 call TextBoxBorder ; Draws the box coord hl, 1, 9 ; Start printing stats from here - ld bc, $0019 ; Number offset + ld bc, $19 ; Number offset jr .PrintStats .DifferentBox coord hl, 9, 2 @@ -262,7 +262,7 @@ PrintStatsBox: ld c, 9 call TextBoxBorder coord hl, 11, 3 - ld bc, $0018 + ld bc, $18 .PrintStats push bc push hl diff --git a/engine/slots/slot_machine.asm b/engine/slots/slot_machine.asm index 16696713..c3de5dd2 100755 --- a/engine/slots/slot_machine.asm +++ b/engine/slots/slot_machine.asm @@ -31,7 +31,7 @@ PromptUserToPlaySlots: xor a ld [wSlotMachineAllowMatchesCounter], a ld hl, wStoppingWhichSlotMachineWheel - ld bc, $0014 + ld bc, $14 call FillMemory call MainSlotMachineLoop ld hl, wd730 diff --git a/home/init.asm b/home/init.asm index 48294fa6..83238bad 100644 --- a/home/init.asm +++ b/home/init.asm @@ -41,8 +41,8 @@ rLCDC_DEFAULT EQU %11100011 ld sp, wStack - ld hl, $c000 ; start of WRAM - ld bc, $2000 ; size of WRAM + ld hl, WRAM0_Begin + ld bc, WRAM1_End - WRAM0_Begin .loop ld [hl], 0 inc hl @@ -53,8 +53,8 @@ rLCDC_DEFAULT EQU %11100011 call ClearVram - ld hl, $ff80 ; start of HRAM - ld bc, $ffff - $ff80 ; size of HRAM + ld hl, HRAM_Begin + ld bc, HRAM_End - HRAM_Begin call FillMemory call ClearSprites @@ -119,8 +119,8 @@ rLCDC_DEFAULT EQU %11100011 jp SetDefaultNamesBeforeTitlescreen ClearVram:: - ld hl, $8000 - ld bc, $2000 + ld hl, VRAM_Begin + ld bc, VRAM_End - VRAM_Begin xor a jp FillMemory diff --git a/home/list_menu.asm b/home/list_menu.asm index 68335ed5..4ce973b2 100644 --- a/home/list_menu.asm +++ b/home/list_menu.asm @@ -454,7 +454,7 @@ PrintListMenuEntries:: ld [wLoadedMonLevel], a .skipCopyingLevel pop hl - ld bc, $001c + ld bc, $1c add hl, bc call PrintLevel pop af diff --git a/home/names2.asm b/home/names2.asm index 178a0780..319febd3 100644 --- a/home/names2.asm +++ b/home/names2.asm @@ -77,7 +77,7 @@ GetName:: ld h, d ld l, e ld de, wcd6d - ld bc, $0014 + ld bc, $14 call CopyData .gotPtr ld a, e diff --git a/home/overworld.asm b/home/overworld.asm index c959beb6..79e4ea97 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1424,18 +1424,18 @@ LoadCurrentMapView:: dec b jr nz, .rowLoop ld hl, wTileMapBackup - ld bc, $0000 + ld bc, $0 .adjustForYCoordWithinTileBlock ld a, [wYBlockCoord] and a jr z, .adjustForXCoordWithinTileBlock - ld bc, $0030 + ld bc, $30 add hl, bc .adjustForXCoordWithinTileBlock ld a, [wXBlockCoord] and a jr z, .copyToVisibleAreaBuffer - ld bc, $0002 + ld bc, $2 add hl, bc .copyToVisibleAreaBuffer coord de, 0, 0 ; base address for the tiles that are directly transferred to VRAM during V-blank @@ -1739,7 +1739,7 @@ ScheduleSouthRowRedraw:: ld l, a ld a, [wMapViewVRAMPointer + 1] ld h, a - ld bc, $0200 + ld bc, $200 add hl, bc ld a, h and $03 @@ -1835,7 +1835,7 @@ DrawTileBlock:: ld a, [de] ld [hl], a inc de - ld bc, $0015 + ld bc, $15 add hl, bc pop bc dec c @@ -2180,7 +2180,7 @@ LoadMapHeader:: jr nz, .zeroSpriteDataLoop ; initialize all C100-C1FF sprite entries to disabled (other than player's) ld hl, wSpriteStateData1 + $12 - ld de, $0010 + ld de, $10 ld c, $0f .disableSpriteEntriesLoop ld [hl], $ff diff --git a/home/pics.asm b/home/pics.asm index 02683db7..c6d99cbb 100644 --- a/home/pics.asm +++ b/home/pics.asm @@ -93,7 +93,7 @@ LoadUncompressedSpriteData:: add a ; 8*(7*((8-w)/2) + 7-h) ; combined overall offset (in bytes) ld [hSpriteOffset], a xor a - ld [$4000], a + ld [MBC1SRamBank], a ld hl, sSpriteBuffer0 call ZeroSpriteBuffer ; zero buffer 0 ld de, sSpriteBuffer1 @@ -151,7 +151,7 @@ ZeroSpriteBuffer:: ; de: output address InterlaceMergeSpriteBuffers:: xor a - ld [$4000], a + ld [MBC1SRamBank], a push de ld hl, sSpriteBuffer2 + (SPRITEBUFFERSIZE - 1) ; destination: end of buffer 2 ld de, sSpriteBuffer1 + (SPRITEBUFFERSIZE - 1) ; source 2: end of buffer 1 diff --git a/home/predef_text.asm b/home/predef_text.asm index 24001c24..059e23ab 100644 --- a/home/predef_text.asm +++ b/home/predef_text.asm @@ -119,7 +119,7 @@ CloseTextDisplay:: ; loop to make sprites face the directions they originally faced before the dialogue ld hl, wSpriteStateData2 + $19 ld c, $0f - ld de, $0010 + ld de, $10 .restoreSpriteFacingDirectionLoop ld a, [hl] dec h diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm index 9be354e3..c5f90107 100755 --- a/macros/scripts/events.asm +++ b/macros/scripts/events.asm @@ -183,7 +183,7 @@ ENDM ;\3, \4, ... = additional (optional) event indices SetEvents: MACRO SetEvent \1 - rept (_NARG + -1) + rept _NARG - 1 SetEventReuseHL \2 shift endr @@ -235,7 +235,7 @@ ENDM ;\3 = event index (optional) ResetEvents: MACRO ResetEvent \1 - rept (_NARG + -1) + rept _NARG - 1 ResetEventReuseHL \2 shift endr @@ -283,7 +283,7 @@ event_fill_start = event_start_byte + 1 event_fill_count = event_end_byte - event_start_byte - 1 IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 +event_fill_start = event_fill_start - 1 event_fill_count = event_fill_count + 1 ELSE ld a, [wEventFlags + event_start_byte] @@ -304,7 +304,7 @@ event_fill_count = event_fill_count + 1 ld a, $ff ld hl, wEventFlags + event_fill_start - REPT event_fill_count + -1 + REPT event_fill_count - 1 ld [hli], a ENDR @@ -345,7 +345,7 @@ event_fill_start = event_start_byte + 1 event_fill_count = event_end_byte - event_start_byte - 1 IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 +event_fill_start = event_fill_start - 1 event_fill_count = event_fill_count + 1 ELSE ld a, [wEventFlags + event_start_byte] @@ -370,7 +370,7 @@ event_fill_count = event_fill_count + 1 xor a ENDC - REPT event_fill_count + -1 + REPT event_fill_count - 1 ld [hli], a ENDR diff --git a/macros/wram.asm b/macros/wram.asm new file mode 100644 index 00000000..7a9b4a6a --- /dev/null +++ b/macros/wram.asm @@ -0,0 +1,92 @@ +; Used in wram.asm + +flag_array: MACRO + ds ((\1) + 7) / 8 +ENDM + +BOX_STRUCT_LENGTH EQU 25 + NUM_MOVES * 2 + +box_struct: MACRO +\1Species:: db +\1HP:: dw +\1BoxLevel:: db +\1Status:: db +\1Type:: +\1Type1:: db +\1Type2:: db +\1CatchRate:: db +\1Moves:: ds NUM_MOVES +\1OTID:: dw +\1Exp:: ds 3 +\1HPExp:: dw +\1AttackExp:: dw +\1DefenseExp:: dw +\1SpeedExp:: dw +\1SpecialExp:: dw +\1DVs:: ds 2 +\1PP:: ds NUM_MOVES +ENDM + +party_struct: MACRO + box_struct \1 +\1Level:: db +\1Stats:: +\1MaxHP:: dw +\1Attack:: dw +\1Defense:: dw +\1Speed:: dw +\1Special:: dw +ENDM + +battle_struct: MACRO +\1Species:: db +\1HP:: dw +\1PartyPos:: +\1BoxLevel:: db +\1Status:: db +\1Type:: +\1Type1:: db +\1Type2:: db +\1CatchRate:: db +\1Moves:: ds NUM_MOVES +\1DVs:: ds 2 +\1Level:: db +\1Stats:: +\1MaxHP:: dw +\1Attack:: dw +\1Defense:: dw +\1Speed:: dw +\1Special:: dw +\1PP:: ds NUM_MOVES +ENDM + +spritestatedata1: MACRO +\1PictureID:: db +\1MovementStatus:: db +\1ImageIndex:: db +\1YStepVector:: db +\1YPixels:: db +\1XStepVector:: db +\1XPixels:: db +\1IntraAnimFrameCounter:: db +\1AnimFrameCounter:: db +\1FacingDirection:: db + ds 6 +\1End:: +ENDM + +spritestatedata2: MACRO +\1WalkAnimationCounter:: db + ds 1 +\1YDisplacement:: db +\1XDisplacement:: db +\1MapY:: db +\1MapX:: db +\1MovementByte1:: db +\1GrassPriority:: db +\1MovementDelay:: db + ds 5 +\1ImageBaseOffset:: db + ds 1 +\1End:: +ENDM diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm index 9bb84923..b3347849 100755 --- a/scripts/OaksLab.asm +++ b/scripts/OaksLab.asm @@ -652,7 +652,7 @@ OaksLabScript18: OaksLabScript_RemoveParcel: ld hl, wBagItems - ld bc, $0000 + ld bc, 0 .loop ld a, [hli] cp $ff diff --git a/scripts/VermilionDock.asm b/scripts/VermilionDock.asm index 4b0cf439..90fef6b2 100755 --- a/scripts/VermilionDock.asm +++ b/scripts/VermilionDock.asm @@ -78,7 +78,7 @@ VermilionDock_1db9b: ld d, $0 ld e, $8 .asm_1dbfa - ld hl, $0002 + ld hl, $2 add hl, bc ld a, l ld [wMapViewVRAMPointer], a diff --git a/wram.asm b/wram.asm index 9c37b3db..e2fa05a6 100755 --- a/wram.asm +++ b/wram.asm @@ -1,63 +1,6 @@ INCLUDE "constants.asm" -flag_array: MACRO - ds ((\1) + 7) / 8 -ENDM - -box_struct_length EQU 25 + NUM_MOVES * 2 -box_struct: MACRO -\1Species:: db -\1HP:: dw -\1BoxLevel:: db -\1Status:: db -\1Type:: -\1Type1:: db -\1Type2:: db -\1CatchRate:: db -\1Moves:: ds NUM_MOVES -\1OTID:: dw -\1Exp:: ds 3 -\1HPExp:: dw -\1AttackExp:: dw -\1DefenseExp:: dw -\1SpeedExp:: dw -\1SpecialExp:: dw -\1DVs:: ds 2 -\1PP:: ds NUM_MOVES -ENDM - -party_struct: MACRO - box_struct \1 -\1Level:: db -\1Stats:: -\1MaxHP:: dw -\1Attack:: dw -\1Defense:: dw -\1Speed:: dw -\1Special:: dw -ENDM - -battle_struct: MACRO -\1Species:: db -\1HP:: dw -\1PartyPos:: -\1BoxLevel:: db -\1Status:: db -\1Type:: -\1Type1:: db -\1Type2:: db -\1CatchRate:: db -\1Moves:: ds NUM_MOVES -\1DVs:: ds 2 -\1Level:: db -\1Stats:: -\1MaxHP:: dw -\1Attack:: dw -\1Defense:: dw -\1Speed:: dw -\1Special:: dw -\1PP:: ds NUM_MOVES -ENDM +INCLUDE "macros/wram.asm" SECTION "WRAM Bank 0", WRAM0 @@ -228,21 +171,6 @@ wSpriteStateData1:: ; C1xD ; C1xE ; C1xF -spritestatedata1: MACRO -\1PictureID:: db -\1MovementStatus:: db -\1ImageIndex:: db -\1YStepVector:: db -\1YPixels:: db -\1XStepVector:: db -\1XPixels:: db -\1IntraAnimFrameCounter:: db -\1AnimFrameCounter:: db -\1FacingDirection:: db - ds 6 -\1End:: -endm - wSpritePlayerStateData1:: spritestatedata1 wSpritePlayerStateData1 wSprite01StateData1:: spritestatedata1 wSprite01StateData1 wSprite02StateData1:: spritestatedata1 wSprite02StateData1 @@ -280,22 +208,6 @@ wSpriteStateData2:: ; C2xD ; C2xE: sprite image base offset (in video ram, player always has value 1, used to compute c1x2) ; C2xF -spritestatedata2: MACRO -\1WalkAnimationCounter:: db - ds 1 -\1YDisplacement:: db -\1XDisplacement:: db -\1MapY:: db -\1MapX:: db -\1MovementByte1:: db -\1GrassPriority:: db -\1MovementDelay:: db - ds 5 -\1ImageBaseOffset:: db - ds 1 -\1End:: -endm - wSpritePlayerStateData2:: spritestatedata2 wSpritePlayerStateData2 wSprite01StateData2:: spritestatedata2 wSprite01StateData2 wSprite02StateData2:: spritestatedata2 wSprite02StateData2 @@ -1050,7 +962,7 @@ wOptionsCancelCursorX:: ds 1 wDayCarePerLevelCost:: -; 2-byte BCD number (always set to $0100) +; 2-byte BCD number (always set to $100) wHoFTeamIndex2:: @@ -3185,7 +3097,7 @@ wBoxSpecies:: ds MONS_PER_BOX + 1 wBoxMons:: wBoxMon1:: box_struct wBoxMon1 -wBoxMon2:: ds box_struct_length * (MONS_PER_BOX + -1) +wBoxMon2:: ds BOX_STRUCT_LENGTH * (MONS_PER_BOX - 1) wBoxMonOT:: ds NAME_LENGTH * MONS_PER_BOX wBoxMonNicks:: ds NAME_LENGTH * MONS_PER_BOX -- cgit v1.3.1-sl0p From 36f8cd1477b8ebe0537e99abd3ba53471a2e16c4 Mon Sep 17 00:00:00 2001 From: Rangi Date: Sat, 4 Jul 2020 16:16:29 -0400 Subject: UPDATE_PARTY_MENU_BLK_PACKET -> SET_PAL_PARTY_MENU_HP_BARS, and introduce SET_PAL_DEFAULT --- constants/palette_constants.asm | 3 ++- engine/gfx/palettes.asm | 10 +++++----- engine/menus/party_menu.asm | 2 +- home.asm | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) (limited to 'constants') diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm index 567c3cfc..c0c397ee 100755 --- a/constants/palette_constants.asm +++ b/constants/palette_constants.asm @@ -22,7 +22,8 @@ const SET_PAL_GAME_FREAK_INTRO ; $0C const SET_PAL_TRAINER_CARD ; $0D -UPDATE_PARTY_MENU_BLK_PACKET EQU $fc +SET_PAL_PARTY_MENU_HP_BARS EQU $fc +SET_PAL_DEFAULT EQU $ff ; sgb palettes const_def diff --git a/engine/gfx/palettes.asm b/engine/gfx/palettes.asm index 9ec0f04a..58e08e86 100755 --- a/engine/gfx/palettes.asm +++ b/engine/gfx/palettes.asm @@ -1,11 +1,11 @@ _RunPaletteCommand: call GetPredefRegisters ld a, b - cp $ff - jr nz, .next - ld a, [wDefaultPaletteCommand] ; use default command if command ID is $ff -.next - cp UPDATE_PARTY_MENU_BLK_PACKET + cp SET_PAL_DEFAULT + jr nz, .not_default + ld a, [wDefaultPaletteCommand] +.not_default + cp SET_PAL_PARTY_MENU_HP_BARS jp z, UpdatePartyMenuBlkPacket ld l, a ld h, 0 diff --git a/engine/menus/party_menu.asm b/engine/menus/party_menu.asm index b64c1af8..9ae5706e 100755 --- a/engine/menus/party_menu.asm +++ b/engine/menus/party_menu.asm @@ -318,7 +318,7 @@ SetPartyMenuHPBarColor: ld b, 0 add hl, bc call GetHealthBarColor - ld b, UPDATE_PARTY_MENU_BLK_PACKET + ld b, SET_PAL_PARTY_MENU_HP_BARS call RunPaletteCommand ld hl, wWhichPartyMenuHPBar inc [hl] diff --git a/home.asm b/home.asm index 8507bf0d..19101c9a 100644 --- a/home.asm +++ b/home.asm @@ -1654,7 +1654,7 @@ GBPalWhiteOut:: ret RunDefaultPaletteCommand:: - ld b, $ff + ld b, SET_PAL_DEFAULT RunPaletteCommand:: ld a, [wOnSGB] and a -- cgit v1.3.1-sl0p